/* =========================
   FONT IMPORTS
   ========================= */
   @import url("https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wdth,wght@0,62.5..100,100..900;1,62.5..100,100..900&family=Rubik:ital,wght@0,300..900;1,300..900&display=swap");
   @import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap");
   @import url("https://fonts.googleapis.com/css2?family=Inter:wght@700&display=swap");
   @import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css");

/* =========================
   PAGE LOADING BAR
   ========================= */
.page-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    z-index: 99999;
    pointer-events: none;
}

.page-loader-bar {
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0.8) 50%, #fff 100%);
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.5), 0 0 20px rgba(255, 255, 255, 0.3);
    transition: width 0.3s ease;
}

.page-loader.loaded {
    opacity: 0;
    transition: opacity 0.3s ease;
}

.page-loader.loaded .page-loader-bar {
    width: 100%;
}
   
   /* =========================
      CSS VARIABLES
      ========================= */
   :root {
     --color-primary: #a0a0a0;
     --color-brighter-bg: #1E1E1E;
     --bg-image: linear-gradient(180deg, rgba(255, 255, 255, 0.15) 0%, rgba(200, 200, 200, 0.08) 20%, rgba(50, 50, 50, 0.3) 50%, rgba(15, 15, 15, 0.95) 100%);
     --widget-padding: 24px;
     --content-padding: 20px;
     --background-dark: #121212;
     --card-dark: #1e1e1e;
     --text-light: #fff;
     --accent-color: #6a1b9a;
     --tooltip-background: #2a2a2a;
   }
   
   @media (min-width:960px) {
       :root {
           --content-padding:40px
       }
   }
   body {
       font-family:Lato,sans-serif;
       background-color:#121212;
       color:#fff
   }
   body::before {
       content:"";
       position:absolute;
       top:0;
       left:0;
       right:0;
       width:100%;
       height:100%;
       max-height:400px;
       z-index:-1;
       background:var(--bg-image) center center/cover no-repeat;
       mask-image:linear-gradient(rgba(0,0,0,0.5) 60%,transparent);
       pointer-events:none
   }

   /* Full page background for category and package pages */
   /* CHANGE THE URL BELOW TO YOUR BACKGROUND IMAGE */
   body:not(.page-index):has(.category-hero)::after,
   body:not(.page-index):has(.store-product-full)::after {
       content: "";
       position: fixed;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
       z-index: -2;
       background: url('https://r2.fivemanage.com/reN0iza3vc4oGjJ0nDgay/TurfManager-FearXScripts.png') center center / cover no-repeat;
       opacity: 0.15;
       pointer-events: none;
   }

   /* Hide the top gradient overlay on category pages */
   body:not(.page-index)::before {
       display: none !important;
   }
   h1,h2,h3,h4,h5,h6 {
       font-family:Rubik,sans-serif;
       font-weight:700
   }
   .btn-primary,.btn-secondary,.btn-tertiary {
       border-radius:4px;
       cursor:pointer;
       transition:all 0.3s ease
   }
   .btn-primary:hover,.btn-primary:focus,.btn-secondary:hover,.btn-secondary:focus {
       filter:brightness(1.1)
   }
   .quantity-field {
       border-radius:4px;
       overflow:hidden
   }
   .site-header-inner {
       font-family:Rubik,sans-serif
   }
   .site-header-inner .info .image {
       border-radius:5px
   }
   .site-header-inner .user-name ul li {
       overflow:hidden
   }
   .site-header-inner .user-name ul li:first-child {
       border-top-left-radius:2px;
       border-top-right-radius:2px
   }
   .site-header-inner .user-name ul li:last-child {
       border-bottom-left-radius:2px;
       border-bottom-right-radius:2px
   }
   .site-sale-banner {
       border-radius:4px
   }
   .site-home-categories {
       position:relative;
       z-index:1
   }
   .site-home-categories .category {
       display:flex;
       flex-direction:column;
       justify-content:flex-end;
       position:relative;
       padding:32px;
       min-height:215px;
       border-radius:8px;
       overflow:hidden;
       background:var(--color-brighter-bg);
       transition:transform 0.3s ease
   }
   .site-home-categories .category:hover {
       color:var(--color-primary);
       transform:translateY(-5px)
   }
   .site-home-categories .category img {
       position:relative;
       width:100%;
       height:auto;
       border-radius:8px;
       transition:transform 0.3s ease
   }
   .site-home-categories .category:hover img {
       transform:scale(1.05)
   }
   .store-text,.category-description,.store-product,.no-products {
       border-radius:8px;
       border:1px solid #2D2D2D;
       padding:calc(var(--widget-padding) - 1px);
       background:var(--color-brighter-bg)
   }
   .store-text h1,.store-text h2,.store-text h3,.store-text h4,.store-text h5,.store-text h6,.category-description h1,.category-description h2,.category-description h3,.category-description h4,.category-description h5,.category-description h6,.store-product .descr h1,.store-product .descr h2,.store-product .descr h3,.store-product .descr h4,.store-product .descr h5,.store-product .descr h6 {
       color:#fff
   }
   .widget {
       padding:0
   }
   .widget-title {
       margin-bottom:18px;
       font-size:22px;
       font-weight:700;
       text-align:center
   }
   .widget-content {
       border-radius:8px;
       border:1px solid #2D2D2D;
       padding:calc(var(--widget-padding) - 1px);
       background:var(--color-brighter-bg)
   }
   .widget .store-product {
       text-align:center
   }
   .popup .popup-close {
       border-radius:0 8px 0 0
   }
   .store-product-tiered {
       border-radius:8px;
       border:1px solid #2D2D2D;
       background:rgba(0,0,0,0.5)
   }
   .store-category-tiered-header h1,.store-category-tiered-header h2,.store-category-tiered-header h3,.store-category-tiered-header h4,.store-category-tiered-header h5,.store-category-tiered-header h6 {
       text-align:center
   }
   .store-products-list .store-product,.store-products-images .store-product {
       border-radius:5px;
       background:#1E1E1E;
       opacity:1;
   }
   .store-products-images .store-product {
       text-align:center;
       background:#1E1E1E !important;
   }
   .store-product-full {
       border-radius:5px;
       background:var(--color-brighter-bg)
   }
   .store-product .quantity-field {
       border-radius:5px;
       background:var(--color-brighter-bg)
   }
   .store-product .quantity-field input[type=number] {
       border:none
   }
   .widget-gift-card .gift-card-input {
       border-radius:2px
   }
   .widget-top-donator .avatar {
       border-radius:50%
   }
   .widget-community-goal .progress,.widget-goal .progress {
       border-radius:2px
   }
   .widget-community-goal .progress-bar,.widget-goal .progress-bar {
       border-radius:2px
   }
   .popup-content {
       border-radius:5px
   }
   .popup-close {
       border-radius:0 5px 0 5px
   }
   .basket-popup-content,.basket-popup-content .popup-close {
       border-radius:0
   }
   .basket-items {
       padding:var(--widget-padding) calc(var(--content-padding) - var(--widget-padding))
   }
   .basket-item {
       border-radius:5px
   }
   .basket-item .quantity {
       border-radius:2px
   }
   .toast {
       border-radius:6px
   }
   .toast-close {
       border-radius:2px
   }
   .store-category-tiered {
       border-radius:5px;
       background:var(--color-brighter-bg)
   }
   .widget.widget-recent .avatar {
       width:40px;
       height:40px;
       border-radius:50%;
       filter:grayscale(100%);
       transition:filter 0.3s ease
   }
   .widget.widget-recent .avatar:hover {
       filter:grayscale(0%)
   }
   .widget-top-donator .widget-title {
       display:flex;
       align-items:center;
       justify-content:center;
       gap:8px;
       font-size:0;
       margin:0;
       padding:10px 0;
       text-align:center
   }
   .widget-top-donator .widget-title i.fa-solid.fa-crown {
       display:none
   }
   .widget-top-donator .widget-title::before {
       content:"\f521";
       font-family:"Font Awesome 6 Free";
       font-weight:900;
       font-size:22px;
       background:linear-gradient(135deg,#FFD700,#FA0);
       -webkit-background-clip:text;
       -webkit-text-fill-color:transparent;
       text-shadow:1px 1px 3px rgba(0,0,0,0.4);
       transition:all 0.3s ease
   }
   .widget-top-donator .widget-title::after {
       content:"Top Customer";
       font-family:Rubik,sans-serif;
       font-weight:700;
       font-size:22px;
       background:linear-gradient(135deg,#FFD700,#FA0);
       -webkit-background-clip:text;
       -webkit-text-fill-color:transparent;
       text-shadow:1px 1px 3px rgba(0,0,0,0.4);
       letter-spacing:0.5px;
       transition:all 0.3s ease
   }
   .widget-top-donator .widget-title:hover::before,.widget-top-donator .widget-title:hover::after {
       text-shadow:2px 2px 5px rgba(255,215,0,0.6);
       filter:brightness(1.1)
   }
   .add i {
       margin-right:8px
   }
   .store-product .image-link {
       display:block;
       width:100%;
       text-decoration:none
   }
   .store-product .image {
       width:100%;
       height:auto;
       display:block;
       border-radius:0;
       box-shadow:none
   }
   .site-navigation .menu a {
       font-size:18px;
       color:#e1e1e1;
       font-family:inherit;
       font-weight:800;
       cursor:pointer;
       border:none;
       background:none;
       transition:color 0.3s ease;
       text-decoration:none !important;
       display:inline-flex;
       align-items:center
   }
  .site-navigation .menu a:focus,.site-navigation .menu a:hover {
      color:inherit
  }
   .site-navigation .menu a i {
       transition:color 400ms cubic-bezier(0.25,0.8,0.25,1);
       margin-right:8px
   }
   .site-navigation .menu ul a {
       position:relative
   }
   @media (max-width:960px) {
       .site-navigation .menu a {
           font-size:16px
       }
   }
   .site-navigation {
       pointer-events:auto
   }
   .user-actions .btn-secondary.btn-glyph-text.user-name:hover {
       color:red
   }
   .user-actions .btn-secondary.btn-glyph-text.user-name:hover i {
       color:red
   }
   .widget.widget-recent {
       background-color:var(--color-brighter-bg);
       border:none;
       outline:none;
       box-shadow:none;
       padding:var(--widget-padding);
       max-width:600px;
       margin:20px auto
   }
   .widget.widget-recent .widget-content {
       border:none;
       outline:none;
       box-shadow:none;
       padding:0;
       background:transparent
   }
   .widget-title {
       display:flex;
       align-items:center;
       font-family:Rubik,sans-serif;
       font-size:22px;
       font-weight:700;
       color:var(--text-light);
       letter-spacing:0.5px;
       margin-bottom:25px;
       text-align:left
   }
   .user-icon {
       margin-right:10px;
       font-size:24px;
       color:var(--color-primary)
   }
   .first-purchase-card {
       display:flex;
       align-items:center;
       gap:15px;
       margin-bottom:25px;
       text-align:left
   }
   .purchase-card-avatar .avatar {
       width:60px;
       height:60px;
       border-radius:50%;
       filter:grayscale(0%)
   }
   .purchase-card-info {
       display:flex;
       flex-direction:column;
       gap:8px
   }
   .customer-name {
       font-family:Rubik,sans-serif;
       font-size:16px;
       font-weight:700;
       color:var(--text-light);
       line-height:1.2
   }
   .purchase-action {
       font-family:Rubik,sans-serif;
       font-size:14px;
       font-weight:400;
       color:#a0a0a0;
       line-height:1.2
   }
   .package-details {
       font-family:Rubik,sans-serif;
       font-size:14px;
       font-weight:400;
       color:var(--color-primary);
       line-height:1.2;
       display:flex;
       align-items:center;
       gap:6px
   }
   .purchase-price,.tooltip-price {
       font-weight:400;
       color:#a0a0a0
   }
   .purchase-time {
       font-size:12px;
       color:#777;
       margin-top:8px
   }
   .purchases-grid {
       display:grid;
       grid-template-columns:repeat(4,1fr);
       gap:15px;
       justify-items:center
   }
   .purchase-item {
       position:relative;
       cursor:pointer
   }
   .purchase-item .avatar {
       width:40px;
       height:40px;
       border-radius:50%;
       filter:grayscale(100%)
   }
   .purchase-item:hover .avatar,.purchase-item:focus .avatar {
       filter:grayscale(0%)
   }
   .purchase-item .tooltip {
       visibility:hidden;
       opacity:0;
       position:absolute;
       bottom:calc(100%+10px);
       left:50%;
       transform:translateX(-50%) translateY(10px);
       background-color:var(--tooltip-background);
       color:var(--text-light);
       padding:12px 18px;
       min-width:150px;
       text-align:left;
       z-index:10;
       pointer-events:none;
       transition:opacity 0.3s ease,transform 0.3s ease;
       display:flex;
       flex-direction:column;
       gap:8px
   }
   .purchase-item:hover .tooltip,.purchase-item:focus .tooltip {
       visibility:visible;
       opacity:1;
       transform:translateX(-50%) translateY(0)
   }
   .tooltip .ign {
       font-family:Rubik,sans-serif;
       font-weight:700;
       color:var(--text-light);
       font-size:16px
   }
   .tooltip .purchase-action {
       font-size:14px;
       font-weight:400;
       color:#a0a0a0
   }
   .tooltip .package-details {
       font-size:14px;
       font-weight:400;
       color:var(--color-primary);
       display:flex;
       align-items:center;
       gap:6px
   }
   .tooltip small {
       font-size:12px;
       color:#777
   }
   .tooltip::after {
       content:"";
       position:absolute;
       top:100%;
       left:50%;
       margin-left:-8px;
       border-width:8px;
       border-style:solid;
       border-color:var(--tooltip-background) transparent transparent transparent
   }
   .no-payments {
       text-align:center;
       color:var(--color-primary);
       font-size:14px;
       padding:10px
   }
   @media (max-width:960px) {
       .widget.widget-recent {
           max-width:100%;
           padding:15px
       }
       .purchases-grid {
           grid-template-columns:repeat(2,1fr);
           gap:10px
       }
       .purchase-item .avatar {
           width:35px;
           height:35px
       }
       .purchase-item .tooltip {
           min-width:120px;
           padding:10px 14px;
           font-size:13px
       }
       .first-purchase-card {
           flex-direction:column;
           text-align:center;
           gap:10px
       }
       .purchase-card-info {
           align-items:center
       }
   }
   .store-content {
       opacity:0;
       transform:translateY(20px);
       transition:opacity 0.8s ease-in-out,transform 0.8s ease-in-out
   }
   .store-content.loaded {
       opacity:1;
       transform:translateY(0)
   }
   .loader {
       display:flex;
       align-items:center;
       justify-content:center
   }
   .bar {
       display:inline-block;
       width:3px;
       height:20px;
       background-color:rgba(255,255,255,0.5);
       border-radius:10px;
       animation:scale-up4 1s linear infinite
   }
   .bar:nth-child(2) {
       height:35px;
       margin:0 5px;
       animation-delay:0.25s
   }
   .bar:nth-child(3) {
       animation-delay:0.5s
   }
   @keyframes scale-up4 {
       20% {
           background-color:#fff;
           transform:scaleY(1.5)
       }
       40% {
           transform:scaleY(1)
       }
   }
   .loading-overlay {
       position:fixed;
       top:0;
       left:0;
       width:100%;
       height:100%;
       background:rgba(18,18,18,0.8);
       display:flex;
       align-items:center;
       justify-content:center;
       z-index:9999;
       opacity:1;
       transition:opacity 0.5s ease
   }
   .loading-overlay.hidden {
       opacity:0;
       pointer-events:none
   }
   @media (min-width:960px) {
       .bar {
           width:4px;
           height:30px
       }
       .bar:nth-child(2) {
           height:50px
       }
   }
   @keyframes spin {
       0% {
           transform:rotate(0deg)
       }
       100% {
           transform:rotate(360deg)
       }
   }
   body.home-entry .site-home-categories .category {
       border:2px solid var(--color-primary);
       background:linear-gradient(to bottom,#1e1e1e,#121212)
   }
   body.category-escrow .store-product {
       border-color:#4a90e2;
       background:linear-gradient(to bottom,#1e1e1e,#2a3a4a)
   }
   body.category-open-source .store-product {
       border-color:#2ecc71;
       background:linear-gradient(to bottom,#1e1e1e,#2a4a3a)
   }
   body.category-1 .store-product {
       border-color:#e94e77;
       background:linear-gradient(to bottom,#1e1e1e,#4a2a3a)
   }
   .store-products,.site-home-categories {
       transition:all 0.5s ease
   }
   .loading-overlay {
       position:fixed;
       top:0;
       left:0;
       width:100%;
       height:100vh;
       background:rgba(18,18,18,0.8);
       display:flex;
       align-items:center;
       justify-content:center;
       z-index:10000;
       opacity:1;
       transition:opacity 0.5s ease
   }
   .loading-overlay.hidden {
       opacity:0;
       pointer-events:none
   }
   .loader {
       display:flex;
       align-items:center
   }
   .bar {
       display:inline-block;
       width:3px;
       height:20px;
       background-color:rgba(255,255,255,0.5);
       border-radius:10px;
       animation:scale-up4 1s linear infinite
   }
   .bar:nth-child(2) {
       height:35px;
       margin:0 5px;
       animation-delay:0.25s
   }
   .bar:nth-child(3) {
       animation-delay:0.5s
   }
   @keyframes scale-up4 {
       20% {
           background-color:#fff;
           transform:scaleY(1.5)
       }
       40% {
           transform:scaleY(1)
       }
   }
   @media (min-width:960px) {
       .bar {
           width:4px;
           height:30px
       }
       .bar:nth-child(2) {
           height:50px
       }
   }
   .store-text {
       text-align:center;
       font-family:Lato,sans-serif
   }
   .store-header-title {
       margin-bottom:20px
   }
   .store-welcome-text {
       font-family:Rubik,sans-serif;
       font-size:16px;
       font-weight:500;
       color:#a0a0a0;
       letter-spacing:2px;
       text-transform:uppercase;
       display:block;
       margin-bottom:5px
   }
   .store-main-title-container {
       display:flex;
       justify-content:center;
       align-items:center;
       gap:15px
   }
   .store-main-title {
       font-family:Rubik,sans-serif;
       font-size:38px;
       font-weight:800;
       color:#fff;
       margin:0;
       line-height:1.2
   }
   .store-main-logo {
       width:52px;
       height:52px;
       object-fit:contain
   }
   .store-text p {
       color:#a0a0a0;
       line-height:1.6;
       margin-bottom:15px
   }
   .title-divider {
       border:0;
       height:1px;
       background:#2D2D2D;
       margin:20px auto;
       width:60%
   }
   .store-product .image-link {
       position:relative;
       display:block;
       text-decoration:none;
       overflow:hidden;
       border-radius:12px
   }
   .store-product .image-link .image {
       width:100%;
       height:auto;
       display:block;
       border-radius:12px;
       transform:scale(1);
       transition:transform 0.3s ease-in-out,opacity 0.3s ease-in-out
   }
   .store-product .image-link .hover-overlay {
       position:absolute;
       top:0;
       left:0;
       width:100%;
       height:100%;
       background:rgba(0,0,0,0.6);
       display:flex;
       flex-direction:column;
       justify-content:center;
       align-items:center;
       opacity:0;
       visibility:hidden;
       transition:opacity 0.3s ease;
       pointer-events:none
   }
   .store-product .image-link .hover-overlay .fa-eye {
       color:#fff;
       font-size:32px;
       margin-bottom:10px;
       transform:translateY(10px);
       opacity:0;
       transition:transform 0.3s ease,opacity 0.3s ease
   }
   .store-product .image-link .hover-overlay .hover-text {
       font-family:Rubik,sans-serif;
       font-size:14px;
       font-weight:500;
       color:#fff;
       opacity:0;
       transform:translateY(10px);
       transition:transform 0.3s ease,opacity 0.3s ease
   }
   .store-product .image-link:hover .image {
       opacity:0.8;
       transform:scale(1.05)
   }
   .store-product .image-link:hover .hover-overlay {
       opacity:1;
       visibility:visible
   }
   .store-product .image-link:hover .hover-overlay .fa-eye,.store-product .image-link:hover .hover-overlay .hover-text {
       opacity:1;
       transform:translateY(0)
   }

   .log-in.btn-tertiary {
       display:flex;
       align-items:center;
       gap:10px;
       background:linear-gradient(135deg,#5a3a1a,#4a2c0f);
       padding:8px 14px;
       border-radius:8px;
       text-decoration:none;
       color:#d36a20;
       font-weight:bold;
       font-size:16px;
       font-family:Inter,sans-serif
   }
   .log-in.btn-tertiary:hover {
       filter:saturate(1.2)
   }
   .log-in.btn-tertiary .logo {
       width:24px;
       height:24px
   }
   .log-in.btn-tertiary .login-text,.log-in.btn-tertiary .provider-text {
       color:#d36a20
   }
/* ============================================
   NAVIGATION CSS - CLEAN SLATE
   Add your custom navigation styles here
   ============================================ */
   
   .logout-btn {
       display:flex;
       align-items:center;
       justify-content:center;
       width:24px;
       height:24px;
       background:transparent;
       border:none;
       border-radius:0;
       color:#f44336;
       text-decoration:none;
       transition:all 0.2s ease
   }
   .logout-btn:hover {
       background:rgba(244,67,54,0.2);
       border:none;
       color:#fff;
       transform:none
   }
   .logout-btn i {
       font-size:12px
   }
   .fivem-logo {
       width:24px;
       height:24px;
       flex-shrink:0;
       display:flex;
       align-items:center;
       justify-content:center
   }
   .fivem-logo svg {
       width:100%;
       height:100%
   }
   .btn-fivem-login .login-text {
       color:#000;
       font-weight:600;
       font-size:14px
   }
   .site-navigation .menu li {
       position:relative;
       transition:all 0.2s ease
   }
  .site-navigation .menu li:hover {
      transform:none
  }
  .site-navigation .menu li a {
      transition:none;
      border-radius:0;
      position:relative
  }
  .site-navigation .menu li a:hover {
      background:transparent;
      backdrop-filter:none;
      box-shadow:none
  }
   .site-navigation .menu li.active {
               background:rgba(255, 255, 255, 0);
               backdrop-filter:none;
               border:none;
               border-radius:0;
               box-shadow:none
           }

       /* Scrolling Announcement Ticker */
       .announcement-ticker {
           background: transparent;
           overflow: hidden;
           white-space: nowrap;
           position: relative;
           padding: 28px 0;
       }
       
       .ticker-track {
           display: inline-flex;
           animation: ticker-scroll 40s linear infinite;
       }
       
       .ticker-track:hover {
           animation-play-state: paused;
       }
       
       .ticker-content {
           display: inline-flex;
           align-items: center;
       }
       
       .ticker-item {
           display: inline-flex;
           align-items: center;
           padding: 0 8px;
       }
       
       .ticker-text {
           font-family: Rubik, sans-serif;
           font-size: 17px;
           font-weight: 500;
           letter-spacing: 0.7px;
           color: rgba(255, 255, 255, 0.35);
           transition: color 0.3s ease;
       }
       
       .ticker-text.highlight {
           color: rgba(255, 255, 255, 0.7);
           font-weight: 600;
       }
       
       .ticker-divider {
           display: inline-flex;
           align-items: center;
           padding: 0 20px;
       }
       
       .ticker-divider i {
           font-size: 4px;
           color: rgba(255, 255, 255, 0.2);
       }
       
       @keyframes ticker-scroll {
           0% { transform: translateX(0); }
           100% { transform: translateX(-50%); }
       }

          @media (min-width:960px) {
       .navigation-horizontal .discord-link {
           order:997;
           margin-left:auto
       }
       .navigation-horizontal .user-nav-item,.navigation-horizontal .login-nav-item {
           order:998
       }
       .navigation-horizontal .basket-nav-item {
           order:999
       }
   }
   .user-profile-nav::before {
       display:none
   }
   .nav-tooltip {
       display:none !important
   }
   @keyframes pulse-glow {
       0%,100% {
           transform:scale(1);
           box-shadow:none
       }
       50% {
           transform:scale(1);
           box-shadow:none
       }
   }
   @keyframes pulse-online {
       0%,100% {
           opacity:1;
           transform:scale(1)
       }
       50% {
           opacity:1;
           transform:scale(1)
       }
   }
   .nav-basket-btn:focus,.site-navigation .menu li a:focus {
       outline:1px solid rgba(255,255,255,0.3);
       outline-offset:-1px
   }
   .logout-btn:focus,.login-btn-nav:focus {
       outline:1px solid rgba(255,255,255,0.3);
       outline-offset:-1px
   }
   @media (max-width:960px) {
       .site-navigation .menu li {
           opacity:0;
           transform:translateY(-30px);
           transition:all 0.6s cubic-bezier(0.25,0.8,0.25,1)
       }
       .show-navigation .site-navigation .menu li {
           opacity:1;
           transform:translateY(0)
       }
       .show-navigation .site-navigation .menu li:nth-child(1) {
           transition-delay:0.1s
       }
       .show-navigation .site-navigation .menu li:nth-child(2) {
           transition-delay:0.15s
       }
       .show-navigation .site-navigation .menu li:nth-child(3) {
           transition-delay:0.2s
       }
       .show-navigation .site-navigation .menu li:nth-child(4) {
           transition-delay:0.25s
       }
       .show-navigation .site-navigation .menu li:nth-child(5) {
           transition-delay:0.3s
       }
       .show-navigation .site-navigation .menu li:nth-child(6) {
           transition-delay:0.35s
       }
       .show-navigation .site-navigation .menu li:nth-child(7) {
           transition-delay:0.4s
       }
       .show-navigation .site-navigation .menu li:nth-child(8) {
           transition-delay:0.45s
       }
       .show-navigation .site-navigation .menu li:nth-child(9) {
           transition-delay:0.5s
       }
       .show-navigation .site-navigation .menu li:nth-child(10) {
           transition-delay:0.55s
       }
       .show-navigation .site-navigation .menu li {
           animation:slideInFromTop 0.6s cubic-bezier(0.25,0.8,0.25,1) forwards
       }
       @keyframes slideInFromTop {
           0% {
               opacity:0;
               transform:translateY(-30px)
           }
           100% {
               opacity:1;
               transform:translateY(0)
           }
       }
       .show-navigation .site-navigation .menu li:nth-child(1) {
           animation-delay:0.1s
       }
       .show-navigation .site-navigation .menu li:nth-child(2) {
           animation-delay:0.15s
       }
       .show-navigation .site-navigation .menu li:nth-child(3) {
           animation-delay:0.2s
       }
       .show-navigation .site-navigation .menu li:nth-child(4) {
           animation-delay:0.25s
       }
       .show-navigation .site-navigation .menu li:nth-child(5) {
           animation-delay:0.3s
       }
       .show-navigation .site-navigation .menu li:nth-child(6) {
           animation-delay:0.35s
       }
       .show-navigation .site-navigation .menu li:nth-child(7) {
           animation-delay:0.4s
       }
       .show-navigation .site-navigation .menu li:nth-child(8) {
           animation-delay:0.45s
       }
       .show-navigation .site-navigation .menu li:nth-child(9) {
           animation-delay:0.5s
       }
       .show-navigation .site-navigation .menu li:nth-child(10) {
           animation-delay:0.55s
       }
   }
   @media (max-width:960px) {
     .toggle-navigation {
         position:fixed;
         top:20px;
         right:20px;
         left:auto;
         z-index:1002
     }
       @media (max-width:480px) {
           .toggle-navigation {
               right:15px;
               left:auto
           }
       }
   }
  .site-header {
      margin-top:0
  }
   .hero-info-container {
       max-width:100%;
       margin:0 auto;
       position:relative;
       z-index:2
   }
   .hero-info-content {
       text-align:center
   }
   .welcome-badge {
       display:inline-flex;
       align-items:center;
       gap:8px;
       background:rgba(160,160,160,0.1);
       border:1px solid #2D2D2D;
       border-radius:6px;
       padding:8px 16px;
       margin-bottom:20px;
       font-size:12px;
       font-weight:500;
       color:var(--color-primary);
       text-transform:uppercase;
       letter-spacing:1px
   }
   .welcome-badge i {
       color:var(--color-primary);
       font-size:14px
   }
   .main-title-container {
       display:flex;
       align-items:center;
       justify-content:center;
       gap:15px;
       margin-bottom:20px;
       flex-wrap:wrap
   }
   .main-title {
       font-family:Rubik,sans-serif;
       font-size:2.5rem;
       font-weight:700;
       color:#fff;
       margin:0;
       line-height:1.1
   }
   .title-logo {
       height:50px;
       background:var(--color-primary);
       border-radius:8px;
       display:flex;
       align-items:center;
       justify-content:center;
       transition:all 0.3s ease
   }
   .title-logo:hover {
       transform:scale(1.05)
   }
   .title-logo img {
       width:32px;
       height:32px;
       object-fit:contain
   }
   .title-logo i {
       font-size:24px;
       color:#fff
   }
   .hero-description {
       font-size:1rem;
       color:#a0a0a0;
       line-height:1.6;
       margin:0 0 30px 0;
       max-width:500px;
       margin-left:auto;
       margin-right:auto;
       font-weight:400
   }
   .hero-stats-old {
       display:grid;
       grid-template-columns:repeat(3,1fr);
       gap:20px;
       max-width:600px;
       margin:0 auto
   }
   .stat-item {
       text-align:center;
       padding:20px 15px;
       background:rgba(160,160,160,0.05);
       border:1px solid #2D2D2D;
       border-radius:8px;
       transition:all 0.3s ease
   }
   .stat-item:hover {
       background:rgba(160,160,160,0.1);
       transform:translateY(-2px)
   }
   .stat-number {
       font-family:Rubik,sans-serif;
       font-size:2rem;
       font-weight:700;
       color:#fff;
       margin-bottom:5px;
       display:block
   }
   .stat-label {
       font-size:0.85rem;
       color:var(--color-primary);
       text-transform:uppercase;
       letter-spacing:1px;
       font-weight:500
   }
   .customer-reviews-section {
       text-align:center;
       margin-top:0rem;
       padding:2rem 1rem;
       color:#fff
   }
   .customer-reviews-section h2 {
       font-family:Rubik,sans-serif;
       font-size:1.8rem;
       font-weight:700;
       color:#fff;
       margin-bottom:0.5rem
   }
   .customer-reviews-section>p {
       font-size:1rem;
       margin-bottom:2rem;
       color:#a0a0a0;
       font-weight:400
   }
   .reviews-carousel {
       position:relative;
       overflow:hidden;
       max-width:1200px;
       margin:0 auto;
       cursor:grab;
       border-radius:12px;
       mask-image:linear-gradient( to right,transparent 0%,rgba(0,0,0,0.1) 5%,rgba(0,0,0,0.8) 15%,black 25%,black 75%,rgba(0,0,0,0.8) 85%,rgba(0,0,0,0.1) 95%,transparent 100% );
       -webkit-mask-image:linear-gradient( to right,transparent 0%,rgba(0,0,0,0.1) 5%,rgba(0,0,0,0.8) 15%,black 25%,black 75%,rgba(0,0,0,0.8) 85%,rgba(0,0,0,0.1) 95%,transparent 100% )
   }
   .reviews-carousel:active {
       cursor:grabbing
   }
   .reviews-carousel::before,.reviews-carousel::after {
       content:'';
       position:absolute;
       top:0;
       bottom:0;
       width:120px;
       z-index:10;
       pointer-events:none
   }
   .reviews-carousel::before {
       left:0;
       background:linear-gradient( to right,var(--background-dark) 0%,rgba(18,18,18,0.9) 20%,rgba(18,18,18,0.7) 40%,rgba(18,18,18,0.3) 70%,transparent 100% )
   }
   .reviews-carousel::after {
       right:0;
       background:linear-gradient( to left,var(--background-dark) 0%,rgba(18,18,18,0.9) 20%,rgba(18,18,18,0.7) 40%,rgba(18,18,18,0.3) 70%,transparent 100% )
   }
   .reviews-container {
       display:flex;
       gap:1.5rem;
       padding:1rem 0;
       will-change:transform
   }
   .reviews-container.dragging {
       transition:none
   }
   .review-card {
       background:var(--color-brighter-bg);
       border:1px solid #2D2D2D;
       border-radius:8px;
       padding:1.5rem;
       min-width:320px;
       flex:0 0 320px;
       transition:transform 0.3s ease,opacity 0.3s ease;
       user-select:none;
       opacity:0.7
   }
   .review-card.center {
       opacity:1;
       transform:scale(1.02)
   }
   .review-card:hover {
       transform:translateY(-3px);
       opacity:1
   }
   .review-stars {
       display:flex;
       justify-content:center;
       gap:0.25rem;
       margin-bottom:1rem
   }
   .review-stars i {
       color:#ffc107;
       font-size:1rem
   }
   .review-card img {
       width:50px;
       height:50px;
       border-radius:50%;
       margin:0 auto 1rem;
       display:block;
       border:2px solid #2D2D2D
   }
   .review-card p {
       font-size:0.9rem;
       color:#a0a0a0;
       line-height:1.5;
       margin-bottom:1rem;
       font-style:italic
   }
   .review-card span {
       display:block;
       font-size:0.85rem;
       color:#fff;
       font-weight:500
   }
   .carousel-dots {
       display:flex;
       justify-content:center;
       gap:0.5rem;
       margin-top:1.5rem
   }
   .dot {
       width:8px;
       height:8px;
       border-radius:50%;
       background-color:#2D2D2D;
       cursor:pointer;
       transition:all 0.3s ease
   }
   .dot.active,.dot:hover {
       background-color:var(--color-primary);
       transform:scale(1.2)
   }
   .extra-section {
       text-align:center;
       margin-top:2rem;
       padding:1.5rem;
       background:var(--color-brighter-bg);
       border:1px solid #2D2D2D;
       color:white;
       border-radius:8px
   }
   .extra-section h3 {
       font-family:Rubik,sans-serif;
       font-weight:600;
       margin-bottom:0.5rem;
       color:#fff
   }
   .extra-section p {
       color:#a0a0a0;
       margin-bottom:1rem
   }
   .extra-section .btn {
       display:inline-block;
       padding:0.6rem 1.5rem;
       background:var(--color-primary);
       color:#000;
       border-radius:4px;
       text-decoration:none;
       font-weight:500;
       transition:all 0.3s ease;
       font-size:0.9rem
   }
   .extra-section .btn:hover {
       filter:brightness(1.1);
       transform:translateY(-1px)
   }
   @media (max-width:768px) {
       .customer-reviews-section {
           padding:1.5rem 0.5rem
       }
       .review-card {
           min-width:280px;
           flex:0 0 280px;
           padding:1.25rem
       }
       .reviews-container {
           gap:1rem
       }
       .reviews-carousel::before,.reviews-carousel::after {
           width:80px
       }
       .reviews-carousel {
           mask-image:linear-gradient( to right,transparent 0%,rgba(0,0,0,0.3) 8%,black 20%,black 80%,rgba(0,0,0,0.3) 92%,transparent 100% );
           -webkit-mask-image:linear-gradient( to right,transparent 0%,rgba(0,0,0,0.3) 8%,black 20%,black 80%,rgba(0,0,0,0.3) 92%,transparent 100% )
       }
   }
   .dot:focus {
       outline:2px solid var(--color-primary);
       outline-offset:2px
   }
   @media (prefers-reduced-motion:reduce) {
       .reviews-container {
           animation:none
       }
       .review-card {
           transition:none
       }
   }
   .reviews-carousel {
       box-shadow:inset 40px 0 40px -40px rgba(18,18,18,0.8),inset -40px 0 40px -40px rgba(18,18,18,0.8)
   }
   .help-support-section {
       position:relative;
       padding:3rem 1rem;
       margin-top:0rem;
       text-align:center;
       background:var(--background-dark);
       overflow:hidden
   }
   .help-support-section::before {
       content:'';
       position:absolute;
       top:50%;
       left:50%;
       width:800px;
       height:600px;
       transform:translate(-50%,-50%) scale(0);
       background:radial-gradient( ellipse at center,rgba(255,255,255,0.03) 0%,rgba(255,255,255,0.015) 30%,rgba(255,255,255,0.005) 60%,transparent 100% );
       pointer-events:none;
       z-index:1;
       opacity:0;
       transition:all 1.2s cubic-bezier(0.25,0.8,0.25,1)
   }
   .help-support-section.animate::before {
       transform:translate(-50%,-50%) scale(1);
       opacity:1
   }
   .help-support-container {
       position:relative;
       z-index:2;
       max-width:600px;
       margin:0 auto
   }
   .help-support-content h2 {
       font-family:Rubik,sans-serif;
       font-size:2.5rem;
       font-weight:700;
       color:#fff;
       margin-bottom:1.5rem;
       line-height:1.2;
       overflow:hidden
   }
   .help-support-content h2 .letter {
       display:inline-block;
       opacity:0;
       transform:translateY(50px) rotateX(90deg);
       transition:all 0.6s cubic-bezier(0.25,0.8,0.25,1)
   }
   .help-support-section.animate .help-support-content h2 .letter {
       opacity:1;
       transform:translateY(0) rotateX(0deg)
   }
   .help-support-content p {
       font-size:1.1rem;
       color:#ccc;
       line-height:1.6;
       margin-bottom:2rem;
       overflow:hidden
   }
   .help-support-content p .word {
       display:inline-block;
       opacity:0;
       transform:translateY(30px);
       transition:all 0.5s cubic-bezier(0.25,0.8,0.25,1);
       margin-right:0.3em
   }
   .help-support-section.animate .help-support-content p .word {
       opacity:0.9;
       transform:translateY(0)
   }
   .discord-cta-btn {
       display:inline-flex;
       align-items:center;
       gap:12px;
       background-color:#f5f5f5;
       color:#333;
       padding:14px 28px;
       border-radius:10px;
       text-decoration:none;
       font-family:Rubik,sans-serif;
       font-weight:600;
       font-size:1rem;
       box-shadow:0 4px 15px rgba(0,0,0,0.1);
       opacity:0;
       transform:translateY(30px) scale(0.9);
       transition:all 0.8s cubic-bezier(0.25,0.8,0.25,1);
       overflow:hidden;
       position:relative
   }
   .discord-cta-btn::before {
       content:'';
       position:absolute;
       top:0;
       left:-100%;
       width:100%;
       height:100%;
       background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent);
       transition:left 0.6s ease
   }
   .help-support-section.animate .discord-cta-btn {
       opacity:1;
       transform:translateY(0) scale(1);
       transition-delay:0.7s
   }
   .help-support-section.animate .discord-cta-btn::before {
       left:100%;
       transition-delay:1.2s
   }
   .discord-cta-btn .btn-text {
       display:inline-block;
       opacity:0;
       transform:translateX(-10px);
       transition:all 0.4s cubic-bezier(0.25,0.8,0.25,1)
   }
   .help-support-section.animate .discord-cta-btn .btn-text {
       opacity:1;
       transform:translateX(0);
       transition-delay:0.9s
   }
   .help-support-section.animate .discord-cta-btn:hover {
       background-color:#e8e8e8;
       transform:translateY(-2px) scale(1.02);
       box-shadow:0 6px 20px rgba(0,0,0,0.15);
       text-decoration:none;
       color:#333;
       transition:all 0.3s ease
   }
   .discord-cta-btn i {
       font-size:1.2rem;
       color:#5865f2;
       opacity:0;
       transform:rotate(-180deg) scale(0.5);
       transition:all 0.8s cubic-bezier(0.25,0.8,0.25,1)
   }
   .help-support-section.animate .discord-cta-btn i {
       opacity:1;
       transform:rotate(0deg) scale(1);
       transition-delay:0.8s
   }
   @media (max-width:768px) {
       .help-support-section {
           padding:3rem 1rem
       }
       .help-support-section::before {
           width:600px;
           height:450px
       }
       .help-support-content h2 {
           font-size:2rem;
           margin-bottom:1.25rem
       }
       .help-support-content p {
           font-size:1rem;
           margin-bottom:1.75rem
       }
       .discord-cta-btn {
           padding:12px 24px;
           font-size:0.95rem;
           gap:10px
       }
   }
   @media (max-width:480px) {
       .help-support-section {
           padding:2.5rem 0.75rem
       }
       .help-support-section::before {
           width:400px;
           height:350px
       }
       .help-support-content h2 {
           font-size:1.75rem
       }
       .help-support-content p {
           font-size:0.95rem
       }
       .discord-cta-btn {
           width:100%;
           justify-content:center;
           max-width:280px
       }
   }
   .discord-cta-btn:focus {
       outline:2px solid #5865f2;
       outline-offset:2px
   }
   @media (prefers-reduced-motion:reduce) {
       .help-support-section::before,.help-support-content h2 .letter,.help-support-content p .word,.discord-cta-btn,.discord-cta-btn i,.discord-cta-btn .btn-text,.discord-cta-btn::before {
           transition:none;
           transform:none;
           opacity:1
       }
       .help-support-section.animate .discord-cta-btn:hover {
           transform:none
       }
   }
   .site-footer {
       font-family:Rajdhani,sans-serif;
       font-size:12px;
       color:#fff
   }
   .site-footer-inner {
       display:flex;
       justify-content:space-between;
       align-items:center;
       max-width:1200px;
       margin:0 auto
   }
   .site-footer .copyright {
       margin:0;
       color:#fff
   }
   .site-footer .copyright span {
       color:#00c3ff
   }
   .site-footer .designed-by {
       display:flex;
       align-items:center;
       text-decoration:none;
       color:#888;
       font-size:11px
   }
   .site-footer .designed-by:hover {
       color:#00c3ff
   }
   .site-footer .designed-text {
       margin-right:6px;
       font-size:10px
   }
   .site-footer .designed-by img {
       height:16px;
       display:inline-block
   }
   .site-footer a {
       text-decoration:none
   }
   body {
       overflow:hidden
   }
   .page-content {
       opacity:0;
       transform:translateY(20px);
       transition:opacity 0.8s ease-in-out,transform 0.8s ease-in-out
   }
   .page-content.loaded {
       opacity:1;
       transform:translateY(0)
   }
   .browse-btn {
       display:inline-flex;
       align-items:center;
       gap:10px;
       padding:14px 28px;
       font-family:Arial,sans-serif;
       font-size:16px;
       font-weight:bold;
       color:#000;
       background:linear-gradient(to right,#e5e5e5,#cfcfcf,#bfbfbf);
       border:none;
       border-radius:12px;
       cursor:pointer;
       text-decoration:none;
       line-height:1
   }
   .browse-btn svg {
       width:18px;
       height:18px;
       stroke:#000;
       stroke-width:2;
       fill:none
   }/* Reset and fix the hamburger button with higher specificity */
.site-header .actions .toggle-navigation {
  position: fixed !important;
  top: 20px !important;
  right: 20px !important;
  left: auto !important;
  z-index: 1002 !important;
  width: 48px !important;
  height: 48px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: rgba(30, 30, 30, 0.95) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  display: none !important; /* Hidden by default */
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Show only on mobile with important */
@media (max-width: 960px) {
  .site-header .actions .toggle-navigation {
    display: flex !important;
  }
}

/* Reset any inherited styles on the hamburger icon */
.toggle-navigation .hamburger-icon {
  position: relative !important;
  width: 24px !important;
  height: 20px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}

/* Hamburger Lines with important to override conflicts */
.toggle-navigation .hamburger-icon .line {
  display: block !important;
  width: 100% !important;
  height: 2px !important;
  background-color: #ffffff !important;
  border-radius: 2px !important;
  transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55) !important;
  transform-origin: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  position: relative !important;
  opacity: 1 !important;
}

/* Specific line positioning */
.toggle-navigation .hamburger-icon .line-1 {
  top: 0 !important;
}

.toggle-navigation .hamburger-icon .line-2 {
  top: auto !important;
  bottom: auto !important;
}

.toggle-navigation .hamburger-icon .line-3 {
  bottom: 0 !important;
}

/* Transform to X when navigation is open - with important */
body.show-navigation .toggle-navigation .hamburger-icon .line-1 {
  transform: translateY(9px) rotate(45deg) !important;
  background-color: #ff4444 !important; /* Red color when X */
}

body.show-navigation .toggle-navigation .hamburger-icon .line-2 {
  opacity: 0 !important;
  transform: scaleX(0) !important;
}

body.show-navigation .toggle-navigation .hamburger-icon .line-3 {
  transform: translateY(-9px) rotate(-45deg) !important;
  background-color: #ff4444 !important; /* Red color when X */
}

/* Button hover effect with important */
.toggle-navigation:hover {
    background: inherit !important;
    transform: none !important;
    border-color: inherit !important;
}

/* Active state with important */
body.show-navigation .toggle-navigation {
  background: rgba(244, 67, 54, 0.1) !important;
  border-color: rgba(244, 67, 54, 0.3) !important;
}

/* Remove any ::before or ::after that might interfere */
.toggle-navigation::before,
.toggle-navigation::after,
.hamburger-icon::before,
.hamburger-icon::after,
.line::before,
.line::after {
  display: none !important;
}

/* Ensure button text is hidden */
.toggle-navigation span:not(.hamburger-icon):not(.line) {
  display: none !important;
}

/* Fix z-index stacking */
.site-header {
  position: relative;
  z-index: 100;
}

.site-header .actions {
  position: static;
}


/* Accessibility focus state */
.toggle-navigation:focus {
  outline: 2px solid var(--color-primary) !important;
  outline-offset: 2px !important;
}

/* Ensure button is clickable */
.toggle-navigation {
  pointer-events: auto !important;
  user-select: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

/* Animation for attention on first load */
@keyframes pulse-attention {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(255, 255, 255, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}

.toggle-navigation.pulse {
  animation: pulse-attention 2s !important;
}
   .user-avatar {
       width: 20px;
       height: 20px;
      border-radius: 50%;
      display: inline-block;
      vertical-align: middle;
  }

/* ===========================================
   END OF NAVIGATION CSS CLEANUP
   Add your fresh navigation styles below
   =========================================== */

/* ====== NAVIGATION — Quasar Clean Layout ====== */

:root{
  --nav-text-default:#9ca3af;
  --nav-text-hover:#FFFFFF;
}

/* Navigation Container */
.site-navigation{
  background:transparent !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  padding:0 40px !important;
  height:96px !important;
  gap:48px !important;
  border-bottom:1px solid rgba(255,255,255,0.08) !important;
  position:relative !important;
  z-index:10000 !important;
}

/* Logo */
.nav-logo-link{
  display:flex !important;
  align-items:center !important;
  text-decoration:none !important;
  flex-shrink:0 !important;
}

.nav-logo{
  height:56px !important;
  width:auto !important;
  display:block !important;
}

/* Category Links Container */
.nav-categories{
  display:flex !important;
  align-items:center !important;
  gap:4px !important;
  flex:1 !important;
}

/* Category Link Style */
.nav-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:12px !important;
  color:var(--nav-text-default) !important;
  text-decoration:none !important;
  padding:14px 24px !important;
  font-size:18px !important;
  font-weight:500 !important;
  font-family:Inter,system-ui,-apple-system,sans-serif !important;
  transition:color 0.15s ease !important;
  white-space:nowrap !important;
  border-radius:6px !important;
  position:relative !important;
}

.nav-link:hover{
  color:#fff !important;
}

.nav-link.active{
  color:#fff !important;
}

/* Active underline */
.nav-link.active::after{
  content:"";
  position:absolute;
  bottom:-12px;
  left:50%;
  transform:translateX(-50%);
  width:calc(100% - 16px);
  height:2px;
  background:#fff;
  border-radius:1px;
}

.nav-link i{
  font-size:18px;
}

.nav-link .external-link-icon{
  font-size:13px;
  opacity:0.5;
  margin-left:-2px;
}

/* Right Side Actions */
.nav-actions{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  margin-left:auto !important;
  flex-shrink:0 !important;
}

/* Hide old navigation list elements */
.navigation-list,
.nav-logo-container,
.menu{
  display:none !important;
}

/* Home Icon Styling */
.home-icon{
  width:16px;
  height:16px;
  display:inline-block;
  margin-right:12px;
  color:inherit;
  transition:color 0.2s ease;
}

/* Escrow Icon Styling */
.escrow-icon{
  width:16px;
  height:16px;
  display:inline-block;
  margin-right:12px;
  color:inherit;
  transition:color 0.2s ease;
}

/* Open Source Icon Styling */
.opensource-icon{
  width:16px;
  height:16px;
  display:inline-block;
  margin-right:12px;
  color:inherit;
  transition:color 0.2s ease;
}

/* Discord Button */
.nav-discord-btn {
  position: relative;
  width: 56px;
  height: 56px;
  min-width: 56px;
  min-height: 56px;
  border-radius: 12px;
  background: rgba(255,255,255,0.08);
  border: none;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer;
  transition: all 0.15s ease;
  color: #fff;
  text-decoration: none;
  padding: 0 !important;
  line-height: 1 !important;
}

.nav-discord-btn .discord-icon {
  font-size: 26px;
  color: inherit;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100%;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.nav-discord-btn:hover {
  background: rgba(255,255,255,0.12);
}

/* Cart Button */
.nav-basket-btn{
  position:relative;
  width:56px;
  height:56px;
  min-width:56px;
  min-height:56px;
  border-radius:12px;
  background:rgba(255,255,255,0.08);
  border:none;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer;
  transition:all 0.15s ease;
  color:#fff;
  padding:0 !important;
  line-height:1 !important;
}

.nav-basket-btn .basket-icon{
  font-size:24px;
  color:inherit;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 !important;
}

.nav-basket-btn:hover{
  background:rgba(255,255,255,0.12);
}

/* Basket Count Badge */
#nav-basket-count{
  position:absolute;
  top:-4px;
  right:-4px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:9px;
  background:#ef4444;
  color:#fff;
  font-size:11px;
  font-weight:600;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}

/* Discord Nav Button */
.btn-discord-nav {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px !important;
  height: 40px !important;
  background: #5865F2 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 25px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  font-size: 18px !important;
  transition: all 0.2s ease !important;
  flex-shrink: 0 !important;
}

.btn-discord-nav:hover {
  background: #4752C4 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(88, 101, 242, 0.4) !important;
}

.discord-nav-item {
  display: flex !important;
  align-items: center !important;
}

/* Login Button */
.btn-fivem-login{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  height:56px !important;
  padding:0 22px !important;
  background:rgba(255,255,255,0.08) !important;
  color:#fff !important;
  border:none !important;
  border-radius:12px !important;
  cursor:pointer !important;
  text-decoration:none !important;
  font-family:Inter,system-ui,-apple-system,sans-serif !important;
  font-size:17px !important;
  font-weight:500 !important;
  white-space:nowrap !important;
  transition:all 0.15s ease !important;
  flex-shrink:0 !important;
}

.btn-fivem-login:hover {
  background:rgba(255,255,255,0.12) !important;
}

.btn-fivem-login .login-text {
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  max-width:120px !important;
}

.btn-fivem-login:focus-visible{
  outline:2px solid #111;
  outline-offset:3px;
}

.btn-fivem-login[disabled],
.btn-fivem-login.is-disabled{
  opacity:0.55;
  cursor:not-allowed;
  pointer-events:none;
}

/* Loading State */
.btn-fivem-login.is-loading{
  opacity:0.7;
  pointer-events:none;
}

.btn-fivem-login.is-loading .fivem-logo{
  display:none;
}

.btn-fivem-login.is-loading::before{
  content:"";
  width:16px;
  height:16px;
  border:2px solid #111;
  border-top:2px solid transparent;
  border-radius:50%;
  animation:spin 1s linear infinite;
  margin-right:8px;
  flex-shrink:0;
}

.btn-fivem-login.is-loading .login-text{
  opacity:0.8;
}

@keyframes spin{
  0%{ transform:rotate(0deg); }
  100%{ transform:rotate(360deg); }
}

/* FiveM Logo */
.fivem-logo{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.fivem-logo svg{
  width:14px !important;
  height:14px !important;
  display:block !important;
}

.fivem-logo svg path{
  fill:#fff !important;
}

.login-text{
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1 !important;
  color:#fff !important;
  white-space:nowrap !important;
}

/* RTL Support */
[dir="rtl"] .btn-fivem-login{
  flex-direction:row-reverse;
}

/* User Profile */
.user-profile-nav{
  position:relative;
  height:56px;
  padding:0 18px;
  border-radius:12px;
  background:rgba(255,255,255,0.08);
  border:none;
  display:inline-flex;
  align-items:center;
  gap:12px;
  cursor:pointer;
  transition:all 0.15s ease;
  text-decoration:none;
  color:#fff;
  font-size:17px;
  font-weight:500;
  white-space:nowrap;
}

.user-profile-nav:hover{
  background:rgba(255,255,255,0.12);
}

.user-profile-nav:focus-visible{
  outline:2px solid #fff;
  outline-offset:2px;
}

.user-icon{
  font-size:14px;
  width:14px;
  height:14px;
  color:#fff;
}

.user-name-nav{
  font-size:13px;
  font-weight:500;
  color:#fff;
}

.brand-caret{
  font-size:10px;
  width:10px;
  height:10px;
  color:#fff;
  opacity:0.5;
  transition:transform 0.2s ease;
}

.user-profile-nav.open .brand-caret{
  transform:rotate(180deg);
}

/* Dropdown Menu */
.user-dropdown-menu{
  position:absolute;
  right:0;
  top:calc(100% + 8px);
  min-width:200px;
  padding:6px;
  border-radius:8px;
  background:#1a1a1a;
  border:1px solid rgba(255,255,255,0.1);
  box-shadow:0 8px 24px rgba(0,0,0,0.4);
  display:none;
  flex-direction:column;
  z-index:1000;
}

.user-profile-nav.open .user-dropdown-menu{
  display:flex;
}

.user-dropdown-item{
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  border-radius:6px;
  color:#fff;
  text-decoration:none;
  transition:background 0.2s ease;
}

.user-dropdown-item i{
  font-size:14px;
  color:#9ca3af;
  width:14px;
  flex-shrink:0;
}

.user-dropdown-item-content{
  display:flex;
  flex-direction:column;
  gap:1px;
  flex:1;
}

.user-dropdown-item-title{
  font-size:13px;
  font-weight:600;
  color:#fff;
  line-height:1.3;
}

.user-dropdown-item-subtitle{
  font-size:11px;
  font-weight:400;
  color:#9ca3af;
  line-height:1.3;
}

.user-dropdown-item:hover{
  background:rgba(255,255,255,0.08);
}

.user-dropdown-item.logout{
  border-top:1px solid rgba(255,255,255,0.1);
  margin-top:2px;
  padding-top:8px;
}

.user-dropdown-item.logout i{
  color:#ef4444;
}

/* Currency Selector */
.currency-nav-item{
  position:relative;
  z-index:9999;
}

.currency-profile-nav{
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 18px;
  height:56px;
  background:rgba(255,255,255,0.08);
  border:none;
  border-radius:12px;
  cursor:pointer;
  transition:all 0.15s ease;
  position:relative;
  font-size:17px;
}

.currency-profile-nav:hover{
  background:rgba(255,255,255,0.12);
}

.currency-profile-nav:focus-visible{
  outline:none;
  box-shadow:0 0 0 2px rgba(255,255,255,0.2);
}

.currency-profile-nav.open .brand-caret{
  transform:rotate(180deg);
}

.currency-dropdown-menu{
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  min-width:180px;
  background:#1a1a1a;
  border:1px solid rgba(255,255,255,0.1);
  border-radius:12px;
  padding:6px;
  box-shadow:0 8px 32px rgba(0,0,0,0.4);
  opacity:0;
  visibility:hidden;
  transform:translateY(-8px);
  transition:all 0.2s ease;
  z-index:9999;
  overflow:visible;
}

.currency-profile-nav.open .currency-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

/* Currency dropdown items - full clickable area */
.currency-item{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 14px;
  color:rgba(255,255,255,0.8);
  text-decoration:none;
  border-radius:8px;
  transition:all 0.15s ease;
  cursor:pointer;
}

.currency-item:hover{
  background:rgba(255,255,255,0.08);
  color:#fff;
}

.currency-item.active{
  background:rgba(255,255,255,0.1);
  color:#fff;
}

.currency-item i{
  font-size:14px;
  color:rgba(255,255,255,0.5);
  width:18px;
  text-align:center;
}

.currency-item-code{
  font-size:14px;
  font-weight:600;
  color:#fff;
}

.currency-item-name{
  font-size:12px;
  color:rgba(255,255,255,0.5);
  margin-left:auto;
}

.currency-icon{
  font-size:14px;
  color:#fff;
}

.currency-name-nav{
  font-size:13px;
  font-weight:500;
  color:#fff;
}

/* ========================================
   SCROLL ANIMATIONS
   ======================================== */

/* Base state - hidden */
[data-animate]{
  opacity:0 !important;
  transform:translateY(30px) !important;
  transition:opacity 0.6s ease, transform 0.6s ease !important;
}

/* Animated state - visible */
[data-animate].animated{
  opacity:1 !important;
  transform:translateY(0) !important;
}

/* Different animation styles */
[data-animate="fade-up"]{
  opacity:0 !important;
  transform:translateY(40px) !important;
}

[data-animate="fade-up"].animated{
  opacity:1 !important;
  transform:translateY(0) !important;
}

[data-animate="fade-in"]{
  opacity:0 !important;
  transform:none !important;
}

[data-animate="fade-in"].animated{
  opacity:1 !important;
}

[data-animate="fade-left"]{
  opacity:0 !important;
  transform:translateX(-40px) !important;
}

[data-animate="fade-left"].animated{
  opacity:1 !important;
  transform:translateX(0) !important;
}

[data-animate="fade-right"]{
  opacity:0 !important;
  transform:translateX(40px) !important;
}

[data-animate="fade-right"].animated{
  opacity:1 !important;
  transform:translateX(0) !important;
}

[data-animate="scale-up"]{
  opacity:0 !important;
  transform:scale(0.9) !important;
}

[data-animate="scale-up"].animated{
  opacity:1 !important;
  transform:scale(1) !important;
}

[data-animate="zoom-in"]{
  opacity:0 !important;
  transform:scale(0.8) !important;
}

[data-animate="zoom-in"].animated{
  opacity:1 !important;
  transform:scale(1) !important;
}

/* Staggered delays for grid items */
[data-animate-delay="1"]{ transition-delay:0.1s !important; }
[data-animate-delay="2"]{ transition-delay:0.2s !important; }
[data-animate-delay="3"]{ transition-delay:0.3s !important; }
[data-animate-delay="4"]{ transition-delay:0.4s !important; }
[data-animate-delay="5"]{ transition-delay:0.5s !important; }
[data-animate-delay="6"]{ transition-delay:0.6s !important; }
[data-animate-delay="7"]{ transition-delay:0.7s !important; }
[data-animate-delay="8"]{ transition-delay:0.8s !important; }

/* Hide subcategory toggles and submenus in horizontal nav */
.navigation-list .has-children .toggle{
  display:none;
}

.navigation-list .has-children > ul{
  display:none;
}

/* ========================================
   PRODUCTS DROPDOWN NAVIGATION
   ======================================== */

.products-dropdown-nav{
  position:relative !important;
}

.products-dropdown-trigger{
  display:flex;
  align-items:center;
  gap:6px;
  padding:10px 16px;
  color:rgba(255,255,255,0.85);
  text-decoration:none;
  font-size:14px;
  font-weight:500;
  border-radius:8px;
  transition:all 0.2s ease;
  cursor:pointer;
}

.products-dropdown-trigger:hover{
  color:#fff;
}

.products-dropdown-trigger .dropdown-caret{
  font-size:10px;
  opacity:0.6;
  transition:transform 0.2s ease;
}

.products-dropdown-nav:hover .dropdown-caret{
  transform:rotate(180deg);
}

/* Products Dropdown Menu */
.products-dropdown-menu{
  position:absolute !important;
  top:100% !important;
  left:0 !important;
  min-width:280px !important;
  background:#1a1a1a !important;
  border:1px solid rgba(255,255,255,0.1) !important;
  border-radius:12px !important;
  padding:16px 20px !important;
  box-shadow:0 12px 40px rgba(0,0,0,0.5) !important;
  opacity:0 !important;
  visibility:hidden !important;
  transition:opacity 0.2s ease, visibility 0.2s ease !important;
  z-index:99999 !important;
  display:grid !important;
  grid-template-columns:repeat(2, 1fr) !important;
  gap:6px 32px !important;
  pointer-events:none !important;
  margin-top:5px !important;
}

.products-dropdown-menu.show{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

/* Dropdown Item */
.products-dropdown-item{
  display:block;
  padding:8px 0;
  color:rgba(255,255,255,0.7);
  font-size:14px;
  font-weight:500;
  text-decoration:none;
  transition:all 0.15s ease;
  white-space:nowrap;
}

.products-dropdown-item:hover{
  color:#fff;
}

/* ========================================
   SCRIPTS DROPDOWN
   ======================================== */

.scripts-dropdown{
  position:relative;
}

.scripts-dropdown-trigger{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  color:var(--nav-text-default) !important;
  background:transparent !important;
  border:none !important;
  padding:8px 16px !important;
  font-size:14px !important;
  font-weight:500 !important;
  font-family:Inter,system-ui,-apple-system,sans-serif !important;
  cursor:pointer !important;
  transition:color 0.15s ease !important;
  white-space:nowrap !important;
  border-radius:6px !important;
}

.scripts-dropdown-trigger:hover{
  color:#fff !important;
}

.scripts-dropdown-trigger.active{
  color:#fff !important;
}

/* Active underline for Scripts dropdown */
.scripts-dropdown-trigger.active::after{
  content:"";
  position:absolute;
  bottom:-12px;
  left:50%;
  transform:translateX(-50%);
  width:calc(100% - 16px);
  height:2px;
  background:#fff;
  border-radius:1px;
}

.scripts-dropdown-trigger i:first-child{
  font-size:14px;
}

.scripts-caret{
  font-size:10px !important;
  opacity:0.6;
  transition:transform 0.2s ease;
}


/* Scripts Dropdown Menu */
.scripts-dropdown-menu{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  min-width:200px;
  background:#161616;
  border:1px solid rgba(255,255,255,0.1);
  border-radius:12px;
  padding:8px 0;
  box-shadow:0 16px 48px rgba(0,0,0,0.4);
  opacity:0;
  visibility:hidden;
  transform:translateY(-10px);
  transform-origin:top center;
  transition:opacity 0.3s ease, transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), visibility 0.3s ease;
  z-index:99999;
  pointer-events:none;
}

.scripts-dropdown.open .scripts-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}

.scripts-dropdown.open .scripts-caret{
  transform:rotate(180deg);
}

.scripts-dropdown-item{
  display:flex;
  align-items:center;
  gap:14px;
  padding:12px 20px;
  color:#fff;
  text-decoration:none;
  font-size:14px;
  font-weight:500;
  transition:background 0.15s ease;
}

.scripts-dropdown-item:hover{
  background:rgba(255,255,255,0.06);
}

.scripts-dropdown-item.active{
  background:rgba(255,255,255,0.08);
}

.scripts-dropdown-item i{
  font-size:16px;
  color:rgba(255,255,255,0.5);
  width:20px;
  text-align:center;
}

/* ========================================
   DOCS NAV BUTTON - Uses .nav-link style
   ======================================== */

.docs-nav-link .external-icon{
  display:none;
}

/* Hide Discord link */
.navigation-list .discord-link{
  display:none;
}

/* Close navigation button (mobile) */
.close-navigation{
  display:none;
}

/* Responsive */
@media (max-width: 1024px){
  .site-navigation{
    padding:0 16px;
    gap:16px;
  }
  
  .navigation-list{
    gap:16px;
  }
  
  .navigation-list > li > a{
    padding:8px 10px;
    font-size:13px;
  }
}

@media (max-width: 768px){
  .navigation-list{
    overflow-x:auto;
    overflow-y:hidden;
    justify-content:flex-start;
    scrollbar-width:none;
    -ms-overflow-style:none;
    gap:12px;
  }
  
  .navigation-list::-webkit-scrollbar{
    display:none;
  }
  
  .site-navigation{
    height:52px;
  }
  
  .nav-discord-btn {
    width: 36px;
    height: 36px;
  }

  .nav-discord-btn .discord-icon {
    font-size: 18px;
  }

  .nav-basket-btn{
    width:36px;
    height:36px;
  }

  .nav-basket-btn .cart-icon{
    width:18px;
    height:18px;
  }

  /* Login Button Mobile */
  .btn-fivem-login{
    height:52px;
    padding:0 19px;
    font-size:15px;
    gap:10px;
  }
  
  .fivem-logo svg{
    width:20px;
    height:20px;
  }
  
  .login-text{
    font-size:15px;
  }
  
  /* User Profile Mobile */
  .user-profile-nav{
    height:36px;
    padding:0 12px;
    font-size:13px;
  }
}

/* ========================================
   MODERN LOGIN POPUP STYLING
   ======================================== */

/* Popup Container */
.login-popup {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.login-popup-content,
.login-modal-content {
    background: linear-gradient(145deg, rgba(20, 20, 20, 0.98), rgba(10, 10, 10, 0.98)) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 20px !important;
    padding: 40px !important;
    max-width: 420px !important;
    width: 100% !important;
    margin: 0 auto !important;
    position: relative !important;
    box-shadow:
        0 25px 50px -12px rgba(0, 0, 0, 0.5),
        0 0 0 1px rgba(255, 255, 255, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

/* Header Section */
.login-modal-header {
    text-align: center;
    margin-bottom: 32px;
}

.login-modal-icon {
    width: 72px;
    height: 72px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.login-modal-icon i {
    font-size: 32px;
    color: #fff;
    opacity: 0.9;
}

.login-modal-title {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 0 8px 0 !important;
    letter-spacing: -0.02em;
}

.login-modal-subtitle {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.5);
    margin: 0;
    font-weight: 400;
}

/* Login Options Container */
.login-modal-options {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Login Option Buttons */
.login-option-btn {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 20px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    text-decoration: none;
    transition: all 0.25s ease;
    cursor: pointer;
}

.login-option-btn:hover {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.15);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}

.login-option-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* FiveM/CFX Button */
.login-option-fivem .login-option-icon {
    background: linear-gradient(135deg, #F40552, #FF6B35);
}

.login-option-fivem .login-option-icon svg {
    width: 24px;
    height: 24px;
    fill: #fff;
}

.login-option-fivem:hover {
    border-color: rgba(244, 5, 82, 0.3);
    box-shadow: 0 8px 25px rgba(244, 5, 82, 0.15);
}

/* Discord Button */
.login-option-discord .login-option-icon {
    background: linear-gradient(135deg, #5865F2, #7289DA);
}

.login-option-discord .login-option-icon i {
    font-size: 24px;
    color: #fff;
}

.login-option-discord:hover {
    border-color: rgba(88, 101, 242, 0.3);
    box-shadow: 0 8px 25px rgba(88, 101, 242, 0.15);
}

/* Option Text */
.login-option-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.login-option-label {
    font-size: 15px;
    font-weight: 600;
    color: #fff;
}

.login-option-desc {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.4);
}

.login-option-arrow {
    color: rgba(255, 255, 255, 0.3);
    font-size: 14px;
    transition: all 0.25s ease;
}

.login-option-btn:hover .login-option-arrow {
    color: rgba(255, 255, 255, 0.6);
    transform: translateX(4px);
}

/* Username Login Form */
.login-username-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.login-input-group {
    position: relative;
}

.login-input-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(255, 255, 255, 0.3);
    font-size: 16px;
}

.login-input {
    width: 100%;
    padding: 16px 16px 16px 48px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    font-size: 15px;
    color: #fff;
    transition: all 0.2s ease;
}

.login-input::placeholder {
    color: rgba(255, 255, 255, 0.3);
}

.login-input:focus {
    outline: none;
    border-color: rgba(255, 255, 255, 0.25);
    background: rgba(255, 255, 255, 0.05);
}

.login-submit-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 24px;
    background: #fff;
    border: none;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 600;
    color: #0a0a0a;
    cursor: pointer;
    transition: all 0.25s ease;
}

.login-submit-btn:hover {
    background: rgba(255, 255, 255, 0.9);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(255, 255, 255, 0.15);
}

.login-submit-btn i {
    font-size: 12px;
    transition: transform 0.25s ease;
}

.login-submit-btn:hover i {
    transform: translateX(4px);
}

/* Footer */
.login-modal-footer {
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    text-align: center;
}

.login-modal-terms {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.35);
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.login-modal-terms i {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.25);
}

/* Close Button Override */
.login-popup .popup-close,
.login-popup-content .popup-close {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    width: 36px !important;
    height: 36px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    color: rgba(255, 255, 255, 0.6) !important;
    font-size: 14px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.login-popup .popup-close:hover,
.login-popup-content .popup-close:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.15) !important;
    color: #fff !important;
}

/* Hide old elements */
.login-popup-content h2,
.login-popup-content .field,
.login-popup-content .btn-fivem-login:not(.login-option-btn) {
    display: none !important;
}

/* Mobile Responsive */
@media (max-width: 480px) {
    .login-popup-content,
    .login-modal-content {
        margin: 16px !important;
        padding: 28px 20px !important;
        border-radius: 16px !important;
    }

    .login-modal-icon {
        width: 60px;
        height: 60px;
    }

    .login-modal-icon i {
        font-size: 26px;
    }

    .login-modal-title {
        font-size: 20px !important;
    }

    .login-option-btn {
        padding: 14px 16px;
    }

    .login-option-icon {
        width: 42px;
        height: 42px;
    }
}

/* ========================================
   OPTIONS/ADD TO BASKET POPUP STYLING
   ======================================== */

/* Options Modal Container */
.options-modal-content,
.popup-content.store-product-options,
.store-product-options {
    background: linear-gradient(145deg, rgba(20, 20, 20, 0.98), rgba(10, 10, 10, 0.98)) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 20px !important;
    padding: 36px !important;
    max-width: 440px !important;
    width: 100% !important;
    margin: 0 auto !important;
    box-shadow:
        0 25px 50px -12px rgba(0, 0, 0, 0.5),
        0 0 0 1px rgba(255, 255, 255, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

/* Close button for options popup */
.popup-content.store-product-options .popup-close {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    width: 36px !important;
    height: 36px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    color: rgba(255, 255, 255, 0.6) !important;
    font-size: 0 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
    z-index: 10;
}

.popup-content.store-product-options .popup-close::before {
    content: "\f00d";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 14px;
}

.popup-content.store-product-options .popup-close:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.15) !important;
    color: #fff !important;
}

/* Header */
.options-modal-header {
    text-align: center;
    margin-bottom: 28px;
}

.options-modal-icon {
    width: 64px;
    height: 64px;
    background: linear-gradient(135deg, var(--color-primary, #0048ff), rgba(0, 72, 255, 0.7));
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
}

.options-modal-icon i {
    font-size: 26px;
    color: #fff;
}

.options-modal-title {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 0 8px 0 !important;
    letter-spacing: -0.02em;
    line-height: 1.3;
}

.options-modal-subtitle {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.45);
    margin: 0;
}

/* Form */
.options-modal-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Field Styles */
.options-field {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.options-field-label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.7);
}

.options-field-label i {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.4);
}

.options-field-desc {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.4);
    margin: 0;
}

/* Input Styles */
.options-input {
    width: 100%;
    padding: 14px 16px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    font-size: 14px;
    color: #fff;
    transition: all 0.2s ease;
}

.options-input::placeholder {
    color: rgba(255, 255, 255, 0.3);
}

.options-input:focus {
    outline: none;
    border-color: rgba(255, 255, 255, 0.25);
    background: rgba(255, 255, 255, 0.06);
}

.options-input-group {
    position: relative;
    display: flex;
    align-items: center;
}

.options-input-prefix {
    position: absolute;
    left: 16px;
    color: rgba(255, 255, 255, 0.5);
    font-size: 14px;
    font-weight: 500;
}

.options-input-group .options-input {
    padding-left: 45px;
}

/* Select Styles */
.options-select-wrapper {
    position: relative;
}

.options-select {
    width: 100%;
    padding: 14px 40px 14px 16px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    font-size: 14px;
    color: #fff;
    cursor: pointer;
    appearance: none;
    transition: all 0.2s ease;
}

.options-select:focus {
    outline: none;
    border-color: rgba(255, 255, 255, 0.25);
    background: rgba(255, 255, 255, 0.06);
}

.options-select option {
    background: #1a1a1a;
    color: #fff;
}

.options-select-icon {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(255, 255, 255, 0.4);
    font-size: 12px;
    pointer-events: none;
}

/* Discord Section */
.options-discord-section {
    background: rgba(88, 101, 242, 0.08);
    border: 1px solid rgba(88, 101, 242, 0.2);
    border-radius: 14px;
    padding: 16px;
}

.options-discord-header {
    display: flex;
    align-items: center;
    gap: 14px;
}

.options-discord-icon {
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, #5865F2, #7289DA);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.options-discord-icon i {
    font-size: 20px;
    color: #fff;
}

.options-discord-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.options-discord-title {
    font-size: 14px;
    font-weight: 600;
    color: #fff;
}

.options-discord-status {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.5);
    display: flex;
    align-items: center;
    gap: 6px;
}

.options-discord-connected {
    color: #57F287;
}

.options-discord-connected i {
    font-size: 12px;
}

/* Action Buttons */
.options-modal-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 8px;
}

.options-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 20px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.25s ease;
    border: none;
}

.options-btn i {
    font-size: 14px;
}

/* Primary Button (White) */
.options-btn-primary {
    background: #fff;
    color: #0a0a0a;
}

.options-btn-primary:hover {
    background: rgba(255, 255, 255, 0.9);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(255, 255, 255, 0.15);
}

/* Discord Button (Purple) */
.options-btn-discord {
    background: linear-gradient(135deg, #5865F2, #4752C4);
    color: #fff;
}

.options-btn-discord:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(88, 101, 242, 0.3);
}

/* Secondary Button (Outline) */
.options-btn-secondary {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: rgba(255, 255, 255, 0.8);
}

.options-btn-secondary:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.25);
    color: #fff;
}

/* Link Button */
.options-btn-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.5);
    text-decoration: none;
    transition: color 0.2s ease;
}

