@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900&display=swap");

:root {
  --color-primary: #EC297B;
  --color-black: #252525;
  --color-white: #FBFBFB;

  --bg-image: url("https://template-assets.tebex.io/images/page-bg.jpg");
}

/* ===== BASE ===== */
body {
  font-family: Lato, sans-serif;
  background: var(--color-white);
}

/* ===== HERO BACKGROUND (OFFLOAD STYLE) ===== */
/* ===== HEADER IMAGE – LIGHTER OVERLAY ===== */
body::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;

  width: 100%;
  height: 100%;
  max-height: 520px;
  z-index: -1;

  background:
    linear-gradient(
      to bottom,
      rgba(37,37,37,0.1),
      rgba(37,37,37,0.45)
    ),
    var(--bg-image) center center / cover no-repeat;

  mask-image: linear-gradient(
    rgba(0,0,0,.95) 75%,
    rgba(0,0,0,.20)
  );

  pointer-events: none;
}

/* ===== BUTTONS ===== */
.btn-primary,
.btn-secondary,
.btn-tertiary {
  border-radius: 4px;
}

.btn-primary {
  background: #EC297B !important;
  color: #fff !important;
  font-weight: 700;
  text-transform: uppercase;
  transition: all .2s ease;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-secondary:hover,
.btn-secondary:focus {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(236,41,123,.35) !important;
}

/* ===== CARDS / CONTAINERS ===== */
.quantity-field,
.site-header-inner .info .image,
.site-sale-banner {
  border-radius: 5px;
}

.site-home-categories .category {
  border-radius: 5px;
  padding: 20px var(--widget-padding);
  background: var(--color-brighter-bg);
  transition: all .2s ease;
}

.site-home-categories .category:hover {
  color: var(--color-primary);
}

/* ===== STORE TEXT (HERO BOX) ===== */
.store-text {
  border-radius: 8px;
  background: rgba(255,255,255,.96);
  padding: 60px 20px;
}

.store-text h1 {
  text-align: center;
  font-weight: 900;
  font-size: 2.8rem;
  letter-spacing: -.5px;
}

.store-text h2,
.store-text h3,
.store-text h4,
.store-text h5,
.store-text h6 {
  text-align: center;
  font-weight: 400;
  opacity: .9;
}

/* ===== PRODUCTS ===== */
.store-products-list .store-product,
.store-products-images .store-product {
  border-radius: 8px;
  background: var(--color-brighter-bg);
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 10px 20px rgba(0,0,0,.06);
  transition: all .2s ease;
}

.store-products-list .store-product:hover {
  transform: translateY(-3px);
  border-color: #EC297B;
}

.store-products-images .store-product {
  text-align: center;
}

.store-product .title {
  font-weight: 700;
  letter-spacing: -.2px;
}

.store-product .price {
  color: #EC297B;
  font-weight: 700;
}

/* ===== WIDGETS ===== */
.widget-title {
  text-align: center;
}

.widget .store-product {
  text-align: center;
}

.no-products {
  color: var(--color-text-secondary);
  background: var(--color-brighter-bg);
  border-radius: 5px;
}

.store-product-full {
  border-radius: 5px;
  background: var(--color-brighter-bg);
}

/* ===== NAVIGATION ===== */
@media (width > 960px) {
  .navigation-horizontal > ul {
    border-radius: 5px;
  }
}

.navigation-horizontal a {
  font-weight: 600;
  letter-spacing: .3px;
}

.navigation-horizontal a:hover {
  color: #EC297B !important;
}

.navigation-horizontal .has-children > ul {
  border-radius: 5px;
}

/* ===== WIDGETS ===== */
.widget {
  border-radius: 8px;
  background: var(--color-brighter-bg);
  border: 1px solid rgba(0,0,0,.06);
}

@media (width <= 960px) {
  .widget.site-navigation {
    border-radius: 0;
    background: transparent;
  }
}

/* ===== GOALS / PROGRESS ===== */
.widget-community-goal .progress,
.widget-goal .progress {
  border-radius: 2px;
}

.widget-community-goal .progress-bar,
.widget-goal .progress-bar {
  background: #EC297B;
}

/* ===== POPUPS ===== */
.popup-content {
  border-radius: 5px;
}

.popup-close {
  border-radius: 0 5px 0 5px;
}

.basket-item {
  border-radius: 5px;
}

/* ===== TOAST ===== */
.toast {
  border-radius: 6px;
}

.toast-close {
  border-radius: 2px;
}

/* ===== TIERED ===== */
.store-category-tiered {
  border-radius: 5px;
  background: var(--color-brighter-bg);
}

/* ===== MEDIA ===== */
.media-slider .slider,
.media-slider .thumb {
  border-radius: 5px;
}

/* ===== LOGIN LINK ===== */
.header .login a {
  color: #EC297B !important;
  font-weight: 700;
}

/* ===== MOBILE ===== */
@media (max-width: 960px) {
  .store-text h1 {
    font-size: 2.1rem;
  }
}



/* ===== GLOBAL DARK MODE BASE ===== */

body,
.content-outer,
.main,
.site-body {
  background: #252525 !important;
  color: #FBFBFB !important;
}

/* ===== FIX WHITE ON WHITE ISSUE ===== */

.store-text,
.category-description,
.store-product-full,
.no-products {
  background: #2C2C2C !important;
  color: #FBFBFB !important;
}

/* Widgets */
.widget {
  background: #2C2C2C !important;
  color: #FBFBFB !important;
  border: 1px solid rgba(255,255,255,.08);
}

/* Product cards */
.store-products-list .store-product,
.store-products-images .store-product {
  background: #2C2C2C !important;
  color: #FBFBFB !important;
}

/* Sidebar boxes */
.widget.site-navigation {
  background: #1E1E1E !important;
}

/* ===== TEXT FIXES ===== */

.widget-title,
.store-text h1,
.store-text h2,
.store-text h3,
.store-product .title,
.category-description,
.no-products {
  color: #FBFBFB !important;
}

/* Normal text inside boxes */
.widget p,
.store-text p,
.store-product p {
  color: rgba(255,255,255,.85) !important;
}

/* ===== NAVIGATION ===== */

.navigation-horizontal a {
  color: #FBFBFB !important;
}

.navigation-horizontal a:hover {
  color: #EC297B !important;
}

/* ===== ACCENTS ===== */

a,
.store-product .price,
.site-home-categories .category:hover {
  color: #EC297B !important;
}

/* ===== BUTTONS ===== */

.btn-primary {
  background: #EC297B !important;
  color: #fff !important;
}

/* ===== HERO OVERLAY BETTER ===== */

body::before {
  background:
    linear-gradient(
      to bottom,
      rgba(37,37,37,0.96),
      rgba(37,37,37,0.85)
    ),
    var(--bg-image) center center/cover no-repeat !important;
}

/* ===== FORMS / INPUTS ===== */

input,
select,
textarea {
  background: #1E1E1E !important;
  color: #FBFBFB !important;
  border: 1px solid rgba(255,255,255,.1) !important;
}

/* ===== POPUPS ===== */

.popup-content {
  background: #2C2C2C !important;
  color: #FBFBFB !important;
}

/* ===== TOAST ===== */

.toast {
  background: #1E1E1E !important;
  color: #FBFBFB !important;
}


/* ===== FIX SITE HOME CATEGORIES TO MATCH OFFLOAD ===== */

.site-home-categories .category {
  background: #2C2C2C !important;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px !important;

  color: #FBFBFB !important;

  transition: all .2s ease;
}

/* Category title */
.site-home-categories .category .title {
  color: #FBFBFB !important;
  font-weight: 700;
}

/* Category description */
.site-home-categories .category .description {
  color: rgba(255,255,255,.75) !important;
}

/* Hover effect like offload */
.site-home-categories .category:hover {
  transform: translateY(-3px);
  border-color: #EC297B !important;
  background: #2F2F2F !important;
}

/* Icon inside category */
.site-home-categories .category .icon {
  color: #EC297B !important;
}

/* Active / selected */
.site-home-categories .category.active {
  border-color: #EC297B !important;
  background: #2F2F2F !important;
}