.options-btn-link:hover {
    color: rgba(255, 255, 255, 0.8);
}

.options-btn-link i {
    font-size: 12px;
}

/* Ensure new options modal shows properly */
.store-product-options.options-modal-content .options-modal-header,
.store-product-options.options-modal-content .options-modal-form,
.store-product-options.options-modal-content .options-field,
.store-product-options.options-modal-content .options-discord-section,
.store-product-options.options-modal-content .options-modal-actions {
    display: flex !important;
}

/* Mobile Responsive */
@media (max-width: 480px) {
    .options-modal-content,
    .store-product-options {
        margin: 16px !important;
        padding: 24px 18px !important;
        border-radius: 16px !important;
    }

    .options-modal-icon {
        width: 56px;
        height: 56px;
    }

    .options-modal-icon i {
        font-size: 22px;
    }

    .options-modal-title {
        font-size: 18px !important;
    }

    .options-btn {
        padding: 12px 16px;
    }
}

/* ========================================
   MODERN BASKET/CART POPUP STYLING
   ======================================== */

/* Basket Popup Centering */
.basket-popup .popup-scroll-cont {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Basket Popup Container */
.basket-popup-content,
.basket.basket-modern {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    max-width: 1200px !important;
    width: 95vw !important;
    margin: 0 auto !important;
    box-shadow: none !important;
    overflow: visible;
    display: flex;
    flex-direction: column;
    max-height: 90vh;
}

/* Basket Header */
.basket-modern .basket-header {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 24px 24px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
    background: transparent !important;
}

.basket-modern .basket-header-icon {
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, var(--color-primary, #0048ff), rgba(0, 72, 255, 0.7));
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.basket-modern .basket-header-icon i {
    font-size: 20px;
    color: #fff;
}

.basket-modern .basket-header-info {
    flex: 1;
}

.basket-modern .basket-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 0 4px 0 !important;
}

.basket-modern .basket-subtitle {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.5);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 6px;
}

.basket-modern .basket-subtitle i {
    font-size: 11px;
}

/* Hide old second header */
.basket-modern .basket-second-header {
    display: none !important;
}

/* Basket Content */
.basket-modern .basket-content {
    flex: 1;
    overflow-y: auto;
    padding: 16px 24px !important;
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 255, 255, 0.2) transparent;
}

.basket-modern .basket-content::-webkit-scrollbar {
    width: 6px;
}

.basket-modern .basket-content::-webkit-scrollbar-track {
    background: transparent;
}

.basket-modern .basket-content::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.2);
    border-radius: 3px;
}

/* Empty Cart */
.basket-modern .basket-empty {
    text-align: center;
    padding: 40px 20px;
}

.basket-modern .basket-empty-icon {
    width: 80px;
    height: 80px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.basket-modern .basket-empty-icon i {
    font-size: 32px;
    color: rgba(255, 255, 255, 0.3);
}

.basket-modern .basket-empty-text {
    font-size: 15px;
    color: rgba(255, 255, 255, 0.5);
    margin: 0 0 20px 0;
}

.basket-modern .basket-empty-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    color: #fff;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
}

.basket-modern .basket-empty-btn:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.15);
}

/* Basket Items */
.basket-modern .basket-items {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

/* Individual Item */
.basket-modern .basket-item {
    display: flex !important;
    gap: 14px !important;
    padding: 16px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 14px !important;
    transition: all 0.2s ease !important;
}

.basket-modern .basket-item:hover {
    background: rgba(255, 255, 255, 0.05) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
}

/* Item Image */
.basket-modern .basket-item-image {
    width: 64px;
    height: 64px;
    border-radius: 10px;
    overflow: hidden;
    flex-shrink: 0;
    background: rgba(255, 255, 255, 0.05);
}

.basket-modern .basket-item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.basket-modern .basket-item-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.05);
}

.basket-modern .basket-item-placeholder i {
    font-size: 24px;
    color: rgba(255, 255, 255, 0.3);
}

/* Item Info */
.basket-modern .basket-item-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.basket-modern .basket-item-title {
    margin: 0 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

.basket-modern .basket-item-title a {
    color: #fff !important;
    text-decoration: none !important;
    transition: color 0.2s ease;
}

.basket-modern .basket-item-title a:hover {
    color: var(--color-primary, #0048ff) !important;
}

.basket-modern .basket-item-options {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.basket-modern .basket-item-options li {
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.5) !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.basket-modern .basket-item-options li::before {
    display: none !important;
}

.basket-modern .basket-item-options li i {
    font-size: 9px;
    opacity: 0.6;
}

.basket-modern .basket-item-options li strong {
    color: rgba(255, 255, 255, 0.7);
}

.basket-modern .basket-item-price {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #fff !important;
}

/* Item Actions */
.basket-modern .basket-item-actions {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
}

/* Quantity Control */
.basket-modern .basket-qty-control {
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    overflow: hidden;
}

.basket-modern .basket-qty-btn {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.6);
    cursor: pointer;
    transition: all 0.2s ease;
}

.basket-modern .basket-qty-btn:hover:not(:disabled) {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.basket-modern .basket-qty-btn:disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

.basket-modern .basket-qty-btn i {
    font-size: 10px;
}

.basket-modern .basket-qty-input {
    width: 40px !important;
    height: 32px !important;
    background: transparent !important;
    border: none !important;
    border-left: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-align: center !important;
    -moz-appearance: textfield !important;
}

.basket-modern .basket-qty-input::-webkit-outer-spin-button,
.basket-modern .basket-qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Remove Button */
.basket-modern .basket-remove-btn {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.2);
    border-radius: 8px;
    color: #ef4444;
    text-decoration: none;
    transition: all 0.2s ease;
}

.basket-modern .basket-remove-btn::before {
    display: none !important;
}

.basket-modern .basket-remove-btn:hover {
    background: rgba(239, 68, 68, 0.2);
    border-color: rgba(239, 68, 68, 0.3);
}

.basket-modern .basket-remove-btn i {
    font-size: 12px;
}

/* Basket Footer */
.basket-modern .basket-footer {
    padding: 20px 24px 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    background: rgba(0, 0, 0, 0.2);
}

.basket-modern .basket-summary {
    margin-bottom: 12px;
}

.basket-modern .basket-summary-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
}

.basket-modern .basket-summary-label {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.5);
}

.basket-modern .basket-summary-value {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.8);
}

.basket-modern .basket-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    margin-bottom: 16px;
}

.basket-modern .basket-total-label {
    font-size: 16px;
    font-weight: 600;
    color: #fff;
}

.basket-modern .basket-total-value {
    font-size: 22px;
    font-weight: 700;
    color: #fff;
}

/* Checkout Button */
.basket-modern .basket-checkout-btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 24px;
    background: #fff;
    border: none;
    border-radius: 12px;
    color: #0a0a0a;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.25s ease;
}

.basket-modern .basket-checkout-btn:hover {
    background: rgba(255, 255, 255, 0.9);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(255, 255, 255, 0.15);
}

.basket-modern .basket-checkout-btn i {
    font-size: 12px;
    transition: transform 0.25s ease;
}

.basket-modern .basket-checkout-btn:hover i {
    transform: translateX(4px);
}

/* Secure Text */
.basket-modern .basket-secure {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 16px;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.35);
}

.basket-modern .basket-secure i {
    font-size: 11px;
}

/* Hide old basket checkout section */
.basket-modern .basket-checkout:not(.basket-checkout-btn) {
    display: none !important;
}

/* Basket Popup Close Button */
.basket-popup .popup-close {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    width: 36px !important;
    height: 36px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    color: rgba(255, 255, 255, 0.6) !important;
    font-size: 0 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
    z-index: 10;
}

.basket-popup .popup-close::before {
    content: "\f00d";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 14px;
}

.basket-popup .popup-close:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.15) !important;
    color: #fff !important;
}

/* Mobile Responsive */
@media (max-width: 520px) {
    .basket-popup-content,
    .basket.basket-modern {
        margin: 12px !important;
        max-height: 90vh !important;
        border-radius: 16px !important;
    }

    .basket-modern .basket-header {
        padding: 20px 18px 16px !important;
    }

    .basket-modern .basket-content {
        padding: 12px 18px !important;
    }

    .basket-modern .basket-item {
        padding: 12px !important;
        gap: 12px !important;
    }

    .basket-modern .basket-item-image {
        width: 56px;
        height: 56px;
    }

    .basket-modern .basket-item-actions {
        flex-direction: row;
        align-items: center;
    }

    .basket-modern .basket-footer {
        padding: 16px 18px 20px;
    }

    .basket-modern .basket-checkout-btn {
        padding: 14px 20px;
    }
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce){
  .btn-fivem-login{
    transition:none;
  }
}



/* Recent Payments Widget - With Custom SVG Icon */
.widget.widget-recent {
    background: #ffffff !important;
    border-radius: 50px !important;
    padding: 8px 15px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    font-family: Arial, sans-serif !important;
    color: #000 !important;
    border: none !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1) !important;
    max-width: fit-content !important;
    margin: 20px auto !important;
    overflow: visible !important;
}

.widget.widget-recent .widget-content {
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    overflow: visible !important;
}

.widget.widget-recent .widget-title {
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #000 !important;
    white-space: nowrap !important;
}

/* Hide the original Font Awesome icon and replace with SVG */
.widget.widget-recent .widget-title i,
.widget.widget-recent .user-icon {
    display: none !important;
}

/* Add custom SVG icon */
.widget.widget-recent .widget-title::before {
    content: "" !important;
    display: inline-block !important;
    width: 16px !important;
    height: 16px !important;
    background-image: url('data:image/svg+xml;base64,PHN2ZyBpZD0iUmVjZW50bHktVmlld2VkLS1TdHJlYW1saW5lLUNhcmJvbiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTYgMTYiIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPGRlc2M+CiAgICBSZWNlbnRseSBWaWV3ZWQgU3RyZWFtbGluZSBJY29uOiBodHRwczovL3N0cmVhbWxpbmVocS5jb20KICA8L2Rlc2M+CiAgPGRlZnM+PC9kZWZzPgogIDx0aXRsZT5yZWNlbnRseS12aWV3ZWQ8L3RpdGxlPgogIDxwYXRoIGQ9Ik0xMC4yOTUgMTEgNy41IDguMjA1IDcuNSAzLjVsMS0wIDAgNC4yOSAyLjUgMi41MDVMMTAuMjk1IDExeiIgZmlsbD0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIwLjUiPjwvcGF0aD4KICA8cGF0aCBkPSJNOCAxQTYuOTcgNi45NyAwIDAgMCAzIDMuMTE1VjFIMnY0aDRWNEgzLjU0QTYgNiAwIDEgMSAyIDhIMUE3IDcgMCAxIDAgOCAxWiIgZmlsbD0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIwLjUiPjwvcGF0aD4KICA8cGF0aCBpZD0iX1RyYW5zcGFyZW50X1JlY3RhbmdsZV8iIGQ9Ik0wIDBoMTZ2MTZIMFZ6IiBmaWxsPSJub25lIiBzdHJva2Utd2lkdGg9IjAuNSI+PC9wYXRoPgo8L3N2Zz4=') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    flex-shrink: 0 !important;
}

/* First purchase card */
.widget.widget-recent .first-purchase-card {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    margin: 0 !important;
    position: relative !important;
}

.widget.widget-recent .purchase-card-info {
    display: none !important;
}

/* Avatar styling */
.widget.widget-recent .purchase-card-avatar,
.widget.widget-recent .purchase-item {
    position: relative !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

.widget.widget-recent .purchase-card-avatar img,
.widget.widget-recent .purchase-item img,
.widget.widget-recent .avatar {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 2px solid #fff !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.15) !important;
    transition: transform 0.2s ease !important;
    cursor: pointer !important;
    display: block !important;
}

.widget.widget-recent .purchase-card-avatar img:hover,
.widget.widget-recent .purchase-item img:hover,
.widget.widget-recent .avatar:hover {
    transform: scale(1.1) !important;
    z-index: 10 !important;
    position: relative !important;
}

/* Purchases grid */
.widget.widget-recent .purchases-grid {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    grid-template-columns: none !important;
    overflow: visible !important;
}

/* Tooltip styling */
.widget.widget-recent .tooltip {
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    bottom: 45px !important;
    left: 50% !important;
    transform: translateX(-50%) translateY(10px) !important;
    background: #333 !important;
    color: #fff !important;
    padding: 8px 12px !important;
    font-size: 11px !important;
    border-radius: 8px !important;
    white-space: nowrap !important;
    z-index: 1000 !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
    pointer-events: none !important;
    transition: all 0.3s ease !important;
    display: block !important;
    min-width: 120px !important;
    text-align: center !important;
}

/* Show tooltip on hover */
.widget.widget-recent .purchase-item:hover .tooltip,
.widget.widget-recent .purchase-card-avatar:hover .tooltip {
    visibility: visible !important;
    opacity: 1 !important;
    transform: translateX(-50%) translateY(0) !important;
}

/* Tooltip content styling */
.widget.widget-recent .tooltip .ign {
    display: block !important;
    font-weight: bold !important;
    color: #fff !important;
    margin-bottom: 2px !important;
}

.widget.widget-recent .tooltip .purchase-action {
    display: inline !important;
    color: #ccc !important;
    margin-right: 4px !important;
}

.widget.widget-recent .tooltip .package-details {
    display: inline !important;
    color: #4CAF50 !important;
}

.widget.widget-recent .tooltip .tooltip-price {
    color: #FFD700 !important;
}

.widget.widget-recent .tooltip small {
    display: block !important;
    color: #999 !important;
    margin-top: 2px !important;
    font-size: 10px !important;
}

/* Tooltip arrow */
.widget.widget-recent .tooltip::after {
    content: "" !important;
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    margin-left: -6px !important;
    border-width: 6px 6px 0 6px !important;
    border-style: solid !important;
    border-color: #333 transparent transparent transparent !important;
}

/* Hide empty state */
.widget.widget-recent .empty {
    display: none !important;
}

/* Add separator */
.widget.widget-recent .widget-title::after {
    content: "|" !important;
    margin-left: 8px !important;
    color: #ccc !important;
    font-weight: 300 !important;
}

/* Responsive design */
@media (max-width: 768px) {
    .widget.widget-recent {
        padding: 6px 12px !important;
        gap: 8px !important;
        max-width: 95% !important;
    }
    
    .widget.widget-recent .purchase-card-avatar img,
    .widget.widget-recent .purchase-item img,
    .widget.widget-recent .avatar {
        width: 28px !important;
        height: 28px !important;
    }
    
    .widget.widget-recent .widget-title {
        font-size: 11px !important;
    }
    
    .widget.widget-recent .widget-title::before {
        width: 14px !important;
        height: 14px !important;
    }
    
    .widget.widget-recent .purchases-grid {
        gap: 6px !important;
    }
    
    .widget.widget-recent .tooltip {
        bottom: 40px !important;
        font-size: 10px !important;
        padding: 6px 10px !important;
    }
}

/* Force tooltip to work */
.widget.widget-recent .purchase-item,
.widget.widget-recent .purchase-card-avatar {
    overflow: visible !important;
}

.widget.widget-recent .purchase-item:hover,
.widget.widget-recent .purchase-card-avatar:hover {
    overflow: visible !important;
    z-index: 1001 !important;
}

/* Card Container - Only target article.product */
article.product {
    background: linear-gradient(135deg, #0a0a0a 0%, #111 100%);
    border-radius: 16px;
    border: none;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
    position: relative;
    height: 100%;
}

article.product:hover {
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.4), 0 0 0 2px rgba(255, 255, 255, 0.3);
    transform: translateY(-5px);
}

/* Image Section - Only target within article.product */
article.product .image-link {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 16/9;
}

article.product .image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    display: block;
}

article.product .image-link:hover .image {
    transform: scale(1.05);
}

/* Gradient overlay on image bottom */
article.product .image-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.7));
    pointer-events: none;
}

/* Hover Overlay */
article.product .hover-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 2;
}

article.product .image-link:hover .hover-overlay {
    opacity: 1;
}

article.product .hover-overlay i {
    font-size: 2em;
    color: white;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
    margin-bottom: 10px;
    animation: iconPulse 2s infinite;
}

@keyframes iconPulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.1); }
    100% { transform: scale(1); }
}

article.product .hover-text {
    color: white;
    font-size: 0.8rem;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-align: center;
}

/* Best Seller Tag */
article.product .product-tag {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 10;
    padding: 5px 10px;
    font-family: Rubik, sans-serif;
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border-radius: 4px;
    background: var(--color-brighter-bg);
    border: 1px solid #2D2D2D;
    color: #a0a0a0;
    transition: all 0.2s ease;
}

article.product .product-tag-bestseller {
    background: #fff !important;
    border: none !important;
    color: #121212 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    letter-spacing: 0.8px !important;
    padding: 8px 16px !important;
    border-radius: 6px !important;
    box-shadow:
        0 0 10px rgba(255, 255, 255, 0.5),
        0 0 25px rgba(255, 255, 255, 0.2),
        0 0 45px rgba(255, 255, 255, 0.1) !important;
    animation: bestseller-neon 2s ease-in-out infinite alternate !important;
    z-index: 20 !important;
    text-transform: uppercase !important;
    overflow: hidden !important;
    position: absolute !important;
    left: 10px !important;
    right: auto !important;
}

article.product .product-tag-bestseller::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    animation: bestseller-shimmer 3s ease-in-out infinite;
    pointer-events: none;
}

article.product .product-tag-bestseller i {
    font-size: 13px !important;
    color: #121212 !important;
}

article.product:hover .product-tag-bestseller {
    background: #fff !important;
    border: none !important;
    box-shadow:
        0 0 15px rgba(255, 255, 255, 0.6),
        0 0 35px rgba(255, 255, 255, 0.25),
        0 0 55px rgba(255, 255, 255, 0.12) !important;
}

/* ================================================
   BEST SELLER — Card effects (box-shadow based, can't be clipped)
   ================================================ */

/* Category page bestseller cards */
.store-products-images article.product.is-bestseller {
    border: 1px solid rgba(255, 255, 255, 0.25) !important;
    box-shadow:
        0 0 15px rgba(255, 255, 255, 0.08),
        0 0 30px rgba(255, 255, 255, 0.04),
        0 8px 25px rgba(0, 0, 0, 0.3) !important;
    animation: bestseller-card-pulse 3s ease-in-out infinite !important;
}

.store-products-images article.product.is-bestseller:hover {
    border-color: rgba(255, 255, 255, 0.4) !important;
    box-shadow:
        0 0 25px rgba(255, 255, 255, 0.15),
        0 0 50px rgba(255, 255, 255, 0.06),
        0 12px 40px rgba(0, 0, 0, 0.4) !important;
    transform: translateY(-6px) !important;
}

/* Featured slider bestseller cards */
.featured-product-card.is-bestseller {
    border: 1px solid rgba(255, 255, 255, 0.25) !important;
    box-shadow:
        0 0 15px rgba(255, 255, 255, 0.08),
        0 0 30px rgba(255, 255, 255, 0.04),
        0 8px 25px rgba(0, 0, 0, 0.3) !important;
    animation: bestseller-card-pulse 3s ease-in-out infinite !important;
}

.featured-product-card.is-bestseller:hover {
    border-color: rgba(255, 255, 255, 0.4) !important;
    box-shadow:
        0 0 25px rgba(255, 255, 255, 0.15),
        0 0 50px rgba(255, 255, 255, 0.06),
        0 20px 50px rgba(0, 0, 0, 0.4) !important;
}

@keyframes bestseller-card-pulse {
    0% {
        border-color: rgba(255, 255, 255, 0.15);
        box-shadow:
            0 0 10px rgba(255, 255, 255, 0.05),
            0 0 20px rgba(255, 255, 255, 0.02),
            0 8px 25px rgba(0, 0, 0, 0.3);
    }
    50% {
        border-color: rgba(255, 255, 255, 0.35);
        box-shadow:
            0 0 20px rgba(255, 255, 255, 0.12),
            0 0 40px rgba(255, 255, 255, 0.06),
            0 8px 25px rgba(0, 0, 0, 0.3);
    }
    100% {
        border-color: rgba(255, 255, 255, 0.15);
        box-shadow:
            0 0 10px rgba(255, 255, 255, 0.05),
            0 0 20px rgba(255, 255, 255, 0.02),
            0 8px 25px rgba(0, 0, 0, 0.3);
    }
}

@keyframes bestseller-neon {
    0% {
        box-shadow:
            0 0 8px rgba(255, 255, 255, 0.4),
            0 0 20px rgba(255, 255, 255, 0.15),
            0 0 35px rgba(255, 255, 255, 0.05);
    }
    100% {
        box-shadow:
            0 0 12px rgba(255, 255, 255, 0.6),
            0 0 30px rgba(255, 255, 255, 0.25),
            0 0 50px rgba(255, 255, 255, 0.1);
    }
}

@keyframes bestseller-shimmer {
    0% { left: -100%; }
    50% { left: 100%; }
    100% { left: 100%; }
}

article.product:hover .product-tag {
    border-color: #3d3d3d;
    background: #252525;
}

article.product .product-tag-escrow {
    background: linear-gradient(45deg, #8b0000, #ff0000, #8b0000);
    background-size: 200% 200%;
    color: white;
    animation: gradientShift 4s infinite;
}

article.product .product-tag-esx {
    background: linear-gradient(45deg, #ff6600, #ff9900, #ff6600);
    background-size: 200% 200%;
    color: white;
    animation: gradientShift 4s infinite;
}

article.product .product-tag-standalone {
    background: linear-gradient(45deg, #7a00cc, #9900ff, #7a00cc);
    background-size: 200% 200%;
    color: white;
    animation: gradientShift 4s infinite;
}

/* Product Info Section - Only within article.product */
article.product .product-info {
    padding: 16px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

/* Price and Title Container - UPDATED FOR HORIZONTAL LAYOUT */
article.product .product-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

/* HIDE DEFAULT TEBEX PRICE ELEMENTS */
article.product .price:not(.custom-price),
article.product p.price {
    display: none !important;
}

/* Custom Price Display */
article.product .custom-price {
    font-size: 1.3rem;
    font-weight: bold;
    color: #ffffff;
    margin: 0;
    text-align: center;
    flex-shrink: 0;
    white-space: nowrap;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

/* Original price (strikethrough for discounts) */
article.product .custom-price .original-price {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.35);
    text-decoration: line-through;
    font-weight: 400;
}

/* Sale price row — price + red badge inline */
article.product .custom-price .sale-price-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px;
}

/* Current price display */
article.product .custom-price .current-price {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
}

article.product .custom-price .current-price strong {
    font-weight: 800;
}

/* Red discount badge */
article.product .custom-price .discount-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff;
    color: #000;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 800;
    padding: 5px 10px;
    border-radius: 5px;
    white-space: nowrap;
    line-height: 1;
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.4), 0 0 25px rgba(255, 255, 255, 0.15);
}

/* Product Title - UPDATED FOR LEFT ALIGNMENT */
article.product .product-title {
    margin: 0;
    font-size: 1.1rem;
    font-weight: bold;
    letter-spacing: 0.5px;
    color: white;
    transition: all 0.3s ease;
    line-height: 1.3;
    flex: 1;
    text-align: left;
}

article.product .product-title a {
    color: inherit;
    text-decoration: none;
    transition: all 0.3s ease;
}

article.product .product-title a:hover {
    color: #e9ecef;
}

/* Countdown - POSITIONED UNDER THE TITLE */
article.product .countdown {
    display: block;
    background: linear-gradient(45deg, #ff0000, #ff4444, #ff0000);
    background-size: 200% 200%;
    color: white;
    padding: 4px 8px;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: bold;
    margin-top: 8px;
    animation: urgentPulse 1.5s infinite, gradientShift 3s infinite;
    text-transform: uppercase;
    box-shadow: 0 0 15px rgba(255, 0, 0, 0.6);
    width: fit-content;
    margin-right: auto;
}

@keyframes urgentPulse {
    0% { transform: scale(1); box-shadow: 0 0 15px rgba(255, 0, 0, 0.6); }
    50% { transform: scale(1.05); box-shadow: 0 0 25px rgba(255, 0, 0, 0.9); }
    100% { transform: scale(1); box-shadow: 0 0 15px rgba(255, 0, 0, 0.6); }
}

/* Package Actions Container - Only within article.product */
article.product .package-actions {
    margin-top: auto;
    padding: 0;
}

/* Updated Add to Basket Button */
article.product .btn-primary.wide {
    width: 100%; /* Full width of the parent container */
    height: 50px; /* Comfortable tapping height */
    background-color: #999999; /* Medium-light grey background */
    color: #000000; /* Pure black text color */
    font-family: "Inter", sans-serif; /* Clean sans-serif font */
    font-size: 16px; /* Font size */
    font-weight: 500; /* Medium weight */
    text-align: center; /* Center text horizontally */
    display: flex; /* Flexbox for vertical centering */
    align-items: center; /* Center text vertically */
    justify-content: center; /* Center text horizontally */
    border-radius: 4px; /* Subtle rounding */
    border: none; /* No border */
    padding: 0 16px; /* Horizontal padding */
    cursor: pointer; /* Pointer cursor on hover */
    transition: background-color 0.2s ease-in-out; /* Smooth transition */
    text-decoration: none; /* Remove underline if it's a link */
    text-transform: none; /* Remove uppercase transformation */
    letter-spacing: normal; /* Reset letter spacing */
    box-shadow: none; /* Remove any existing shadows */
    margin: 0; /* Reset margins */
    position: relative; /* For pseudo-elements if needed */
    overflow: hidden; /* Prevent content overflow */
}

/* Hover state */
article.product .btn-primary.wide:hover {
    background-color: #888888; /* Slightly darker grey on hover */
    color: #000000; /* Maintain black text on hover */
    text-decoration: none; /* Ensure no underline on hover */
    transform: none; /* Remove any transform effects */
}

/* Active state */
article.product .btn-primary.wide:active {
    background-color: #777777; /* Even darker grey on click */
    transform: none; /* Remove any transform effects */
    box-shadow: none; /* Remove any shadows */
}

/* Focus state for accessibility */
article.product .btn-primary.wide:focus {
    outline: 2px solid #0056b3; /* Outline for focus visibility */
    outline-offset: 2px; /* Space between element and outline */
    background-color: #888888; /* Same as hover state */
}

/* Disabled state */
article.product .btn-primary.wide:disabled {
    background-color: #cccccc; /* Lighter grey for disabled state */
    color: #666666; /* Darker grey text for disabled */
    cursor: not-allowed; /* Show not-allowed cursor */
    opacity: 0.6; /* Reduce opacity */
}

/* Loading state */
article.product .btn-primary.wide.loading {
    pointer-events: none; /* Disable interactions */
    color: transparent; /* Hide text */
}

article.product .btn-primary.wide.loading::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin: -10px 0 0 -10px;
    border: 2px solid #666666;
    border-top: 2px solid #000000;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Mobile optimizations */
@media (max-width: 768px) {
    article.product .btn-primary.wide {
        height: 48px; /* Slightly smaller on mobile */
        font-size: 15px; /* Adjust font size for mobile */
        padding: 0 14px; /* Reduce padding on mobile */
    }
}

/* Small mobile devices */
@media (max-width: 480px) {
    article.product .btn-primary.wide {
        height: 45px; /* Minimum comfortable height */
        font-size: 14px; /* Smaller font for small screens */
        padding: 0 12px; /* Minimal padding */
    }
}

/* High DPI displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    article.product .btn-primary.wide {
        border: 0.5px solid transparent; /* Crisp edges on retina */
    }
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {
    article.product .btn-primary.wide {
        transition: none; /* Remove transitions for users who prefer reduced motion */
    }
    
    article.product .btn-primary.wide.loading::before {
        animation: none; /* Remove loading animation */
    }
}

/* Dark mode support (if needed) */
@media (prefers-color-scheme: dark) {
    article.product .btn-primary.wide {
        background-color: #666666; /* Darker grey for dark mode */
        color: #ffffff; /* White text for dark mode */
    }
    
    article.product .btn-primary.wide:hover {
        background-color: #555555; /* Darker hover state */
        color: #ffffff; /* Maintain white text */
    }
    
    article.product .btn-primary.wide:active {
        background-color: #444444; /* Darker active state */
    }
}


/* Grid Layout - Only target the specific grid container */
.store-products-images {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 24px;
    padding: 20px 0;
}

/* Only target the wrapper div inside store-products-images, not .store-product itself */
.store-products-images > div {
    width: 100%;
    margin: 0;
    display: flex;
}

/* Mobile optimizations - Only for article.product */
@media (max-width: 768px) {
    .store-products-images {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 15px;
    }
    
    article.product {
        border-radius: 12px;
    }
    
    article.product .product-info {
        padding: 12px;
    }
    
    /* Keep horizontal layout on mobile but adjust sizes */
    article.product .product-header {
        gap: 8px;
    }
    
    article.product .product-title {
        font-size: 1rem;
    }
    
    article.product .custom-price {
        font-size: 1.2rem;
    }
    
    article.product .custom-price .current-price {
        font-size: 1.2rem;
    }
    
    article.product .custom-price .original-price {
        font-size: 0.85rem;
    }
    
    article.product .add-to-cart,
    article.product .btn-primary {
        height: 45px;
        font-size: 0.85rem;
    }
    
    article.product .btn-primary.wide {
        height: 50px;
        font-size: 0.9rem;
    }
}

/* For very small screens, stack vertically if needed */
@media (max-width: 480px) {
    article.product .product-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
    
    article.product .product-title {
        text-align: left;
        order: 1;
    }
    
    article.product .custom-price {
        order: 2;
    }
    
    article.product .countdown {
        margin-left: 0;
    }
}

/* Tablet optimizations */
@media (max-width: 900px) and (min-width: 769px) {
    .store-products-images {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 900px) {
    article.product .product-header {
        flex-direction: row;
        align-items: center;
        gap: 12px;
    }
    
    article.product .product-title {
        text-align: left;
        order: unset;
    }
    
    article.product .custom-price {
        order: unset;
    }
}

/* Large screens */
@media (min-width: 1200px) {
    .store-products-images {
        grid-template-columns: repeat(3, 1fr);
        gap: 30px;
    }
}

/* Focus states for accessibility - Only within article.product */
article.product .add-to-cart:focus-visible,
article.product .btn-primary:focus-visible {
    outline: 3px solid #007bff;
    outline-offset: 2px;
}

article.product .product-title a:focus-visible {
    outline: 2px solid white;
    outline-offset: 1px;
    border-radius: 4px;
}

/* Reduced motion support - Only for article.product */
@media (prefers-reduced-motion: reduce) {
    article.product .add-to-cart,
    article.product .btn-primary,
    article.product .product-tag,
    article.product .countdown,
    article.product .custom-price,
    article.product .hover-overlay i {
        animation: none;
        transition: none;
    }
    
    article.product .add-to-cart:hover,
    article.product .btn-primary:hover {
        transform: none;
    }
    
    article.product:hover {
        transform: none;
    }
}

/* Print styles - Only for article.product */
@media print {
    article.product .add-to-cart,
    article.product .btn-primary,
    article.product .hover-overlay,
    article.product .product-tag {
        display: none;
    }
    
    article.product {
        background: white;
        color: black;
        box-shadow: none;
        border: 1px solid black;
    }
    
    article.product .product-title,
    article.product .custom-price,
    article.product .custom-price .current-price {
        color: black;
    }
    
    article.product .custom-price .original-price {
        color: #666;
    }
    
    article.product .countdown {
        background: #666;
        color: white;
        animation: none;
        box-shadow: none;
    }
}

/* Card animation - Only for article.product */
article.product {
    animation: fadeInUp 0.6s ease-out;
}

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

/* Additional utility classes */
article.product.featured {
    border: 2px solid #007bff;
    box-shadow: 0 8px 25px rgba(0, 123, 255, 0.2);
}

article.product.sold-out {
    opacity: 0.7;
}

article.product.sold-out .add-to-cart,
article.product.sold-out .btn-primary {
    background: linear-gradient(45deg, #6c757d, #5a6268);
    cursor: not-allowed;
}

article.product.sold-out .add-to-cart:hover,
article.product.sold-out .btn-primary:hover {
    transform: none;
    background: linear-gradient(45deg, #6c757d, #5a6268);
}

/* Success state for buttons */
article.product .add-to-cart.success,
article.product .btn-primary.success {
    background: linear-gradient(45deg, #28a745, #1e7e34);
    animation: successPulse 0.6s ease-out;
}

  @keyframes successPulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.05); }
    100% { transform: scale(1); }
}

/* Performance optimizations */
article.product,
article.product .image,
article.product .hover-overlay {
    transform: translateZ(0);
      will-change: transform;
}

/* Optimize for retina displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    article.product {
        border-width: 0.5px;
    }
}



.featured-packages-section {
  padding: 40px 20px;
  background: var(--background-dark);
}

.featured-packages-title {
  text-align: center;
  font-size: 2rem;
  margin-bottom: 2rem;
  color: var(--text-light);
}

.featured-packages-container {
  display: flex;
  justify-content: center;
  gap: 20px; /* Space between packages */
  max-width: 1200px;
  margin: 0 auto;
  flex-wrap: wrap; /* Allow wrapping on smaller screens */
}

.featured-packages-container .product {
  flex: 0 0 320px; /* Increased from 280px to 320px */
  max-width: 320px; /* Increased from 280px to 320px */
  background: var(--card-dark);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.featured-packages-container .product:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
}

.featured-packages-container .image-link {
  position: relative;
  display: block;
}

.featured-packages-container .image {
  width: 100%;
  height: 180px; /* Increased from 160px to 180px to maintain proportions */
  object-fit: cover;
}

.featured-packages-container .hover-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
  color: white;
}

.featured-packages-container .image-link:hover .hover-overlay {
  opacity: 1;
}

.featured-packages-container .product-tag-bestseller {
  position: absolute;
  top: 10px;
  right: 10px;
  background: #ff4f8a;
  color: white;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: bold;
  z-index: 2;
}

.featured-packages-container .product-info {
  padding: 1.2rem; /* Slightly increased padding */
}

.featured-packages-container .custom-price {
  font-size: 1.2rem;
  font-weight: bold;
  color: var(--accent-color);
  margin-bottom: 0.5rem;
}

.featured-packages-container .product-title {
  margin: 0;
  font-size: 1rem;
  color: var(--text-light);
}

.featured-packages-container .product-title a {
  color: inherit;
  text-decoration: none;
}

.featured-packages-container .product-title a:hover {
  color: var(--accent-color);
}

.featured-packages-container .actions {
  padding: 0 1.2rem 1.2rem; /* Increased padding to match */
}

.featured-packages-container .btn-primary {
  width: 100%;
  padding: 10px;
  text-align: center;
  text-decoration: none;
  border-radius: 6px;
  font-weight: 600;
  font-size: 0.9rem;
  transition: all 0.3s ease;
  background: var(--accent-color);
  color: white;
  border: none;
  cursor: pointer;
}

.featured-packages-container .btn-primary:hover {
  background: var(--color-primary);
}

/* Responsive design */
@media (max-width: 768px) {
  .featured-packages-container {
    flex-direction: column;
    align-items: center;
  }
  
  .featured-packages-container .product {
    flex: 0 0 100%; /* Full width on mobile */
    max-width: 100%; /* Full width on mobile */
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .featured-packages-container .product {
    flex: 0 0 300px; /* Slightly smaller on tablets */
    max-width: 300px;
  }
}

/* ================================================
   FEATURED PACKAGES (fpackages.twig) — Price & Sale Styles
   ================================================ */

.featured-packages .package-price {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px;
}

/* Original price — crossed out when on sale */
.featured-packages .package-price .original-price {
    font-family: 'Inter', sans-serif;
    font-size: 0.9rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.4);
    text-decoration: line-through;
}

/* Sale price — highlighted */
.featured-packages .package-price .sale-price {
    font-family: 'Inter', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #ff4f8a;
}

/* Regular price (no sale) */
.featured-packages .package-price .price {
    font-family: 'Inter', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #fff;
}

/* Sale badge on package image */
.featured-packages .sale-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    background: #ff4f8a;
    color: #fff;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 0.75rem;
    padding: 4px 10px;
    border-radius: 4px;
    z-index: 2;
    line-height: 1;
}

/* ================================================ */

/* Main Container - True Two-Column Split */
.store-product.store-product-full {
  display: block;
  padding: 0;
  background: transparent;
  border: none;
  max-width: 100%;
  margin: 0;
}

/* Product Grid - Left column (sticky media), Right column (actions + description) */
/* Fix sticky: override overflow on every ancestor so position:sticky works */
html:has(.store-product-full) {
  overflow-x: clip !important;
  overflow-y: scroll !important;
}

body:has(.store-product-full),
.site-content:has(.store-product-full),
.site-content-widgets:has(.store-product-full) {
  overflow: visible !important;
}

/* Reset Tebex default grid on .store-product-full so our .product-grid controls layout */
.store-product.store-product-full {
  display: block !important;
  grid-template: none !important;
  overflow: visible !important;
}

.store-product.store-product-full .product-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  gap: 24px;
  align-items: start;
  overflow: visible !important;
}

/* LEFT COLUMN - Sticky Media Area */
.store-product.store-product-full .product-media {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 92px !important;
  width: 100%;
  align-self: start;
  overflow: visible !important;
}

/* RIGHT COLUMN - Actions + Description */
.store-product.store-product-full .product-right {
  min-width: 0;
}

.store-product.store-product-full .product-media .media-viewport {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 12px;
  background: var(--color-brighter-bg);
  border: 1px solid #2D2D2D;
}

.store-product.store-product-full .product-media .media-viewport > .image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}

.store-product.store-product-full .product-media .media-viewport:hover > .image {
  transform: scale(1.02);
}

/* Optional Thumbnails Row */
.store-product.store-product-full .media-thumbs {
  display: grid;
  grid-auto-flow: column;
  gap: 10px;
  margin-top: 12px;
  overflow-x: auto;
  padding-bottom: 6px;
  scrollbar-width: thin;
  scrollbar-color: var(--color-secondary) transparent;
}

.store-product.store-product-full .media-thumbs:empty {
  display: none;
}

.store-product.store-product-full .media-thumbs .thumb {
  width: 96px;
  height: 64px;
  overflow: hidden;
  border-radius: 8px;
  flex: 0 0 auto;
  border: 2px solid transparent;
  cursor: pointer;
  transition: border-color 0.3s ease;
}

.store-product.store-product-full .media-thumbs .thumb:hover,
.store-product.store-product-full .media-thumbs .thumb.is-active {
  border-color: var(--color-primary);
}

.store-product.store-product-full .media-thumbs .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* RIGHT COLUMN - Product Panel (not sticky, scrolls with description) */
.store-product.store-product-full .product-actions {
  background: transparent;
  border: none;
  padding: 0;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}

/* Product Title - Bold White, Large Sans-serif, Left-aligned */
.store-product.store-product-full .product-title {
  font-family: 'Inter', 'Helvetica', sans-serif;
  font-size: 2rem; /* Large size */
  font-weight: 700; /* Bold */
  color: #ffffff; /* White for high contrast */
  margin: 0 0 32px 0; /* Large vertical spacing */
  line-height: 1.2;
  text-align: left;
  width: 100%;
}

/* Price Section - White Label with Bold Price */
.store-product.store-product-full .price-section {
  margin-bottom: 40px; /* Large spacing before button */
  width: 100%;
}

.store-product.store-product-full .price-label {
  font-family: 'Inter', 'Helvetica', sans-serif;
  font-size: 1rem;
  font-weight: 400;
  color: #ffffff; /* White */
  margin: 0 0 8px 0;
  text-align: left;
}

.store-product.store-product-full .price {
  font-family: 'Inter', 'Helvetica', sans-serif;
  font-size: 1.5rem;
  font-weight: 700; /* Bold */
  color: #ffffff; /* Bold white */
  margin: 0;
  text-align: left;
  display: block;
}

/* Strong element within price */
.store-product.store-product-full .price strong {
  font-size: inherit;
  font-weight: 700;
  color: inherit;
}

/* Add to Cart Button - Light Grey Gradient, Full Width */
.store-product.store-product-full .actions {
  width: 100%;
  margin: 0;
  padding: 0;
}

.store-product.store-product-full .actions .btn-primary,
.store-product.store-product-full .actions .add-to-cart,
.store-product.store-product-full .actions button[type="submit"] {
  /* Shape & Size - Horizontally stretched, slight rounded corners */
  width: 100%; /* Full panel width */
  height: 56px; /* Comfortable height */
  border-radius: 8px; /* Slight rounded corners */
  
  /* Light grey gradient background */
  background: linear-gradient(90deg, #e8e8e8 0%, #d0d0d0 100%);
  border: none;
  
  /* Text Styling - Medium grey */
  color: #666666; /* Medium grey for contrast */
  font-family: 'Inter', 'Helvetica', sans-serif;
  font-size: 1rem;
  font-weight: 500;
  
  /* Layout - Icon + Text */
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px; /* Space between icon and text */
  
  /* Interaction */
  cursor: pointer;
  transition: all 0.2s ease;
  
  /* No extra margins - controlled spacing from parent */
  margin: 0;
  
  /* Minimal shadow for depth */
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Shopping Cart Icon - Medium Grey */
.store-product.store-product-full .actions .btn-primary i,
.store-product.store-product-full .actions .add-to-cart i {
  font-size: 1.1rem;
  color: #ffffff; /* Medium grey to match text */
}

/* Hover Effect - Subtle brightening */
.store-product.store-product-full .actions .btn-primary:hover,
.store-product.store-product-full .actions .add-to-cart:hover {
  background: linear-gradient(90deg, #f0f0f0 0%, #e0e0e0 100%);
  color: #555555; /* Slightly darker grey */
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

.store-product.store-product-full .actions .btn-primary:hover i,
.store-product.store-product-full .actions .add-to-cart:hover i {
  color: #555555; /* Darker grey on hover */
}

/* Active/Click Effect */
.store-product.store-product-full .actions .btn-primary:active,
.store-product.store-product-full .actions .add-to-cart:active {
  background: linear-gradient(90deg, #d8d8d8 0%, #c0c0c0 100%);
  color: #444444;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
  transform: translateY(1px);
}

/* Secondary Button (if needed) - Transparent with border */
.store-product.store-product-full .actions .btn-secondary {
  width: 100%;
  height: 48px;
  border-radius: 8px;
  background: transparent;
  border: 2px solid rgba(255, 255, 255, 0.3);
  color: #ffffff;
  font-family: 'Inter', 'Helvetica', sans-serif;
  font-size: 0.9rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
  margin-top: 16px;
}

.store-product.store-product-full .actions .btn-secondary:hover {
  border-color: rgba(255, 255, 255, 0.5);
  background: rgba(255, 255, 255, 0.05);
}

/* Countdown Timer (if present) */
.store-product.store-product-full .countdown {
  background: rgba(255, 68, 68, 0.9);
  color: white;
  padding: 6px 12px;
  border-radius: 16px;
  font-size: 0.75rem;
  font-weight: 600;
  margin-bottom: 16px;
  width: fit-content;
}

/* DESCRIPTION - Below actions in right column */
.store-product.store-product-full .product-description {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 16px;
  padding: 32px;
  margin-top: 24px;
}

.store-product.store-product-full .product-description .description-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--color-text);
  margin: 0 0 24px 0;
  padding-bottom: 16px;
  border-bottom: 2px solid var(--color-primary);
}

.store-product.store-product-full .descr,
.store-product.store-product-full .text-content {
  color: var(--color-text-secondary);
  line-height: 1.7;
  font-size: 1rem;
}

/* RESPONSIVE BREAKPOINTS */

/* Large Desktop (≥1200px) */
@media (min-width: 1200px) {
  .store-product.store-product-full .product-grid {
    grid-template-columns: minmax(0, 2fr) minmax(320px, 1fr);
    gap: 32px;
  }

  .store-product.store-product-full .product-title {
    font-size: 2.2rem;
  }

  .store-product.store-product-full .price {
    font-size: 1.6rem;
  }

  .store-product.store-product-full .actions .btn-primary {
    height: 60px;
    font-size: 1.1rem;
  }
}

/* Medium Desktop (768px - 1199px) */
@media (max-width: 1199px) and (min-width: 768px) {
  .store-product.store-product-full .product-grid {
    grid-template-columns: minmax(0, 1.6fr) minmax(260px, 1fr);
    gap: 20px;
  }

  .store-product.store-product-full .product-title {
    font-size: 1.8rem;
  }

  .store-product.store-product-full .price {
    font-size: 1.4rem;
  }
}

/* Tablet and Mobile (<768px) - Single Column */
@media (max-width: 767px) {
  .store-product.store-product-full .product-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .store-product.store-product-full .product-media {
    position: static;
  }

  .store-product.store-product-full .product-title {
    font-size: 1.6rem;
    margin-bottom: 24px;
  }

  .store-product.store-product-full .price-section {
    margin-bottom: 32px;
  }

  .store-product.store-product-full .price {
    font-size: 1.3rem;
  }

  .store-product.store-product-full .actions .btn-primary {
    height: 52px;
    font-size: 0.95rem;
  }

  .store-product.store-product-full .product-description {
    padding: 20px;
    margin-top: 16px;
  }
}

/* Small Mobile (<480px) */
@media (max-width: 479px) {
  .store-product.store-product-full .product-title {
    font-size: 1.4rem;
    margin-bottom: 20px;
  }
  
  .store-product.store-product-full .price-section {
    margin-bottom: 28px;
  }
  
  .store-product.store-product-full .price {
    font-size: 1.2rem;
  }
  
  .store-product.store-product-full .actions .btn-primary {
    height: 48px;
    font-size: 0.9rem;
  }
}

/* Animation */
.store-product.store-product-full {
  animation: fadeInUp 0.6s ease-out;
}

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

/* Focus States for Accessibility */
.store-product.store-product-full .actions .btn-primary:focus,
.store-product.store-product-full .actions .btn-secondary:focus {
  outline: 3px solid #007bff;
  outline-offset: 2px;
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
  .store-product.store-product-full,
  .store-product.store-product-full .actions .btn-primary,
  .store-product.store-product-full .product-media .media-viewport > .image {
    animation: none;
    transition: none;
  }
  
  .store-product.store-product-full .actions .btn-primary:hover {
    transform: none;
  }
}

/* Performance Optimizations */
.store-product.store-product-full .product-media,
.store-product.store-product-full .product-media .media-viewport > .image {
  transform: translateZ(0);
  will-change: transform;
}
/* Ensure the actions container is full width */
.store-product.store-product-full .actions {
  width: 100%; /* Ensure the actions container is full width */
  margin: 0; /* Reset margin */
  padding: 0; /* Reset padding */
}

/* Full-width Primary Button */
.store-product.store-product-full .actions .btn-primary,
.store-product.store-product-full .actions .add-to-cart,
.store-product.store-product-full .actions button[type="submit"] {
  width: 100%; /* Full width of the parent container */
  height: 46px; /* Comfortable height */
  border-radius: 8px; /* Slightly rounded corners */
  
  /* Light grey gradient background */
  background: linear-gradient(90deg, #e8e8e8 0%, #d0d0d0 100%);
  border: none; /* No hard border */
  
  /* Text Styling */
  color: #666666; /* Medium grey for contrast */
  font-family: 'Inter', 'Helvetica', sans-serif; /* Clean sans-serif font */
  font-size: 1rem; /* Font size */
  font-weight: 500; /* Medium weight */
  
  /* Layout */
  display: flex; /* Flexbox for icon and text alignment */
  align-items: center; /* Center text vertically */
  justify-content: center; /* Center text horizontally */
  gap: 12px; /* Space between icon and text */
  
  /* Interaction */
  cursor: pointer; /* Pointer cursor on hover */
  transition: all 0.2s ease; /* Smooth transition */
  
  /* No extra margins - controlled spacing from parent */
  margin: 0; /* Reset margin */
  
  /* Subtle shadow for depth */
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Hover Effect */
.store-product.store-product-full .actions .btn-primary:hover {
  background: linear-gradient(90deg, #d0d0d0 0%, #b0b0b0 100%); /* Slightly darker on hover */
  color: #555555; /* Darker text on hover */
}

/* Active/Click Effect */
.store-product.store-product-full .actions .btn-primary:active {
  background: linear-gradient(90deg, #c0c0c0 0%, #a0a0a0 100%); /* Even darker on click */
}

/* Focus State */
.store-product.store-product-full .actions .btn-primary:focus {
  outline: 2px solid #007bff; /* Outline for focus visibility */
  outline-offset: 2px; /* Space between element and outline */
}
/* YouTube Video Embed Styling */
.store-product.store-product-full .product-media .media-viewport .video-embed {
  width: 100% !important;
  height: 100% !important;
  border: none !important;
  border-radius: 12px !important;
  object-fit: cover !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
}

/* Ensure media-viewport is positioned relative for absolute positioning of iframe */
.store-product.store-product-full .product-media .media-viewport {
  position: relative !important;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 12px;
  background: var(--color-brighter-bg);
  border: 1px solid #2D2D2D;
}

/* Alternative approach using responsive iframe wrapper */
.store-product.store-product-full .product-media .media-viewport .video-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  padding-bottom: 0; /* Remove default padding */
}

.store-product.store-product-full .product-media .media-viewport .video-wrapper .video-embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 12px;
}
.button-container {
    display: flex;
    align-items: center;
}

.add.btn-primary.wide {
    border: 2px solid #2e7d32;
    border-radius: 8px;
    padding: 10px 20px;
    font-size: 16px;
    color: white;
    display: flex;
    align-items: center;
}

.add.btn-primary.wide .icon {
    margin-right: 8px; /* Space between the icon and text */
}

.btn-secondary.btn-icon.gift {
    background: #424242;
    border: 2px solid #757575;
    border-radius: 8px;
    width: 40px; /* Set a fixed width for square shape */
    height: 40px; /* Set a fixed height for square shape */
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-secondary.btn-icon.gift .icon {
    color: white;
    font-size: 20px; /* Adjust size of the gift icon */
}
.actions {
  display: flex;
  flex-direction: column;
  gap: 10px;  /* Spacing between elements */
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border: none;
  border-radius: 5px;
  color: white;
  text-decoration: none;
  font-size: 16px;
}

.btn-primary {
  background-color: #212121;  /* Green color */
}

.btn-secondary {
  background-color: #6c757d;  /* Gray color */
}

.btn-danger {
  background-color: #dc3545;  /* Red color */
}

.half {
  width: 48%;  /* Adjust width for half buttons */
}

.wide {
  width: 100%;  /* Full width buttons */
}

.btn-icon {
  padding: 10px;  /* Adjust padding for icon buttons */
}

.btn-icon i {
  margin-right: 5px;  /* Spacing between icon and text */
}

.price {
  font-size: 14px;
  margin-bottom: 10px;
}

.discount {
  color: red;  /* Style for discounted price */
  text-decoration: line-through;
}
/* Hide payment info in product cards */
.site-content.site-content-widgets .payment-info {
  display: none; /* Hide payment info in product cards */
}

/* Show payment info only in full product view */
.store-product.store-product-full .payment-info {
  display: flex; /* Show payment info in full product view */
  margin: 12px auto 0 auto; /* Center the container */
  padding: 8px 0;
  border-top: 1px solid #e5e5e5; /* Light border for separation */
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 100%; /* Full width */
}

.store-product.store-product-full .payment-info p {
  margin: 0 auto; /* Center the paragraph */
  font-size: 12px; /* Font size for payment info */
  color: #666; /* Medium gray text */
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px; /* Space between icon and text */
  text-align: center;
}

.store-product.store-product-full .payment-info .svg-container {
  display: inline-flex; /* Flex container for SVG */
  align-items: center;
  justify-content: center;
  height: 20px; /* Fixed height */
}

.store-product.store-product-full .payment-info .svg-container svg {
  height: 20px; /* Fixed height for SVG */
  width: auto; /* Auto width */
  max-width: 60px; /* Max width for SVG */
  display: block; /* Block display */
  margin: 0 auto; /* Center SVG */
}

/* Responsive adjustments for full product view only */
@media (max-width: 768px) {
  .store-product.store-product-full .payment-info p {
    font-size: 11px; /* Smaller font size on mobile */
  }
  
  .store-product.store-product-full .payment-info .svg-container {
    width: 50px; /* Fixed width for mobile */
    height: 16px; /* Fixed height for mobile */
  }
}

/* Dark mode support for full product view only */
@media (prefers-color-scheme: dark) {
  .store-product.store-product-full .payment-info {
    border-top-color: #333; /* Darker border in dark mode */
  }
  
  .store-product.store-product-full .payment-info p {
    color: #999; /* Lighter gray text in dark mode */
  }
}

/* Gift Button Styles */
.btn.btn-secondary.btn-icon.gift {
  width: 40px; /* Fixed width for square shape */
  height: 40px; /* Fixed height for square shape */
  display: flex; /* Flexbox for centering */
  align-items: center; /* Center icon vertically */
  justify-content: center; /* Center icon horizontally */
  background-color: #6c757d; /* Gray background */
  border: none; /* No border */
  border-radius: 8px; /* Rounded corners */
  color: white; /* White icon color */
  transition: background-color 0.3s; /* Smooth transition */
}

.btn.btn-secondary.btn-icon.gift:hover {
  background-color: #5a6268; /* Darker gray on hover */
}

/* Container for the button group */
.actions .button-group {
  display: flex !important; /* Flexbox for button alignment */
  align-items: stretch !important; /* Make buttons same height */
  gap: 0 !important; /* No gap between buttons */
  width: 100% !important; /* Full width */
  margin: 0 !important; /* Reset margin */
  padding: 0 !important; /* Reset padding */
}

/* Main Add to Basket Button - Takes most of the space */
.actions .button-group .btn.add.btn-primary.wide {
  all: unset !important; /* Reset any conflicting styles */
  
  flex: 1 !important; /* Takes remaining space */
  display: flex !important; /* Flexbox for alignment */
  align-items: center !important; /* Center content vertically */
  justify-content: flex-start !important; /* Left-align content */
  
  height: 50px !important; /* Fixed height */
  min-height: 50px !important; /* Minimum height */
  
  background-color: var(--color-primary, #007bff) !important; /* Primary background color */
  color: #ffffff !important; /* White text */
  border: none !important; /* No border */
  border-radius: 8px 0 0 8px !important; /* Rounded left corners only */
  
  font-family: 'Inter', 'Helvetica', sans-serif !important; /* Font family */
  font-size: 16px !important; /* Font size */
  font-weight: 500 !important; /* Font weight */
  text-decoration: none !important; /* Remove underline */
  
  padding: 0 20px !important; /* Padding for content */
  gap: 12px !important; /* Space between icon and text */
  
  cursor: pointer !important; /* Pointer cursor */
  transition: background-color 0.3s ease !important; /* Smooth transition */
  
  box-sizing: border-box !important; /* Box model */
  margin: 0 !important; /* Reset margin */
  
  text-align: left !important; /* Left-align text */
  white-space: nowrap !important; /* Prevent text wrapping */
}

/* Shopping cart icon in the main button */
.actions .button-group .btn.add.btn-primary.wide i.fa-shopping-basket,
.actions .button-group .btn.add.btn-primary.wide i.fas.fa-shopping-basket {
  color: #ffffff !important; /* White icon color */
  font-size: 18px !important; /* Icon size */
  margin-right: 8px; /* Space between icon and text */
  flex-shrink: 0 !important; /* Don't shrink the icon */
  display: inline-block !important; /* Inline block for icon */
  font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", FontAwesome !important; /* Font Awesome */
  font-weight: 900 !important; /* Bold icon */
}

/* Text in the main button */
.actions .button-group .btn.add.btn-primary.wide .button-text {
  color: #ffffff !important; /* White text color */
  font-size: inherit !important; /* Inherit font size */
  font-weight: inherit !important; /* Inherit font weight */
  flex: 1 !important; /* Allow text to take remaining space */
  text-align: left !important; /* Left-align text */
}

/* Gift Button - Square on the right */
.actions .button-group .btn.btn-secondary.btn-icon.gift {
  all: unset !important; /* Reset all styles */
  
  width: 50px !important; /* Fixed square size */
  height: 50px !important; /* Fixed height */
  min-width: 50px !important; /* Minimum width */
  min-height: 50px !important; /* Minimum height */
  max-width: 50px !important; /* Maximum width */
  max-height: 50px !important; /* Maximum height */
  flex-shrink: 0 !important; /* Don't shrink */
  
  background-color: #6c757d !important; /* Gray background */
  border: none !important; /* No border */
  border-radius: 0 8px 8px 0 !important; /* Rounded right corners only */
  
  display: flex !important; /* Flexbox for centering */
  align-items: center !important; /* Center icon vertically */
  justify-content: center !important; /* Center icon horizontally */
  
  cursor: pointer !important; /* Pointer cursor */
  transition: background-color 0.3s ease !important; /* Smooth transition */
  
  box-sizing: border-box !important; /* Box model */
  margin: 0 !important; /* Reset margin */
  padding: 0 !important; /* Reset padding */
  
  font-size: 0 !important; /* Hide text */
  color: transparent !important; /* Hide color */
  text-indent: -9999px !important; /* Hide text */
  overflow: hidden !important; /* Prevent overflow */
}

/* Gift icon styling */
.actions .button-group .btn.btn-secondary.btn-icon.gift i.fa-gift,
.actions .button-group .btn.btn-secondary.btn-icon.gift .fa-gift {
  all: unset !important; /* Reset and set icon styles */
  
  display: inline-block !important; /* Inline block for icon */
  font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", FontAwesome !important; /* Font Awesome */
  font-weight: 900 !important; /* Bold icon */
  
  color: #ffffff !important; /* White icon color */
  font-size: 18px !important; /* Icon size */
  line-height: 1 !important; /* Line height */
  
  position: relative !important; /* Positioning */
  margin: 0 !important; /* Reset margin */
  padding: 0 !important; /* Reset padding */
  text-indent: 0 !important; /* Reset text indent */
  
  overflow: visible !important; /* Ensure visibility */
  z-index: 2 !important; /* Ensure icon is on top */
}

/* Force gift icon content */
.actions .button-group .btn.btn-secondary.btn-icon.gift i.fa-gift::before {
  content: "\f06b" !important; /* Gift icon unicode */
}

/* Hover states */
.actions .button-group .btn.add.btn-primary.wide:hover {
  background-color: #ffffff !important; /* White on hover */
  color: #000000 !important; /* Black text on hover */
}

/* Ensure icon and text turn black on hover */
.actions .button-group .btn.add.btn-primary.wide:hover i.fa-shopping-basket,
.actions .button-group .btn.add.btn-primary.wide:hover i.fas.fa-shopping-basket,
.actions .button-group .btn.add.btn-primary.wide:hover .button-text,
.actions .button-group .btn.add.btn-primary.wide:hover i.fa-shopping-cart {
  color: #000000 !important;
}

.actions .button-group .btn.btn-secondary.btn-icon.gift:hover {
  background-color: #5a6268 !important; /* Darker gray on hover */
}

.actions .button-group .btn.btn-secondary.btn-icon.gift:hover i {
  color: #ffffff !important; /* White icon color on hover */
  transform: scale(1.1) !important; /* Scale icon on hover */
}

/* Active states */
.actions .button-group .btn.add.btn-primary.wide:active {
  background-color: #e6e6e6 !important; /* Light gray on active */
  color: #000000 !important; /* Black text on active */
  transform: translateY(1px) !important; /* Move down on active */
}

.actions .button-group .btn.btn-secondary.btn-icon.gift:active {
  background-color: #545b62 !important; /* Darker gray on active */
  transform: translateY(1px) !important; /* Move down on active */
}

/* Focus states for accessibility */
.actions .button-group .btn.add.btn-primary.wide:focus,
.actions .button-group .btn.btn-secondary.btn-icon.gift:focus {
  outline: 2px solid #ffffff !important; /* White outline on focus */
  outline-offset: 2px !important; /* Space between element and outline */
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  .actions .button-group .btn.add.btn-primary.wide {
    height: 48px !important; /* Adjust height for mobile */
    min-height: 48px !important; /* Minimum height for mobile */
    font-size: 15px !important; /* Adjust font size for mobile */
    padding: 0 16px !important; /* Adjust padding for mobile */
    gap: 10px !important; /* Space between icon and text */
  }
  
  .actions .button-group .btn.btn-secondary.btn-icon.gift {
    width: 48px !important; /* Adjust width for mobile */
    height: 48px !important; /* Adjust height for mobile */
    min-width: 48px !important; /* Minimum width for mobile */
    min-height: 48px !important; /* Minimum height for mobile */
    max-width: 48px !important; /* Maximum width for mobile */
    max-height: 48px !important; /* Maximum height for mobile */
  }
  
  .actions .button-group .btn.add.btn-primary.wide i,
  .actions .button-group .btn.btn-secondary.btn-icon.gift i {
    font-size: 16px !important; /* Adjust icon size for mobile */
  }
}

/* Small mobile */
@media (max-width: 480px) {
  .actions .button-group .btn.add.btn-primary.wide {
    height: 45px !important; /* Adjust height for small mobile */
    min-height: 45px !important; /* Minimum height for small mobile */
    font-size: 14px !important; /* Adjust font size for small mobile */
    padding: 0 14px !important; /* Adjust padding for small mobile */
  }
  
  .actions .button-group .btn.btn-secondary.btn-icon.gift {
    width: 45px !important; /* Adjust width for small mobile */
    height: 45px !important; /* Adjust height for small mobile */
    min-width: 45px !important; /* Minimum width for small mobile */
    min-height: 45px !important; /* Minimum height for small mobile */
    max-width: 45px !important; /* Maximum width for small mobile */
    max-height: 45px !important; /* Maximum height for small mobile */
  }
}

/* Remove any conflicting pseudo-elements */
.actions .button-group .btn::before,
.actions .button-group .btn::after {
  display: none !important; /* Hide pseudo-elements */
  content: none !important; /* Remove content */
}

/* Ensure proper stacking */
.actions .button-group {
  position: relative !important; /* Relative positioning */
  z-index: 1 !important; /* Ensure stacking order */
}

/* Hide any other text in gift button */
.actions .button-group .btn.btn-secondary.btn-icon.gift span:not(.fa):not([class*="fa-"]),
.actions .button-group .btn.btn-secondary.btn-icon.gift .sr-only {
  display: none !important; /* Hide unwanted text */
  visibility: hidden !important; /* Ensure hidden */
}
/* Target the shopping cart icon */
.fa-shopping-cart {
    color: white; /* Set the icon color to white */
}

/* Optional: If you want to ensure it applies to all Font Awesome icons */
.fa {
    color: white; /* Set all Font Awesome icons to white */
}

/* ===== PREMIUM GAMING FOOTER — CONSOLIDATED & FIXED (with silver hairline) ===== */

/* Design tokens */
:root{
  --bg:#0F0F10; --elev-1:#151517;
  --text:#EDEDED;           /* headings only */
  --muted:#A0A0A5;          /* body copy */
  --link-idle:#CFCFD3;      /* link idle */
  --link-hover:#FFFFFF;     /* link hover */
  --accent:#ff0f56; --accent-2:#e00078; /* kept for brand usage elsewhere */
}

/* Footer shell + TOP LINE (updated to premium silver with edge fade) */
.site-footer{
  background:var(--bg);
  padding:48px 0 32px;
  margin-top:40px;
  font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  position:relative;
  isolation:isolate; /* keeps the glow neat on dark bg */
}

/* Crisp 2px hairline with center highlight and transparent ends */
.site-footer::before{
  content:"";
  position:absolute; left:0; right:0; top:0;
  height:2px;
  background:linear-gradient(
    90deg,
      rgba(255,255,255,0)     0%,
      rgba(232,232,236,.22)  10%,
      rgba(224,224,230,.38)  25%,
      rgba(255,255,255,.88)  50%,   /* crisp center */
      rgba(224,224,230,.38)  75%,
      rgba(232,232,236,.22)  90%,
      rgba(255,255,255,0)    100%
  );
  z-index:2;
}

/* Soft bloom under the line, also fading at edges */


/* Grid like the reference: Brand | Subpages | Legal */
.footer-container{
  max-width:1280px; margin:0 auto; padding:0 32px;
  display:grid; grid-template-columns:1.2fr .8fr .8fr;
  gap:64px; align-items:start; width:100%;
}
.footer-col{ display:flex; flex-direction:column; }

/* Base type colors (ONLY headings are near-white) */
.site-footer p, .site-footer small, .site-footer li, .site-footer a{ color:var(--muted); }
.site-footer h4, .footer-title, .brand-name{ color:var(--text); font-weight:600; }

/* --- Column 1: Brand --- */
.footer-brand{ max-width:520px; grid-column:1; }
.brand-header{ display:flex; align-items:center; gap:12px; margin-bottom:16px; }
.brand-logo{ width:24px; height:24px; object-fit:contain; flex-shrink:0; }
.brand-name{ font-size:18px; letter-spacing:-.01em; }
.brand-tagline{ font-size:14px; line-height:1.4; margin:0 0 16px; }
.brand-disclaimer{ font-size:11px; line-height:1.6; }
.brand-disclaimer p{ margin:0 0 8px; }
.brand-disclaimer p:last-child{ margin:0; }

/* --- Section titles --- */
.footer-title{
  font-size:13px; letter-spacing:.03em; margin:0 0 16px; text-transform:none;
}

/* --- Links (both Subpages & Legal) — INLINE row like the second image --- */
.footer-links{
  list-style:none; padding:0; margin:0;
  display:flex; flex-wrap:wrap; gap:18px; /* visual spacing between inline links */
}
.footer-links li{ margin:0; }
.footer-link{
  color:var(--link-idle); text-decoration:none;
  font-size:14px; font-weight:400; display:inline-block;
  transition:color .2s ease, text-decoration-color .2s ease;
}
.footer-link:hover, .footer-link:focus{ color:var(--link-hover); text-decoration:underline; }
.footer-link:focus-visible{ outline:2px solid var(--link-hover); outline-offset:2px; border-radius:2px; }

/* --- Column 2 / Column 3 positioning --- */
.footer-subpages{ grid-column:2; align-items:flex-start; }
.footer-legal{ grid-column:3; align-items:flex-start; }

/* Socials directly under Legal links */
.social-icons{ display:flex; gap:16px; margin:16px 0 8px; }
.social-link{ color:var(--link-idle); text-decoration:none; font-size:16px; line-height:1; }
.social-link:hover, .social-link:focus{ color:var(--link-hover); }
.social-link:focus-visible{ outline:2px solid var(--link-hover); outline-offset:2px; border-radius:2px; }

/* Designer credit aligned to the right edge */
.designer-credit{
  display:flex; align-items:center; gap:6px; margin-top:8px; justify-content:flex-end;
}
.credit-text{ font-size:11px; font-weight:400; color:var(--muted); }
.credit-logo{ font-size:11px; font-weight:500; color:var(--text); letter-spacing:.5px; }

/* Responsive */
@media (max-width:1024px){
  .footer-container{ gap:40px; padding:0 24px; }
}
@media (max-width:768px){
  .site-footer{ padding:40px 0 32px; }
  .footer-container{ grid-template-columns:1fr; gap:24px; padding:0 20px; }
  .footer-links{ flex-direction:column; gap:8px; }
  .social-icons{ justify-content:center; }
  .designer-credit{ justify-content:center; }
}
@media (max-width:480px){
  .footer-container{ padding:0 16px; }
  .site-footer{ padding:32px 0 24px; }
}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  .footer-link, .social-link{ transition:none; }
}
.site-footer{ padding:48px 0 32px; margin-top:56px; }
.footer-container{ gap:40px; }
.brand-header{ margin-bottom:10px; }
.brand-tagline{ margin:0 0 12px; }
.brand-disclaimer{ line-height:1.45; }
.brand-disclaimer p{ margin:0 0 6px; }
.footer-title{ margin:0 0 12px; }
.footer-links{ gap:14px; }
.social-icons{ margin:12px 0 6px; gap:12px; }
.designer-credit{ margin-top:6px; }

/* ===== HOMEPAGE REDESIGN - NEON/PINK BRAND ===== */

/* Global Page Styles */
body {
  background: #0F0F10;
  color: #EDEDED;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.6;
  margin: 0;
  padding: 0;
}

html {
  margin: 0;
  padding: 0;
}

/* Hero Section */
/* ==========================================
   HOMEPAGE HERO SECTION - CITYSCAPE STYLE
   ========================================== */

.hero-section {
  position: relative;
  min-height: 100vh;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  margin-top: -250px;
  padding-top: 250px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.hero-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center bottom;
  z-index: 0;
}

.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg,
    rgba(0, 0, 0, 0.6) 0%,
    rgba(0, 0, 0, 0.4) 50%,
    rgba(0, 0, 0, 0.7) 100%);
  z-index: 1;
}

.hero-container {
  position: relative;
  z-index: 3;
  text-align: center;
  padding: 0 32px;
}

.hero-content {
  z-index: 2;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.hero-headline {
  font-size: clamp(42px, 6vw, 72px);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin: 0 0 40px 0;
  color: #FFFFFF;
  text-transform: none;
  font-style: italic;
  text-shadow:
    2px 2px 0px rgba(0, 0, 0, 0.3),
    4px 4px 8px rgba(0, 0, 0, 0.2);
}

.hero-accent {
  color: #FFFFFF;
  -webkit-text-fill-color: #FFFFFF;
  background: none;
  display: block;
  text-shadow:
    0 0 10px rgba(255, 255, 255, 0.8),
    0 0 20px rgba(255, 255, 255, 0.6),
    0 0 40px rgba(255, 255, 255, 0.4),
    0 0 60px rgba(255, 255, 255, 0.2);
}

.hero-buttons {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}

.hero-buttons-secondary {
  display: flex;
  justify-content: center;
  margin-top: 12px;
}

.hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 28px;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0;
  text-decoration: none;
  border-radius: 50px;
  transition: all 0.3s ease;
}

.hero-btn i {
  font-size: 14px;
}

.hero-btn-primary {
  background: #FFFFFF;
  color: #000000;
  border: 2px solid #FFFFFF;
}

.hero-btn-primary:hover {
  background: rgba(255, 255, 255, 0.9);
  color: #000000;
  transform: translateY(-2px);
}

.hero-btn-secondary {
  background: transparent;
  color: #FFFFFF;
  border: 2px solid rgba(255, 255, 255, 0.5);
}

.hero-btn-secondary:hover {
  border-color: #FFFFFF;
  transform: translateY(-2px);
}

.hero-btn-discord {
  background: transparent;
  color: rgba(255, 255, 255, 0.8);
  border: 2px solid rgba(255, 255, 255, 0.3);
  padding: 10px 20px;
  font-size: 14px;
}

.hero-btn-discord:hover {
  color: #FFFFFF;
  border-color: rgba(255, 255, 255, 0.5);
  transform: translateY(-2px);
}

.hero-fog {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 200px;
  background: linear-gradient(to top, rgba(15, 15, 15, 1) 0%, transparent 100%);
  z-index: 2;
  pointer-events: none;
}

/* Legacy hero styles - keep for compatibility */
.hero-subcopy {
  font-size: 17px;
  color: #9CA3AF;
  max-width: 560px;
  margin: 0 auto 36px auto;
  line-height: 1.65;
  font-weight: 400;
}

.hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  height: 56px;
  padding: 0 32px;
  background: #FFFFFF;
  color: #0F0F10;
  font-weight: 600;
  font-size: 16px;
  text-decoration: none;
  border-radius: 16px;
  transition: all 0.2s ease;
  box-shadow: 0 4px 16px rgba(255, 255, 255, 0.1);
}

.hero-cta:hover {
  background: #F3F4F6;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(255, 255, 255, 0.15);
}

.hero-cta:focus {
  outline: 2px solid #FFFFFF;
  outline-offset: 2px;
}

/* Hero Buttons Container */
.hero-buttons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-bottom: 0;
}

/* All in One Subscription Button */
.hero-cta-subscription {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 56px;
  padding: 0 28px;
  background: transparent;
  color: #ffffff;
  font-weight: 600;
  font-size: 16px;
  text-decoration: none;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.hero-cta-subscription::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 100%);
  opacity: 1;
  transition: opacity 0.3s ease;
}

.hero-cta-subscription:hover {
  border-color: rgba(255, 255, 255, 0.4);
  transform: translateY(-2px);
  color: #ffffff;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.hero-cta-subscription:hover::before {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 100%);
}

.hero-cta-subscription:focus {
  outline: 2px solid rgba(255, 255, 255, 0.5);
  outline-offset: 2px;
}

.hero-cta-subscription i {
  position: relative;
  z-index: 1;
}

.hero-cta-subscription span {
  position: relative;
  z-index: 1;
}

/* Discord Support Button */
.hero-cta-discord {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 44px;
  padding: 0 18px;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.5);
  font-weight: 500;
  font-size: 14px;
  text-decoration: none;
  border-radius: 12px;
  transition: all 0.3s ease;
}

.hero-cta-discord:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.8);
  transform: translateY(-1px);
}

.hero-cta-discord:focus {
  outline: 2px solid rgba(255, 255, 255, 0.3);
  outline-offset: 2px;
}

.hero-cta-discord i {
  font-size: 15px;
}

.hero-visual {
  position: relative;
  height: 400px;
}

.hero-glow {
  position: absolute;
  right: -20%;
  top: 30%;
  transform: translateY(-30%);
  width: 700px;
  height: 700px;
  background: radial-gradient(circle at center, 
    rgba(255, 255, 255, 0.08) 0%, 
    rgba(200, 200, 210, 0.06) 35%, 
    rgba(180, 180, 190, 0.04) 55%, 
    transparent 75%);
  filter: blur(80px);
  opacity: 0.6;
  pointer-events: none;
}

.hero-logo {
  position: absolute;
  right: -10%;
  top: 48%;
  transform: translate(0, -50%);
  width: 600px;
  height: auto;
  z-index: 2;
  opacity: 0.9;
  filter: drop-shadow(0 8px 32px rgba(255, 255, 255, 0.15));
}

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

/* ===== FEATURED PRODUCTS SECTION ===== */
.featured-products-section {
  padding: 80px 0 60px;
  position: relative;
  z-index: 1;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.3) 50%, transparent 100%);
  overflow: hidden;
}

.featured-products-container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  position: relative;
}

.featured-products-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 16px;
  margin-bottom: 50px;
  padding: 0 24px;
}

.featured-products-divider {
  position: relative;
  width: 100%;
  height: 2px;
  margin-bottom: 50px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.1) 10%,
    rgba(255, 255, 255, 0.6) 45%,
    rgba(255, 255, 255, 0.8) 50%,
    rgba(255, 255, 255, 0.6) 55%,
    rgba(255, 255, 255, 0.1) 90%,
    transparent 100%
  );
}

.featured-products-divider-bottom {
  margin-bottom: 0;
  margin-top: 50px;
}

.featured-products-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 16px;
  margin-bottom: 50px;
  padding: 0 24px;
}

.featured-products-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  border-radius: 50px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #fff;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 13px;
  letter-spacing: 0.5px;
}

.featured-products-badge i {
  color: #fff;
  font-size: 12px;
}

.featured-products-title {
  margin: 0;
  font-family: 'Inter', sans-serif;
  font-size: clamp(36px, 5vw, 52px);
  font-weight: 700;
  color: #fff;
  letter-spacing: -0.02em;
}

.featured-products-slider {
  position: relative;
  overflow: visible;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
}

.featured-products-track {
  display: flex;
  gap: 20px;
  padding: 20px 60px 40px;
  will-change: transform;
  cursor: grab;
}

.featured-products-track:active {
  cursor: grabbing;
}

.featured-products-track::-webkit-scrollbar {
  display: none;
}

/* Featured Product Card - Matching Screenshot Design */
.featured-product-card {
  flex: 0 0 auto;
  width: 340px;
  background: linear-gradient(180deg, rgba(30, 30, 30, 0.9) 0%, rgba(20, 20, 20, 0.95) 100%);
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
}

.featured-product-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 255, 255, 0.2);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
}

/* Card Image */
.featured-product-card .card-image {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
}

.featured-product-card .card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

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

/* Framework Tags on Image */
.featured-product-card .card-tags {
  position: absolute;
  bottom: 10px;
  left: 10px;
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.featured-product-card .card-tag {
  padding: 4px 10px;
  background: #fff;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #121212;
  border: none;
  box-shadow: 0 0 8px rgba(255, 255, 255, 0.4), 0 0 18px rgba(255, 255, 255, 0.12);
}

/* Card Content */
.featured-product-card .card-content {
  padding: 16px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.featured-product-card .card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 8px;
}

.featured-product-card .card-title {
  margin: 0;
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  font-weight: 600;
  color: #fff;
  line-height: 1.3;
}

.featured-product-card .card-title a {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.featured-product-card:hover .card-title a {
  color: #fff;
}

.featured-product-card .card-price-wrapper {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 2px;
  white-space: nowrap;
}

.featured-product-card .card-price {
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
}

/* Original price — crossed out */
.featured-product-card .card-original-price {
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.35);
  text-decoration: line-through;
  white-space: nowrap;
}

/* Sale price row — price + red badge */
.featured-product-card .card-sale-row {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 8px;
}

/* Sale price */
.featured-product-card .card-sale-price {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 800;
  color: #fff;
  white-space: nowrap;
}

/* Red discount badge */
.featured-product-card .card-discount-badge {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  background: #e53e3e;
  color: #fff;
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  font-weight: 700;
  padding: 4px 8px;
  border-radius: 5px;
  white-space: nowrap;
  line-height: 1;
}

/* Sale badge on card image */
/* Best Seller badge on featured slider cards */
.featured-product-card .card-bestseller-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  background: #fff;
  border: none;
  color: #121212;
  font-family: 'Inter', sans-serif;
  font-weight: 800;
  font-size: 12px;
  padding: 8px 16px;
  border-radius: 6px;
  z-index: 20;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  box-shadow:
    0 0 10px rgba(255, 255, 255, 0.5),
    0 0 25px rgba(255, 255, 255, 0.2),
    0 0 45px rgba(255, 255, 255, 0.1);
  animation: bestseller-neon 2s ease-in-out infinite alternate;
  overflow: hidden;
}

.featured-product-card .card-bestseller-badge i {
  font-size: 13px;
  color: #121212;
}

.featured-product-card .card-sale-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  background: #ff4f8a;
  color: #fff;
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 11px;
  padding: 4px 10px;
  border-radius: 4px;
  z-index: 2;
  letter-spacing: 0.5px;
}

.featured-product-card .card-description {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.5;
  margin-bottom: 16px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
}

/* Card Buttons */
.featured-product-card .card-buttons {
  display: flex;
  gap: 8px;
  margin-top: auto;
}

.featured-product-card .btn-buy {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 10px 16px;
  background: #fff;
  color: #000;
  border: none;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
}

.featured-product-card .btn-buy:hover {
  background: rgba(255, 255, 255, 0.85);
  transform: translateY(-1px);
}

.featured-product-card .btn-buy i {
  font-size: 10px;
}

.featured-product-card .btn-cart {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 10px 16px;
  background: transparent;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
}

.featured-product-card .btn-cart:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: #fff;
}

.featured-product-card .btn-cart i {
  font-size: 11px;
}

/* Pagination */
.featured-products-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-top: 30px;
}

.pagination-dots {
  display: flex;
  gap: 8px;
  align-items: center;
}

.pagination-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  cursor: pointer;
  transition: all 0.3s ease;
}

.pagination-dot:hover {
  background: rgba(255, 255, 255, 0.4);
}

.pagination-dot.active {
  width: 24px;
  border-radius: 4px;
  background: #fff;
}

.pagination-pause {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 6px;
  color: #fff;
  cursor: pointer;
  transition: all 0.2s ease;
}

.pagination-pause:hover {
  background: rgba(255, 255, 255, 0.15);
}

.pagination-pause i {
  font-size: 10px;
}

/* Loading and Empty States */
.featured-products-loading,
.featured-products-empty {
  color: rgba(255, 255, 255, 0.5);
  font-size: 14px;
  padding: 40px 20px;
  text-align: center;
  width: 100%;
}

.featured-products-source {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

/* Responsive */
@media (max-width: 1200px) {
  .featured-product-card {
    width: 300px;
  }
}

@media (max-width: 768px) {
  .featured-products-section {
    padding: 60px 0 40px;
  }

  .featured-products-header {
    margin-bottom: 30px;
  }

  .featured-products-title {
    font-size: 32px;
  }

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

  .featured-products-track {
    gap: 16px;
    padding: 16px 30px 30px;
  }
}

@media (max-width: 480px) {
  .featured-products-header {
    padding: 0 16px;
  }

  .featured-product-card {
    width: 260px;
  }

  .featured-products-track {
    padding: 16px 20px 30px;
  }

  .featured-product-card .card-buttons {
    flex-direction: column;
  }

  .featured-product-card .btn-buy,
  .featured-product-card .btn-cart {
    width: 100%;
  }
}

/* Legacy support - keep old classes working */
.best-sellers-section { display: none; }
.best-sellers-source { display: none; }

/* ===== FEATURES STRIP (MERGED BAR) ===== */

/* Design tokens */
:root {
  --panel: #121214;
  --panel-2: #0E0E10;
  --divider: rgba(255, 255, 255, 0.08);
  --ring: rgba(255, 255, 255, 0.10);
  --glow: rgba(255, 255, 255, 0.06);
}

/* Features section wrapper */
.features {
  padding: 48px 0;
  margin-top: -20px;
}

/* The merged panel (single bar) */
.features__panel {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 32px;
}

/* Grid container */
.features__grid {
  list-style: none;
  margin: 0;
  padding: 28px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  background: linear-gradient(180deg, var(--panel), var(--panel-2));
  border: 1px solid var(--ring);
  box-shadow: inset 0 1px 0 var(--glow), 0 10px 30px rgba(0, 0, 0, 0.35);
  border-radius: 0;
}

/* Individual feature column */
.feature {
  position: relative;
  padding: 0 28px;
}

/* Vertical separators between columns */
.feature:not(:first-child)::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 1px;
  background: var(--divider);
}

/* Icon container */
.feature__icon {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.03);
  margin-bottom: 16px;
}

.feature__icon svg {
  width: 24px;
  height: 24px;
  stroke: var(--text);
  opacity: 0.95;
}

/* Feature title */
.feature__title {
  font-weight: 700;
  font-size: 18px;
  line-height: 1.2;
  color: var(--text);
  margin: 0 0 10px 0;
  letter-spacing: -0.01em;
}

/* Feature body text */
.feature__body {
  font-size: 14px;
  line-height: 1.55;
  color: var(--muted);
  margin: 0;
  max-width: 56ch;
}

/* Responsive: Tablet (2x2 grid) */
@media (max-width: 900px) {
  .features__grid {
    grid-template-columns: repeat(2, 1fr);
    padding: 24px;
  }
  
  .feature {
    padding: 20px 24px;
  }
  
  /* Remove left separator on 3rd item (new row) */
  .feature:nth-child(3)::before {
    display: none;
  }
  
  /* Add horizontal separator for bottom row */
  .feature:nth-child(n+3) {
    border-top: 1px solid var(--divider);
    padding-top: 24px;
    margin-top: 24px;
  }
}

/* Responsive: Mobile (stacked 1 column) */
@media (max-width: 520px) {
  .features {
    padding: 32px 0;
  }
  
  .features__panel {
    padding: 0 20px;
  }
  
  .features__grid {
    grid-template-columns: 1fr;
    padding: 20px;
  }
  
  .feature {
    padding: 20px 16px;
  }
  
  /* Remove all vertical separators */
  .feature::before {
    display: none !important;
  }
  
  /* Add horizontal separators between all items */
  .feature:not(:last-child) {
    border-bottom: 1px solid var(--divider);
    padding-bottom: 24px;
    margin-bottom: 24px;
  }
  
  .feature:nth-child(n+3) {
    border-top: none;
    padding-top: 0;
    margin-top: 0;
  }
}


/* Responsive Design */
@media (max-width: 1024px) {
  .hero-section {
    min-height: 80vh;
  }

  .hero-headline {
    font-size: clamp(36px, 5vw, 56px);
  }

}

@media (max-width: 768px) {
  .hero-section {
    min-height: 70vh;
    margin-top: -150px;
    padding-top: 150px;
  }

  .hero-headline {
    font-size: clamp(28px, 7vw, 42px);
    margin-bottom: 30px;
  }

  .hero-btn {
    padding: 14px 32px;
    font-size: 13px;
  }

  .hero-fog {
    height: 100px;
  }
}

@media (max-width: 480px) {
  .hero-container {
    padding: 0 16px;
  }

  .hero-headline {
    font-size: clamp(24px, 8vw, 36px);
  }

  .hero-buttons {
    flex-direction: column;
    gap: 12px;
  }

  .hero-btn {
    width: 100%;
    padding: 14px 24px;
  }
}
   /* ===== FEATURES — ultra-clean row (no cards, no borders) ===== */
   
   /* tokens */
   :root{
     --fx-text:#EFEFEF;
     --fx-muted:#B4BAC3;
     --fx-icon-tile: rgba(255,255,255,0.07);
     --fx-icon-tile-hover: rgba(255,255,255,0.12);
   }
   
   /* section spacing */
   .features-section{
     background: transparent !important;
     padding: 28px 0 12px !important;   /* slim like your ref */
   }
   
   /* one row, evenly spaced, transparent */
   .features-section .features-container{
     max-width: 1450px;
     margin: 0 auto;
     padding: 0 00px;
     display: flex !important;
     align-items: flex-start;
     justify-content: space-between;
     gap: 72px;                           /* distance between items */
     flex-wrap: nowrap;
   }
   
   /* kill any previous "card" styling */
   .features-section .feature-card{
     background: transparent !important;
     border: 0 !important;
     box-shadow: none !important;
     outline: 0 !important;
     padding: 0 !important;
     margin: 0 !important;
   
     display: flex;
     align-items: center;
     gap: 14px;
     min-width: 250px;                    /* keeps lines nice */
   }
   
   /* soft icon square */
   .features-section .feature-icon{
     width: 40px; height: 40px; min-width: 40px;
     display: grid; place-items: center;
     border-radius: 10px;
     background: var(--fx-icon-tile) !important;   /* subtle, no border */
     color: var(--fx-text);
     box-shadow: none !important;
     transition: background .15s ease;
   }
   .features-section .feature-card:hover .feature-icon{
     background: var(--fx-icon-tile-hover);
   }
   .features-section .feature-icon i{
     font-size: 16px; line-height: 1;
   }
   
   /* text */
   .features-section .feature-content{ max-width: 260px; }
   .features-section .feature-title{
     margin: 0 0 6px;
     font-weight: 800;
     font-size: 16px;
     letter-spacing: .2px;
     color: var(--fx-text);
   }
   .features-section .feature-description{
     margin: 0;
     font-size: 13px;
     line-height: 1.55;
     color: var(--fx-muted);
   }
   
   /* accessibility without outlines/borders */
   .features-section .feature-card:focus-within .feature-icon{
     background: var(--fx-icon-tile-hover);
   }
   
   /* responsive: wrap to two columns then one */
   @media (max-width: 1200px){
     .features-section .features-container{
       justify-content: center;
       gap: 40px 64px;
       flex-wrap: wrap;
     }
   }
   @media (max-width: 640px){
     .features-section .features-container{
       gap: 18px 24px;
     }
     .features-section .feature-card{
       min-width: 0;
     }
     .features-section .feature-content{
       max-width: none;
     }
     }

     /* Hero Stats Styles */
     .hero-stats {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 0;
     margin-top: 40px;
     padding: 20px 40px;
     background: rgba(255, 255, 255, 0.05);
     border-radius: 12px;
     border: 1px solid rgba(255, 255, 255, 0.1);
     }

     .hero-stat-item {
     display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
     text-align: center;
     gap: 8px;
     min-width: 180px;
     padding: 0 30px;
     flex: 1;
     }

     .stat-value-row {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 10px;
     }

     .hero-stat-value {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 8px;
     }

     .hero-stat-number {
     font-size: 32px;
     font-weight: 700;
     color: #FFFFFF;
     line-height: 1;
     letter-spacing: -0.02em;
     text-align: center;
     }

     .hero-stat-label {
     font-size: 14px;
     color: rgba(255, 255, 255, 0.6);
     font-weight: 400;
     text-align: center;
     }

     .hero-stat-divider {
     width: 1px;
     height: 40px;
     background: rgba(255, 255, 255, 0.1);
     align-self: center;
     flex-shrink: 0;
     }

     .live-indicator {
     width: 10px;
     height: 10px;
     background-color: #10B981;
     border-radius: 50%;
     box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7);
     animation: pulse 2s infinite;
     }

     @keyframes pulse {
     0% {
     transform: scale(0.95);
     box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7);
     }
     70% {
     transform: scale(1);
     box-shadow: 0 0 0 6px rgba(16, 185, 129, 0);
     }
     100% {
     transform: scale(0.95);
     box-shadow: 0 0 0 0 rgba(16, 185, 129, 0);
     }
     }

     @media (max-width: 768px) {
     .hero-stats {
     flex-direction: column;
     align-items: center;
     gap: 24px;
     }

     .hero-stat-divider {
     display: none;
     }
     }
   
/* Reduce gap between sections on homepage */
.page-index .site {
  gap: 0 !important;
  grid-auto-rows: auto !important;
  min-height: auto !important;
}

/* Trusted Communities Section */
.trusted-section {
  padding: 30px 0 10px 0;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.trusted-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.05), transparent);
}

.trusted-header {
  margin-bottom: 20px;
}

.trusted-title {
  font-size: 26px;
  font-weight: 700;
  color: #FFFFFF;
  margin-bottom: 10px;
  letter-spacing: -0.01em;
}

.trusted-subtitle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.7);
  background: none;
  padding: 0;
  border-radius: 0;
  border: none;
}

.trusted-subtitle i {
  color: rgba(255, 255, 255, 0.7);
}

.trusted-logos-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

.trusted-logos-grid {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 60px;
}

.trusted-logo-item {
  width: 180px;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  filter: grayscale(0%);
  transition: all 0.3s ease;
  cursor: pointer;
}

.trusted-logo-item img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.trusted-logo-item:hover {
  opacity: 1;
  filter: grayscale(0%);
  transform: translateY(-4px) scale(1.05);
}

.trusted-stats {
  margin-top: 20px;
  margin-bottom: 0;
  padding-bottom: 10px;
  font-size: 16px;
  color: rgba(255, 255, 255, 0.6);
  text-align: center;
}

@media (max-width: 768px) {
  .trusted-logos-grid {
    gap: 32px;
  }

  .trusted-logo-item {
    width: 100px;
    height: 70px;
  }

  .trusted-stats {
    font-size: 14px;
    padding: 0 20px;
  }
}

/* =========================
   FAQ SECTION
   ========================= */
.faq-section {
  padding: 20px 24px 80px 24px;
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
}

.faq-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 60%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.06), transparent);
}

.faq-header {
  text-align: center;
  margin-bottom: 40px;
  margin-top: 0;
  padding-top: 0;
}

.faq-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(160, 160, 160, 0.1);
  border: 1px solid rgba(160, 160, 160, 0.2);
  padding: 8px 16px;
  border-radius: 50px;
  margin-bottom: 20px;
}

.faq-badge i {
  color: var(--color-primary);
  font-size: 14px;
}

.faq-badge span {
  font-family: Rubik, sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: var(--color-primary);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.faq-title {
  font-family: Rubik, sans-serif;
  font-size: 36px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 14px;
  letter-spacing: -0.02em;
}

.faq-subtitle {
  font-family: Lato, sans-serif;
  font-size: 16px;
  color: #6B7280;
  max-width: 500px;
  margin: 0 auto;
  line-height: 1.5;
}

.faq-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.faq-item {
  background: var(--color-brighter-bg);
  border: 1px solid #2D2D2D;
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.3s ease;
}

.faq-item:hover {
  border-color: rgba(160, 160, 160, 0.3);
  background: linear-gradient(135deg, var(--color-brighter-bg) 0%, rgba(30, 30, 30, 1) 100%);
}

.faq-item.active {
  border-color: rgba(160, 160, 160, 0.4);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.faq-question {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 28px;
  background: transparent;
  border: none;
  cursor: pointer;
  text-align: left;
  gap: 20px;
}

.faq-question-text {
  font-family: Rubik, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #fff;
  flex: 1;
}

.faq-icon-wrapper {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 8px;
  transition: all 0.3s ease;
  flex-shrink: 0;
}

.faq-item:hover .faq-icon-wrapper {
  background: rgba(160, 160, 160, 0.15);
}

.faq-item.active .faq-icon-wrapper {
  background: var(--color-primary);
}

.faq-icon {
  color: #6B7280;
  font-size: 12px;
  transition: transform 0.3s ease, color 0.3s ease;
}

.faq-item.active .faq-icon {
  transform: rotate(180deg);
  color: #fff;
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
}

.faq-item.active .faq-answer {
  max-height: 300px;
}

.faq-answer-content {
  padding: 0 28px 24px 28px;
  font-family: Lato, sans-serif;
  font-size: 15px;
  line-height: 1.7;
  color: #9CA3AF;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  padding-top: 20px;
  margin-top: 0;
}

.faq-answer-content a {
  color: var(--color-primary);
  text-decoration: none;
  transition: color 0.3s ease;
}

.faq-answer-content a:hover {
  color: #fff;
}

@media (max-width: 768px) {
  .faq-section {
    padding: 30px 16px 60px 16px;
  }
  
  .faq-title {
    font-size: 28px;
  }
  
  .faq-subtitle {
    font-size: 14px;
  }
  
  .faq-question {
    padding: 20px 20px;
  }
  
  .faq-question-text {
    font-size: 14px;
  }
  
  .faq-icon-wrapper {
    width: 28px;
    height: 28px;
  }

  .faq-answer-content {
    padding: 0 20px 20px 20px;
    padding-top: 16px;
    font-size: 14px;
  }
}

/* ==========================================
   SUBSCRIPTION LANDING PAGE STYLES
   ========================================== */

.subscription-hero {
    position: relative;
    min-height: 100vh;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    margin-top: -250px;
    padding-top: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding-bottom: 60px;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
}

.subscription-hero-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center top;
    z-index: 0;
}

.subscription-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    z-index: 1;
}

.subscription-floating-images {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}

.floating-image {
    position: absolute;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
}

.floating-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.floating-left-1 {
    top: 12%;
    left: 8%;
    width: 180px;
    height: 120px;
    transform: rotate(-5deg);
}

.floating-left-2 {
    top: 35%;
    left: 4%;
    width: 160px;
    height: 110px;
    transform: rotate(3deg);
}

.floating-left-3 {
    top: 58%;
    left: 10%;
    width: 140px;
    height: 95px;
    transform: rotate(-2deg);
}

.floating-right-1 {
    top: 15%;
    right: 6%;
    width: 170px;
    height: 115px;
    transform: rotate(5deg);
}

.floating-right-2 {
    top: 42%;
    right: 4%;
    width: 175px;
    height: 120px;
    transform: rotate(-4deg);
}

.subscription-hero-content {
    position: relative;
    z-index: 3;
    text-align: center;
    max-width: 700px;
    margin: 0 auto;
    padding: 0 20px;
}

.subscription-logo {
    margin-bottom: 30px;
}

.subscription-logo img {
    max-height: 80px;
    width: auto;
}

.subscription-logo-text {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.logo-brand {
    font-family: "Chakra Petch", sans-serif;
    font-size: 64px;
    font-weight: 700;
    color: #fff;
    line-height: 1.2;
}

.logo-plus {
    font-family: "Chakra Petch", sans-serif;
    font-size: 64px;
    font-weight: 700;
    color: #ffffff;
    text-shadow: 0 0 30px rgba(225, 225, 225, 0.5);
    line-height: 1.2;
}

.subscription-headline {
    font-family: "Inter", sans-serif;
    font-size: 52px;
    font-weight: 800;
    line-height: 1.15;
    color: #fff;
    margin: 0 0 24px 0;
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.subscription-headline-accent {
    color: #fff;
}

.subscription-subtext {
    font-family: "Inter", sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.75);
    margin: 0 0 40px 0;
    max-width: 580px;
    margin-left: auto;
    margin-right: auto;
}

.subscription-buttons {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
}

.subscription-btn {
    display: flex;
    align-items: center;
    gap: 16px;
    background: #fff;
    color: #1a1a1a;
    padding: 16px 32px;
    border-radius: 12px;
    text-decoration: none;
    min-width: 320px;
    transition: all 0.3s ease;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}

.subscription-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.3);
    text-decoration: none;
    color: #1a1a1a;
}

.subscription-btn-primary {
    background: #fff;
}

.subscription-btn-secondary {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #fff;
}

.subscription-btn-secondary:hover {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
}

.subscription-btn-icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.subscription-btn-primary .subscription-btn-icon {
    color: #1a1a1a;
}

.subscription-btn-secondary .subscription-btn-icon {
    color: #fff;
}

.subscription-btn-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.subscription-btn-title {
    font-family: "Inter", sans-serif;
    font-size: 18px;
    font-weight: 600;
}

.subscription-btn-price {
    font-family: "Inter", sans-serif;
    font-size: 15px;
    font-weight: 500;
    opacity: 0.8;
}

.subscription-price-period {
    font-weight: 400;
    opacity: 0.7;
}

.subscription-disclaimer {
    font-family: "Inter", sans-serif;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.5);
    margin: 0;
}

.subscription-disclaimer a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: underline;
}

.subscription-disclaimer a:hover {
    color: #fff;
}

.subscription-glow {
    position: absolute;
    bottom: 10%;
    left: 50%;
    transform: translateX(-50%);
    width: 600px;
    height: 250px;
    background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.35) 0%, rgba(200, 200, 200, 0.15) 40%, transparent 70%);
    z-index: 2;
    pointer-events: none;
    filter: blur(60px);
}

/* Subscription Responsive */
@media (max-width: 1200px) {
    .floating-left-1,
    .floating-left-2,
    .floating-left-3 {
        left: 2%;
    }
    .floating-right-1,
    .floating-right-2 {
        right: 2%;
    }
    .floating-image {
        width: 140px !important;
        height: 95px !important;
    }
}

@media (max-width: 992px) {
    .subscription-floating-images {
        display: none;
    }
    .subscription-headline {
        font-size: 42px;
    }
    .logo-brand,
    .logo-plus {
        font-size: 52px;
    }
}

@media (max-width: 768px) {
    .subscription-hero {
        min-height: auto;
        padding: 100px 20px 80px;
    }
    .subscription-headline {
        font-size: 32px;
    }
    .logo-brand,
    .logo-plus {
        font-size: 42px;
    }
    .subscription-subtext {
        font-size: 16px;
    }
    .subscription-btn {
        min-width: 280px;
        padding: 14px 24px;
    }
    .subscription-btn-title {
        font-size: 16px;
    }
    .subscription-glow {
        width: 250px;
        height: 100px;
    }
}

@media (max-width: 576px) {
    .subscription-headline {
        font-size: 28px;
    }
    .logo-brand,
    .logo-plus {
        font-size: 36px;
    }
    .subscription-btn {
        min-width: 100%;
        width: 100%;
    }
}

/* ==========================================
   CATEGORY PAGE STYLES
   ========================================== */

/* Fix site min-height for category pages */
.site:has(.category-hero),
.site:has(.category-products-wrapper) {
    min-height: auto !important;
    grid-auto-rows: auto !important;
}

/* Category Hero/Header Section - Hide default Tebex headers */
.store-category-header,
.category-header:not(.category-header-bar):not(.category-header-info),
.page-category-header,
.content-header,
.site-content > header,
.store-category > header,
.body > .content > header:first-child,
main > header:first-child,
.site > header:not(.site-header),
.header,
.cathead,
.cathead::before,
.head {
    display: none !important;
}

/* ============================
   CATEGORY HERO BANNER
   ============================ */
section.category-hero {
    display: block !important;
    width: 100%;
    padding: 120px 60px 60px 60px;
    background: transparent;
    text-align: center;
}

.category-hero-content {
    position: relative;
    max-width: 800px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.category-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 50px;
    font-size: 12px;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.7);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 24px;
}

.category-hero-badge i {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.5);
}

.category-hero-title {
    font-family: 'Inter', sans-serif;
    font-size: clamp(36px, 6vw, 56px);
    font-weight: 700;
    color: #fff;
    margin: 0 0 12px 0;
    letter-spacing: -0.02em;
    line-height: 1.1;
}

.category-hero-subtitle {
    font-size: 18px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.6);
    margin: 0 0 16px 0;
    letter-spacing: 0.5px;
}

.category-hero-description {
    font-size: 15px;
    color: rgba(255, 255, 255, 0.5);
    line-height: 1.6;
    margin: 0;
    max-width: 600px;
}

@media (max-width: 768px) {
    section.category-hero {
        padding: 100px 24px 40px 24px;
    }

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

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

    .category-hero-description {
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    section.category-hero {
        padding: 90px 16px 30px 16px;
    }

    .category-hero-badge {
        font-size: 11px;
        padding: 6px 12px;
    }
}

/* Hide old/default category elements we don't use */
.category-icon-box,
.category-meta,
.category-badge,
.category-stats,
.category-hero-glow {
    display: none !important;
}

/* Category Header Bar with Search */
.category-header-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 120px 60px 30px 60px;
    gap: 24px;
    flex-wrap: wrap;
}

.category-header-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.category-page-title {
    font-family: 'Inter', sans-serif;
    font-size: 28px;
    font-weight: 700;
    color: #fff;
    margin: 0;
}

.category-page-count {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.5);
    margin: 0;
}

.category-search-wrapper {
    flex-shrink: 0;
}

.category-search-box {
    display: flex;
    align-items: center;
    gap: 12px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    padding: 12px 16px;
    width: 300px;
    transition: all 0.2s ease;
}

.category-search-box:focus-within {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.2);
}

.category-search-box i {
    color: rgba(255, 255, 255, 0.4);
    font-size: 14px;
}

.category-search-box input {
    flex: 1;
    background: none;
    border: none;
    outline: none;
    color: #fff;
    font-size: 14px;
    font-family: 'Inter', sans-serif;
}

.category-search-box input::placeholder {
    color: rgba(255, 255, 255, 0.4);
}

.search-clear {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    background: rgba(255, 255, 255, 0.1);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.2s ease;
}

.search-clear:hover {
    background: rgba(255, 255, 255, 0.2);
}

.search-clear i {
    font-size: 10px;
    color: rgba(255, 255, 255, 0.6);
}

@media (max-width: 768px) {
    .category-header-bar {
        padding: 100px 24px 20px 24px;
        flex-direction: column;
        align-items: flex-start;
    }

    .category-search-box {
        width: 100%;
    }

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

@media (max-width: 480px) {
    .category-header-bar {
        padding: 90px 16px 16px 16px;
    }
}

/* Products Wrapper */
.category-products-wrapper {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 auto;
    padding: 20px 60px 80px 60px !important;
    box-sizing: border-box !important;
}

/* Products Grid */
.category-products-wrapper .store-products-images {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Product Cards - Solid grey boxed style */
.store-products-images article.product {
    background: #1E1E1E !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3) !important;
    overflow: hidden !important;
    transition: all 0.3s ease;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    padding: 12px !important;
}

.store-products-images article.product:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 255, 255, 0.2) !important;
    background: #242424 !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4) !important;
}

/* Product Image - Rounded corners with gradient */
.store-products-images article.product .image-link {
    display: block;
    border-radius: 12px;
    overflow: hidden;
    position: relative;
    aspect-ratio: 16 / 9;
    width: 100%;
}

.store-products-images article.product .image-link::after {
    display: none !important;
}

/* Hide gradient overlay */
.store-products-images article.product .product-gradient-overlay {
    display: none;
}

.store-products-images article.product .image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.4s ease;
    display: block;
}

.store-products-images article.product:hover .image {
    transform: scale(1.05);
}

/* Hide default hover overlay */
.store-products-images article.product .hover-overlay {
    display: none !important;
}

/* Framework Tags */
.store-products-images article.product .product-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 12px 0 0 0;
}

.store-products-images article.product .framework-tag {
    display: inline-block;
    padding: 5px 10px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4px;
    background: #fff;
    color: #121212 !important;
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.4), 0 0 18px rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.7);
    transition: all 0.2s ease;
}

.store-products-images article.product .framework-tag:hover {
    background: #fff;
    color: #121212 !important;
    box-shadow: 0 0 12px rgba(255, 255, 255, 0.5), 0 0 25px rgba(255, 255, 255, 0.18);
}

/* Product Info Section */
.store-products-images article.product .product-info {
    padding: 10px 0 0 0 !important;
    background: transparent !important;
    display: flex;
    flex-direction: column;
}

.store-products-images article.product .product-header {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

/* Product Title */
.store-products-images article.product .product-title {
    font-size: 17px !important;
    font-weight: 600 !important;
    color: #FFFFFF !important;
    margin: 0 !important;
    line-height: 1.4;
}

.store-products-images article.product .product-title a {
    color: inherit !important;
    text-decoration: none;
}

/* Product Price */
.store-products-images article.product .custom-price {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 2px;
}

.store-products-images article.product .current-price {
    font-size: 18px !important;
    color: #fff !important;
    font-weight: 800;
}

.store-products-images article.product .current-price strong {
    font-weight: 800;
}

.store-products-images article.product .original-price {
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.35) !important;
    text-decoration: line-through !important;
    font-weight: 400;
}

.store-products-images article.product .sale-price-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px;
}

.store-products-images article.product .discount-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff;
    color: #000;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 800;
    padding: 5px 10px;
    border-radius: 5px;
    white-space: nowrap;
    line-height: 1;
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.4), 0 0 25px rgba(255, 255, 255, 0.15);
}

/* Hide the included package-actions.twig (we use product-buttons instead) */
.store-products-images article.product > .product-actions:not(.product-buttons) {
    display: none !important;
}

/* Product Buttons Container */
.store-products-images article.product .product-buttons {
    display: flex;
    gap: 8px;
    margin-top: 12px;
}

.store-products-images article.product .product-buttons .product-view-btn,
.store-products-images article.product .product-buttons .btn.add,
.store-products-images article.product .product-buttons .btn.remove-from-basket {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 12px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
    white-space: nowrap;
    border: none;
    outline: none;
}

/* View Button */
.store-products-images article.product .product-buttons .product-view-btn {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.8);
}

.store-products-images article.product .product-buttons .product-view-btn:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.2);
    color: #fff;
}

/* Add to Basket Button */
.store-products-images article.product .product-buttons .btn.add,
.store-products-images article.product .product-buttons .btn.subscribe {
    background: var(--color-primary, #0048ff) !important;
    border: 1px solid var(--color-primary, #0048ff) !important;
    color: #fff !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    opacity: 1 !important;
}

.store-products-images article.product .product-buttons .btn.add:hover,
.store-products-images article.product .product-buttons .btn.subscribe:hover {
    background: var(--color-primary-hover, #fff) !important;
    border-color: var(--color-primary-hover, #fff) !important;
    color: var(--color-primary-text-hover, #0a0a0a) !important;
    transform: translateY(-1px);
}

/* Remove from Basket Button (white outline theme) */
.store-products-images article.product .product-buttons .btn.remove-from-basket {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: rgba(255, 255, 255, 0.8) !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    opacity: 1 !important;
}

.store-products-images article.product .product-buttons .btn.remove-from-basket:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.3) !important;
    color: #fff !important;
}

/* Hidden state */
.store-products-images article.product .product-buttons [hidden] {
    display: none !important;
}

/* Button icons */
.store-products-images article.product .product-buttons .product-view-btn i,
.store-products-images article.product .product-buttons .btn.add i,
.store-products-images article.product .product-buttons .btn.remove-from-basket i {
    font-size: 11px;
}

/* Responsive - stack buttons on very small screens */
@media (max-width: 400px) {
    .store-products-images article.product .product-buttons {
        flex-direction: column;
    }
}

/* Best seller tag */
.store-products-images article.product .product-tag {
    position: absolute;
    top: 12px;
    right: 12px;
    left: auto;
    z-index: 10;
    padding: 6px 10px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(10px);
    border: none;
    border-radius: 6px;
    color: #fff;
}

.store-products-images article.product .product-tag-bestseller {
    left: 12px !important;
    right: auto !important;
}

/* Responsive Grid */
@media (max-width: 1024px) {
    .category-hero {
        padding: 40px 40px 25px 40px !important;
    }

    .category-products-wrapper {
        padding: 20px 40px 60px 40px !important;
    }

    .category-products-wrapper .store-products-images {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 18px !important;
    }
}

@media (max-width: 900px) {
    .category-products-wrapper .store-products-images {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 18px !important;
    }
}

@media (max-width: 768px) {
    .category-hero {
        padding: 40px 24px 30px 24px !important;
    }

    .category-icon-box {
        width: 60px;
        height: 60px;
        border-radius: 14px;
    }

    .category-icon-box i {
        font-size: 24px;
    }

    .category-title {
        font-size: clamp(24px, 7vw, 30px);
    }

    .category-description {
        font-size: 14px;
    }

    .category-products-wrapper {
        padding: 10px 24px 60px 24px !important;
    }

    .category-products-wrapper .store-products-images {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
        max-width: 100% !important;
    }
}

@media (max-width: 500px) {
    .category-hero {
        padding: 30px 16px 15px 16px !important;
    }

    .category-products-wrapper {
        padding: 10px 16px 50px 16px !important;
    }

    .category-products-wrapper .store-products-images {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
}

/* ==========================================
   PACKAGE PAGE STYLES
   ========================================== */

/* Box around the action panel */
.store-product-full .product-actions {
    background: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 24px !important;
}

/* Framework Tags on Package Page */
.package-framework-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.pkg-framework-tag {
    display: none;
    padding: 6px 12px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 6px;
    background: #fff;
    color: #121212 !important;
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.4), 0 0 18px rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.12);
    transition: all 0.2s ease;
}

.pkg-framework-tag:hover {
    background: #fff;
    color: #121212 !important;
    box-shadow: 0 0 12px rgba(255, 255, 255, 0.5), 0 0 25px rgba(255, 255, 255, 0.18);
}

/* Price Display */
.package-price-display {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 20px 0;
}

.package-current-price {
    font-size: 28px;
    font-weight: 700;
    color: #FFFFFF;
}

.package-original-price {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.4);
    text-decoration: line-through;
}

/* Package Buttons */
.package-buttons {
    display: flex;
    gap: 12px;
    margin-top: 20px;
}

/* White Purchase Button */
.package-buy-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex: 1;
    padding: 14px 24px;
    background: #FFFFFF;
    border: none;
    border-radius: 10px;
    color: #0a0a0a;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
}

.package-buy-btn:hover {
    background: #f0f0f0;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(255, 255, 255, 0.15);
}

.package-buy-btn i {
    font-size: 14px;
    color: #0a0a0a;
}

/* Grey Gift Button */
.package-gift-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 24px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 10px;
    color: rgba(255, 255, 255, 0.8);
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
}

.package-gift-btn:hover {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.2);
    color: #FFFFFF;
}

.package-gift-btn i {
    font-size: 14px;
}

/* Override shared.css .gift background-image */
.store-product-full .product-actions .package-gift-btn.gift {
    background-image: none !important;
    background: rgba(255, 255, 255, 0.08) !important;
    flex: none !important;
}

.store-product-full .product-actions .package-gift-btn.gift:hover {
    background: rgba(255, 255, 255, 0.12) !important;
}

/* ============================================
   GIFT MODAL — Custom two-column gift popup
   ============================================ */

/* Hide Tebex's default gift popup when ours is active */
.gift-form-popup .popup-content {
    opacity: 0 !important;
    pointer-events: none !important;
    position: fixed !important;
    top: -9999px !important;
}

/* Overlay */
.gift-modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 100000;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(6px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    opacity: 0;
    transition: opacity 0.25s ease;
}

.gift-modal-overlay.is-visible {
    opacity: 1;
}

/* Modal box */
.gift-modal {
    position: relative;
    width: 100%;
    max-width: 680px;
    background: rgba(12, 12, 12, 0.98);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    overflow: hidden;
    transform: translateY(16px) scale(0.97);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.gift-modal-overlay.is-visible .gift-modal {
    transform: translateY(0) scale(1);
}

/* Close button */
.gift-modal-close {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 2;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    color: rgba(255, 255, 255, 0.6);
    font-size: 14px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.gift-modal-close:hover {
    background: rgba(255, 255, 255, 0.14);
    color: #fff;
}

/* Header */
.gift-modal-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 24px 28px 0 28px;
}

.gift-modal-header-icon {
    font-size: 20px;
    color: #fff;
}

.gift-modal-header h2 {
    font-family: 'Inter', 'Helvetica', sans-serif;
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    margin: 0;
}

/* Body — two columns */
.gift-modal-body {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    padding: 24px 28px 28px 28px;
}

/* Left — image */
.gift-modal-image {
    border-radius: 12px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.03);
    aspect-ratio: 16 / 10;
}

.gift-modal-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Right — info */
.gift-modal-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Tags */
.gift-modal-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 12px;
}

.gift-modal-tag {
    display: inline-block;
    padding: 4px 10px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4px;
    background: #fff;
    color: #121212;
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.3);
}

/* Title */
.gift-modal-title {
    font-family: 'Inter', 'Helvetica', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 8px 0;
    line-height: 1.3;
}

/* Description */
.gift-modal-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.5);
    line-height: 1.6;
    margin: 0 0 18px 0;
}

/* Input */
.gift-modal-input {
    width: 100%;
    padding: 13px 16px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    font-size: 14px;
    color: #fff;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    margin-bottom: 14px;
    box-sizing: border-box;
}

.gift-modal-input:focus {
    border-color: rgba(255, 255, 255, 0.25);
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.04);
}

.gift-modal-input::placeholder {
    color: rgba(255, 255, 255, 0.3);
}

.gift-modal-input.shake {
    animation: gift-shake 0.4s ease;
    border-color: #e74c3c;
}

@keyframes gift-shake {
    0%, 100% { transform: translateX(0); }
    20% { transform: translateX(-6px); }
    40% { transform: translateX(6px); }
    60% { transform: translateX(-4px); }
    80% { transform: translateX(4px); }
}

/* Submit button */
.gift-modal-submit {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 24px;
    background: #fff;
    color: #0a0a0a;
    border: none;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.gift-modal-submit:hover {
    background: #f0f0f0;
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(255, 255, 255, 0.12);
}

.gift-modal-submit i {
    font-size: 14px;
}

/* Mobile — stack vertically */
@media (max-width: 600px) {
    .gift-modal-body {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .gift-modal-image {
        max-height: 180px;
    }

    .gift-modal-header {
        padding: 20px 20px 0 20px;
    }

    .gift-modal-body {
        padding: 20px;
    }
}

/* Responsive */
@media (max-width: 600px) {
    .package-buttons {
        flex-direction: column;
    }

    .package-buy-btn,
    .package-gift-btn {
        width: 100%;
    }
}

/* ============================================
   BASKET V2 - Modern Styling
   ============================================ */

/* The popup container - hide its styling when v2 is inside
   Note: :has() may not work in all browsers, so we also style the form directly */

/* The form itself - this overrides everything */
form.basket.basket-v2,
.basket.basket-v2 {
    display: flex !important;
    flex-direction: column !important;
    max-height: 80vh !important;
    background: rgba(12, 12, 12, 0.98) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.6) !important;
}

/* Header */
form.basket.basket-v2 .basket-header,
.basket.basket-v2 .basket-header {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 24px 24px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    background: transparent !important;
    flex-shrink: 0 !important;
}

form.basket.basket-v2 .basket-header-icon,
.basket.basket-v2 .basket-header-icon {
    width: 48px !important;
    height: 48px !important;
    background: linear-gradient(135deg, var(--color-primary, #b8ff00), rgba(184, 255, 0, 0.7)) !important;
    border-radius: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.basket-v2 .basket-header-icon i {
    font-size: 20px !important;
    color: #000 !important;
}

.basket-v2 .basket-header-info {
    flex: 1 !important;
}

.basket-v2 .basket-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 0 4px 0 !important;
}

.basket-v2 .basket-subtitle {
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.5) !important;
    margin: 0 !important;
}

/* Content area */
.basket-v2 .basket-content {
    flex: 1 !important;
    overflow-y: auto !important;
    padding: 16px 24px !important;
    background: transparent !important;
}

/* Empty state */
.basket-v2 .basket-empty {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 48px 24px !important;
    text-align: center !important;
}

.basket-v2 .basket-empty-icon {
    width: 80px !important;
    height: 80px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 20px !important;
}

.basket-v2 .basket-empty-icon i {
    font-size: 32px !important;
    color: rgba(255, 255, 255, 0.3) !important;
}

.basket-v2 .basket-empty-text {
    font-size: 16px !important;
    color: rgba(255, 255, 255, 0.6) !important;
    margin: 0 0 20px 0 !important;
}

.basket-v2 .basket-empty-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 12px 24px !important;
    background: var(--color-primary, #b8ff00) !important;
    color: #000 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    border-radius: 10px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.basket-v2 .basket-empty-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(184, 255, 0, 0.3) !important;
}

/* Items */
.basket-v2 .basket-items {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.basket-v2 .basket-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 16px !important;
    padding: 16px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    position: relative !important;
    transition: all 0.2s ease !important;
}

.basket-v2 .basket-item:hover {
    border-color: rgba(255, 255, 255, 0.1) !important;
    background: rgba(255, 255, 255, 0.05) !important;
}

/* Item image */
.basket-v2 .basket-item-image {
    width: 70px !important;
    height: 70px !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    flex-shrink: 0 !important;
    background: rgba(255, 255, 255, 0.05) !important;
}

.basket-v2 .basket-item-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.basket-v2 .basket-item-placeholder {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.basket-v2 .basket-item-placeholder i {
    font-size: 24px !important;
    color: rgba(255, 255, 255, 0.2) !important;
}

/* Item info */
.basket-v2 .basket-item-info {
    flex: 1 !important;
    min-width: 0 !important;
}

.basket-v2 .basket-item-title {
    font-size: 14px !important;
    font-weight: 600 !important;
    margin: 0 0 6px 0 !important;
}

.basket-v2 .basket-item-title a {
    color: #fff !important;
    text-decoration: none !important;
}

.basket-v2 .basket-item-title a:hover {
    color: var(--color-primary, #b8ff00) !important;
}

/* Connection tags */
.basket-v2 .basket-item-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin-bottom: 8px !important;
}

.basket-v2 .basket-item-tag {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 4px 10px !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border-radius: 20px !important;
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.7) !important;
}

.basket-v2 .basket-item-tag-connected {
    background: rgba(184, 255, 0, 0.1) !important;
    color: var(--color-primary, #b8ff00) !important;
}

.basket-v2 .basket-item-tag-connected span {
    background: rgba(184, 255, 0, 0.2) !important;
    padding: 2px 6px !important;
    border-radius: 8px !important;
    font-size: 10px !important;
}

/* Item options */
.basket-v2 .basket-item-options {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 8px 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}

.basket-v2 .basket-item-options li {
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.5) !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.basket-v2 .basket-item-options li i {
    font-size: 10px !important;
    color: rgba(255, 255, 255, 0.3) !important;
}

/* Item price */
.basket-v2 .basket-item-price {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #fff !important;
}

/* Remove button */
.basket-v2 .basket-remove-btn {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 8px !important;
    color: rgba(255, 255, 255, 0.4) !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.basket-v2 .basket-remove-btn:hover {
    background: rgba(255, 59, 48, 0.1) !important;
    border-color: rgba(255, 59, 48, 0.3) !important;
    color: #ff3b30 !important;
}

/* Footer */
.basket-v2 .basket-footer {
    padding: 20px 24px 24px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    background: rgba(0, 0, 0, 0.2) !important;
    flex-shrink: 0 !important;
}

/* Summary rows */
.basket-v2 .basket-summary {
    margin-bottom: 12px !important;
}

.basket-v2 .basket-summary-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 6px 0 !important;
}

.basket-v2 .basket-summary-label {
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.6) !important;
}

.basket-v2 .basket-summary-value {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #fff !important;
}

/* Total */
.basket-v2 .basket-total {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 12px 0 !important;
    margin-bottom: 16px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.basket-v2 .basket-total-label {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #fff !important;
}

.basket-v2 .basket-total-value {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #fff !important;
}

/* Checkout button */
.basket-v2 .basket-checkout-btn {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 16px 24px !important;
    background: var(--color-primary, #b8ff00) !important;
    border: none !important;
    border-radius: 12px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #000 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.basket-v2 .basket-checkout-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(184, 255, 0, 0.35) !important;
}

.basket-v2 .basket-checkout-btn i {
    font-size: 14px !important;
}

/* Payment methods */
.basket-v2 .basket-payments {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px !important;
    padding: 14px 0 !important;
    margin-top: 14px !important;
}

.basket-v2 .basket-payments i {
    font-size: 24px !important;
    color: rgba(255, 255, 255, 0.5) !important;
    transition: color 0.2s ease !important;
}

.basket-v2 .basket-payments i:hover {
    color: rgba(255, 255, 255, 0.8) !important;
}

/* Secure text */
.basket-v2 .basket-secure {
    text-align: center !important;
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.4) !important;
    margin: 8px 0 0 0 !important;
}

.basket-v2 .basket-secure i {
    margin-right: 4px !important;
}

/* Responsive */
@media (max-width: 520px) {
    .basket-popup-content:has(.basket-v2) {
        max-width: 100% !important;
        width: 100% !important;
        max-height: 95vh !important;
        border-radius: 20px 20px 0 0 !important;
        margin-top: auto !important;
    }

    .basket-v2 .basket-header {
        padding: 20px 18px 16px !important;
    }

    .basket-v2 .basket-content {
        padding: 12px 18px !important;
    }

    .basket-v2 .basket-item {
        padding: 14px !important;
    }

    .basket-v2 .basket-item-image {
        width: 60px !important;
        height: 60px !important;
    }

    .basket-v2 .basket-footer {
        padding: 16px 18px 20px !important;
    }
}

/* Empty Cart State */
.checkout-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
    text-align: center;
}

.checkout-empty-icon {
    width: 100px;
    height: 100px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
}

.checkout-empty-icon i {
    font-size: 40px;
    color: rgba(255, 255, 255, 0.3);
}

.checkout-empty-title {
    font-size: 24px;
    font-weight: 600;
    color: #fff;
    margin: 0 0 12px 0;
}

.checkout-empty-text {
    font-size: 15px;
    color: rgba(255, 255, 255, 0.6);
    margin: 0 0 24px 0;
}

.checkout-empty-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 28px;
    background: var(--color-primary, #b8ff00);
    color: #000;
    font-weight: 600;
    font-size: 14px;
    border-radius: 10px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.checkout-empty-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(184, 255, 0, 0.3);
}

/* Layout Wrapper */
.checkout-layout-wrap {
    width: 100%;
}

/* Two Column Layout */
.checkout-layout {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 30px;
    align-items: start;
}

/* Left Column - Main Content */
.checkout-main {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

/* Cart Items Container */
.checkout-items {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Individual Cart Item */
.checkout-item {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 20px;
    background: rgba(22, 22, 22, 1);
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    position: relative;
    transition: all 0.2s ease;
}

.checkout-item:hover {
    border-color: rgba(255, 255, 255, 0.1);
}

/* Item Image */
.checkout-item-image {
    width: 120px;
    height: 90px;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
    background: rgba(255, 255, 255, 0.05);
}

.checkout-item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.checkout-item-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.03);
}

.checkout-item-placeholder i {
    font-size: 28px;
    color: rgba(255, 255, 255, 0.2);
}

/* Item Details */
.checkout-item-details {
    flex: 1;
    min-width: 0;
}

.checkout-item-name {
    margin: 0 0 10px 0;
    font-size: 16px;
    font-weight: 600;
}

.checkout-item-name a {
    color: #fff;
    text-decoration: none;
    transition: color 0.2s ease;
}

.checkout-item-name a:hover {
    color: var(--color-primary, #b8ff00);
}

/* Connection/Option Tags */
.checkout-item-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.checkout-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 20px;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.7);
}

.checkout-tag i {
    font-size: 10px;
}

.checkout-tag-connected {
    background: rgba(184, 255, 0, 0.1);
    color: var(--color-primary, #b8ff00);
}

.checkout-tag-connected .tag-status {
    background: rgba(184, 255, 0, 0.2);
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 11px;
    margin-left: 4px;
}

/* Item Price */
.checkout-item-price {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    white-space: nowrap;
    padding: 0 20px;
}

/* Remove Button */
.checkout-item-remove {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    color: rgba(255, 255, 255, 0.5);
    text-decoration: none;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.checkout-item-remove:hover {
    background: rgba(255, 59, 48, 0.1);
    border-color: rgba(255, 59, 48, 0.3);
    color: #ff3b30;
}

/* ============================================
   Recommended Products Section
   ============================================ */

.checkout-recommended {
    margin-top: 20px;
}

.checkout-recommended-title {
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 20px 0;
}

.checkout-recommended-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

/* Recommended Product Card */
.checkout-rec-card {
    background: rgba(22, 22, 22, 1);
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
}

.checkout-rec-card:hover {
    border-color: rgba(255, 255, 255, 0.12);
    transform: translateY(-2px);
}

.checkout-rec-image {
    width: 100%;
    height: 140px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.03);
}

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

.checkout-rec-card:hover .checkout-rec-image img {
    transform: scale(1.05);
}

.checkout-rec-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.checkout-rec-placeholder i {
    font-size: 32px;
    color: rgba(255, 255, 255, 0.15);
}

.checkout-rec-info {
    padding: 16px;
    flex: 1;
}

.checkout-rec-name {
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    margin: 0 0 6px 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.checkout-rec-desc {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.5);
    margin: 0 0 12px 0;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.checkout-rec-price {
    font-size: 16px;
    font-weight: 700;
    color: var(--color-primary, #b8ff00);
}

.checkout-rec-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 14px 16px;
    background: var(--color-primary, #b8ff00);
    color: #000;
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.checkout-rec-btn:hover {
    background: #d4ff4d;
}

.checkout-rec-btn i {
    font-size: 12px;
}

/* ============================================
   Right Sidebar - Widgets
   ============================================ */

.checkout-sidebar {
    display: flex;
    flex-direction: column;
    gap: 16px;
    position: sticky;
    top: 100px;
}

/* Widget Base */
.checkout-widget {
    background: rgba(22, 22, 22, 1);
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    overflow: hidden;
}

.checkout-widget-header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    font-size: 14px;
    font-weight: 600;
    color: #fff;
}

.checkout-widget-header i {
    font-size: 16px;
    color: var(--color-primary, #b8ff00);
}

.checkout-widget-body {
    padding: 16px 20px;
}

/* Input Group (Coupon/Gift Card) */
.checkout-input-group {
    display: flex;
    gap: 10px;
}

.checkout-input {
    flex: 1;
    padding: 12px 16px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    font-size: 14px;
    color: #fff;
    outline: none;
    transition: all 0.2s ease;
}

.checkout-input::placeholder {
    color: rgba(255, 255, 255, 0.4);
}

.checkout-input:focus {
    border-color: var(--color-primary, #b8ff00);
    background: rgba(255, 255, 255, 0.08);
}

.checkout-apply-btn {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 12px 18px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    font-size: 13px;
    font-weight: 600;
    color: #fff;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.checkout-apply-btn:hover {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.25);
}

.checkout-apply-btn i {
    font-size: 12px;
}

/* Cart Summary Widget */
.checkout-widget-summary .checkout-widget-body {
    padding: 20px;
}

.checkout-summary-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.checkout-summary-label {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.7);
}

.checkout-summary-value {
    font-size: 14px;
    font-weight: 600;
    color: #fff;
}

.checkout-summary-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 0;
    margin-top: 4px;
}

.checkout-summary-total .checkout-summary-label {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
}

.checkout-summary-total .checkout-summary-value {
    font-size: 20px;
    font-weight: 700;
    color: #fff;
}

/* Checkout Button */
.checkout-btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 24px;
    background: var(--color-primary, #b8ff00);
    border: none;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 700;
    color: #000;
    cursor: pointer;
    transition: all 0.2s ease;
    margin-top: 8px;
}

.checkout-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(184, 255, 0, 0.35);
}

.checkout-btn i {
    font-size: 14px;
}

/* Payment Methods */
.checkout-payments {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 16px 0;
    margin-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.checkout-payments img {
    height: 24px;
    width: auto;
    opacity: 0.8;
    filter: grayscale(20%);
    transition: all 0.2s ease;
}

.checkout-payments img:hover {
    opacity: 1;
    filter: grayscale(0%);
}

/* Powered by & Secure Text */
.checkout-powered {
    text-align: center;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.5);
    margin: 12px 0 4px 0;
}

.checkout-powered strong {
    color: rgba(255, 255, 255, 0.8);
}

.checkout-secure-text {
    text-align: center;
    font-size: 11px;
    color: rgba(255, 255, 255, 0.4);
    margin: 0;
}

/* ============================================
   Checkout Page - Responsive
   ============================================ */

@media (max-width: 1024px) {
    .checkout-layout {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .checkout-sidebar {
        position: static;
        order: -1;
    }

    .checkout-recommended-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .checkout-page {
        padding: 20px 16px;
    }

    .checkout-item {
        flex-wrap: wrap;
        gap: 16px;
    }

    .checkout-item-image {
        width: 100px;
        height: 75px;
    }

    .checkout-item-details {
        flex: 1;
        min-width: calc(100% - 120px);
    }

    .checkout-item-price {
        padding: 0;
        margin-top: 8px;
    }

    .checkout-item-remove {
        position: absolute;
        top: 16px;
        right: 16px;
    }

    .checkout-recommended-grid {
        grid-template-columns: 1fr;
    }

    .checkout-input-group {
        flex-direction: column;
    }

    .checkout-apply-btn {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .checkout-item {
        padding: 16px;
    }

    .checkout-item-image {
        width: 80px;
        height: 60px;
    }

    .checkout-item-name {
        font-size: 14px;
    }

    .checkout-item-price {
        font-size: 16px;
    }

    .checkout-tag {
        padding: 4px 10px;
        font-size: 11px;
    }
}

/* ========================================
   SUBSCRIPTION PRICING CARDS
   ======================================== */

.subscription-page {
    min-height: 100vh;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 60px 24px;
    overflow: hidden;
}

/* Subscription page background image - covers full page */
.subscription-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;
}

.subscription-bg-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.75) 100%);
    z-index: -1;
}

.subscription-particles {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
    pointer-events: none;
}

.subscription-particles span {
    position: absolute;
    width: 6px;
    height: 6px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    animation: float 15s infinite ease-in-out;
}

.subscription-particles span:nth-child(1) { left: 10%; top: 20%; animation-delay: 0s; }
.subscription-particles span:nth-child(2) { left: 30%; top: 60%; animation-delay: 2s; }
.subscription-particles span:nth-child(3) { left: 50%; top: 30%; animation-delay: 4s; }
.subscription-particles span:nth-child(4) { left: 70%; top: 70%; animation-delay: 6s; }
.subscription-particles span:nth-child(5) { left: 90%; top: 40%; animation-delay: 8s; }

@keyframes float {
    0%, 100% { transform: translateY(0) scale(1); opacity: 0.3; }
    50% { transform: translateY(-30px) scale(1.2); opacity: 0.6; }
}

.subscription-page-content {
    position: relative;
    z-index: 2;
    max-width: 1200px;
    width: 100%;
}

.subscription-page-header {
    text-align: center;
    margin-bottom: 50px;
}

.subscription-page-title {
    font-size: 48px;
    font-weight: 800;
    color: #fff;
    margin: 0 0 12px 0;
    letter-spacing: -1px;
}

.subscription-page-title .glow-text {
    color: #fff;
    text-shadow:
        0 0 10px rgba(255, 255, 255, 0.8),
        0 0 20px rgba(255, 255, 255, 0.6),
        0 0 30px rgba(255, 255, 255, 0.4),
        0 0 40px rgba(255, 255, 255, 0.2);
    animation: glowPulse 2s ease-in-out infinite alternate;
}

@keyframes glowPulse {
    from {
        text-shadow:
            0 0 10px rgba(255, 255, 255, 0.8),
            0 0 20px rgba(255, 255, 255, 0.6),
            0 0 30px rgba(255, 255, 255, 0.4),
            0 0 40px rgba(255, 255, 255, 0.2);
    }
    to {
        text-shadow:
            0 0 15px rgba(255, 255, 255, 1),
            0 0 30px rgba(255, 255, 255, 0.8),
            0 0 45px rgba(255, 255, 255, 0.6),
            0 0 60px rgba(255, 255, 255, 0.4);
    }
}

.subscription-page-subtitle {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.6);
    margin: 0;
}

/* Cards Container */
.subscription-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    align-items: stretch;
}

/* Individual Card */
.subscription-card {
    background: rgba(20, 20, 20, 0.8);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 32px 28px;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: transform 0.3s ease, border-color 0.3s ease;
}

.subscription-card:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 255, 255, 0.2);
}

/* Featured Card */
.subscription-card-featured {
    border-color: #ffffff;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(20, 20, 20, 0.9) 100%);
    transform: scale(1.02);
}

.subscription-card-featured:hover {
    transform: scale(1.02) translateY(-4px);
    border-color: #ffffff;
}

/* Ribbon */
.subscription-card-ribbon {
    position: absolute;
    top: -1px;
    right: 24px;
    width: 24px;
    height: 40px;
    background: #ffffff;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 80%, 0 100%);
}

/* Card Header */
.subscription-card-header {
    text-align: center;
    margin-bottom: 28px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.subscription-card-title {
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 8px 0;
    letter-spacing: 1px;
}

.subscription-card-price {
    font-size: 36px;
    font-weight: 800;
    color: #fff;
    margin: 0;
}

.subscription-card-price span {
    font-size: 14px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.5);
}

.subscription-card-featured .subscription-card-title {
    color: #ffffff;
}

.subscription-card-featured .subscription-card-price {
    color: #ffffff;
}

/* Features List */
.subscription-card-features {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 28px;
}

.feature-item {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
}

.feature-item i {
    width: 18px;
    font-size: 14px;
    flex-shrink: 0;
}

.feature-yes i {
    color: #ffffff;
}

.feature-yes span {
    color: #fff;
}

.feature-no i {
    color: rgba(255, 255, 255, 0.3);
}

.feature-no span {
    color: rgba(255, 255, 255, 0.4);
}

/* Card Footer */
.subscription-card-footer {
    margin-top: auto;
}

.subscription-card-btn {
    display: block;
    width: 100%;
    padding: 14px 24px;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    text-decoration: none;
    border-radius: 8px;
    transition: all 0.2s ease;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #fff;
    cursor: pointer;
    box-sizing: border-box;
}

.subscription-card-btn:hover {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.3);
}

.subscription-card-btn-featured {
    background: #ffffff !important;
    border-color: #ffffff !important;
    color: #000 !important;
}

.subscription-card-btn-featured:hover {
    background: rgba(255, 255, 255, 0.9) !important;
    border-color: rgba(255, 255, 255, 0.9) !important;
}

/* Disclaimer */
.subscription-page-disclaimer {
    text-align: center;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.4);
    margin-top: 40px;
}

/* Duration Selection Modal */
.duration-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(8px);
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.duration-modal-overlay.open {
    opacity: 1;
    visibility: visible;
}

.duration-modal {
    background: #1a1a1a;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 32px;
    max-width: 500px;
    width: 90%;
    position: relative;
    transform: scale(0.9) translateY(20px);
    transition: transform 0.3s ease;
}

.duration-modal-overlay.open .duration-modal {
    transform: scale(1) translateY(0);
}

.duration-modal-close {
    position: absolute;
    top: 16px;
    right: 16px;
    background: rgba(255, 255, 255, 0.1);
    border: none;
    color: #fff;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease;
}

.duration-modal-close:hover {
    background: rgba(255, 255, 255, 0.2);
}

.duration-modal-header {
    text-align: center;
    margin-bottom: 28px;
}

.duration-modal-title {
    font-family: 'Inter', sans-serif;
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 8px 0;
}

.duration-modal-subtitle {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.5);
    margin: 0;
}

.duration-modal-options {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.duration-option {
    display: block;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    padding: 20px 24px;
    text-decoration: none;
    transition: all 0.2s ease;
    position: relative;
    text-align: center;
}

.duration-option:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.2);
    transform: translateY(-2px);
}

.duration-option-popular {
    border-color: rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.08);
}

.duration-option-badge {
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    background: #fff;
    color: #000;
    font-size: 10px;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 50px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.duration-option-badge-best {
    background: linear-gradient(135deg, #ffd700, #ffaa00);
}

.duration-option-period {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 4px;
}

.duration-option-price {
    font-size: 28px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 4px;
}

.duration-option-permonth {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.5);
}

@media (max-width: 480px) {
    .duration-modal {
        padding: 24px 20px;
    }

    .duration-modal-title {
        font-size: 20px;
    }

    .duration-option {
        padding: 16px 20px;
    }

    .duration-option-price {
        font-size: 24px;
    }
}

/* Responsive */
@media (max-width: 900px) {
    .subscription-cards {
        grid-template-columns: 1fr;
        max-width: 400px;
        margin: 0 auto;
    }

    .subscription-card-featured {
        transform: none;
        order: -1;
    }

    .subscription-card-featured:hover {
        transform: translateY(-4px);
    }

    .subscription-page-title {
        font-size: 36px;
    }
}

@media (max-width: 480px) {
    .subscription-page {
        padding: 40px 16px;
    }

    .subscription-page-title {
        font-size: 28px;
    }

    .subscription-page-subtitle {
        font-size: 15px;
    }

    .subscription-card {
        padding: 24px 20px;
    }

    .subscription-card-title {
        font-size: 18px;
    }

    .feature-item {
        font-size: 13px;
    }
}

/* ========================================
   CATEGORY PAGE BACKGROUND IMAGE
   Only applies to category pages, NOT homepage
   ======================================== */

/* Page background - show on category pages, hide on homepage */
.page-index .page-background,
.page-index .page-background-overlay {
    display: none !important;
}

.page-background {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -2;
    pointer-events: none;
}

.page-background-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    z-index: -1;
    pointer-events: none;
}

/* Only apply transparent backgrounds on NON-homepage pages */
body:not(.page-index)::before {
    display: none !important;
    content: none !important;
}

body:not(.page-index) {
    background-color: #0a0a0a !important;
    background: #0a0a0a !important;
}

body:not(.page-index) .site {
    position: relative;
    z-index: 2;
    background: transparent !important;
}

body:not(.page-index) .site-content,
body:not(.page-index) .page-content,
body:not(.page-index) .store-products,
body:not(.page-index) .store-products-images,
body:not(.page-index) .category-products-wrapper {
    background: transparent !important;
}

body:not(.page-index) .site-header {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Hide any header backgrounds/overlays on category pages */
body:not(.page-index) .site-header::before,
body:not(.page-index) .site-header::after,
body:not(.page-index) #header::before,
body:not(.page-index) #header::after,
body:not(.page-index) .header,
body:not(.page-index) .header::before,
body:not(.page-index) .header::after,
body:not(.page-index) .cathead,
body:not(.page-index) .cathead::before,
body:not(.page-index) .cathead::after,
body:not(.page-index) .head,
body:not(.page-index) .head::before,
body:not(.page-index) .head::after {
    display: none !important;
    background: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

body:not(.page-index) .site-footer {
    background: rgba(0, 0, 0, 0.7) !important;
}

/* =========================
   COUNTDOWN PAGE STYLES
   ========================= */
.countdown-page {
    position: relative;
    min-height: 100vh;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden;
    padding: 40px 20px;
    width: 100%;
    flex-direction: column;
}

.countdown-bg {
    display: none;
}

.countdown-bg-overlay {
    display: none;
}

/* Floating particles */
.countdown-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 2;
    pointer-events: none;
}

.countdown-particles span {
    position: absolute;
    width: 4px;
    height: 4px;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    animation: countdownFloat 15s infinite ease-in-out;
}

.countdown-particles span:nth-child(1) { left: 10%; animation-delay: 0s; animation-duration: 12s; }
.countdown-particles span:nth-child(2) { left: 20%; animation-delay: 2s; animation-duration: 18s; }
.countdown-particles span:nth-child(3) { left: 35%; animation-delay: 4s; animation-duration: 14s; }
.countdown-particles span:nth-child(4) { left: 50%; animation-delay: 1s; animation-duration: 16s; }
.countdown-particles span:nth-child(5) { left: 65%; animation-delay: 3s; animation-duration: 13s; }
.countdown-particles span:nth-child(6) { left: 75%; animation-delay: 5s; animation-duration: 17s; }
.countdown-particles span:nth-child(7) { left: 85%; animation-delay: 2.5s; animation-duration: 15s; }
.countdown-particles span:nth-child(8) { left: 95%; animation-delay: 1.5s; animation-duration: 19s; }

@keyframes countdownFloat {
    0%, 100% {
        transform: translateY(100vh) scale(0);
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    90% {
        opacity: 1;
    }
    100% {
        transform: translateY(-100vh) scale(1);
        opacity: 0;
    }
}

/* Glowing orb effect */
.countdown-glow-orb {
    display: none;
}

.countdown-page-content {
    position: relative;
    z-index: 10;
    text-align: center !important;
    max-width: 900px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* Header */
.countdown-page-header {
    margin-bottom: 50px;
}

.countdown-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 8px 20px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 24px;
    animation: countdownFadeInDown 0.8s ease-out;
}

.countdown-badge i {
    color: var(--color-primary);
    animation: countdownSpin 3s linear infinite;
}

@keyframes countdownSpin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.countdown-page-title {
    font-family: 'Rubik', sans-serif;
    font-size: clamp(36px, 8vw, 72px);
    font-weight: 800;
    color: #fff;
    margin: 0 0 16px 0;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: -1px;
    animation: countdownFadeInUp 0.8s ease-out 0.2s both;
}

.countdown-page-subtitle {
    font-family: 'Lato', sans-serif;
    font-size: clamp(16px, 3vw, 24px);
    font-weight: 400;
    color: rgba(255, 255, 255, 0.6);
    margin: 0;
    letter-spacing: 4px;
    text-transform: uppercase;
    animation: countdownFadeInUp 0.8s ease-out 0.4s both;
}

/* Countdown Timer */
.countdown-timer {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px;
    margin-bottom: 50px;
    animation: countdownFadeInUp 0.8s ease-out 0.6s both;
}

.countdown-unit {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 24px 20px;
    min-width: 100px;
    transition: all 0.3s ease;
}

.countdown-unit:hover {
    transform: translateY(-5px);
}

.countdown-value {
    font-family: 'Rubik', sans-serif;
    font-size: clamp(36px, 8vw, 64px);
    font-weight: 700;
    color: #fff;
    line-height: 1;
    background: linear-gradient(180deg, #fff 0%, rgba(255, 255, 255, 0.7) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.countdown-label {
    font-family: 'Lato', sans-serif;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: rgba(255, 255, 255, 0.5);
    margin-top: 8px;
}

.countdown-separator {
    font-family: 'Rubik', sans-serif;
    font-size: clamp(24px, 5vw, 48px);
    font-weight: 700;
    color: rgba(255, 255, 255, 0.3);
    animation: countdownBlink 1s infinite;
}

@keyframes countdownBlink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}

/* Released State */
.countdown-released {
    animation: countdownFadeInUp 0.8s ease-out;
}

.countdown-released-icon {
    width: 100px;
    height: 100px;
    margin: 0 auto 24px;
    background: linear-gradient(135deg, var(--color-primary) 0%, rgba(160, 160, 160, 0.5) 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: countdownBounce 2s infinite;
}

.countdown-released-icon i {
    font-size: 40px;
    color: #fff;
}

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

.countdown-released-title {
    font-family: 'Rubik', sans-serif;
    font-size: 48px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 12px 0;
}

.countdown-released-subtitle {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.6);
    margin: 0 0 32px 0;
}

.countdown-released-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--color-primary);
    color: #000;
    padding: 16px 32px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 16px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.countdown-released-btn:hover {
    background: #fff;
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(160, 160, 160, 0.3);
}

/* Preorder Section */
.countdown-preorder {
    margin-bottom: 40px;
    animation: countdownFadeInUp 0.8s ease-out 0.7s both;
}

.countdown-preorder-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: linear-gradient(135deg, #fff 0%, #e0e0e0 100%);
    color: #000;
    padding: 18px 40px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 18px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 10px 40px rgba(255, 255, 255, 0.2);
}

.countdown-preorder-btn:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 15px 50px rgba(255, 255, 255, 0.3);
    background: linear-gradient(135deg, #fff 0%, #fff 100%);
}

.countdown-preorder-btn i {
    font-size: 18px;
}

.preorder-price {
    background: rgba(0, 0, 0, 0.1);
    padding: 4px 12px;
    border-radius: 4px;
    font-size: 16px;
}

.countdown-preorder-note {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.5);
    margin: 16px 0 0 0;
}

/* Notify Section */
.countdown-notify {
    margin-bottom: 50px;
    animation: countdownFadeInUp 0.8s ease-out 0.8s both;
}

.countdown-notify-text {
    font-size: 16px;
    color: rgba(255, 255, 255, 0.5);
    margin: 0 0 16px 0;
}

.countdown-notify-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #5865F2;
    color: #fff;
    padding: 14px 28px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 15px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.countdown-notify-btn:hover {
    background: #4752c4;
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(88, 101, 242, 0.3);
}

.countdown-notify-btn i {
    font-size: 18px;
}

/* Teaser Features */
.countdown-teaser {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 40px;
    flex-wrap: wrap;
    animation: countdownFadeInUp 0.8s ease-out 1s both;
}

.countdown-teaser-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px;
    color: rgba(255, 255, 255, 0.5);
    font-size: 14px;
    font-weight: 500;
}

.countdown-teaser-item i {
    color: var(--color-primary);
    font-size: 16px;
}

/* Animations */
@keyframes countdownFadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

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

/* Responsive */
@media (max-width: 768px) {
    .countdown-page {
        padding: 30px 16px;
    }

    .countdown-timer {
        gap: 6px;
    }

    .countdown-unit {
        min-width: 70px;
        padding: 16px 12px;
        border-radius: 12px;
    }

    .countdown-label {
        font-size: 10px;
        letter-spacing: 1px;
    }

    .countdown-separator {
        font-size: 24px;
    }

    .countdown-teaser {
        gap: 20px;
    }

    .countdown-teaser-item {
        font-size: 12px;
    }

    .countdown-glow-orb {
        width: 300px;
        height: 300px;
    }
}

@media (max-width: 480px) {
    .countdown-unit {
        min-width: 60px;
        padding: 12px 8px;
    }

    .countdown-value {
        font-size: 28px;
    }

    .countdown-separator {
        font-size: 20px;
    }

    .countdown-badge {
        font-size: 11px;
        padding: 6px 14px;
    }

    .countdown-notify-btn {
        padding: 12px 20px;
        font-size: 14px;
    }
}



/* =============================================
   MOBILE DROPDOWN FIXES
   ============================================= */
@media (max-width: 960px) {
  /* Fix dropdown menus on mobile */
  .user-dropdown-menu,
  .currency-dropdown-menu,
  .currency-dropdown {
    position: fixed !important;
    top: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    border-radius: 16px 16px 0 0 !important;
    padding: 16px !important;
    z-index: 10000 !important;
    max-height: 70vh;
    overflow-y: auto;
    background: #1a1a1a !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
  }

  /* Add overlay behind mobile dropdowns */
  .user-profile-nav.open::before,
  .currency-profile-nav.open::before,
  .currency-selector.open::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 9998;
  }

  /* Make dropdown items larger for touch */
  .user-dropdown-item,
  .currency-item,
  .currency-dropdown a,
  .currency-dropdown li a {
    padding: 14px 16px !important;
    font-size: 15px !important;
    display: block;
    color: #fff;
    border-radius: 8px;
  }

  .user-dropdown-item:hover,
  .currency-item:hover,
  .currency-dropdown a:hover {
    background: rgba(255,255,255,0.1);
  }

  /* Currency dropdown list */
  .currency-dropdown ul,
  .currency-dropdown-menu {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .currency-dropdown li {
    list-style: none;
  }
}

/* ================================================
   SALE BAR
   ================================================ */

.sale-bar {
    position: fixed;
    top: 0;
    width: 100vw !important;
    max-width: 100vw !important;
    left: 0 !important;
    transform: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    background: #121212;
    z-index: 99999;
    overflow: hidden;
    box-sizing: border-box;
}

.sale-bar.hidden {
    display: none !important;
}

/* Push page content below the fixed sale bar */
body:has(.sale-bar:not(.hidden)) {
    padding-top: 68px !important;
}

/* Bottom border */
.sale-bar .sale-bar-border {
    position: absolute !important;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.4) 20%, rgba(255, 255, 255, 0.4) 80%, transparent 100%);
    pointer-events: none;
}

/* Shimmer */
.sale-bar .sale-bar-shimmer {
    position: absolute !important;
    top: 0;
    left: -100%;
    width: 200%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent 0%,
        transparent 40%,
        rgba(255, 255, 255, 0.02) 45%,
        rgba(255, 255, 255, 0.04) 50%,
        rgba(255, 255, 255, 0.02) 55%,
        transparent 60%,
        transparent 100%
    );
    animation: sale-shimmer 8s ease-in-out infinite;
    pointer-events: none;
}

@keyframes sale-shimmer {
    0% { transform: translateX(-30%); }
    100% { transform: translateX(30%); }
}

/* Inner layout — left & right split */
.sale-bar .sale-bar-inner {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    max-width: 1400px;
    margin: 0 auto;
    height: 68px;
    position: relative;
    padding: 0 40px;
}

/* Left side — icon + two-line text */
.sale-bar .sale-bar-left {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 14px;
    min-width: 0;
}

/* Percent icon circle */
.sale-bar .sale-bar-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px;
    height: 38px;
    min-width: 38px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
}

.sale-bar .sale-bar-icon i {
    display: inline !important;
    font-size: 14px;
    color: #fff;
}

/* Two-line text block */
.sale-bar .sale-bar-text {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px;
    min-width: 0;
}

.sale-bar .sale-bar-name {
    display: block !important;
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 14px;
    color: #fff;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sale-bar .sale-bar-sub {
    display: block !important;
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.5);
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Discount text */
.sale-bar .sale-bar-discount {
    display: inline !important;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 12px;
    color: #fff;
    text-transform: uppercase;
}

.sale-bar .sale-bar-divider {
    display: inline !important;
    color: rgba(255, 255, 255, 0.2);
    margin: 0 6px;
    font-weight: 300;
}

/* Right side — countdown + button */
.sale-bar .sale-bar-right {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 20px;
    flex-shrink: 0;
}

/* Countdown */
.sale-bar .sale-bar-countdown {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 6px;
}

/* Time unit — number on top, label below */
.sale-bar .sale-bar-time-unit {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    min-width: 40px;
}

.sale-bar .sale-bar-time-unit span {
    display: block !important;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 20px;
    color: #fff;
    font-variant-numeric: tabular-nums;
    line-height: 1;
    text-align: center;
}

.sale-bar .sale-bar-time-unit small {
    display: block !important;
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 8px;
    color: rgba(255, 255, 255, 0.3);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 3px;
    text-align: center;
}

/* Colon between time units */
.sale-bar .sale-bar-time-colon {
    display: inline !important;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 18px;
    color: rgba(255, 255, 255, 0.15);
    margin-bottom: 10px;
}

/* Shop Now button */
.sale-bar .sale-bar-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff;
    color: #121212 !important;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 11px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    text-decoration: none !important;
    padding: 10px 24px;
    border-radius: 6px;
    transition: background 0.3s ease, box-shadow 0.3s ease;
    white-space: nowrap;
}

.sale-bar .sale-bar-btn:hover {
    background: rgba(255, 255, 255, 0.85);
    color: #121212 !important;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.2);
}

/* ================================================
   SALE BAR — TABLET (max-width: 900px)
   ================================================ */
@media (max-width: 900px) {
    body:has(.sale-bar:not(.hidden)) {
        padding-top: 62px !important;
    }

    .sale-bar .sale-bar-inner {
        height: 62px;
        padding: 0 20px;
        gap: 14px;
    }

    .sale-bar .sale-bar-icon {
        width: 34px;
        height: 34px;
        min-width: 34px;
    }

    .sale-bar .sale-bar-icon i {
        font-size: 12px;
    }

    .sale-bar .sale-bar-name {
        font-size: 12px;
        letter-spacing: 0.5px;
    }

    .sale-bar .sale-bar-sub {
        font-size: 10px;
    }

    .sale-bar .sale-bar-discount {
        font-size: 10px;
    }

    .sale-bar .sale-bar-time-unit span {
        font-size: 17px;
    }

    .sale-bar .sale-bar-time-unit small {
        font-size: 7px;
    }

    .sale-bar .sale-bar-time-unit {
        min-width: 34px;
    }

    .sale-bar .sale-bar-time-colon {
        font-size: 15px;
        margin-bottom: 8px;
    }

    .sale-bar .sale-bar-right {
        gap: 14px;
    }

    .sale-bar .sale-bar-btn {
        font-size: 10px;
        padding: 9px 18px;
    }
}

/* ================================================
   SALE BAR — MOBILE (max-width: 640px)
   ================================================ */
@media (max-width: 640px) {
    body:has(.sale-bar:not(.hidden)) {
        padding-top: 56px !important;
    }

    .sale-bar .sale-bar-inner {
        height: 56px;
        padding: 0 14px;
        gap: 10px;
    }

    /* Hide icon on mobile */
    .sale-bar .sale-bar-icon {
        display: none !important;
    }

    .sale-bar .sale-bar-left {
        gap: 0;
        min-width: 0;
        flex: 1;
        overflow: hidden;
    }

    .sale-bar .sale-bar-name {
        font-size: 11px;
        letter-spacing: 0.3px;
    }

    /* Hide subtitle on mobile */
    .sale-bar .sale-bar-sub {
        display: none !important;
    }

    .sale-bar .sale-bar-right {
        gap: 10px;
        flex-shrink: 0;
    }

    .sale-bar .sale-bar-countdown {
        gap: 3px;
    }

    .sale-bar .sale-bar-time-unit {
        min-width: 28px;
    }

    .sale-bar .sale-bar-time-unit span {
        font-size: 14px;
    }

    .sale-bar .sale-bar-time-unit small {
        font-size: 6px;
        letter-spacing: 0.5px;
        margin-top: 2px;
    }

    .sale-bar .sale-bar-time-colon {
        font-size: 12px;
        margin-bottom: 7px;
    }

    .sale-bar .sale-bar-btn {
        padding: 8px 14px;
        font-size: 9px;
        letter-spacing: 0.5px;
        border-radius: 5px;
    }
}

/* ================================================
   SALE BAR — SMALL MOBILE (max-width: 400px)
   ================================================ */
@media (max-width: 400px) {
    body:has(.sale-bar:not(.hidden)) {
        padding-top: 50px !important;
    }

    .sale-bar .sale-bar-inner {
        height: 50px;
        padding: 0 10px;
        gap: 8px;
    }

    .sale-bar .sale-bar-name {
        font-size: 10px;
    }

    .sale-bar .sale-bar-time-unit {
        min-width: 24px;
    }

    .sale-bar .sale-bar-time-unit span {
        font-size: 12px;
    }

    .sale-bar .sale-bar-time-unit small {
        font-size: 5px;
    }

    .sale-bar .sale-bar-time-colon {
        font-size: 10px;
        margin-bottom: 6px;
    }

    .sale-bar .sale-bar-btn {
        padding: 6px 10px;
        font-size: 8px;
        border-radius: 4px;
    }
}

