/* =========================================================
   MASTER SHOP — MAIN STYLESHEET
   Public website + Product detail + Cart + Checkout
========================================================= */


/* =========================================================
   RESET / VARIABLES
========================================================= */

:root {
  --accent: #4cad38;
  --accent-dark: #31842a;

  --dark: #111111;
  --surface: #f6f6f4;
  --background: #ffffff;
  --text: #111111;
  --muted: #6b7280;
  --border: #e5e7eb;

  --success: #14804a;
  --danger: #d92d20;

  --shadow-sm:
    0 2px 8px rgba(0, 0, 0, 0.06);

  --shadow-md:
    0 14px 35px rgba(0, 0, 0, 0.09);

  --shadow-lg:
    0 24px 60px rgba(0, 0, 0, 0.14);

  --radius-sm: 10px;
  --radius-md: 16px;
  --radius-lg: 24px;

  --container: 1320px;

  /* old compatibility */
  --orange: var(--accent);
  --orange-dark: var(--accent-dark);
}


*,
*::before,
*::after {
  box-sizing: border-box;
}


html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}


body {
  margin: 0;

  font-family:
    "Inter",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  background: var(--background);
  color: var(--text);

  line-height: 1.5;

  -webkit-font-smoothing: antialiased;
}


body.menu-open,
body.cart-open,
body.modal-open,
body.checkout-open {
  overflow: hidden;
}


img {
  display: block;
  max-width: 100%;
}


a {
  color: inherit;
  text-decoration: none;
}


button,
input,
textarea,
select {
  font: inherit;
}


button {
  cursor: pointer;
}


button:disabled {
  cursor: not-allowed;
}


input,
textarea,
select {
  outline: none;
}


h1,
h2,
h3,
h4,
p {
  margin-top: 0;
}


/* =========================================================
   GLOBAL CONTAINERS
========================================================= */

.container,
.section-container,
.header-container,
.topbar-container {
  width: min(
    calc(100% - 40px),
    var(--container)
  );

  margin-inline: auto;
}


.section {
  padding: 96px 0;
}


.section-eyebrow {
  margin-bottom: 10px;

  color: var(--accent);

  font-size: 12px;
  font-weight: 800;

  letter-spacing: 0.16em;
  text-transform: uppercase;
}


.section-heading {
  display: flex;

  align-items: flex-end;
  justify-content: space-between;

  gap: 25px;

  margin-bottom: 34px;
}


.section-heading h2 {
  margin: 0;

  font-size: clamp(
    30px,
    4vw,
    46px
  );

  line-height: 1.05;
  letter-spacing: -0.04em;
}


.section-link,
.view-all-link {
  color: var(--muted);

  font-size: 14px;
  font-weight: 700;

  transition:
    color 0.2s ease,
    transform 0.2s ease;
}


.section-link:hover,
.view-all-link:hover {
  color: var(--accent);

  transform:
    translateX(3px);
}


/* =========================================================
   BUTTONS
========================================================= */

.primary-button,
.secondary-button {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  min-height: 48px;

  padding:
    0 22px;

  border-radius: 12px;

  font-weight: 800;

  transition:
    transform 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease;
}


.primary-button {
  border:
    1px solid
    var(--accent);

  background:
    var(--accent);

  color:
    #ffffff;
}


.primary-button:hover:not(:disabled) {
  background:
    var(--accent-dark);

  border-color:
    var(--accent-dark);

  transform:
    translateY(-2px);

  box-shadow:
    0 12px 25px
    rgba(255, 90, 31, 0.22);
}


.primary-button:disabled {
  opacity: 0.55;

  transform: none;

  box-shadow: none;
}


.secondary-button {
  border:
    1px solid
    var(--border);

  background:
    #ffffff;

  color:
    var(--dark);
}


.secondary-button:hover:not(:disabled) {
  border-color:
    var(--dark);

  transform:
    translateY(-2px);
}


.secondary-button:disabled {
  opacity: 0.5;

  transform: none;
}


.full-width-button {
  width: 100%;
}


/* =========================================================
   TOP BAR
========================================================= */

.topbar {
  background:
    var(--dark);

  color:
    #ffffff;
}


.topbar-container {
  min-height: 38px;

  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 20px;
}


.topbar p {
  margin: 0;

  font-size: 12px;
  font-weight: 600;
}


.topbar-contact {
  font-size: 12px;
  font-weight: 700;
}


/* =========================================================
   HEADER
========================================================= */

.site-header {
  position: sticky;

  top: 0;

  z-index: 100;

  background:
    rgba(255, 255, 255, 0.94);

  border-bottom:
    1px solid
    rgba(17, 17, 17, 0.08);

  backdrop-filter:
    blur(16px);
}


.header-container,
.header-inner {
  min-height: 76px;

  display: grid;

  grid-template-columns:
    auto 1fr auto;

  align-items: center;

  gap: 32px;
}


.logo,
.site-logo {
  display: inline-flex;

  align-items: baseline;

  gap: 5px;

  font-weight: 900;

  line-height: 1;

  letter-spacing:
    -0.05em;
}


.logo-main {
  font-size: 27px;
}


.logo-accent {
  color:
    var(--accent);

  font-size: 13px;

  letter-spacing:
    0.04em;
}


.desktop-nav {
  display: flex;

  align-items: center;
  justify-content: center;

  gap: 28px;
}


.desktop-nav a {
  position: relative;

  padding:
    26px 0;

  font-size: 14px;
  font-weight: 700;

  color:
    #333333;
}


.desktop-nav a::after {
  content: "";

  position: absolute;

  left: 50%;
  bottom: 18px;

  width: 0;
  height: 2px;

  background:
    var(--accent);

  transform:
    translateX(-50%);

  transition:
    width 0.2s ease;
}


.desktop-nav a:hover {
  color:
    var(--dark);
}


.desktop-nav a:hover::after {
  width: 100%;
}


.header-actions {
  display: flex;

  align-items: center;

  gap: 8px;
}


.icon-button,
.menu-button,
.header-action-button {
  position: relative;

  min-width: 43px;
  height: 43px;

  display: inline-flex;

  align-items: center;
  justify-content: center;

  gap: 7px;

  padding:
    0 12px;

  border:
    1px solid
    var(--border);

  border-radius: 12px;

  background:
    #ffffff;

  color:
    var(--dark);

  font-size: 13px;
  font-weight: 800;

  transition:
    border-color 0.2s ease,
    transform 0.2s ease,
    background 0.2s ease;
}


.icon-button:hover,
.menu-button:hover,
.header-action-button:hover {
  border-color:
    var(--dark);

  transform:
    translateY(-1px);
}


.cart-header-button {
  padding-right: 18px;
}


.cart-count {
  position: absolute;

  top: -6px;
  right: -6px;

  min-width: 20px;
  height: 20px;

  display: flex;

  align-items: center;
  justify-content: center;

  padding:
    0 5px;

  border-radius:
    999px;

  background:
    var(--accent);

  color:
    #ffffff;

  font-size: 10px;
  font-weight: 900;
}


.menu-button {
  display: none;
}


.mobile-nav {
  display: none;

  padding:
    6px 20px 18px;

  border-top:
    1px solid
    var(--border);

  background:
    #ffffff;
}


.mobile-nav.active {
  display: grid;
}


.mobile-nav a {
  padding:
    14px 4px;

  border-bottom:
    1px solid
    var(--border);

  font-size: 15px;
  font-weight: 700;
}


.mobile-nav a:last-child {
  border-bottom: 0;
}


/* =========================================================
   HEADER SEARCH
========================================================= */

.header-search {
  display: none;

  border-top:
    1px solid
    var(--border);

  background:
    #ffffff;
}


.header-search.active {
  display: block;
}


.header-search-inner {
  width: min(
    calc(100% - 40px),
    760px
  );

  margin:
    0 auto;

  display: flex;

  align-items: center;

  gap: 10px;

  padding:
    14px 0;
}


.header-search input {
  width: 100%;

  min-height: 48px;

  padding:
    0 16px;

  border:
    1px solid
    var(--border);

  border-radius: 12px;

  background:
    var(--surface);
}


.header-search input:focus {
  border-color:
    var(--accent);

  background:
    #ffffff;
}


.header-search button {
  width: 48px;
  height: 48px;

  flex:
    0 0 48px;

  border:
    1px solid
    var(--border);

  border-radius: 12px;

  background:
    #ffffff;
}


/* =========================================================
   HERO
========================================================= */

.nova-hero {
  overflow: hidden;

  padding:
    76px 0;

  background:
    linear-gradient(
      135deg,
      #f8f8f6 0%,
      #ffffff 52%,
      #fff4ef 100%
    );
}


.nova-hero-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(380px, 0.86fr);

  align-items: center;

  gap: 70px;
}


.nova-hero-content h1 {
  max-width:
    760px;

  margin-bottom:
    24px;

  font-size:
    clamp(
      48px,
      7vw,
      88px
    );

  line-height:
    0.94;

  letter-spacing:
    -0.07em;
}


.nova-hero-description {
  max-width:
    590px;

  margin-bottom:
    30px;

  color:
    var(--muted);

  font-size:
    18px;

  line-height:
    1.75;
}


.nova-hero-actions {
  display: flex;

  flex-wrap: wrap;

  gap: 12px;
}


.hero-stats {
  display: flex;

  flex-wrap: wrap;

  gap: 38px;

  margin-top:
    48px;
}


.hero-stat {
  display: grid;

  gap: 2px;
}


.hero-stat strong {
  font-size:
    25px;

  letter-spacing:
    -0.04em;
}


.hero-stat span {
  color:
    var(--muted);

  font-size:
    12px;

  font-weight:
    700;
}


.nova-hero-visual {
  position: relative;
}


.hero-main-card {
  position: relative;

  overflow: hidden;

  aspect-ratio:
    1 / 1;

  border-radius:
    34px;

  background:
    #111111;

  box-shadow:
    var(--shadow-lg);
}


.hero-main-card img {
  width: 100%;
  height: 100%;

  object-fit: cover;
}


.hero-floating-badge {
  position: absolute;

  left: 24px;
  bottom: 24px;

  display: grid;

  padding:
    14px 18px;

  border-radius:
    14px;

  background:
    rgba(255, 255, 255, 0.92);

  backdrop-filter:
    blur(10px);

  box-shadow:
    var(--shadow-sm);
}


.hero-floating-badge span {
  color:
    var(--accent);

  font-size:
    10px;

  font-weight:
    900;

  letter-spacing:
    0.15em;
}


.hero-floating-badge strong {
  font-size:
    15px;
}


/* =========================================================
   BENEFITS
========================================================= */

.benefits-section {
  border-top:
    1px solid
    var(--border);

  border-bottom:
    1px solid
    var(--border);

  background:
    #ffffff;
}


.benefits-grid {
  display: grid;

  grid-template-columns:
    repeat(3, 1fr);
}


.benefit-card {
  min-height:
    135px;

  display: flex;

  align-items: center;

  gap: 16px;

  padding:
    28px;

  border-right:
    1px solid
    var(--border);
}


.benefit-card:last-child {
  border-right: 0;
}


.benefit-icon {
  width: 46px;
  height: 46px;

  flex:
    0 0 46px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius:
    12px;

  background:
    var(--surface);

  font-size:
    21px;
}


.benefit-card h3 {
  margin-bottom:
    5px;

  font-size:
    15px;
}


.benefit-card p {
  margin: 0;

  color:
    var(--muted);

  font-size:
    12px;

  line-height:
    1.6;
}


/* =========================================================
   CATEGORIES
========================================================= */

.categories-section {
  background:
    var(--surface);
}


.category-grid {
  display: grid;

  grid-template-columns:
    repeat(3, 1fr);

  gap: 16px;
}


.category-card {
  position: relative;

  min-height:
    190px;

  overflow: hidden;

  display: flex;

  flex-direction: column;

  justify-content: flex-end;

  padding:
    24px;

  border:
    1px solid
    var(--border);

  border-radius:
    var(--radius-md);

  background:
    #ffffff;

  text-align:
    left;

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}


.category-card:hover {
  transform:
    translateY(-5px);

  border-color:
    #d7d7d7;

  box-shadow:
    var(--shadow-md);
}


.category-card-name {
  margin-bottom:
    6px;

  color:
    var(--dark);

  font-size:
    22px;

  font-weight:
    900;

  letter-spacing:
    -0.03em;
}


.category-card-count {
  color:
    var(--muted);

  font-size:
    11px;

  font-weight:
    700;
}


/* =========================================================
   PRODUCT TOOLBAR
========================================================= */

.product-toolbar {
  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 20px;

  margin-bottom:
    28px;
}


.filter-container {
  display: flex;

  flex-wrap: wrap;

  gap: 8px;
}


.filter-button {
  min-height:
    40px;

  padding:
    0 15px;

  border:
    1px solid
    var(--border);

  border-radius:
    999px;

  background:
    #ffffff;

  color:
    #555555;

  font-size:
    12px;

  font-weight:
    800;

  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease;
}


.filter-button:hover {
  border-color:
    var(--dark);

  color:
    var(--dark);
}


.filter-button.active {
  border-color:
    var(--dark);

  background:
    var(--dark);

  color:
    #ffffff;
}


.product-toolbar-search {
  width: min(
    100%,
    320px
  );

  flex:
    0 0 320px;
}


.product-toolbar-search input {
  width: 100%;

  min-height:
    44px;

  padding:
    0 15px;

  border:
    1px solid
    var(--border);

  border-radius:
    12px;

  background:
    var(--surface);
}


.product-toolbar-search input:focus {
  border-color:
    var(--accent);

  background:
    #ffffff;
}


/* =========================================================
   LOADING / ERROR
========================================================= */

.products-loading,
.products-error,
.product-loading,
.product-error-state {
  min-height:
    170px;

  display: flex;

  flex-direction: column;

  align-items: center;
  justify-content: center;

  gap: 12px;

  text-align: center;

  color:
    var(--muted);
}


.products-error[hidden],
.products-loading[hidden],
.product-loading[hidden],
.product-error-state[hidden] {
  display: none !important;
}


.loading-spinner {
  width: 36px;
  height: 36px;

  border:
    3px solid
    var(--border);

  border-top-color:
    var(--accent);

  border-radius:
    50%;

  animation:
    masterSpin 0.8s
    linear infinite;
}


@keyframes masterSpin {
  to {
    transform:
      rotate(360deg);
  }
}


/* =========================================================
   PRODUCT GRID
========================================================= */

.product-grid {
  display: grid;

  grid-template-columns:
    repeat(
      4,
      minmax(0, 1fr)
    );

  gap: 22px;
}


.product-card {
  min-width: 0;

  overflow: hidden;

  border:
    1px solid
    var(--border);

  border-radius:
    var(--radius-md);

  background:
    #ffffff;

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}


.product-card:hover {
  transform:
    translateY(-5px);

  border-color:
    #d9d9d9;

  box-shadow:
    var(--shadow-md);
}


.product-image-wrap,
.product-card-image-wrap {
  position: relative;

  overflow: hidden;

  display: block;

  aspect-ratio:
    1 / 1;

  background:
    var(--surface);
}


.product-image-link,
.product-card-image-link {
  display: block;

  width: 100%;
  height: 100%;
}


.product-image-wrap img,
.product-card-image,
.product-card-image-wrap img {
  width: 100%;
  height: 100%;

  object-fit: cover;

  transition:
    transform 0.45s ease;
}


.product-card:hover
.product-image-wrap img,
.product-card:hover
.product-card-image {
  transform:
    scale(1.035);
}


.product-badge,
.product-sold-badge {
  position: absolute;

  top: 12px;
  left: 12px;

  z-index: 2;

  max-width:
    calc(100% - 68px);

  padding:
    7px 10px;

  border-radius:
    8px;

  background:
    var(--dark);

  color:
    #ffffff;

  font-size:
    9px;

  font-weight:
    900;

  letter-spacing:
    0.08em;

  text-transform:
    uppercase;
}


.product-sold-badge,
.product-badge.sold {
  background:
    var(--danger);
}


.favorite-button,
.product-wishlist-button {
  position: absolute;

  top: 11px;
  right: 11px;

  z-index: 2;

  width: 37px;
  height: 37px;

  display: flex;

  align-items: center;
  justify-content: center;

  padding: 0;

  border: 0;

  border-radius:
    50%;

  background:
    rgba(255, 255, 255, 0.92);

  color:
    var(--dark);

  font-size:
    20px;

  box-shadow:
    var(--shadow-sm);
}


.favorite-button.active,
.product-wishlist-button.active {
  color:
    var(--accent);
}


.product-content,
.product-card-info {
  padding: 17px;
}


.product-category,
.product-card-brand {
  margin-bottom:
    6px;

  color:
    var(--muted);

  font-size:
    10px;

  font-weight:
    800;

  letter-spacing:
    0.09em;

  text-transform:
    uppercase;
}


.product-brand {
  margin-bottom:
    3px;

  color:
    var(--accent);

  font-size:
    11px;

  font-weight:
    800;
}


.product-title,
.product-card-title {
  margin-bottom:
    9px;

  overflow: hidden;

  display:
    -webkit-box;

  min-height:
    44px;

  color:
    var(--dark);

  font-size:
    16px;

  font-weight:
    800;

  line-height:
    1.35;

  letter-spacing:
    -0.02em;

  -webkit-line-clamp:
    2;

  -webkit-box-orient:
    vertical;
}


.product-color,
.product-card-options {
  margin-bottom:
    10px;

  color:
    var(--muted);

  font-size:
    12px;
}


.product-size-preview {
  display: flex;

  flex-wrap: wrap;

  gap: 5px;

  margin-bottom:
    12px;
}


.product-size-chip {
  min-width:
    27px;

  padding:
    3px 6px;

  border:
    1px solid
    var(--border);

  border-radius:
    6px;

  background:
    var(--surface);

  color:
    #555555;

  text-align:
    center;

  font-size:
    9px;

  font-weight:
    700;
}


.product-size-chip.out-of-stock {
  opacity:
    0.35;

  text-decoration:
    line-through;
}


.product-bottom,
.product-card-bottom {
  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 12px;

  margin-top:
    12px;
}


.product-price,
.product-card-price {
  margin: 0;

  font-size:
    17px;

  font-weight:
    900;

  letter-spacing:
    -0.03em;
}


.add-to-cart-button,
.product-view-button,
.product-card-button {
  min-width:
    42px;

  min-height:
    40px;

  display:
    inline-flex;

  align-items: center;
  justify-content: center;

  padding:
    0 13px;

  border: 0;

  border-radius:
    10px;

  background:
    var(--dark);

  color:
    #ffffff;

  font-size:
    11px;

  font-weight:
    800;

  transition:
    background 0.2s ease,
    transform 0.2s ease;
}


.add-to-cart-button:hover,
.product-view-button:hover,
.product-card-button:hover {
  background:
    var(--accent);

  transform:
    translateY(-1px);
}


.product-card-button:disabled,
.sold-button {
  opacity:
    0.45;

  transform:
    none;
}


.no-products-message,
.empty-products-state {
  grid-column:
    1 / -1;

  padding:
    80px 20px;

  text-align:
    center;

  color:
    var(--muted);
}
/* =========================================================
   BEST SELLERS
========================================================= */

.best-sellers-section {
  background:
    var(--surface);
}


/* =========================================================
   PROMO
========================================================= */

.promo-section {
  background:
    #ffffff;
}


.promo-banner {
  overflow: hidden;

  display: grid;

  grid-template-columns:
    1fr 1fr;

  min-height:
    440px;

  border-radius:
    28px;

  background:
    var(--dark);

  color:
    #ffffff;
}


.promo-content {
  display: flex;

  flex-direction: column;

  align-items:
    flex-start;

  justify-content:
    center;

  padding:
    58px;
}


.promo-content h2 {
  max-width:
    550px;

  margin-bottom:
    18px;

  font-size:
    clamp(
      36px,
      5vw,
      58px
    );

  line-height:
    1;

  letter-spacing:
    -0.055em;
}


.promo-content > p:not(.section-eyebrow) {
  max-width:
    520px;

  margin-bottom:
    28px;

  color:
    #c8c8c8;

  line-height:
    1.75;
}


.promo-image-wrap {
  min-height:
    440px;
}


.promo-image-wrap img {
  width: 100%;
  height: 100%;

  object-fit:
    cover;
}


/* =========================================================
   ABOUT
========================================================= */

.about-section {
  background:
    var(--surface);
}


.about-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 0.9fr)
    minmax(0, 1fr);

  align-items:
    center;

  gap:
    72px;
}


.about-image-wrap {
  overflow: hidden;

  aspect-ratio:
    1 / 1;

  border-radius:
    28px;

  background:
    #e9e9e9;
}


.about-image-wrap img {
  width: 100%;
  height: 100%;

  object-fit:
    cover;
}


.about-content h2 {
  margin-bottom:
    18px;

  font-size:
    clamp(
      40px,
      6vw,
      66px
    );

  line-height:
    0.98;

  letter-spacing:
    -0.06em;
}


.about-description {
  max-width:
    650px;

  color:
    var(--muted);

  font-size:
    17px;

  line-height:
    1.8;
}


.about-contact-list {
  display: grid;

  grid-template-columns:
    repeat(2, 1fr);

  gap:
    12px;

  margin-top:
    28px;
}


.about-contact-list > div {
  display: grid;

  gap:
    5px;

  padding:
    18px;

  border:
    1px solid
    var(--border);

  border-radius:
    14px;

  background:
    #ffffff;
}


.about-contact-list span {
  color:
    var(--muted);

  font-size:
    11px;

  font-weight:
    700;
}


.about-contact-list strong {
  font-size:
    14px;
}


/* =========================================================
   FOOTER
========================================================= */

.site-footer {
  margin-top:
    0;

  background:
    #0c0c0c;

  color:
    #ffffff;
}


.footer-grid {
  display: grid;

  grid-template-columns:
    1.5fr repeat(3, 1fr);

  gap:
    50px;

  padding-top:
    70px;

  padding-bottom:
    70px;
}


.footer-logo {
  margin-bottom:
    20px;
}


.footer-brand {
  display:
    inline-flex;

  align-items:
    baseline;

  gap:
    5px;
}


.footer-brand > p {
  max-width:
    330px;

  color:
    #9b9b9b;

  font-size:
    13px;

  line-height:
    1.8;
}


.social-links {
  display: flex;

  flex-wrap:
    wrap;

  gap:
    10px;

  margin-top:
    20px;
}


.social-links a {
  padding:
    8px 11px;

  border:
    1px solid
    #2f2f2f;

  border-radius:
    8px;

  color:
    #bdbdbd;

  font-size:
    11px;

  font-weight:
    700;
}


.social-links a:hover {
  border-color:
    var(--accent);

  color:
    #ffffff;
}


.footer-column {
  display: flex;

  flex-direction:
    column;

  align-items:
    flex-start;

  gap:
    11px;
}


.footer-column h3 {
  margin-bottom:
    7px;

  font-size:
    13px;
}


.footer-column a,
.footer-column p {
  margin: 0;

  color:
    #969696;

  font-size:
    12px;

  transition:
    color 0.2s ease;
}


.footer-column a:hover {
  color:
    #ffffff;
}


.footer-bottom {
  min-height:
    68px;

  display: flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    20px;

  padding:
    18px 0;

  border-top:
    1px solid
    #222222;
}


.footer-bottom p {
  margin: 0;

  color:
    #777777;

  font-size:
    11px;
}


/* =========================================================
   CART OVERLAY
========================================================= */

.cart-overlay {
  position:
    fixed;

  inset:
    0;

  z-index:
    300;

  visibility:
    hidden;

  background:
    rgba(
      0,
      0,
      0,
      0.5
    );

  opacity:
    0;

  transition:
    opacity 0.25s ease,
    visibility 0.25s ease;
}


.cart-overlay.active {
  visibility:
    visible;

  opacity:
    1;
}


/* =========================================================
   CART DRAWER / OLD CART SIDEBAR COMPATIBILITY
========================================================= */

.cart-drawer,
.cart-sidebar {
  position:
    fixed;

  top:
    0;

  right:
    0;

  bottom:
    0;

  z-index:
    310;

  width:
    min(
      440px,
      100%
    );

  display:
    grid;

  grid-template-rows:
    auto 1fr auto;

  background:
    #ffffff;

  box-shadow:
    -20px 0 50px
    rgba(
      0,
      0,
      0,
      0.12
    );

  transform:
    translateX(105%);

  transition:
    transform 0.3s ease;
}


.cart-drawer.active,
.cart-sidebar.active {
  transform:
    translateX(0);
}


/* =========================================================
   CART HEADER
========================================================= */

.cart-drawer-header,
.cart-header {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    20px;

  padding:
    22px;

  border-bottom:
    1px solid
    var(--border);
}


.cart-drawer-header h2,
.cart-header h2 {
  margin:
    0;

  font-size:
    22px;

  letter-spacing:
    -0.03em;
}


.cart-eyebrow,
.cart-label {
  margin-bottom:
    3px;

  color:
    var(--accent);

  font-size:
    9px;

  font-weight:
    900;

  letter-spacing:
    0.12em;

  text-transform:
    uppercase;
}


.cart-close-button,
.close-cart-button {
  width:
    40px;

  height:
    40px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0;

  border:
    1px solid
    var(--border);

  border-radius:
    10px;

  background:
    #ffffff;

  color:
    var(--dark);

  font-size:
    15px;

  transition:
    border-color 0.2s ease,
    background 0.2s ease,
    transform 0.2s ease;
}


.cart-close-button:hover,
.close-cart-button:hover {
  border-color:
    var(--dark);

  background:
    var(--surface);

  transform:
    rotate(3deg);
}


/* =========================================================
   CART ITEMS AREA
========================================================= */

.cart-items {
  overflow-y:
    auto;

  padding:
    18px;
}


.cart-empty {
  min-height:
    180px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    30px;

  text-align:
    center;

  color:
    var(--muted);
}


.cart-empty[hidden] {
  display:
    none !important;
}


.cart-empty p,
.empty-cart-message {
  margin:
    0;

  color:
    var(--muted);

  font-size:
    13px;
}


/* =========================================================
   CART ITEM
========================================================= */

.cart-item {
  position:
    relative;

  display:
    grid;

  grid-template-columns:
    82px minmax(0, 1fr);

  gap:
    13px;

  padding:
    0 0 17px;

  margin-bottom:
    17px;

  border-bottom:
    1px solid
    var(--border);
}


.cart-item:last-child {
  margin-bottom:
    0;

  border-bottom:
    0;
}


.cart-item-image,
.cart-item > img {
  width:
    82px;

  height:
    82px;

  overflow:
    hidden;

  display:
    block;

  border-radius:
    11px;

  background:
    var(--surface);
}


.cart-item-image img,
.cart-item > img {
  width:
    100%;

  height:
    100%;

  object-fit:
    cover;
}


.cart-item-info,
.cart-item-content {
  min-width:
    0;
}


.cart-item-brand {
  display:
    block;

  margin-bottom:
    3px;

  color:
    var(--accent);

  font-size:
    9px;

  font-weight:
    900;

  letter-spacing:
    0.08em;

  text-transform:
    uppercase;
}


.cart-item-name,
.cart-item-title,
.cart-item-content h4 {
  display:
    block;

  margin-bottom:
    4px;

  padding-right:
    42px;

  color:
    var(--dark);

  font-size:
    13px;

  font-weight:
    800;

  line-height:
    1.35;
}


.cart-item-options,
.cart-item-variant {
  margin:
    0 0 6px;

  color:
    var(--muted);

  font-size:
    10px;

  line-height:
    1.5;
}


.cart-item-price,
.cart-item-content > p {
  display:
    block;

  margin-bottom:
    8px;

  color:
    var(--dark);

  font-size:
    12px;

  font-weight:
    900;
}


/* =========================================================
   CART ITEM BOTTOM
========================================================= */

.cart-item-bottom {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    10px;

  margin-top:
    9px;
}


.cart-item-quantity,
.cart-quantity-control {
  display:
    inline-flex;

  align-items:
    center;

  overflow:
    hidden;

  border:
    1px solid
    var(--border);

  border-radius:
    8px;
}


.cart-item-quantity button,
.cart-quantity-button {
  width:
    30px;

  height:
    30px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0;

  border:
    0;

  background:
    var(--surface);

  color:
    var(--dark);

  font-size:
    13px;
}


.cart-item-quantity button:hover,
.cart-quantity-button:hover {
  background:
    #ebebe8;
}


.cart-item-quantity span,
.cart-quantity-control span {
  min-width:
    32px;

  text-align:
    center;

  font-size:
    11px;

  font-weight:
    800;
}


.cart-item-remove,
.remove-cart-item {
  padding:
    5px 8px;

  border:
    0;

  border-radius:
    7px;

  background:
    #fff1f0;

  color:
    var(--danger);

  font-size:
    9px;

  font-weight:
    800;
}


.cart-item-remove:hover,
.remove-cart-item:hover {
  background:
    #ffe2df;
}


/* =========================================================
   CART FOOTER
========================================================= */

.cart-drawer-footer,
.cart-footer {
  padding:
    20px;

  border-top:
    1px solid
    var(--border);

  background:
    #ffffff;
}


.cart-subtotal-row,
.cart-total-row {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    15px;

  margin-bottom:
    15px;
}


.cart-subtotal-row span,
.cart-total-row span {
  color:
    var(--muted);

  font-size:
    13px;
}


.cart-subtotal-row strong,
.cart-total-row strong {
  color:
    var(--dark);

  font-size:
    22px;

  font-weight:
    900;

  letter-spacing:
    -0.04em;
}


.cart-note {
  margin-bottom:
    15px;

  color:
    var(--muted);

  font-size:
    10px;

  line-height:
    1.55;
}


.cart-checkout-button {
  width:
    100%;
}


/* =========================================================
   CHECKOUT MODAL — BASE
========================================================= */

.checkout-modal {
  position:
    fixed;

  inset:
    0;

  z-index:
    500;

  visibility:
    hidden;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    20px;

  opacity:
    0;

  pointer-events:
    none;

  transition:
    opacity 0.25s ease,
    visibility 0.25s ease;
}


.checkout-modal.active {
  visibility:
    visible;

  opacity:
    1;

  pointer-events:
    auto;
}


.checkout-overlay {
  position:
    absolute;

  inset:
    0;

  background:
    rgba(
      0,
      0,
      0,
      0.62
    );
}


.checkout-dialog {
  position:
    relative;

  z-index:
    2;

  width:
    min(
      920px,
      100%
    );

  max-height:
    calc(
      100vh - 40px
    );

  overflow-y:
    auto;

  border-radius:
    22px;

  background:
    #ffffff;

  box-shadow:
    var(--shadow-lg);
}


/* =========================================================
   CHECKOUT HEADER
========================================================= */

.checkout-header {
  position:
    sticky;

  top:
    0;

  z-index:
    5;

  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    20px;

  padding:
    21px 24px;

  border-bottom:
    1px solid
    var(--border);

  background:
    rgba(
      255,
      255,
      255,
      0.96
    );

  backdrop-filter:
    blur(12px);
}


.checkout-eyebrow {
  margin-bottom:
    3px;

  color:
    var(--accent);

  font-size:
    9px;

  font-weight:
    900;

  letter-spacing:
    0.14em;

  text-transform:
    uppercase;
}


.checkout-header h2 {
  margin:
    0;

  font-size:
    22px;
}


.checkout-close-button {
  width:
    40px;

  height:
    40px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0;

  border:
    1px solid
    var(--border);

  border-radius:
    10px;

  background:
    #ffffff;

  color:
    var(--dark);
}


.checkout-close-button:hover {
  border-color:
    var(--dark);

  background:
    var(--surface);
}

/* =========================================================
   CHECKOUT BODY
========================================================= */

.checkout-body {
  display:
    grid;

  gap:
    22px;

  padding:
    26px;
}


/* =========================================================
   CHECKOUT FORM SECTIONS
========================================================= */

.checkout-form-section {
  padding:
    20px;

  border:
    1px solid
    var(--border);

  border-radius:
    16px;

  background:
    var(--surface);
}


.checkout-form-section h3 {
  margin-bottom:
    17px;

  color:
    var(--dark);

  font-size:
    15px;

  font-weight:
    900;

  letter-spacing:
    -0.02em;
}


/* =========================================================
   CHECKOUT FORM GRID
========================================================= */

.checkout-form-grid {
  display:
    grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0, 1fr)
    );

  gap:
    16px;
}


.checkout-form-group {
  display:
    grid;

  gap:
    7px;

  margin:
    0;
}


.checkout-form-full {
  grid-column:
    1 / -1;
}


.checkout-form-group label {
  color:
    var(--dark);

  font-size:
    11px;

  font-weight:
    800;
}


.checkout-form-group input,
.checkout-form-group textarea {
  width:
    100%;

  border:
    1px solid
    var(--border);

  border-radius:
    11px;

  background:
    #ffffff;

  color:
    var(--dark);

  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    background 0.2s ease;
}


.checkout-form-group input {
  min-height:
    46px;

  padding:
    0 13px;
}


.checkout-form-group textarea {
  min-height:
    92px;

  padding:
    12px 13px;

  resize:
    vertical;
}


.checkout-form-group input:focus,
.checkout-form-group textarea:focus {
  border-color:
    var(--accent);

  box-shadow:
    0 0 0 3px
    rgba(
      255,
      90,
      31,
      0.08
    );

  background:
    #ffffff;
}


/* =========================================================
   CHECKOUT SUMMARY
========================================================= */

.checkout-summary-items {
  display:
    grid;

  gap:
    10px;
}


.checkout-empty {
  padding:
    24px 10px;

  text-align:
    center;

  color:
    var(--muted);

  font-size:
    12px;
}


.checkout-summary-item {
  display:
    grid;

  grid-template-columns:
    minmax(0, 1fr)
    auto;

  align-items:
    start;

  gap:
    18px;

  padding:
    13px 0;

  border-bottom:
    1px solid
    var(--border);
}


.checkout-summary-item:first-child {
  padding-top:
    0;
}


.checkout-summary-item:last-child {
  padding-bottom:
    0;

  border-bottom:
    0;
}


.checkout-summary-item-info {
  min-width:
    0;

  display:
    grid;

  gap:
    4px;
}


.checkout-summary-item-info strong {
  color:
    var(--dark);

  font-size:
    12px;

  line-height:
    1.4;
}


.checkout-summary-item-info span {
  color:
    var(--muted);

  font-size:
    10px;

  line-height:
    1.5;
}


.checkout-summary-item > strong {
  white-space:
    nowrap;

  color:
    var(--dark);

  font-size:
    12px;

  font-weight:
    900;
}


/* =========================================================
   CHECKOUT TOTAL
========================================================= */

.checkout-summary-total {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    20px;

  margin-top:
    18px;

  padding-top:
    16px;

  border-top:
    1px solid
    var(--border);
}


.checkout-summary-total span {
  color:
    var(--muted);

  font-size:
    12px;

  font-weight:
    700;
}


.checkout-summary-total strong {
  color:
    var(--dark);

  font-size:
    21px;

  font-weight:
    900;

  letter-spacing:
    -0.04em;
}


/* =========================================================
   PAYMENT
========================================================= */

.checkout-payment-box {
  display:
    grid;

  grid-template-columns:
    180px
    minmax(0, 1fr);

  align-items:
    center;

  gap:
    22px;
}


.checkout-payment-qr {
  width:
    180px;

  max-width:
    100%;

  aspect-ratio:
    1 / 1;

  object-fit:
    contain;

  padding:
    8px;

  border:
    1px solid
    var(--border);

  border-radius:
    14px;

  background:
    #ffffff;
}


.checkout-payment-box > div {
  min-width:
    0;
}


.checkout-payment-box strong {
  display:
    block;

  margin-bottom:
    8px;

  color:
    var(--dark);

  font-size:
    15px;

  font-weight:
    900;
}


.checkout-payment-box p {
  margin:
    0;

  color:
    var(--muted);

  font-size:
    11px;

  line-height:
    1.7;
}


/* =========================================================
   CHECKOUT STATUS
========================================================= */

.checkout-status {
  padding:
    13px 15px;

  border:
    1px solid
    var(--border);

  border-radius:
    11px;

  background:
    #ffffff;

  color:
    var(--muted);

  font-size:
    11px;

  font-weight:
    700;

  line-height:
    1.55;
}


.checkout-status[hidden] {
  display:
    none !important;
}


.checkout-status.success {
  border-color:
    #b7dfc8;

  background:
    #effaf4;

  color:
    var(--success);
}


.checkout-status.error {
  border-color:
    #f3beb9;

  background:
    #fff2f1;

  color:
    var(--danger);
}


/* =========================================================
   CHECKOUT FOOTER
========================================================= */

.checkout-footer {
  position:
    sticky;

  bottom:
    0;

  z-index:
    5;

  display:
    flex;

  align-items:
    center;

  justify-content:
    flex-end;

  gap:
    10px;

  padding:
    18px 24px;

  border-top:
    1px solid
    var(--border);

  background:
    rgba(
      255,
      255,
      255,
      0.96
    );

  backdrop-filter:
    blur(12px);
}


.checkout-footer
.primary-button,
.checkout-footer
.secondary-button {
  min-width:
    170px;
}


/* =========================================================
   TOAST
========================================================= */

.site-toast {
  position:
    fixed;

  left:
    50%;

  bottom:
    28px;

  z-index:
    1000;

  max-width:
    calc(
      100% - 32px
    );

  padding:
    11px 16px;

  border-radius:
    10px;

  background:
    var(--dark);

  color:
    #ffffff;

  box-shadow:
    var(--shadow-lg);

  font-size:
    11px;

  font-weight:
    700;

  line-height:
    1.5;

  text-align:
    center;

  opacity:
    0;

  visibility:
    hidden;

  pointer-events:
    none;

  transform:
    translate(
      -50%,
      15px
    );

  transition:
    opacity 0.2s ease,
    transform 0.2s ease,
    visibility 0.2s ease;
}


.site-toast.active {
  visibility:
    visible;

  opacity:
    1;

  transform:
    translate(
      -50%,
      0
    );
}


.site-toast.success {
  background:
    var(--success);
}


.site-toast.error {
  background:
    var(--danger);
}


/* =========================================================
   PRODUCT PAGE
========================================================= */

.product-page {
  min-height:
    70vh;

  background:
    #ffffff;
}


/* =========================================================
   PRODUCT BREADCRUMB

   Шинэ product.html дээр breadcrumb өөрөө
   .container дотор байрлаж байгаа.
========================================================= */

.product-page
.product-breadcrumb {
  display:
    flex;

  align-items:
    center;

  flex-wrap:
    wrap;

  gap:
    8px;

  padding:
    20px 0;

  border-bottom:
    1px solid
    var(--border);

  background:
    transparent;

  color:
    var(--muted);

  font-size:
    11px;
}


.product-page
.product-breadcrumb a {
  color:
    var(--muted);

  transition:
    color 0.2s ease;
}


.product-page
.product-breadcrumb a:hover {
  color:
    var(--accent);
}


.product-page
.product-breadcrumb
span:last-child {
  overflow:
    hidden;

  color:
    var(--dark);

  font-weight:
    700;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


/* =========================================================
   PRODUCT DETAIL — MAIN 2 COLUMN LAYOUT

   Энэ бол screenshot дээр эвдэрч байсан
   хамгийн гол засвар.
========================================================= */

.product-detail {
  display:
    grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, 0.82fr);

  align-items:
    start;

  gap:
    58px;

  padding:
    52px 0 90px;
}


.product-detail[hidden] {
  display:
    none !important;
}


/* =========================================================
   PRODUCT GALLERY — NEW HTML
========================================================= */

.product-detail
.product-gallery {
  min-width:
    0;

  display:
    grid;

  grid-template-columns:
    minmax(0, 1fr);

  gap:
    13px;
}


.product-detail
.product-main-image-wrap {
  position:
    relative;

  width:
    100%;

  overflow:
    hidden;

  aspect-ratio:
    1 / 1;

  border:
    1px solid
    var(--border);

  border-radius:
    22px;

  background:
    var(--surface);
}


.product-detail
.product-main-image {
  width:
    100%;

  height:
    100%;

  display:
    block;

  object-fit:
    cover;
}


/* =========================================================
   PRODUCT THUMBNAILS
========================================================= */

.product-thumbnail-list {
  display:
    flex;

  flex-wrap:
    wrap;

  gap:
    9px;
}


.product-thumbnail {
  width:
    72px;

  height:
    72px;

  overflow:
    hidden;

  flex:
    0 0 72px;

  padding:
    0;

  border:
    1px solid
    var(--border);

  border-radius:
    10px;

  background:
    var(--surface);

  opacity:
    0.65;

  transition:
    opacity 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease;
}


.product-thumbnail img {
  width:
    100%;

  height:
    100%;

  object-fit:
    cover;
}


.product-thumbnail:hover {
  opacity:
    1;

  transform:
    translateY(-1px);
}


.product-thumbnail.active {
  border-color:
    var(--dark);

  opacity:
    1;
}


/* =========================================================
   PRODUCT BADGE
========================================================= */

.product-detail-badge {
  position:
    absolute;

  top:
    15px;

  left:
    15px;

  z-index:
    2;

  padding:
    7px 11px;

  border-radius:
    8px;

  background:
    var(--dark);

  color:
    #ffffff;

  font-size:
    9px;

  font-weight:
    900;

  letter-spacing:
    0.08em;

  text-transform:
    uppercase;
}


.product-detail-badge[hidden] {
  display:
    none !important;
}

/* =========================================================
   PRODUCT DETAIL INFO
========================================================= */

.product-detail-info {
  min-width:
    0;

  padding-top:
    4px;
}


.product-detail-brand {
  margin-bottom:
    7px;

  color:
    var(--accent);

  font-size:
    11px;

  font-weight:
    900;

  letter-spacing:
    0.12em;

  text-transform:
    uppercase;
}


.product-detail-title {
  margin:
    0 0 12px;

  color:
    var(--dark);

  font-size:
    clamp(
      36px,
      4.5vw,
      56px
    );

  font-weight:
    900;

  line-height:
    0.98;

  letter-spacing:
    -0.055em;
}


.product-detail-category {
  margin-bottom:
    18px;

  color:
    var(--muted);

  font-size:
    12px;

  font-weight:
    700;
}


.product-detail-price {
  margin-bottom:
    21px;

  color:
    var(--dark);

  font-size:
    clamp(
      27px,
      3vw,
      34px
    );

  font-weight:
    900;

  line-height:
    1;

  letter-spacing:
    -0.045em;
}


.product-detail-description {
  margin-bottom:
    28px;

  color:
    var(--muted);

  font-size:
    14px;

  line-height:
    1.8;

  white-space:
    pre-line;
}


/* =========================================================
   PRODUCT OPTIONS
========================================================= */

.product-option-group {
  margin-bottom:
    24px;
}


.product-option-group[hidden] {
  display:
    none !important;
}


.product-option-heading {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    15px;

  margin-bottom:
    11px;
}


.product-option-heading strong {
  color:
    var(--dark);

  font-size:
    13px;

  font-weight:
    900;
}


.product-option-heading span {
  color:
    var(--muted);

  font-size:
    10px;

  font-weight:
    700;
}


/* =========================================================
   COLOR + SIZE OPTIONS

   product.js:
   class="size-chip"
========================================================= */

.product-size-options {
  display:
    flex;

  flex-wrap:
    wrap;

  gap:
    9px;
}


.size-chip {
  min-width:
    50px;

  min-height:
    44px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 14px;

  border:
    1px solid
    var(--border);

  border-radius:
    10px;

  background:
    #ffffff;

  color:
    var(--dark);

  font-size:
    12px;

  font-weight:
    800;

  line-height:
    1;

  transition:
    color 0.18s ease,
    background 0.18s ease,
    border-color 0.18s ease,
    transform 0.18s ease,
    box-shadow 0.18s ease;
}


.size-chip:hover:not(:disabled) {
  border-color:
    var(--dark);

  transform:
    translateY(-1px);

  box-shadow:
    var(--shadow-sm);
}


.size-chip.active {
  border-color:
    var(--dark);

  background:
    var(--dark);

  color:
    #ffffff;

  box-shadow:
    0 6px 16px
    rgba(
      17,
      17,
      17,
      0.14
    );
}


.size-chip:disabled {
  border-color:
    #ececec;

  background:
    #f6f6f4;

  color:
    #aaaaaa;

  opacity:
    0.48;

  text-decoration:
    line-through;

  transform:
    none;

  box-shadow:
    none;
}


/* =========================================================
   COLOR BUTTON — ACTIVE ACCENT

   Өнгө, размер хоёулаа size-chip ашиглаж байгаа.
   Color group дотор selected үед бага зэрэг accent өгнө.
========================================================= */

#productColorOptions
.size-chip.active {
  border-color:
    var(--accent);

  background:
    var(--accent);

  color:
    #ffffff;

  box-shadow:
    0 7px 18px
    rgba(
      255,
      90,
      31,
      0.2
    );
}


#productColorOptions
.size-chip:hover:not(:disabled) {
  border-color:
    var(--accent);

  color:
    var(--accent);
}


#productColorOptions
.size-chip.active:hover {
  color:
    #ffffff;
}


/* =========================================================
   STOCK INFO
========================================================= */

.product-stock-info {
  min-height:
    42px;

  display:
    flex;

  align-items:
    center;

  margin:
    2px 0 25px;

  padding:
    10px 13px;

  border:
    1px solid
    #d9e8df;

  border-radius:
    10px;

  background:
    #f3faf6;

  color:
    var(--success);

  font-size:
    11px;

  font-weight:
    800;

  line-height:
    1.5;
}


.product-stock-info.low-stock {
  border-color:
    #f1d7b2;

  background:
    #fff8ed;

  color:
    #b54708;
}


.product-stock-info.out-of-stock {
  border-color:
    #f3beb9;

  background:
    #fff2f1;

  color:
    var(--danger);
}


/* =========================================================
   QUANTITY ROW
========================================================= */

.product-quantity-row {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    18px;

  margin-bottom:
    27px;

  padding:
    15px 0;

  border-top:
    1px solid
    var(--border);

  border-bottom:
    1px solid
    var(--border);
}


.product-quantity-label {
  color:
    var(--dark);

  font-size:
    12px;

  font-weight:
    900;
}


.quantity-control {
  display:
    inline-grid;

  grid-template-columns:
    42px 58px 42px;

  align-items:
    center;

  overflow:
    hidden;

  border:
    1px solid
    var(--border);

  border-radius:
    10px;

  background:
    #ffffff;
}


.quantity-control button {
  width:
    42px;

  height:
    42px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0;

  border:
    0;

  border-radius:
    0;

  background:
    var(--surface);

  color:
    var(--dark);

  font-size:
    18px;

  font-weight:
    700;

  transition:
    background 0.2s ease;
}


.quantity-control button:hover:not(:disabled) {
  background:
    #eaeae7;
}


.quantity-control button:disabled {
  opacity:
    0.35;
}


#productQuantity {
  width:
    58px;

  height:
    42px;

  padding:
    0 4px;

  border:
    0;

  background:
    #ffffff;

  color:
    var(--dark);

  text-align:
    center;

  font-size:
    13px;

  font-weight:
    900;

  -moz-appearance:
    textfield;
}


#productQuantity::-webkit-inner-spin-button,
#productQuantity::-webkit-outer-spin-button {
  margin:
    0;

  -webkit-appearance:
    none;
}


/* =========================================================
   PRODUCT ACTIONS
========================================================= */

.product-detail-actions {
  display:
    grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(0, 1fr)
    52px;

  gap:
    10px;

  margin:
    0 0 20px;
}


.product-add-button,
.product-buy-button {
  width:
    100%;

  min-height:
    52px;
}


.product-add-button {
  font-size:
    12px;
}


.product-buy-button {
  font-size:
    12px;
}


/* =========================================================
   WISHLIST DETAIL BUTTON
========================================================= */

.wishlist-detail-button {
  width:
    52px;

  height:
    52px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0;

  border:
    1px solid
    var(--border);

  border-radius:
    12px;

  background:
    #ffffff;

  color:
    var(--dark);

  font-size:
    24px;

  line-height:
    1;

  transition:
    color 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease,
    transform 0.2s ease;
}


.wishlist-detail-button:hover {
  border-color:
    var(--accent);

  color:
    var(--accent);

  background:
    #fff8f5;

  transform:
    translateY(-1px);
}


.wishlist-detail-button.active {
  border-color:
    var(--accent);

  background:
    var(--accent);

  color:
    #ffffff;
}


/* =========================================================
   SOLD MESSAGE
========================================================= */

.product-sold-message {
  margin-bottom:
    20px;

  padding:
    13px 15px;

  border:
    1px solid
    #f3beb9;

  border-radius:
    11px;

  background:
    #fff2f1;

  color:
    var(--danger);

  font-size:
    11px;

  font-weight:
    800;

  line-height:
    1.55;
}


.product-sold-message[hidden] {
  display:
    none !important;
}


/* =========================================================
   PRODUCT META
========================================================= */

.product-meta-list {
  margin-top:
    27px;

  border-top:
    1px solid
    var(--border);
}


.product-meta-row {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    20px;

  min-height:
    44px;

  padding:
    10px 0;

  border-bottom:
    1px solid
    var(--border);
}


.product-meta-row[hidden] {
  display:
    none !important;
}


.product-meta-row span {
  color:
    var(--muted);

  font-size:
    10px;

  font-weight:
    700;
}


.product-meta-row strong {
  max-width:
    70%;

  color:
    var(--dark);

  text-align:
    right;

  font-size:
    11px;

  font-weight:
    800;
}


/* =========================================================
   RELATED PRODUCTS
========================================================= */

.related-products-section {
  padding:
    75px 0 90px;

  border-top:
    1px solid
    var(--border);

  background:
    var(--surface);
}


.related-products-section[hidden] {
  display:
    none !important;
}


.related-products-section
.section-heading {
  margin-bottom:
    28px;
}


.related-products-section
.section-eyebrow {
  margin-bottom:
    7px;
}


.related-products-section
.section-heading h2 {
  font-size:
    clamp(
      28px,
      4vw,
      42px
    );
}


/* =========================================================
   RELATED PRODUCT CARD — NEW JS
========================================================= */

.related-products-section
.product-card-image-wrap {
  position:
    relative;

  display:
    block;

  overflow:
    hidden;

  aspect-ratio:
    1 / 1;

  background:
    var(--surface);
}


.related-products-section
.product-card-image {
  width:
    100%;

  height:
    100%;

  object-fit:
    cover;
}


.related-products-section
.product-card-info {
  padding:
    16px;
}


.related-products-section
.product-card-brand {
  margin-bottom:
    5px;

  color:
    var(--accent);

  font-size:
    9px;

  font-weight:
    900;

  letter-spacing:
    0.08em;

  text-transform:
    uppercase;
}


.related-products-section
.product-card-title {
  display:
    block;

  min-height:
    auto;

  margin-bottom:
    10px;

  color:
    var(--dark);

  font-size:
    15px;

  font-weight:
    800;
}


.related-products-section
.product-card-price {
  font-size:
    15px;
}


/* =========================================================
   PRODUCT ERROR STATE
========================================================= */

.product-error-state {
  padding:
    70px 20px;
}


.product-error-state h1 {
  margin-bottom:
    10px;

  color:
    var(--dark);

  font-size:
    clamp(
      26px,
      5vw,
      42px
    );
}


.product-error-state p {
  max-width:
    500px;

  margin-bottom:
    22px;

  color:
    var(--muted);

  line-height:
    1.7;
}


/* =========================================================
   PRODUCT PAGE FOOTER SPACING
========================================================= */

.product-page + .site-footer {
  margin-top:
    0;
}


/* =========================================================
   RESPONSIVE — LARGE TABLET
========================================================= */

@media (
  max-width: 1100px
) {

  .product-grid {
    grid-template-columns:
      repeat(
        3,
        minmax(0, 1fr)
      );
  }


  .nova-hero-grid {
    gap:
      42px;

    grid-template-columns:
      minmax(0, 1fr)
      minmax(320px, 0.8fr);
  }


  .about-grid {
    gap:
      45px;
  }


  .product-detail {
    grid-template-columns:
      minmax(0, 1fr)
      minmax(330px, 0.82fr);

    gap:
      38px;
  }


  .product-detail-title {
    font-size:
      clamp(
        34px,
        4.6vw,
        48px
      );
  }


  .checkout-dialog {
    width:
      min(
        860px,
        100%
      );
  }

}


/* =========================================================
   RESPONSIVE — TABLET
========================================================= */

@media (
  max-width: 900px
) {

  .section {
    padding:
      72px 0;
  }


  .container,
  .section-container,
  .header-container,
  .topbar-container {
    width:
      min(
        calc(
          100% - 32px
        ),
        var(--container)
      );
  }


  /* ---------------------------------------------------------
     HEADER
  --------------------------------------------------------- */

  .header-container,
  .header-inner {
    min-height:
      68px;

    grid-template-columns:
      auto 1fr auto;

    gap:
      18px;
  }


  .logo-main {
    font-size:
      24px;
  }


  .desktop-nav {
    gap:
      16px;
  }


  .desktop-nav a {
    padding:
      22px 0;

    font-size:
      12px;
  }


  .desktop-nav a::after {
    bottom:
      14px;
  }


  .header-action-button {
    min-width:
      40px;

    height:
      40px;

    padding:
      0 10px;

    font-size:
      12px;
  }


  /* ---------------------------------------------------------
     HERO
  --------------------------------------------------------- */

  .nova-hero {
    padding:
      58px 0;
  }


  .nova-hero-grid {
    grid-template-columns:
      1fr;

    gap:
      42px;
  }


  .nova-hero-content {
    max-width:
      760px;
  }


  .nova-hero-visual {
    max-width:
      620px;

    width:
      100%;

    margin-inline:
      auto;
  }


  /* ---------------------------------------------------------
     BENEFITS
  --------------------------------------------------------- */

  .benefits-grid {
    grid-template-columns:
      1fr;
  }


  .benefit-card {
    min-height:
      auto;

    border-right:
      0;

    border-bottom:
      1px solid
      var(--border);
  }


  .benefit-card:last-child {
    border-bottom:
      0;
  }


  /* ---------------------------------------------------------
     CATEGORY / PRODUCT GRID
  --------------------------------------------------------- */

  .category-grid {
    grid-template-columns:
      repeat(
        2,
        1fr
      );
  }


  .product-grid {
    grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      );
  }


  /* ---------------------------------------------------------
     PROMO
  --------------------------------------------------------- */

  .promo-banner {
    grid-template-columns:
      1fr;
  }


  .promo-content {
    padding:
      45px;
  }


  .promo-image-wrap {
    min-height:
      360px;
  }


  /* ---------------------------------------------------------
     ABOUT
  --------------------------------------------------------- */

  .about-grid {
    grid-template-columns:
      1fr;

    gap:
      35px;
  }


  .about-image-wrap {
    max-width:
      650px;

    width:
      100%;

    margin-inline:
      auto;
  }


  /* ---------------------------------------------------------
     FOOTER
  --------------------------------------------------------- */

  .footer-grid {
    grid-template-columns:
      repeat(
        2,
        1fr
      );

    gap:
      35px;
  }


  /* ---------------------------------------------------------
     PRODUCT DETAIL
  --------------------------------------------------------- */

  .product-detail {
    grid-template-columns:
      1fr;

    gap:
      35px;

    padding:
      38px 0 70px;
  }


  .product-detail
  .product-gallery {
    max-width:
      720px;

    width:
      100%;

    margin-inline:
      auto;
  }


  .product-detail-info {
    max-width:
      720px;

    width:
      100%;

    margin-inline:
      auto;
  }


  .product-detail-title {
    font-size:
      clamp(
        34px,
        7vw,
        52px
      );
  }


  /* ---------------------------------------------------------
     CHECKOUT
  --------------------------------------------------------- */

  .checkout-dialog {
    width:
      min(
        720px,
        100%
      );
  }


  .checkout-payment-box {
    grid-template-columns:
      150px
      minmax(
        0,
        1fr
      );
  }


  .checkout-payment-qr {
    width:
      150px;
  }

}


/* =========================================================
   RESPONSIVE — MOBILE
========================================================= */

@media (
  max-width: 720px
) {

  /* ---------------------------------------------------------
     GLOBAL
  --------------------------------------------------------- */

  .container,
  .section-container,
  .header-container,
  .topbar-container {
    width:
      min(
        calc(
          100% - 26px
        ),
        var(--container)
      );
  }


  .section {
    padding:
      56px 0;
  }


  .section-heading {
    align-items:
      flex-start;

    flex-direction:
      column;

    gap:
      12px;

    margin-bottom:
      24px;
  }


  /* ---------------------------------------------------------
     TOPBAR
  --------------------------------------------------------- */

  .topbar-container {
    min-height:
      34px;

    justify-content:
      center;
  }


  .topbar-contact {
    display:
      none;
  }


  .topbar p {
    text-align:
      center;

    font-size:
      10px;
  }


  /* ---------------------------------------------------------
     HEADER
  --------------------------------------------------------- */

  .header-container,
  .header-inner {
    min-height:
      64px;

    display:
      flex;

    align-items:
      center;

    justify-content:
      space-between;

    gap:
      12px;
  }


  .desktop-nav {
    display:
      none;
  }


  .site-logo,
  .logo {
    flex:
      0 0 auto;
  }


  .logo-main {
    font-size:
      22px;
  }


  .logo-accent {
    font-size:
      11px;
  }


  .header-actions {
    margin-left:
      auto;
  }


  .header-action-button {
    min-width:
      38px;

    height:
      38px;

    padding:
      0 9px;
  }


  .cart-header-button > span:first-child {
    display:
      none;
  }


  .cart-header-button {
    width:
      38px;

    padding:
      0;
  }


  /* ---------------------------------------------------------
     HERO
  --------------------------------------------------------- */

  .nova-hero {
    padding:
      45px 0;
  }


  .nova-hero-content h1 {
    font-size:
      clamp(
        44px,
        13vw,
        68px
      );

    letter-spacing:
      -0.06em;
  }


  .nova-hero-description {
    font-size:
      15px;

    line-height:
      1.7;
  }


  .hero-stats {
    gap:
      22px;

    margin-top:
      34px;
  }


  .hero-main-card {
    border-radius:
      24px;
  }


  /* ---------------------------------------------------------
     CATEGORY
  --------------------------------------------------------- */

  .category-grid {
    grid-template-columns:
      1fr;
  }


  .category-card {
    min-height:
      150px;
  }


  /* ---------------------------------------------------------
     PRODUCT TOOLBAR
  --------------------------------------------------------- */

  .product-toolbar {
    align-items:
      stretch;

    flex-direction:
      column;
  }


  .product-toolbar-search {
    width:
      100%;

    flex:
      1 1 auto;
  }


  /* ---------------------------------------------------------
     PRODUCT GRID
  --------------------------------------------------------- */

  .product-grid {
    grid-template-columns:
      repeat(
        2,
        minmax(
          0,
          1fr
        )
      );

    gap:
      12px;
  }


  .product-content,
  .product-card-info {
    padding:
      12px;
  }


  .product-title,
  .product-card-title {
    min-height:
      38px;

    font-size:
      13px;
  }


  .product-price,
  .product-card-price {
    font-size:
      14px;
  }


  .product-card-brand,
  .product-category {
    font-size:
      8px;
  }


  .product-card-button,
  .add-to-cart-button,
  .product-view-button {
    min-width:
      36px;

    min-height:
      36px;

    padding:
      0 9px;

    font-size:
      9px;
  }


  /* ---------------------------------------------------------
     PROMO
  --------------------------------------------------------- */

  .promo-content {
    padding:
      34px 24px;
  }


  .promo-content h2 {
    font-size:
      38px;
  }


  .promo-image-wrap {
    min-height:
      300px;
  }


  /* ---------------------------------------------------------
     ABOUT
  --------------------------------------------------------- */

  .about-content h2 {
    font-size:
      42px;
  }


  .about-description {
    font-size:
      15px;
  }


  .about-contact-list {
    grid-template-columns:
      1fr;
  }


  /* ---------------------------------------------------------
     FOOTER
  --------------------------------------------------------- */

  .footer-grid {
    grid-template-columns:
      1fr;

    gap:
      28px;

    padding-top:
      50px;

    padding-bottom:
      50px;
  }


  .footer-bottom {
    align-items:
      flex-start;

    flex-direction:
      column;

    gap:
      8px;
  }


  /* =========================================================
     PRODUCT PAGE MOBILE
  ========================================================= */

  .product-page
  .product-breadcrumb {
    padding:
      15px 0;

    font-size:
      9px;
  }


  .product-detail {
    gap:
      28px;

    padding:
      24px 0 55px;
  }


  .product-detail
  .product-main-image-wrap {
    border-radius:
      16px;
  }


  .product-thumbnail-list {
    flex-wrap:
      nowrap;

    overflow-x:
      auto;

    padding-bottom:
      4px;

    scrollbar-width:
      thin;
  }


  .product-thumbnail {
    width:
      62px;

    height:
      62px;

    flex:
      0 0 62px;
  }


  .product-detail-info {
    padding-top:
      0;
  }


  .product-detail-brand {
    font-size:
      9px;
  }


  .product-detail-title {
    font-size:
      clamp(
        31px,
        10vw,
        44px
      );

    line-height:
      1;
  }


  .product-detail-category {
    margin-bottom:
      14px;
  }


  .product-detail-price {
    margin-bottom:
      17px;

    font-size:
      26px;
  }


  .product-detail-description {
    margin-bottom:
      22px;

    font-size:
      13px;
  }


  /* ---------------------------------------------------------
     OPTIONS
  --------------------------------------------------------- */

  .product-option-group {
    margin-bottom:
      20px;
  }


  .product-size-options {
    gap:
      7px;
  }


  .size-chip {
    min-width:
      45px;

    min-height:
      41px;

    padding:
      0 11px;

    font-size:
      11px;
  }


  /* ---------------------------------------------------------
     STOCK
  --------------------------------------------------------- */

  .product-stock-info {
    margin-bottom:
      20px;

    font-size:
      10px;
  }


  /* ---------------------------------------------------------
     QUANTITY
  --------------------------------------------------------- */

  .product-quantity-row {
    margin-bottom:
      22px;
  }


  .quantity-control {
    grid-template-columns:
      39px 48px 39px;
  }


  .quantity-control button {
    width:
      39px;

    height:
      39px;
  }


  #productQuantity {
    width:
      48px;

    height:
      39px;
  }


  /* ---------------------------------------------------------
     PRODUCT ACTIONS
  --------------------------------------------------------- */

  .product-detail-actions {
    grid-template-columns:
      1fr 52px;
  }


  .product-add-button {
    grid-column:
      1 / 2;
  }


  .wishlist-detail-button {
    grid-column:
      2 / 3;

    grid-row:
      1;
  }


  .product-buy-button {
    grid-column:
      1 / -1;

    grid-row:
      2;
  }


  /* ---------------------------------------------------------
     META
  --------------------------------------------------------- */

  .product-meta-row {
    min-height:
      42px;
  }


  .related-products-section {
    padding:
      55px 0 65px;
  }


  /* =========================================================
     CART MOBILE
  ========================================================= */

  .cart-drawer,
  .cart-sidebar {
    width:
      min(
        390px,
        100%
      );
  }


  .cart-drawer-header,
  .cart-header {
    padding:
      18px;
  }


  .cart-items {
    padding:
      15px;
  }


  .cart-item {
    grid-template-columns:
      72px minmax(0, 1fr);
  }


  .cart-item-image,
  .cart-item > img {
    width:
      72px;

    height:
      72px;
  }


  .cart-drawer-footer,
  .cart-footer {
    padding:
      17px;
  }


  /* =========================================================
     CHECKOUT MOBILE
  ========================================================= */

  .checkout-modal {
    align-items:
      flex-end;

    padding:
      0;
  }


  .checkout-dialog {
    width:
      100%;

    max-height:
      94vh;

    border-radius:
      20px 20px 0 0;
  }


  .checkout-header {
    padding:
      17px 18px;
  }


  .checkout-body {
    gap:
      15px;

    padding:
      17px;
  }


  .checkout-form-section {
    padding:
      16px;
  }


  .checkout-form-grid {
    grid-template-columns:
      1fr;
  }


  .checkout-form-full {
    grid-column:
      auto;
  }


  .checkout-payment-box {
    grid-template-columns:
      1fr;

    justify-items:
      center;

    text-align:
      center;
  }


  .checkout-payment-qr {
    width:
      min(
        220px,
        100%
      );
  }


  .checkout-footer {
    padding:
      14px 17px;
  }


  .checkout-footer
  .primary-button,
  .checkout-footer
  .secondary-button {
    min-width:
      0;

    flex:
      1 1 0;

    padding:
      0 12px;

    font-size:
      10px;
  }


  .site-toast {
    bottom:
      18px;
  }

}


/* =========================================================
   RESPONSIVE — SMALL MOBILE
========================================================= */

@media (
  max-width: 480px
) {

  .container,
  .section-container,
  .header-container,
  .topbar-container {
    width:
      min(
        calc(
          100% - 22px
        ),
        var(--container)
      );
  }


  /* ---------------------------------------------------------
     HOME PRODUCT GRID
  --------------------------------------------------------- */

  .product-grid {
    gap:
      9px;
  }


  .product-content,
  .product-card-info {
    padding:
      10px;
  }


  .product-title,
  .product-card-title {
    min-height:
      34px;

    font-size:
      12px;
  }


  .product-price,
  .product-card-price {
    font-size:
      13px;
  }


  .product-card-options,
  .product-color {
    font-size:
      9px;
  }


  /* ---------------------------------------------------------
     PRODUCT DETAIL
  --------------------------------------------------------- */

  .product-detail-title {
    font-size:
      32px;
  }


  .product-detail-price {
    font-size:
      24px;
  }


  .product-option-heading {
    align-items:
      flex-start;

    flex-direction:
      column;

    gap:
      3px;
  }


  .size-chip {
    min-width:
      43px;

    min-height:
      40px;

    padding:
      0 10px;
  }


  .product-quantity-row {
    align-items:
      flex-start;

    flex-direction:
      column;
  }


  .product-detail-actions {
    grid-template-columns:
      1fr 48px;
  }


  .product-add-button,
  .product-buy-button {
    min-height:
      48px;
  }


  .wishlist-detail-button {
    width:
      48px;

    height:
      48px;
  }


  /* ---------------------------------------------------------
     CART
  --------------------------------------------------------- */

  .cart-item {
    grid-template-columns:
      65px minmax(0, 1fr);

    gap:
      10px;
  }


  .cart-item-image,
  .cart-item > img {
    width:
      65px;

    height:
      65px;
  }


  .cart-item-name,
  .cart-item-title,
  .cart-item-content h4 {
    font-size:
      11px;
  }


  /* ---------------------------------------------------------
     CHECKOUT
  --------------------------------------------------------- */

  .checkout-header h2 {
    font-size:
      19px;
  }


  .checkout-form-section {
    padding:
      14px;
  }


  .checkout-summary-item {
    gap:
      10px;
  }


  .checkout-summary-total strong {
    font-size:
      18px;
  }

}


/* =========================================================
   HIDDEN ATTRIBUTE SAFETY
========================================================= */

[hidden] {
  display:
    none !important;
}


/* =========================================================
   FINAL COMPATIBILITY FIXES
========================================================= */

/*
  Шинэ product.html дээр container ашиглаж байгаа.
  Хуучин homepage section-container хэвээр ажиллана.
*/

.container {
  width:
    min(
      calc(
        100% - 40px
      ),
      var(--container)
    );

  margin-inline:
    auto;
}


/*
  Product image хэзээ ч browser viewport-с
  хэт томрохгүй.
*/

.product-main-image,
.product-card-image,
.product-thumbnail img {
  max-width:
    100%;
}


/*
  Button text wrap хийгээд эвдрэхээс хамгаална.
*/

.product-detail-actions button,
.cart-checkout-button,
.checkout-footer button {
  white-space:
    nowrap;
}


/*
  Product meta урт color нэртэй байсан ч
  layout эвдэхгүй.
*/

.product-meta-row strong,
.checkout-summary-item-info,
.cart-item-info {
  overflow-wrap:
    anywhere;
}


/*
  Cart болон checkout overlay дээр
  interaction зөв байна.
*/

.cart-overlay,
.checkout-overlay {
  -webkit-tap-highlight-color:
    transparent;
}


/*
  iOS input zoom багасгах compatibility.
*/

@media (
  max-width: 720px
) {

  .checkout-form-group input,
  .checkout-form-group textarea,
  #productQuantity {
    font-size:
      16px;
  }

}


/* =========================================================
   END — MASTER SHOP PUBLIC CSS
========================================================= */

/* =========================================================
   NOVA PREMIUM HOMEPAGE PATCH
   Reference-inspired sneaker storefront
========================================================= */


/* =========================================================
   HERO PREMIUM
========================================================= */

.nova-hero {
  position: relative;
  overflow: hidden;

  min-height: 640px;

  display: flex;
  align-items: center;

  background:
    radial-gradient(
      circle at 75% 30%,
      rgba(255, 90, 31, 0.10),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      #f7f7f4 0%,
      #ffffff 58%,
      #f3f3ef 100%
    );
}


.nova-hero::before {
  content: "NOVA";

  position: absolute;

  right: -30px;
  bottom: -100px;

  color: rgba(17, 17, 17, 0.025);

  font-size: clamp(180px, 28vw, 430px);
  font-weight: 900;

  line-height: 1;

  letter-spacing: -0.09em;

  pointer-events: none;
}


.nova-hero-grid {
  position: relative;

  z-index: 2;
}


.nova-hero-content {
  position: relative;

  z-index: 2;
}


.nova-hero-content .section-eyebrow {
  display: inline-flex;

  align-items: center;

  gap: 9px;

  margin-bottom: 20px;
}


.nova-hero-content .section-eyebrow::before {
  content: "";

  width: 28px;
  height: 2px;

  background: var(--accent);
}


.nova-hero-content h1 {
  max-width: 780px;

  margin-bottom: 25px;

  color: #111111;

  font-size: clamp(54px, 6.7vw, 96px);

  line-height: 0.89;

  letter-spacing: -0.075em;
}


.nova-hero-content h1 span {
  color: var(--accent);
}


.nova-hero-actions {
  margin-top: 4px;
}


.nova-hero-actions .primary-button,
.nova-hero-actions .secondary-button {
  min-height: 54px;

  padding-inline: 27px;

  border-radius: 999px;

  font-size: 11px;

  letter-spacing: 0.04em;
}


.hero-stats {
  padding-top: 32px;

  border-top: 1px solid var(--border);
}


.hero-stat strong {
  font-size: 22px;
}


.hero-stat span {
  font-size: 9px;

  letter-spacing: 0.12em;
}


/* =========================================================
   HERO IMAGE
========================================================= */

.hero-main-card {
  position: relative;

  border-radius: 36px;

  background:
    #ececea;

  box-shadow:
    0 35px 80px
    rgba(0, 0, 0, 0.12);

  transform: rotate(1.5deg);
}


.hero-main-card::after {
  content: "";

  position: absolute;

  inset: 18px;

  z-index: 0;

  border: 1px solid
    rgba(255, 255, 255, 0.65);

  border-radius: 25px;

  pointer-events: none;
}


.hero-main-card img {
  position: relative;

  z-index: 1;

  transition:
    transform 0.6s ease;
}


.hero-main-card:hover img {
  transform: scale(1.035);
}


.hero-floating-badge {
  z-index: 3;

  left: 22px;
  bottom: 22px;

  border:
    1px solid
    rgba(255, 255, 255, 0.8);

  border-radius: 15px;
}


.hero-floating-badge span {
  font-size: 8px;
}


/* =========================================================
   BENEFITS — REFERENCE STYLE
========================================================= */

.benefits-section {
  background: #ffffff;
}


.benefits-grid {
  max-width: 1180px;

  margin-inline: auto;
}


.benefit-card {
  position: relative;

  justify-content: center;
}


.benefit-icon {
  border-radius: 50%;

  background: #f1f1ee;

  color: var(--dark);

  font-size: 18px;
}


.benefit-card h3 {
  margin-bottom: 3px;

  font-size: 11px;

  letter-spacing: 0.06em;
}


.benefit-card p {
  font-size: 10px;
}


/* =========================================================
   CATEGORY PREMIUM
========================================================= */

.categories-section {
  background: #f6f6f3;
}


.category-grid {
  gap: 18px;
}


.category-card {
  min-height: 220px;

  overflow: hidden;

  border: 0;

  border-radius: 20px;

  background:
    linear-gradient(
      145deg,
      #ffffff,
      #eeeeeb
    );

  box-shadow:
    inset 0 0 0 1px
    rgba(17, 17, 17, 0.05);
}


.category-card::before {
  content: "";

  position: absolute;

  width: 130px;
  height: 130px;

  top: -38px;
  right: -35px;

  border-radius: 50%;

  background:
    rgba(255, 90, 31, 0.08);

  transition:
    transform 0.35s ease;
}


.category-card::after {
  content: "→";

  position: absolute;

  right: 22px;
  bottom: 21px;

  width: 38px;
  height: 38px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #111111;

  color: #ffffff;

  font-size: 15px;

  transition:
    background 0.2s ease,
    transform 0.2s ease;
}


.category-card:hover::before {
  transform: scale(1.25);
}


.category-card:hover::after {
  background: var(--accent);

  transform: rotate(-35deg);
}


/* =========================================================
   PRODUCT SECTION
========================================================= */

#products {
  background: #ffffff;
}


#products .section-heading,
#best-sellers .section-heading {
  align-items: center;
}


#products .section-heading h2,
#best-sellers .section-heading h2 {
  font-size: clamp(34px, 4.4vw, 52px);
}


#products .section-eyebrow,
#best-sellers .section-eyebrow {
  margin-bottom: 8px;
}


/* =========================================================
   PRODUCT CARDS — CLEAN SNEAKER STORE
========================================================= */

.product-card {
  position: relative;

  border: 0;

  border-radius: 0;

  background: transparent;

  box-shadow: none;
}


.product-card:hover {
  transform: none;

  border-color: transparent;

  box-shadow: none;
}


.product-image-wrap,
.product-card-image-wrap {
  border-radius: 16px;

  background:
    #f1f1ee;
}


.product-image-wrap::after,
.product-card-image-wrap::after {
  content: "";

  position: absolute;

  inset: 0;

  border:
    1px solid
    rgba(17, 17, 17, 0.05);

  border-radius: inherit;

  pointer-events: none;
}


.product-card:hover
.product-card-image,
.product-card:hover
.product-image-wrap img {
  transform: scale(1.045);
}


.product-content,
.product-card-info {
  padding:
    13px 2px 8px;
}


.product-card-brand,
.product-brand,
.product-category {
  color: #81817d;

  font-size: 9px;

  letter-spacing: 0.09em;
}


.product-card-title,
.product-title {
  color: #111111;

  font-size: 14px;

  font-weight: 700;
}


.product-card-price,
.product-price {
  font-size: 14px;

  font-weight: 900;
}


/* =========================================================
   FILTERS
========================================================= */

.filter-button {
  min-height: 38px;

  padding-inline: 17px;

  border-radius: 999px;

  font-size: 10px;
}


.product-toolbar-search input {
  border-radius: 999px;

  padding-inline: 18px;
}


/* =========================================================
   BEST SELLERS
========================================================= */

.best-sellers-section {
  background: #f6f6f3;
}


/* =========================================================
   PROMO PREMIUM
========================================================= */

.promo-section {
  background: #ffffff;
}


#promo .promo-banner {
  position: relative;

  min-height: 480px;

  border-radius: 30px;

  background:
    #121212;

  box-shadow:
    0 24px 60px
    rgba(0, 0, 0, 0.08);
}


#promo .promo-content {
  position: relative;

  z-index: 2;
}


#promo .promo-content h2 {
  font-size: clamp(44px, 5vw, 67px);
}


#promo .promo-content h2 span {
  color: var(--accent);
}


#promo .promo-content .section-eyebrow {
  color: var(--accent);
}


#promo .promo-banner:last-child {
  background:
    linear-gradient(
      135deg,
      #4cad38 0%,
      #31842a 100%
    );
}


#promo
.promo-banner:last-child
.section-eyebrow {
  color: #ffffff;
}


#promo
.promo-banner:last-child
.primary-button {
  border-color: #ffffff;

  background: #ffffff;

  color: #111111;
}


#promo
.promo-banner:last-child
.primary-button:hover {
  border-color: #111111;

  background: #111111;

  color: #ffffff;
}


.promo-image-wrap {
  position: relative;
}


.promo-image-wrap::after {
  content: "";

  position: absolute;

  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(17, 17, 17, 0.22),
      transparent 45%
    );

  pointer-events: none;
}


/* =========================================================
   ABOUT
========================================================= */

.about-section {
  background: #f6f6f3;
}


.about-image-wrap {
  border-radius: 26px;

  box-shadow:
    0 22px 55px
    rgba(0, 0, 0, 0.08);
}


.about-content h2 {
  color: #111111;

  font-size: clamp(46px, 6vw, 72px);

  line-height: 0.91;
}


.about-contact-list > div {
  border-radius: 14px;

  background: rgba(255, 255, 255, 0.75);
}


/* =========================================================
   NOVA NEWSLETTER
========================================================= */

.nova-newsletter {
  padding:
    38px 0;

  background:
    var(--accent);

  color:
    #ffffff;
}


.nova-newsletter-inner {
  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 40px;
}


.nova-newsletter-copy {
  display: flex;

  align-items: center;

  gap: 15px;
}


.nova-newsletter-icon {
  width: 46px;
  height: 46px;

  flex:
    0 0 46px;

  display: flex;

  align-items: center;
  justify-content: center;

  border:
    1px solid
    rgba(255, 255, 255, 0.4);

  border-radius: 50%;

  font-size: 18px;
}


.nova-newsletter-copy strong {
  display: block;

  margin-bottom: 4px;

  font-size: 16px;

  font-weight: 900;

  letter-spacing: -0.02em;
}


.nova-newsletter-copy p {
  margin: 0;

  color:
    rgba(255, 255, 255, 0.78);

  font-size: 10px;
}


.nova-newsletter-form {
  width:
    min(100%, 460px);

  display: flex;

  overflow: hidden;

  border:
    1px solid
    rgba(255, 255, 255, 0.45);

  border-radius: 999px;

  background:
    #ffffff;
}


.nova-newsletter-form input {
  min-width: 0;

  width: 100%;

  height: 50px;

  padding:
    0 20px;

  border: 0;

  background:
    transparent;

  color:
    #111111;

  font-size:
    11px;
}


.nova-newsletter-form button {
  flex:
    0 0 auto;

  padding:
    0 24px;

  border: 0;

  background:
    #111111;

  color:
    #ffffff;

  font-size:
    10px;

  font-weight:
    900;

  letter-spacing:
    0.06em;

  transition:
    background 0.2s ease;
}


.nova-newsletter-form button:hover {
  background:
    #292929;
}


/* =========================================================
   FOOTER PREMIUM
========================================================= */

.site-footer {
  background:
    #0c0c0c;
}


.footer-grid {
  padding-top:
    72px;

  padding-bottom:
    64px;
}


.footer-brand-column > p {
  max-width:
    270px;

  margin-top:
    18px;

  color:
    #858585;

  font-size:
    11px;

  line-height:
    1.8;
}


.footer-column h3 {
  margin-bottom:
    10px;

  color:
    #ffffff;

  font-size:
    10px;

  letter-spacing:
    0.1em;
}


.footer-column a {
  font-size:
    11px;
}


.footer-bottom {
  min-height:
    64px;
}


/* =========================================================
   HOME RESPONSIVE
========================================================= */

@media (max-width: 900px) {

  .nova-hero {
    min-height:
      auto;
  }


  .hero-main-card {
    transform:
      none;
  }


  .nova-newsletter-inner {
    align-items:
      flex-start;

    flex-direction:
      column;
  }


  .nova-newsletter-form {
    width:
      100%;
  }

}


@media (max-width: 720px) {

  .nova-hero-content h1 {
    font-size:
      clamp(
        48px,
        14vw,
        72px
      );
  }


  .hero-stats {
    justify-content:
      space-between;

    gap:
      15px;
  }


  #promo .promo-banner {
    min-height:
      auto;
  }


  .nova-newsletter {
    padding:
      30px 0;
  }


  .nova-newsletter-copy {
    align-items:
      flex-start;
  }

}


@media (max-width: 480px) {

  .nova-newsletter-form {
    flex-direction:
      column;

    overflow:
      visible;

    border:
      0;

    border-radius:
      0;

    background:
      transparent;
  }


  .nova-newsletter-form input {
    height:
      48px;

    margin-bottom:
      8px;

    border-radius:
      999px;

    background:
      #ffffff;
  }


  .nova-newsletter-form button {
    min-height:
      48px;

    border-radius:
      999px;
  }


  .nova-hero-actions {
    flex-direction:
      column;

    align-items:
      stretch;
  }


  .nova-hero-actions a {
    width:
      100%;
  }

}


/* =========================================================
   END NOVA PREMIUM PATCH
========================================================= */


/* HEADER ACTION SIZE FIX */

.icon-button,
.header-action-button,
.menu-button {
  min-width: 48px;
  width: 48px;
  height: 48px;

  padding: 0;

  font-size: 17px;

  border-radius: 14px;
}

.header-actions {
  gap: 9px;
}

.cart-count {
  min-width: 18px;
  height: 18px;

  top: -5px;
  right: -5px;

  padding: 0 5px;

  font-size: 9px;
}


/* PROMO SIZE REDUCE */

#promo .promo-banner {
  min-height: 340px;
}

#promo .promo-content {
  padding: 34px 38px;
}

#promo .promo-content h2 {
  font-size: clamp(
    34px,
    4vw,
    50px
  );
}

#promo .promo-content > p:not(.section-eyebrow) {
  margin-bottom: 20px;

  font-size: 11px;
  line-height: 1.55;
}

#promo .promo-image-wrap {
  min-height: 340px;
}

#promo .promo-content .primary-button {
  min-height: 42px;

  padding-inline: 18px;

  font-size: 9px;
}

#promo .section-eyebrow {
  margin-bottom: 10px;
}

/* BENEFITS 4 COLUMN — FORCE FIX */

.benefits-section .benefits-grid {
  display: grid !important;

  grid-template-columns:
    repeat(
      4,
      minmax(0, 1fr)
    ) !important;
}

.benefits-section .benefit-card {
  width: 100%;
  min-width: 0;
}


/* TABLET */

@media (max-width: 1000px) {

  .benefits-section .benefits-grid {
    grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      ) !important;
  }

}


/* MOBILE */

@media (max-width: 520px) {

  .benefits-section .benefits-grid {
    grid-template-columns:
      1fr !important;
  }

}

/* =========================================================
   MASTER SHOP V2
   HOMEPAGE / RAIL / PRODUCT GRID
========================================================= */


/* =========================================================
   GLOBAL HOMEPAGE
========================================================= */

html {
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
}

.section-container {
  width: min(1440px, calc(100% - 48px));
  margin: 0 auto;
}

.section {
  padding: 72px 0;
}

.section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 30px;
}

.section-heading h2 {
  margin: 0;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1;
  letter-spacing: -0.045em;
  font-weight: 900;
}

.section-eyebrow {
  margin: 0 0 10px;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.view-all-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  flex-shrink: 0;
  color: inherit;
  text-decoration: none;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.view-all-link:hover {
  opacity: 0.6;
}


/* =========================================================
   HERO V2
========================================================= */

.nova-hero {
  position: relative;
  overflow: hidden;
}

.nova-hero-grid {
  min-height: 680px;
  display: grid;
  grid-template-columns:
    minmax(0, 0.9fr)
    minmax(0, 1.1fr);
  align-items: center;
  gap: 72px;
  padding-top: 64px;
  padding-bottom: 64px;
}

.nova-hero-content {
  position: relative;
  z-index: 2;
}

.nova-hero-content h1 {
  margin: 0;
  max-width: 720px;
  font-size: clamp(54px, 6vw, 92px);
  line-height: 0.92;
  letter-spacing: -0.065em;
  font-weight: 900;
}

.nova-hero-content h1 span {
  color: var(--primary-color, #4cad38);
}

.nova-hero-description {
  max-width: 540px;
  margin: 28px 0 0;
  font-size: 17px;
  line-height: 1.7;
  color: #656565;
}

.nova-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 32px;
}

.hero-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 36px;
  margin-top: 44px;
}

.hero-stat {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.hero-stat strong {
  font-size: 20px;
  font-weight: 900;
}

.hero-stat span {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: #777;
}

.nova-hero-visual {
  min-width: 0;
}

.hero-main-card {
  position: relative;
  min-height: 540px;
  overflow: hidden;
  border-radius: 28px;
  background: #f1f1f1;
}

.hero-main-card img {
  width: 100%;
  height: 100%;
  min-height: 540px;
  display: block;
  object-fit: cover;
}

.hero-floating-badge {
  position: absolute;
  left: 24px;
  bottom: 24px;
  min-width: 190px;
  padding: 17px 20px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
}

.hero-floating-badge span {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.14em;
}

.hero-floating-badge strong {
  font-size: 14px;
  font-weight: 900;
}


/* =========================================================
   HORIZONTAL SHOP RAIL
========================================================= */

.shop-rail-section {
  overflow: hidden;
}

.rail-heading {
  margin-bottom: 28px;
}

.horizontal-rail-shell {
  position: relative;
  min-width: 0;
}


/* =========================================================
   CATEGORY RAIL
========================================================= */

.category-horizontal-rail {
  display: flex !important;
  grid-template-columns: none !important;
  gap: 18px;

  overflow-x: auto;
  overflow-y: hidden;

  scroll-snap-type: x proximity;
  scroll-behavior: smooth;

  overscroll-behavior-inline: contain;

  scrollbar-width: none;

  padding:
    4px
    2px
    18px;
}

.category-horizontal-rail::-webkit-scrollbar {
  display: none;
}

.category-horizontal-rail > * {
  flex:
    0
    0
    clamp(190px, 17vw, 250px);

  scroll-snap-align: start;
}


/* =========================================================
   FEATURED PRODUCT RAIL
========================================================= */

.product-horizontal-rail {
  display: flex !important;
  grid-template-columns: none !important;

  gap: 18px;

  overflow-x: auto;
  overflow-y: hidden;

  scroll-snap-type: x proximity;
  scroll-behavior: smooth;

  overscroll-behavior-inline: contain;

  scrollbar-width: none;

  padding:
    4px
    2px
    22px;
}

.product-horizontal-rail::-webkit-scrollbar {
  display: none;
}

.product-horizontal-rail > * {
  flex:
    0
    0
    clamp(235px, 22vw, 315px);

  scroll-snap-align: start;
}


/* =========================================================
   RAIL ARROWS
========================================================= */

.rail-arrow {
  position: absolute;
  top: 50%;
  z-index: 10;

  width: 44px;
  height: 44px;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 0;

  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 50%;

  background: rgba(255, 255, 255, 0.96);

  color: #111;

  font-size: 30px;
  font-weight: 400;
  line-height: 1;

  box-shadow:
    0 8px 30px
    rgba(0, 0, 0, 0.10);

  cursor: pointer;

  transform: translateY(-50%);

  transition:
    transform 0.2s ease,
    opacity 0.2s ease,
    background 0.2s ease;
}

.rail-arrow:hover {
  transform:
    translateY(-50%)
    scale(1.07);
}

.rail-arrow-left {
  left: -20px;
}

.rail-arrow-right {
  right: -20px;
}


/* =========================================================
   ALL PRODUCTS SECTION
========================================================= */

.products-section {
  padding-top: 84px;
}

.products-heading-meta {
  color: #858585;
  font-size: 13px;
  font-weight: 600;
}

.product-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  margin-bottom: 28px;
}

.filter-container {
  min-width: 0;
  flex: 1;

  display: flex;
  align-items: center;
  gap: 9px;

  overflow-x: auto;

  scrollbar-width: none;
}

.filter-container::-webkit-scrollbar {
  display: none;
}

.product-toolbar-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

.product-toolbar-search {
  position: relative;
}

.product-toolbar-search input {
  width: 260px;
  height: 44px;

  padding: 0 16px;

  border: 1px solid #dedede;
  border-radius: 12px;

  outline: none;

  background: #fff;

  font: inherit;
  font-size: 13px;

  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.product-toolbar-search input:focus {
  border-color: #999;

  box-shadow:
    0 0 0 3px
    rgba(0, 0, 0, 0.04);
}

.product-sort-select {
  height: 44px;

  padding: 0 36px 0 14px;

  border: 1px solid #dedede;
  border-radius: 12px;

  outline: none;

  background: #fff;

  font: inherit;
  font-size: 13px;
  font-weight: 600;

  cursor: pointer;
}


/* =========================================================
   DESKTOP PRODUCT GRID
========================================================= */

.all-products-grid {
  display: grid !important;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap:
    36px
    18px;
}


/* =========================================================
   EMPTY PRODUCT STATE
========================================================= */

.products-empty-state {
  padding: 80px 24px;

  text-align: center;

  border:
    1px dashed
    #d8d8d8;

  border-radius: 18px;

  color: #777;
}

.products-empty-state strong {
  display: block;

  margin-bottom: 8px;

  color: #111;

  font-size: 18px;
}

.products-empty-state p {
  margin: 0;

  font-size: 14px;
}


/* =========================================================
   NEWSLETTER V2
========================================================= */

.nova-newsletter {
  margin-top: 70px;
}

.nova-newsletter-inner {
  min-height: 150px;

  padding-top: 32px;
  padding-bottom: 32px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 30px;
}

.nova-newsletter-copy {
  display: flex;
  align-items: center;
  gap: 18px;
}

.nova-newsletter-icon {
  width: 48px;
  height: 48px;

  display: flex;
  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  border-radius: 50%;

  font-size: 22px;
}

.nova-newsletter-copy strong {
  display: block;

  margin-bottom: 5px;

  font-size: 16px;
  font-weight: 900;
}

.nova-newsletter-copy p {
  margin: 0;

  font-size: 13px;
  color: #777;
}

.nova-newsletter-form {
  display: flex;
  align-items: center;

  min-width: 420px;
}

.nova-newsletter-form input {
  min-width: 0;
  flex: 1;

  height: 48px;

  padding: 0 16px;

  border: 1px solid #dcdcdc;
  border-right: 0;

  border-radius:
    10px
    0
    0
    10px;

  outline: none;

  font: inherit;
}

.nova-newsletter-form button {
  height: 48px;

  padding: 0 22px;

  border: 0;

  border-radius:
    0
    10px
    10px
    0;

  background: #111;
  color: #fff;

  font: inherit;
  font-size: 11px;
  font-weight: 800;

  cursor: pointer;
}

/* =========================================================
   MASTER SHOP V2
   RESPONSIVE / MOBILE
========================================================= */


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1180px) {

  .section-container {
    width:
      min(
        100% - 36px,
        1180px
      );
  }

  .nova-hero-grid {
    gap: 40px;
  }

  .nova-hero-content h1 {
    font-size:
      clamp(
        48px,
        6vw,
        72px
      );
  }

  .all-products-grid {
    grid-template-columns:
      repeat(
        3,
        minmax(0, 1fr)
      );
  }

  .product-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .filter-container {
    width: 100%;
  }

  .product-toolbar-actions {
    width: 100%;
  }

  .product-toolbar-search {
    flex: 1;
  }

  .product-toolbar-search input {
    width: 100%;
  }

}


/* =========================================================
   SMALL TABLET
========================================================= */

@media (max-width: 900px) {

  .section {
    padding:
      58px
      0;
  }

  .nova-hero-grid {
    min-height: auto;

    grid-template-columns:
      1fr;

    gap: 42px;

    padding-top: 44px;
    padding-bottom: 44px;
  }

  .nova-hero-content {
    max-width: 760px;
  }

  .nova-hero-content h1 {
    font-size:
      clamp(
        46px,
        9vw,
        76px
      );
  }

  .hero-main-card,
  .hero-main-card img {
    min-height: 460px;
  }

  .product-horizontal-rail > * {
    flex:
      0
      0
      clamp(
        235px,
        38vw,
        300px
      );
  }

  .category-horizontal-rail > * {
    flex:
      0
      0
      clamp(
        180px,
        30vw,
        230px
      );
  }

  .rail-arrow {
    display: none;
  }

  .nova-newsletter-inner {
    align-items: flex-start;
    flex-direction: column;
  }

  .nova-newsletter-form {
    width: 100%;
    min-width: 0;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 680px) {

  html {
    scroll-padding-bottom: 90px;
  }

  body {
    padding-bottom:
      calc(
        72px +
        env(safe-area-inset-bottom)
      );
  }

  .section-container {
    width:
      calc(
        100% - 24px
      );
  }

  .section {
    padding:
      44px
      0;
  }


  /* HEADER */

  .topbar {
    display: none;
  }

  .desktop-nav {
    display: none !important;
  }

  .header-container {
    min-height: 64px;

    padding-left: 12px;
    padding-right: 12px;
  }

  .header-actions {
    gap: 3px;
  }

  .icon-button {
    width: 40px;
    height: 40px;
  }

  .mobile-nav {
    display: none !important;
  }

  .logo-main,
  .logo-accent {
    font-size:
      clamp(
        18px,
        5vw,
        24px
      );
  }


  /* HERO */

  .nova-hero-grid {
    gap: 26px;

    padding-top: 30px;
    padding-bottom: 30px;
  }

  .nova-hero-content h1 {
    font-size:
      clamp(
        42px,
        12vw,
        62px
      );

    line-height: 0.94;
  }

  .nova-hero-description {
    margin-top: 20px;

    font-size: 14px;
    line-height: 1.6;
  }

  .nova-hero-actions {
    margin-top: 24px;

    display: grid;
    grid-template-columns:
      1fr
      1fr;

    gap: 8px;
  }

  .nova-hero-actions
  .primary-button,
  .nova-hero-actions
  .secondary-button {
    min-width: 0;

    padding-left: 12px;
    padding-right: 12px;

    text-align: center;

    font-size: 10px;
  }

  .hero-stats {
    margin-top: 28px;

    gap: 22px;
  }

  .hero-stat strong {
    font-size: 17px;
  }

  .hero-main-card,
  .hero-main-card img {
    min-height: 360px;
  }

  .hero-main-card {
    border-radius: 18px;
  }

  .hero-floating-badge {
    left: 14px;
    bottom: 14px;

    min-width: 160px;

    padding:
      13px
      15px;

    border-radius: 12px;
  }


  /* SECTION HEADINGS */

  .section-heading {
    align-items: flex-start;

    gap: 16px;

    margin-bottom: 22px;
  }

  .section-heading h2 {
    font-size:
      clamp(
        24px,
        8vw,
        32px
      );
  }

  .section-eyebrow {
    font-size: 10px;
  }

  .view-all-link {
    padding-top: 5px;

    font-size: 10px;
  }


  /* CATEGORY HORIZONTAL RAIL */

  .category-horizontal-rail {
    gap: 10px;

    margin-left: -12px;
    margin-right: -12px;

    padding-left: 12px;
    padding-right: 12px;
    padding-bottom: 10px;

    scroll-padding-left: 12px;
  }

  .category-horizontal-rail > * {
    flex:
      0
      0
      min(
        42vw,
        170px
      );
  }


  /* FEATURED PRODUCT RAIL */

  .product-horizontal-rail {
    gap: 10px;

    margin-left: -12px;
    margin-right: -12px;

    padding-left: 12px;
    padding-right: 12px;
    padding-bottom: 14px;

    scroll-padding-left: 12px;
  }

  .product-horizontal-rail > * {
    flex:
      0
      0
      min(
        70vw,
        280px
      );
  }


  /* ALL PRODUCT TOOLBAR */

  .products-section {
    padding-top: 54px;
  }

  .products-heading-meta {
    display: none;
  }

  .product-toolbar {
    gap: 12px;

    margin-bottom: 18px;
  }

  .filter-container {
    gap: 7px;

    margin-left: -12px;
    margin-right: -12px;

    width:
      calc(
        100% + 24px
      );

    padding-left: 12px;
    padding-right: 12px;
  }

  .product-toolbar-actions {
    width: 100%;

    display: grid;
    grid-template-columns:
      minmax(0, 1fr)
      auto;

    gap: 8px;
  }

  .product-toolbar-search {
    width: 100%;
  }

  .product-toolbar-search input {
    width: 100%;

    height: 42px;

    border-radius: 10px;
  }

  .product-sort-select {
    max-width: 130px;

    height: 42px;

    border-radius: 10px;

    font-size: 11px;
  }


  /* MOBILE 2 COLUMN PRODUCTS */

  .all-products-grid {
    grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      );

    gap:
      28px
      10px;
  }


  /* PRODUCT CARD MOBILE NORMALIZATION */

  .all-products-grid
  .product-card,
  .product-horizontal-rail
  .product-card {
    min-width: 0;
  }

  .all-products-grid
  .product-card-image,
  .product-horizontal-rail
  .product-card-image {
    aspect-ratio:
      1 / 1.12;
  }

  .all-products-grid
  .product-card-content,
  .product-horizontal-rail
  .product-card-content {
    padding-top: 10px;
  }

  .all-products-grid
  .product-card-title,
  .product-horizontal-rail
  .product-card-title {
    font-size: 13px;
    line-height: 1.35;
  }

  .all-products-grid
  .product-card-price,
  .product-horizontal-rail
  .product-card-price {
    font-size: 14px;
  }


  /* NEWSLETTER */

  .nova-newsletter {
    margin-top: 24px;
  }

  .nova-newsletter-inner {
    min-height: 0;

    padding-top: 28px;
    padding-bottom: 28px;

    gap: 20px;
  }

  .nova-newsletter-form {
    display: grid;

    grid-template-columns:
      minmax(0, 1fr)
      auto;
  }

  .nova-newsletter-form input {
    height: 46px;
  }

  .nova-newsletter-form button {
    height: 46px;

    padding:
      0
      15px;
  }


  /* FOOTER */

  .footer-grid {
    grid-template-columns:
      1fr
      1fr;

    gap:
      34px
      20px;
  }

  .footer-brand-column {
    grid-column:
      1 / -1;
  }

  .footer-bottom {
    flex-direction: column;

    align-items: flex-start;

    gap: 7px;
  }


  /* =======================================================
     MOBILE FIXED BOTTOM NAV
  ======================================================= */

  .mobile-bottom-nav {
    position: fixed;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 500;

    min-height: 66px;

    padding:
      5px
      8px
      calc(
        5px +
        env(safe-area-inset-bottom)
      );

    display: grid;

    grid-template-columns:
      repeat(
        5,
        minmax(0, 1fr)
      );

    align-items: stretch;

    background:
      rgba(
        255,
        255,
        255,
        0.96
      );

    border-top:
      1px
      solid
      rgba(
        0,
        0,
        0,
        0.08
      );

    box-shadow:
      0
      -8px
      30px
      rgba(
        0,
        0,
        0,
        0.06
      );

    backdrop-filter:
      blur(18px);

    -webkit-backdrop-filter:
      blur(18px);
  }

  .mobile-bottom-nav-item {
    position: relative;

    min-width: 0;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 3px;

    padding:
      5px
      2px;

    border: 0;

    background: transparent;

    color: #777;

    text-decoration: none;

    font: inherit;

    font-size: 9px;
    font-weight: 700;

    cursor: pointer;

    -webkit-tap-highlight-color:
      transparent;
  }

  .mobile-bottom-nav-item.active {
    color:
      var(
        --primary-color,
        #4cad38
      );
  }

  .mobile-bottom-nav-icon {
    min-height: 23px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: currentColor;

    font-size: 20px;
    line-height: 1;
  }

  .mobile-cart-icon {
    font-size: 18px;
  }

  .mobile-bottom-cart-count {
    position: absolute;

    top: 1px;
    left: 50%;

    min-width: 16px;
    height: 16px;

    padding:
      0
      4px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 999px;

    background:
      var(
        --primary-color,
        #4cad38
      );

    color: #fff;

    font-size: 8px;
    font-weight: 900;

    transform:
      translateX(5px);
  }


  /* CART / CHECKOUT ABOVE BOTTOM NAV */

  .cart-drawer {
    max-height:
      calc(
        100dvh -
        66px
      );
  }

  .site-toast {
    bottom:
      calc(
        82px +
        env(safe-area-inset-bottom)
      );
  }

}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 390px) {

  .section-container {
    width:
      calc(
        100% - 20px
      );
  }

  .nova-hero-content h1 {
    font-size:
      clamp(
        38px,
        12vw,
        50px
      );
  }

  .nova-hero-actions {
    grid-template-columns:
      1fr;
  }

  .hero-main-card,
  .hero-main-card img {
    min-height: 320px;
  }

  .all-products-grid {
    gap:
      24px
      8px;
  }

  .product-sort-select {
    max-width: 112px;

    padding-left: 10px;
    padding-right: 25px;
  }

}

/* =========================================================
   MASTER SHOP V2
   VISUAL POLISH 1
========================================================= */

.nova-hero {
  padding-top: 0;
  background: #fff;
}

.nova-hero-grid {
  min-height: 560px;
  padding-top: 38px;
  padding-bottom: 48px;
}

.nova-hero-visual {
  display: block;
}

.hero-main-card {
  min-height: 460px;
  max-height: 520px;
}

.hero-main-card img {
  min-height: 460px;
  height: 100%;
  object-fit: cover;
}

.categories-section {
  padding-top: 54px;
}

.best-sellers-section {
  padding-top: 64px;
}

.product-horizontal-rail {
  overflow-y: visible;
  padding-bottom: 36px;
}

.product-horizontal-rail .product-card {
  overflow: visible;
}

.product-horizontal-rail .product-card-content {
  min-height: 88px;
}

/* =========================================================
   FIX HERO VISIBILITY
========================================================= */

.nova-hero {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  min-height: 560px !important;
  background: #ffffff !important;
}

.nova-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important;
  min-height: 560px !important;
  align-items: center !important;
}

.nova-hero-content,
.nova-hero-visual {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.hero-main-card {
  display: block !important;
  min-height: 460px !important;
}

.hero-main-card img {
  display: block !important;
  width: 100% !important;
  min-height: 460px !important;
  object-fit: cover !important;
}

/* =========================================================
   MASTER SHOP V2
   PRODUCT CARD POLISH
========================================================= */

.product-card {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.product-card-image {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  background: #f5f5f5;
}

.product-card-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.product-card-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding-top: 12px;
}

.product-card-brand,
.product-card-category {
  margin-bottom: 5px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a8a8a;
}

.product-card-title {
  margin: 0 0 8px;
  min-height: 38px;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 800;
}

.product-card-price-row {
  margin-top: auto;
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 7px;
}

.product-card-price {
  font-size: 15px;
  font-weight: 900;
}

.product-card-old-price {
  font-size: 12px;
  color: #999;
  text-decoration: line-through;
}

.product-horizontal-rail .product-card {
  min-height: 100%;
}

.product-horizontal-rail .product-card-content {
  min-height: 105px;
}

.all-products-grid .product-card-content {
  min-height: 115px;
}

@media (max-width: 680px) {

  .product-card-image {
    border-radius: 12px;
  }

  .product-card-content {
    padding-top: 9px;
  }

  .product-card-title {
    min-height: 35px;
    margin-bottom: 6px;
    font-size: 12px;
  }

  .product-card-price {
    font-size: 13px;
  }

  .product-card-old-price {
    font-size: 11px;
  }

  .all-products-grid .product-card-content {
    min-height: 100px;
  }

}


/* =========================================================
   FIX FEATURED RAIL HEIGHT
========================================================= */

.best-sellers-section {
  padding-bottom: 48px !important;
}

.product-horizontal-rail {
  align-items: flex-start;
  padding-bottom: 8px !important;
}

.product-horizontal-rail .product-card {
  height: auto !important;
  min-height: 0 !important;
}

.product-horizontal-rail .product-card-content {
  min-height: 0 !important;
  height: auto !important;
}

.product-horizontal-rail .product-card-title {
  min-height: 0 !important;
}

.product-rail-shell {
  min-height: 0 !important;
  height: auto !important;
}

/* =========================================================
   MASTER SHOP V2
   CATEGORY CARD IMAGE POLISH
========================================================= */

.category-card {
  position: relative;
  overflow: hidden;

  min-height: 220px;

  display: flex;
  flex-direction: column;
  justify-content: flex-end;

  padding: 18px;

  border: 1px solid #ececec;
  border-radius: 18px;

  background: #f7f7f7;
}

.category-card-image,
.category-card-media {
  position: absolute;
  inset: 0;

  width: 100%;
  height: 100%;

  object-fit: cover;

  z-index: 0;
}

.category-card::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      to top,
      rgba(0, 0, 0, 0.58),
      rgba(0, 0, 0, 0.08) 55%,
      transparent
    );

  z-index: 1;
}

.category-card > * {
  position: relative;
  z-index: 2;
}

.category-card h3,
.category-card-title {
  margin: 0 0 4px;

  color: #fff;

  font-size: 18px;
  font-weight: 900;
}

.category-card p,
.category-card-count {
  margin: 0;

  color: rgba(255, 255, 255, 0.78);

  font-size: 11px;
  font-weight: 600;
}

@media (max-width: 680px) {

  .category-card {
    min-height: 170px;

    padding: 14px;

    border-radius: 14px;
  }

  .category-card h3,
  .category-card-title {
    font-size: 14px;
  }

}


/* =========================================================
   MASTER SHOP V2
   CATEGORY CARD FINAL POLISH
========================================================= */

.category-card {
  min-height: 230px;
  padding: 18px;
}

.category-card::after {
  background:
    linear-gradient(
      to top,
      rgba(0, 0, 0, 0.72) 0%,
      rgba(0, 0, 0, 0.30) 38%,
      rgba(0, 0, 0, 0.04) 70%,
      transparent 100%
    );
}

.category-card-image {
  transition:
    transform 0.45s ease,
    filter 0.45s ease;
}

.category-card:hover .category-card-image {
  transform: scale(1.045);
  filter: saturate(1.05);
}

.category-card h3,
.category-card-title {
  margin-bottom: 6px;
  color: #fff;
  font-size: 17px;
  line-height: 1.15;
  text-shadow:
    0 1px 10px rgba(0, 0, 0, 0.22);
}

.category-card p,
.category-card-count {
  color: rgba(255, 255, 255, 0.82);
  font-size: 10px;
  line-height: 1.4;
}

@media (max-width: 680px) {

  .category-card {
    min-height: 175px;
    padding: 13px;
  }

  .category-card h3,
  .category-card-title {
    font-size: 13px;
  }

}

/* =========================================================
   MASTER SHOP V2
   CATEGORY FULL IMAGE FIX
========================================================= */

.category-horizontal-rail .category-card {
  position: relative !important;
  overflow: hidden !important;

  min-height: 220px !important;
  padding: 18px !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;

  border-radius: 18px !important;
  border: 1px solid #e8e8e8 !important;

  background: #eeeeee !important;
}


/* OLD DECORATIONS OFF */

.category-horizontal-rail .category-card::before {
  display: none !important;
}


/* IMAGE FULL COVER */

.category-horizontal-rail
.category-card
.category-card-image {
  position: absolute !important;

  inset: 0 !important;

  width: 100% !important;
  height: 100% !important;

  max-width: none !important;
  max-height: none !important;

  margin: 0 !important;

  object-fit: cover !important;

  border-radius: 0 !important;

  z-index: 0 !important;
}


/* DARK BOTTOM GRADIENT */

.category-horizontal-rail
.category-card::after {
  content: "" !important;

  position: absolute !important;
  inset: 0 !important;

  display: block !important;

  background:
    linear-gradient(
      to top,
      rgba(0, 0, 0, 0.72) 0%,
      rgba(0, 0, 0, 0.28) 38%,
      rgba(0, 0, 0, 0.03) 70%,
      transparent 100%
    ) !important;

  z-index: 1 !important;

  pointer-events: none !important;
}


/* ALL TEXT ABOVE IMAGE */

.category-horizontal-rail
.category-card > *:not(.category-card-image) {
  position: relative !important;
  z-index: 2 !important;
}


/* TITLE */

.category-horizontal-rail
.category-card h3,
.category-horizontal-rail
.category-card .category-card-title {
  margin: 0 0 5px !important;

  color: #ffffff !important;

  font-size: 17px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;

  text-shadow:
    0 2px 12px
    rgba(0, 0, 0, 0.28) !important;
}


/* COUNT */

.category-horizontal-rail
.category-card p,
.category-horizontal-rail
.category-card .category-card-count {
  margin: 0 !important;

  color:
    rgba(
      255,
      255,
      255,
      0.82
    ) !important;

  font-size: 10px !important;
  font-weight: 600 !important;
}


/* HOVER */

.category-horizontal-rail
.category-card
.category-card-image {
  transition:
    transform 0.4s ease !important;
}

.category-horizontal-rail
.category-card:hover
.category-card-image {
  transform:
    scale(1.05) !important;
}


/* MOBILE */

@media (max-width: 680px) {

  .category-horizontal-rail
  .category-card {
    min-height: 175px !important;
    padding: 13px !important;
    border-radius: 14px !important;
  }

  .category-horizontal-rail
  .category-card h3,
  .category-horizontal-rail
  .category-card .category-card-title {
    font-size: 14px !important;
  }

}

/* =========================================================
   MASTER SHOP V2
   CATEGORY FULL IMAGE FIX
========================================================= */

.category-horizontal-rail .category-card {
  position: relative !important;
  overflow: hidden !important;

  min-height: 220px !important;
  padding: 18px !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;

  border-radius: 18px !important;
  border: 1px solid #e8e8e8 !important;

  background: #eeeeee !important;
}


/* OLD DECORATIONS OFF */

.category-horizontal-rail .category-card::before {
  display: none !important;
}


/* IMAGE FULL COVER */

.category-horizontal-rail
.category-card
.category-card-image {
  position: absolute !important;

  inset: 0 !important;

  width: 100% !important;
  height: 100% !important;

  max-width: none !important;
  max-height: none !important;

  margin: 0 !important;

  object-fit: cover !important;

  border-radius: 0 !important;

  z-index: 0 !important;
}


/* DARK BOTTOM GRADIENT */

.category-horizontal-rail
.category-card::after {
  content: "" !important;

  position: absolute !important;
  inset: 0 !important;

  display: block !important;

  background:
    linear-gradient(
      to top,
      rgba(0, 0, 0, 0.72) 0%,
      rgba(0, 0, 0, 0.28) 38%,
      rgba(0, 0, 0, 0.03) 70%,
      transparent 100%
    ) !important;

  z-index: 1 !important;

  pointer-events: none !important;
}


/* ALL TEXT ABOVE IMAGE */

.category-horizontal-rail
.category-card > *:not(.category-card-image) {
  position: relative !important;
  z-index: 2 !important;
}


/* TITLE */

.category-horizontal-rail
.category-card h3,
.category-horizontal-rail
.category-card .category-card-title {
  margin: 0 0 5px !important;

  color: #ffffff !important;

  font-size: 17px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;

  text-shadow:
    0 2px 12px
    rgba(0, 0, 0, 0.28) !important;
}


/* COUNT */

.category-horizontal-rail
.category-card p,
.category-horizontal-rail
.category-card .category-card-count {
  margin: 0 !important;

  color:
    rgba(
      255,
      255,
      255,
      0.82
    ) !important;

  font-size: 10px !important;
  font-weight: 600 !important;
}


/* HOVER */

.category-horizontal-rail
.category-card
.category-card-image {
  transition:
    transform 0.4s ease !important;
}

.category-horizontal-rail
.category-card:hover
.category-card-image {
  transform:
    scale(1.05) !important;
}


/* MOBILE */

@media (max-width: 680px) {

  .category-horizontal-rail
  .category-card {
    min-height: 175px !important;
    padding: 13px !important;
    border-radius: 14px !important;
  }

  .category-horizontal-rail
  .category-card h3,
  .category-horizontal-rail
  .category-card .category-card-title {
    font-size: 14px !important;
  }

}

/* =========================================================
   MASTER SHOP V2
   CATEGORY TEXT FINAL POLISH
========================================================= */

.category-horizontal-rail
.category-card::after {
  background:
    linear-gradient(
      to top,
      rgba(0, 0, 0, 0.78) 0%,
      rgba(0, 0, 0, 0.42) 32%,
      rgba(0, 0, 0, 0.08) 62%,
      rgba(0, 0, 0, 0) 100%
    ) !important;
}

.category-horizontal-rail
.category-card h3,
.category-horizontal-rail
.category-card strong,
.category-horizontal-rail
.category-card .category-card-title {
  color: #fff !important;

  font-size: 17px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;

  text-shadow:
    0 2px 14px
    rgba(0, 0, 0, 0.45) !important;
}

.category-horizontal-rail
.category-card p,
.category-horizontal-rail
.category-card small,
.category-horizontal-rail
.category-card .category-card-count {
  color:
    rgba(
      255,
      255,
      255,
      0.86
    ) !important;

  font-size: 10px !important;
  font-weight: 600 !important;

  text-shadow:
    0 1px 8px
    rgba(0, 0, 0, 0.4) !important;
}

.category-horizontal-rail
.category-card:hover {
  transform:
    translateY(-2px);

  box-shadow:
    0 14px 34px
    rgba(0, 0, 0, 0.12);
}

.category-horizontal-rail
.category-card {
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

@media (max-width: 680px) {

  .category-horizontal-rail
  .category-card h3,
  .category-horizontal-rail
  .category-card strong,
  .category-horizontal-rail
  .category-card .category-card-title {
    font-size: 14px !important;
  }

}

/* =========================================================
   MASTER SHOP V2
   FEATURED PRODUCTS FINAL POLISH
========================================================= */

.product-horizontal-rail {
  gap: 16px !important;
}

.product-horizontal-rail .product-card {
  flex:
    0 0
    clamp(
      240px,
      21vw,
      300px
    ) !important;

  border-radius: 16px;
}

.product-horizontal-rail
.product-card-image {
  aspect-ratio: 1 / 1 !important;

  border-radius: 16px !important;

  background: #f4f4f4;
}

.product-horizontal-rail
.product-card-image img {
  transition:
    transform 0.4s ease;
}

.product-horizontal-rail
.product-card:hover
.product-card-image img {
  transform: scale(1.035);
}

.product-horizontal-rail
.product-card-content {
  padding-top: 11px !important;
}

.product-horizontal-rail
.product-card-title {
  margin-bottom: 7px !important;

  font-size: 14px !important;
  line-height: 1.3 !important;
}

.product-horizontal-rail
.product-card-brand,
.product-horizontal-rail
.product-card-category {
  margin-bottom: 4px !important;

  font-size: 9px !important;
}

.product-horizontal-rail
.product-card-price {
  font-size: 15px !important;
}

.product-rail-shell
.rail-arrow {
  top: 43% !important;

  width: 42px !important;
  height: 42px !important;
}

.product-rail-shell
.rail-arrow-left {
  left: -18px !important;
}

.product-rail-shell
.rail-arrow-right {
  right: -18px !important;
}

@media (max-width: 680px) {

  .product-horizontal-rail {
    gap: 10px !important;
  }

  .product-horizontal-rail
  .product-card {
    flex:
      0 0
      min(
        72vw,
        275px
      ) !important;
  }

  .product-horizontal-rail
  .product-card-title {
    font-size: 13px !important;
  }

}


/* =========================================================
   MASTER SHOP V2
   HEADER + MOBILE NAV FINAL POLISH
========================================================= */


/* HEADER */

.site-header {
  position: sticky;
  top: 0;
  z-index: 600;

  background:
    rgba(255, 255, 255, 0.96);

  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  border-bottom:
    1px solid
    rgba(0, 0, 0, 0.06);
}

.header-container {
  min-height: 72px;
}

.logo {
  text-decoration: none;
}

.logo-main {
  font-weight: 900;
  letter-spacing: -0.05em;
}

.logo-accent {
  color:
    var(--primary-color, #4cad38);

  font-weight: 900;
}

.desktop-nav {
  display: flex;
  align-items: center;
  gap: 30px;
}

.desktop-nav a {
  position: relative;

  color: #222;
  text-decoration: none;

  font-size: 12px;
  font-weight: 800;

  letter-spacing: 0.02em;

  transition:
    color 0.2s ease;
}

.desktop-nav a::after {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  bottom: -8px;

  height: 2px;

  background:
    var(--primary-color, #4cad38);

  transform: scaleX(0);
  transform-origin: center;

  transition:
    transform 0.2s ease;
}

.desktop-nav a:hover {
  color:
    var(--primary-color, #4cad38);
}

.desktop-nav a:hover::after {
  transform: scaleX(1);
}


/* HEADER ICONS */

.icon-button {
  border:
    1px solid
    #e8e8e8;

  border-radius: 12px;

  background: #fff;

  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.icon-button:hover {
  transform: translateY(-1px);

  border-color: #d2d2d2;

  box-shadow:
    0 8px 20px
    rgba(0, 0, 0, 0.06);
}

.cart-count {
  background:
    var(--primary-color, #4cad38);

  color: #fff;
}


/* MOBILE BOTTOM NAV */

@media (max-width: 680px) {

  .site-header {
    position: sticky;
    top: 0;
  }

  .header-container {
    min-height: 60px;
  }

  .mobile-bottom-nav {
    min-height: 68px;
  }

  .mobile-bottom-nav-item {
    font-size: 9px;
    font-weight: 700;
  }

  .mobile-bottom-nav-icon {
    font-size: 19px;
  }

  .mobile-bottom-nav-item.active {
    color:
      var(--primary-color, #4cad38);
  }

  .mobile-bottom-nav-item:active {
    transform: scale(0.96);
  }

  .mobile-bottom-cart-count {
    min-width: 15px;
    height: 15px;

    font-size: 8px;
  }

}

/* =========================================================
   MASTER SHOP V2
   PRODUCT PAGE VISUAL CONSISTENCY
========================================================= */


/* PAGE */

.product-page {
  padding-top: 32px;
  padding-bottom: 80px;
}

.product-page .container,
.related-products-section .container {
  width: min(1440px, calc(100% - 48px));
  margin: 0 auto;
}


/* BREADCRUMB */

.product-breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;

  margin-bottom: 28px;

  color: #929292;

  font-size: 11px;
  font-weight: 600;
}

.product-breadcrumb a {
  color: #555;
  text-decoration: none;
}

.product-breadcrumb a:hover {
  color: var(--primary-color, #4cad38);
}


/* =========================================================
   PRODUCT DETAIL
========================================================= */

.product-detail {
  display: grid;
  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, 0.92fr);

  gap: 64px;

  align-items: start;
}


/* =========================================================
   GALLERY
========================================================= */

.product-gallery {
  min-width: 0;
}

.product-main-image-wrap {
  position: relative;

  overflow: hidden;

  aspect-ratio: 1 / 1;

  border-radius: 22px;

  background: #f5f5f5;
}

.product-main-image {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  transition: transform 0.35s ease;
}

.product-main-image-wrap:hover
.product-main-image {
  transform: scale(1.018);
}

.product-detail-badge {
  position: absolute;

  top: 18px;
  left: 18px;

  padding: 8px 12px;

  border-radius: 999px;

  background:
    var(--primary-color, #4cad38);

  color: #fff;

  font-size: 9px;
  font-weight: 900;
  letter-spacing: 0.08em;
}


/* THUMBNAILS */

.product-thumbnail-list {
  margin-top: 12px;

  display: flex;
  gap: 10px;

  overflow-x: auto;

  scrollbar-width: none;
}

.product-thumbnail-list::-webkit-scrollbar {
  display: none;
}

.product-thumbnail {
  flex: 0 0 78px;

  width: 78px;
  height: 78px;

  padding: 0;

  overflow: hidden;

  border: 1px solid #e2e2e2;
  border-radius: 12px;

  background: #f5f5f5;

  cursor: pointer;

  transition:
    border-color 0.2s ease,
    transform 0.2s ease;
}

.product-thumbnail:hover {
  transform: translateY(-1px);
}

.product-thumbnail.active {
  border-color:
    var(--primary-color, #4cad38);
}

.product-thumbnail img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
}


/* =========================================================
   PRODUCT INFO
========================================================= */

.product-detail-info {
  position: sticky;
  top: 105px;

  padding: 8px 0;
}

.product-detail-brand {
  margin: 0 0 10px;

  color:
    var(--primary-color, #4cad38);

  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.product-detail-title {
  margin: 0;

  max-width: 620px;

  font-size: clamp(34px, 4vw, 56px);
  line-height: 0.98;

  letter-spacing: -0.05em;
  font-weight: 900;
}

.product-detail-category {
  margin: 13px 0 0;

  color: #8a8a8a;

  font-size: 12px;
  font-weight: 600;
}

.product-detail-price {
  margin-top: 24px;

  font-size: 28px;
  line-height: 1;

  font-weight: 900;
}

.product-detail-description {
  margin: 24px 0 0;

  max-width: 580px;

  color: #696969;

  font-size: 14px;
  line-height: 1.75;
}


/* =========================================================
   OPTIONS
========================================================= */

.product-option-group {
  margin-top: 28px;
}

.product-option-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 16px;

  margin-bottom: 12px;
}

.product-option-heading strong {
  font-size: 12px;
  font-weight: 900;
}

.product-option-heading span {
  color: #858585;

  font-size: 11px;
  font-weight: 600;
}

.product-size-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}


/* SIZE + COLOR CHIPS */

.size-chip,
.product-size-options button {
  min-width: 48px;
  min-height: 42px;

  padding: 0 14px;

  border: 1px solid #dedede;
  border-radius: 10px;

  background: #fff;

  color: #222;

  font: inherit;
  font-size: 12px;
  font-weight: 800;

  cursor: pointer;

  transition:
    border-color 0.2s ease,
    background 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.size-chip:hover,
.product-size-options button:hover {
  transform: translateY(-1px);

  border-color: #aaa;
}

.size-chip.active,
.size-chip.selected,
.product-size-options button.active,
.product-size-options button.selected {
  border-color:
    var(--primary-color, #4cad38);

  background:
    var(--primary-color, #4cad38);

  color: #fff;
}

.size-chip:disabled,
.product-size-options button:disabled {
  opacity: 0.35;

  cursor: not-allowed;

  text-decoration: line-through;

  transform: none;
}


/* =========================================================
   STOCK
========================================================= */

.product-stock-info {
  margin-top: 20px;

  padding: 12px 14px;

  border-radius: 10px;

  background: #f7f7f7;

  color: #555;

  font-size: 11px;
  font-weight: 700;
}


/* =========================================================
   QUANTITY
========================================================= */

.product-quantity-row {
  margin-top: 22px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;
}

.product-quantity-label {
  font-size: 12px;
  font-weight: 800;
}

.quantity-control {
  display: grid;

  grid-template-columns:
    42px
    52px
    42px;

  overflow: hidden;

  border: 1px solid #dedede;
  border-radius: 10px;
}

.quantity-control button,
.quantity-control input {
  height: 42px;

  border: 0;

  background: #fff;

  text-align: center;

  font: inherit;
  font-weight: 800;
}

.quantity-control button {
  cursor: pointer;
}

.quantity-control button:hover {
  background: #f4f4f4;
}

.quantity-control input {
  width: 100%;

  outline: none;
  appearance: textfield;
}


/* =========================================================
   ACTIONS
========================================================= */

.product-detail-actions {
  margin-top: 26px;

  display: grid;

  grid-template-columns:
    minmax(0, 1.25fr)
    minmax(0, 1fr)
    50px;

  gap: 9px;
}

.product-detail-actions button {
  min-height: 50px;

  border-radius: 12px;
}

.product-add-button {
  font-size: 11px;
  font-weight: 900;
}

.product-buy-button {
  font-size: 11px;
  font-weight: 900;
}

.wishlist-detail-button {
  width: 50px;

  padding: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid #dedede;
  border-radius: 12px;

  background: #fff;

  font-size: 22px;

  cursor: pointer;
}

.wishlist-detail-button:hover,
.wishlist-detail-button.active {
  color:
    var(--primary-color, #4cad38);

  border-color:
    var(--primary-color, #4cad38);
}


/* SOLD */

.product-sold-message {
  margin-top: 14px;

  padding: 13px 15px;

  border-radius: 10px;

  background: #fff1ed;

  color: #c63f12;

  font-size: 11px;
  font-weight: 800;
}


/* =========================================================
   META
========================================================= */

.product-meta-list {
  margin-top: 30px;

  padding-top: 20px;

  border-top: 1px solid #eeeeee;
}

.product-meta-row {
  min-height: 36px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  font-size: 11px;
}

.product-meta-row span {
  color: #8a8a8a;
}

.product-meta-row strong {
  color: #222;
}


/* =========================================================
   RELATED PRODUCTS
========================================================= */

.related-products-section {
  margin-top: 90px;

  padding: 70px 0;

  border-top: 1px solid #eeeeee;
}

.related-products-section
#relatedProducts {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 18px;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1000px) {

  .product-detail {
    grid-template-columns: 1fr;

    gap: 38px;
  }

  .product-detail-info {
    position: static;
  }

  .related-products-section
  #relatedProducts {
    grid-template-columns:
      repeat(3, minmax(0, 1fr));
  }

}


@media (max-width: 680px) {

  .product-page {
    padding-top: 18px;
    padding-bottom: 54px;
  }

  .product-page .container,
  .related-products-section .container {
    width: calc(100% - 24px);
  }

  .product-breadcrumb {
    margin-bottom: 16px;

    font-size: 9px;
  }

  .product-detail {
    gap: 24px;
  }

  .product-main-image-wrap {
    border-radius: 16px;
  }

  .product-thumbnail {
    flex-basis: 64px;

    width: 64px;
    height: 64px;

    border-radius: 10px;
  }

  .product-detail-title {
    font-size:
      clamp(
        30px,
        10vw,
        44px
      );
  }

  .product-detail-price {
    margin-top: 18px;

    font-size: 23px;
  }

  .product-detail-description {
    margin-top: 18px;

    font-size: 13px;
  }

  .product-option-group {
    margin-top: 22px;
  }

  .size-chip,
  .product-size-options button {
    min-width: 45px;
    min-height: 40px;

    padding: 0 12px;
  }

  .product-detail-actions {
    grid-template-columns:
      1fr
      50px;
  }

  .product-buy-button {
    grid-column: 1 / -1;

    grid-row: 2;
  }

  .wishlist-detail-button {
    grid-column: 2;
    grid-row: 1;
  }

  .related-products-section {
    margin-top: 52px;

    padding: 48px 0;
  }

  .related-products-section
  #relatedProducts {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap:
      24px
      9px;
  }

}


/* =========================================================
   PRODUCT IMAGE SMALLER
========================================================= */

@media (min-width: 1001px) {

  .product-detail {
    grid-template-columns:
      minmax(0, 0.9fr)
      minmax(440px, 1.1fr);

    gap: 50px;
  }

  .product-main-image-wrap {
    aspect-ratio: 1 / 0.82 !important;
    max-height: 560px !important;
  }

  .product-main-image {
    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;
  }

}/* =========================================================
   MASTER SHOP V2 — FULL BACKGROUND HERO
========================================================= */

.hero-section {
  position: relative;

  min-height: 680px;

  display: flex;
  align-items: center;

  overflow: hidden;

  background:
    linear-gradient(
      rgba(0, 0, 0, 0.42),
      rgba(0, 0, 0, 0.42)
    ),
    var(--hero-bg, none);

  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.hero-section .hero-grid {
  position: relative;
  z-index: 2;

  display: block !important;

  width: 100%;
}

.hero-section .hero-content {
  max-width: 720px;

  padding:
    90px
    0;
}

.hero-section .hero-small-title,
.hero-section #heroSmallTitleDisplay {
  color: rgba(255, 255, 255, 0.8) !important;
}

.hero-section .hero-title,
.hero-section #heroTitleDisplay {
  color: #fff !important;

  font-size: clamp(
    52px,
    7vw,
    110px
  ) !important;

  line-height: 0.95 !important;

  letter-spacing: -0.05em;
}

.hero-section .hero-description,
.hero-section #heroDescriptionDisplay {
  max-width: 560px;

  color: rgba(255, 255, 255, 0.82) !important;

  font-size: 16px;
  line-height: 1.7;
}

.hero-section .hero-button,
.hero-section .primary-button {
  background: #fff !important;

  color: #111 !important;

  border-color: #fff !important;
}

.hero-section .hero-image-wrap,
.hero-section .hero-media {
  display: none !important;
}

/* MOBILE */

@media (max-width: 680px) {

  .hero-section {
    min-height: 620px;

    background-position: center;
  }

  .hero-section .hero-content {
    padding:
      90px
      0
      70px;
  }

  .hero-section .hero-title,
  .hero-section #heroTitleDisplay {
    font-size: clamp(
      44px,
      15vw,
      70px
    ) !important;
  }

}

/* =========================================================
   FINAL FUNCTIONAL POLISH
========================================================= */
.filter-container { display:flex; flex-wrap:wrap; gap:8px; }
.filter-chip { min-height:38px; padding:0 14px; border:1px solid #e5e5e5; border-radius:999px; background:#fff; color:#111; font-weight:700; cursor:pointer; }
.filter-chip.active, .filter-chip:hover { border-color:#111; background:#111; color:#fff; }
.header-search { pointer-events:none; opacity:0; visibility:hidden; transition:opacity .2s ease, visibility .2s ease; }
.header-search.active { pointer-events:auto; opacity:1; visibility:visible; }
#wishlistButton.active { background:#111; color:#fff; }
.category-card { position:relative; overflow:hidden; }
.category-card-image { width:100%; height:100%; object-fit:cover; }
@media (max-width:680px){ .filter-container{ flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; } .filter-container::-webkit-scrollbar{display:none;} .filter-chip{flex:0 0 auto;} }


/* =========================================================
   MASTER SHOP — MOBILE HERO FINAL FIX
========================================================= */

@media (max-width: 680px) {

  .nova-hero {
    min-height: auto !important;
    padding: 34px 0 28px !important;
    overflow: hidden;
  }

  .nova-hero-grid,
  .nova-hero-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 28px !important;
  }

  .nova-hero-content {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }

  .nova-hero-content h1,
  #heroTitleDisplay {
    max-width: 100% !important;

    margin-bottom: 20px !important;

    font-size: 48px !important;
    line-height: 0.92 !important;

    letter-spacing: -0.055em !important;

    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  .nova-hero-description,
  #heroDescriptionDisplay {
    max-width: 330px !important;

    font-size: 14px !important;
    line-height: 1.65 !important;
  }

  .nova-hero-actions {
    display: flex !important;
    flex-wrap: wrap !important;

    gap: 10px !important;

    margin-top: 22px !important;
  }

  .nova-hero-actions .primary-button,
  .nova-hero-actions .secondary-button {
    min-height: 48px !important;

    padding: 0 18px !important;

    font-size: 10px !important;
  }

  .hero-stats {
    grid-template-columns:
      repeat(3, minmax(0, 1fr)) !important;

    gap: 8px !important;

    margin-top: 28px !important;
    padding-top: 22px !important;
  }

  .hero-stat strong {
    font-size: 16px !important;
  }

  .hero-stat span {
    font-size: 8px !important;
  }

  .nova-hero-visual {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
  }

  .hero-main-card {
    width: 100% !important;
    height: 430px !important;

    border-radius: 24px !important;

    overflow: hidden !important;
  }

  .hero-main-card img,
  #heroImageDisplay {
    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;
    object-position: center !important;
  }

  .hero-floating-badge {
    left: 16px !important;
    right: auto !important;

    bottom: 16px !important;

    max-width: 190px !important;
  }

  .nova-hero::before,
  .nova-hero::after {
    display: none !important;
  }

}@media (max-width: 680px) {
  .nova-hero-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 22px !important;
  }

  .nova-hero-visual {
    order: 2 !important;
    margin-top: 0 !important;
  }

  .hero-main-card {
    height: 280px !important;
    border-radius: 24px !important;
    overflow: hidden !important;
  }

  .hero-main-card img,
  .nova-hero-visual img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }
}
@media (max-width: 680px) {
  .nova-hero-visual {
    display: none !important;
  }

  .nova-hero {
    padding-bottom: 90px !important;
  }
}

/* SMART CAMERA — storefront redesign */
:root{--smart-green:#4cad38;--smart-navy:#071a2a;--smart-pale:#f0f8fd;--checkout-accent:#e0263f;--checkout-accent-dark:#b81b30}
html{scroll-behavior:smooth}body{color:var(--smart-navy);background:#fff}.section-container,.header-container,.topbar-container{max-width:1180px}
.topbar{background:var(--smart-navy);font-size:12px}.site-header{background:rgba(255,255,255,.96);box-shadow:0 1px 0 #e7ece9;position:sticky;top:0;z-index:90}.header-container{min-height:78px}
.logo{min-width:190px}.brand-logo{display:block;width:185px;height:58px;object-fit:contain;object-position:left center}.desktop-nav a{font-size:13px;font-weight:800;color:var(--smart-navy)}.desktop-nav a:hover{color:var(--smart-green)}
.icon-button{border-color:#dce5df}.cart-count{background:var(--smart-green)}
.nova-hero{background:linear-gradient(110deg,#eef8ff 0%,#f4fbf5 100%);padding:58px 0 50px}.nova-hero-grid{gap:34px;align-items:center}.nova-hero-content{padding:0}.section-eyebrow{color:var(--smart-green);letter-spacing:.13em;font-weight:900}.nova-hero h1{font-size:clamp(46px,6vw,76px);line-height:.98;letter-spacing:-.055em;max-width:650px}.nova-hero h1 span{color:var(--smart-green)}.nova-hero-description{max-width:600px;color:#617080;font-size:17px;line-height:1.7}.primary-button{background:var(--smart-green);border-color:var(--smart-green);box-shadow:0 10px 25px rgba(76,173,56,.23)}.primary-button:hover{background:#31842a}.secondary-button{background:#fff;border-color:#cfd9d3;color:var(--smart-navy)}
.hero-stats{border-top:1px solid #d7e5e6;padding-top:25px}.hero-stat strong{color:var(--smart-navy)}.hero-main-card{background:#fff;border-radius:32px;overflow:hidden;box-shadow:0 24px 55px rgba(23,69,75,.12)}.hero-main-card img{width:100%;height:440px;object-fit:cover}.hero-floating-badge{background:#fff;color:var(--smart-navy);border-left:8px solid var(--smart-green);box-shadow:0 15px 32px rgba(0,0,0,.14)}.hero-floating-badge span{color:var(--smart-green)}
.use-cases{padding:24px 0 28px}.use-case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.use-case-grid article{min-height:138px;border-radius:22px;padding:25px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(135deg,#294b4c,#091a25)}.use-case-grid article:nth-child(2){background:linear-gradient(135deg,#617a55,#07190f)}.use-case-grid article:nth-child(3){background:linear-gradient(135deg,#5b554f,#181b1e)}.use-case-grid strong{font-size:18px}.use-case-grid span{font-size:12px;opacity:.75;margin-top:5px}
.smart-benefits{background:var(--smart-navy);color:#fff;padding:58px 0}.smart-benefits-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:0}.smart-benefits-grid>article,.benefit-intro{padding:12px 34px;border-right:1px solid rgba(255,255,255,.12)}.benefit-intro{padding-left:0}.benefit-intro h2{font-size:42px;line-height:1.05;margin:14px 0}.benefit-intro h2 span{color:#5bd14a}.benefit-intro>p:last-child,.smart-benefits article span{color:#9aabb8;line-height:1.55}.smart-benefits article{display:flex;flex-direction:column;justify-content:center;gap:12px}.smart-benefits article b{font-size:27px;color:#62d64d}.smart-benefits article strong{font-size:16px}.smart-benefits article span{font-size:13px}
.section{padding:68px 0}.categories-section{background:#fff}.categories-section .category-card{border-radius:20px}.best-sellers-section{background:#fff}.section-heading h2{font-size:36px;letter-spacing:-.04em}.view-all-link{color:var(--smart-green)}
.product-card{border:1px solid #dfe7e2;border-radius:20px;box-shadow:0 12px 28px rgba(9,34,32,.04);overflow:hidden}.product-card:hover{border-color:#a6cf9d;transform:translateY(-4px)}.product-card-image-wrap{background:#f8faf8}.product-card-price{color:var(--smart-green)}.product-card-badge{background:var(--smart-green)}
.products-section{background:#fbfdfb}.trust-strip{padding:22px 0 62px;background:#fbfdfb}.trust-grid{background:#f0f8eb;border-radius:18px;padding:22px 38px;display:grid;grid-template-columns:repeat(3,1fr)}.trust-grid>div{display:grid;grid-template-columns:auto 1fr;column-gap:14px;padding:0 36px;border-right:1px solid #d5e2d3}.trust-grid>div:last-child{border:0}.trust-grid b{font-size:25px;grid-row:1/3}.trust-grid strong{font-size:15px}.trust-grid span{font-size:12px;color:#758177}
.camera-story{padding:76px 0;background:#f4f8f6}.camera-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.camera-story h2{font-size:45px;line-height:1.08;letter-spacing:-.04em;margin:12px 0}.camera-story-grid>p{font-size:17px;line-height:1.7;color:#77837d}.nova-newsletter{background:#fff;color:var(--smart-navy);border-top:1px solid #e4ebe6}.nova-newsletter-form button{background:var(--smart-green)}
.site-footer{background:var(--smart-navy)}.footer-brand-logo{filter:none;background:#fff;border-radius:12px;padding:6px}.footer-logo{display:block}.footer-bottom{border-color:rgba(255,255,255,.12)}
@media(max-width:900px){.desktop-nav{display:none}.nova-hero-grid,.camera-story-grid{grid-template-columns:1fr}.nova-hero{padding-top:38px}.hero-main-card img{height:360px}.use-case-grid{grid-template-columns:repeat(2,1fr)}.smart-benefits-grid{grid-template-columns:1fr 1fr}.smart-benefits-grid>*{padding:25px!important;border-bottom:1px solid rgba(255,255,255,.1)}.trust-grid{grid-template-columns:1fr}.trust-grid>div{border-right:0;border-bottom:1px solid #d5e2d3;padding:18px 0}.camera-story-grid{gap:20px}}
@media(max-width:600px){.topbar-container p:nth-child(2),.topbar-contact{display:none}.header-container{min-height:66px}.brand-logo{width:145px;height:48px}.logo{min-width:auto}.nova-hero h1{font-size:46px}.nova-hero-description{font-size:15px}.nova-hero-actions{flex-direction:column;align-items:stretch}.hero-main-card img{height:300px}.hero-stats{grid-template-columns:repeat(3,1fr)}.use-case-grid,.smart-benefits-grid{grid-template-columns:1fr}.use-case-grid article{min-height:110px}.benefit-intro h2,.camera-story h2{font-size:34px}.section-heading h2{font-size:29px}.trust-grid{padding:16px 24px}.camera-story{padding:55px 0}.nova-newsletter{display:none}}

/* Refined camera product cards */
.best-sellers-section{padding-top:78px}.product-horizontal-rail,.all-products-grid{gap:18px}.product-card{background:#fff;min-width:0;border-radius:18px;box-shadow:0 8px 28px rgba(7,26,42,.055);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.product-card:hover{box-shadow:0 18px 38px rgba(7,26,42,.1)}.product-card-image-wrap{aspect-ratio:1.12/1;padding:12px}.product-card-image-link{height:100%;border-radius:14px;overflow:hidden;background:linear-gradient(145deg,#fbfdfc,#f1f6f2)}.product-card-image{width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply}.product-badge{top:18px;left:18px;background:var(--smart-green);border:0;border-radius:999px;color:#fff;font-size:10px;font-weight:900;letter-spacing:.06em;padding:7px 10px}.product-wishlist-button{top:16px;right:16px;background:rgba(255,255,255,.94);border:1px solid #e1e9e3;color:var(--smart-navy)}.product-card-info{padding:18px 18px 20px}.product-card-brand{color:var(--smart-green);font-size:10px;font-weight:900;letter-spacing:.12em;margin-bottom:8px}.product-card-title{color:var(--smart-navy);font-size:17px;font-weight:850;line-height:1.3}.product-card-specs{color:#7c8982;font-size:11px;line-height:1.5;margin:8px 0 18px;min-height:33px}.product-card-bottom{padding-top:14px;border-top:1px solid #edf1ee;align-items:center}.product-card-price{font-size:19px;font-weight:900;letter-spacing:-.02em}.product-card-button{min-height:38px;border:1px solid #d7e0da;border-radius:10px;background:#fff;color:var(--smart-navy);font-size:12px;font-weight:850;padding:0 14px}.product-card-button:hover{background:var(--smart-green);border-color:var(--smart-green);color:#fff}.all-products-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.products-heading-meta{color:#718077}.product-toolbar{border:1px solid #e2e9e4;border-radius:16px;background:#fff;padding:12px}.filter-button.active{background:var(--smart-green);border-color:var(--smart-green);color:#fff}
@media(max-width:1000px){.all-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.all-products-grid{grid-template-columns:1fr}.product-card-image-wrap{aspect-ratio:1.25/1}.product-card-specs{min-height:auto}.best-sellers-section{padding-top:56px}}

/* Camera product detail */
.product-page{background:#fbfdfc}.product-page>.container{max-width:1180px}.product-breadcrumb{color:#7c8982}.product-detail{gap:60px;align-items:start}.product-main-image-wrap{background:linear-gradient(145deg,#f8fbf9,#edf5ef);border:1px solid #e1e9e3;border-radius:24px;overflow:hidden}.product-main-image{object-fit:cover;mix-blend-mode:multiply}.product-detail-badge{background:var(--smart-green);border-radius:999px}.product-detail-brand{color:var(--smart-green);font-weight:900;letter-spacing:.14em}.product-detail-title{color:var(--smart-navy);letter-spacing:-.045em}.product-detail-price{color:var(--smart-green);font-weight:900}.product-detail-description{color:#68776f;line-height:1.7;padding-bottom:22px;border-bottom:1px solid #e4eae6}.product-stock-info{background:#f1f8ee;border:1px solid #d7e9d1;color:#3a7f31;border-radius:12px}.product-quantity-row{border-color:#e4eae6}.quantity-control{border-color:#d9e2dc;border-radius:12px}.product-add-button{background:var(--smart-green);border-color:var(--smart-green)}.product-add-button:hover{background:var(--smart-green-dark,#31842a)}.product-buy-button{border-color:#d7e0da;color:var(--smart-navy)}.wishlist-detail-button{border-color:#d7e0da}.product-meta-list{background:#f6f9f7;border-radius:14px;padding:6px 16px}.product-meta-row{border-color:#e5ebe7}.related-products-section{background:#fff}.site-logo .brand-logo{width:180px;height:54px}.header-inner{max-width:1180px}.header-action-button{border-color:#dce5df}.cart-header-button .cart-count{background:var(--smart-green)}
@media(max-width:760px){.product-detail{gap:30px}.product-main-image-wrap{border-radius:18px}.product-detail-title{font-size:38px}.site-logo .brand-logo{width:145px}}

/* SMART CAMERA final refinement */
.desktop-nav a{position:relative}.desktop-nav a:hover::after,.desktop-nav a:first-child::after{content:"";position:absolute;left:0;right:0;bottom:-28px;height:3px;border-radius:3px;background:var(--smart-green)}
.nova-hero{position:relative;background:linear-gradient(90deg,rgba(244,251,247,.98) 0%,rgba(244,251,247,.92) 44%,rgba(244,251,247,.55) 100%),url("images/smart-camera/house-camera-bg.png") center right/cover no-repeat;overflow:hidden}.nova-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(255,255,255,.4),transparent 65%);pointer-events:none}.nova-hero-grid{position:relative;z-index:1}.nova-hero-visual{opacity:.96}.hero-main-card{background:rgba(255,255,255,.75);backdrop-filter:blur(3px)}
.camera-showcase{padding:88px 0;background:linear-gradient(145deg,#f7fbf8,#edf7ef);overflow:hidden}.camera-showcase-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center}.showcase-copy h2{font-size:clamp(42px,5vw,66px);line-height:1;letter-spacing:-.055em;margin:14px 0;color:var(--smart-navy)}.showcase-copy h2 span{color:var(--smart-green)}.showcase-copy>p{color:#66756e;max-width:560px;line-height:1.7}.showcase-specs{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.showcase-specs span{padding:8px 12px;border:1px solid #d5e3d7;border-radius:999px;background:#fff;font-size:12px;font-weight:800}.showcase-price{font-size:28px;font-weight:900;color:var(--smart-green);margin-bottom:22px}.showcase-visual{position:relative;min-height:470px;display:grid;place-items:center;text-decoration:none}.showcase-visual img{position:relative;z-index:2;width:min(570px,95%);filter:drop-shadow(0 28px 26px rgba(7,26,42,.18));animation:cameraFloat 4.8s ease-in-out infinite;mix-blend-mode:multiply}.showcase-orbit{position:absolute;width:420px;height:420px;border:1px solid rgba(76,173,56,.26);border-radius:50%;animation:orbitPulse 3s ease-in-out infinite}.showcase-orbit::before,.showcase-orbit::after{content:"";position:absolute;border-radius:50%;border:1px dashed rgba(7,26,42,.13)}.showcase-orbit::before{inset:45px}.showcase-orbit::after{inset:100px}.showcase-visual small{position:absolute;z-index:3;right:8%;bottom:12%;padding:10px 14px;border-radius:999px;background:#fff;color:var(--smart-green);font-weight:900;letter-spacing:.1em;box-shadow:0 10px 25px rgba(7,26,42,.12)}@keyframes cameraFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-18px) rotate(1deg)}}@keyframes orbitPulse{0%,100%{transform:scale(.96);opacity:.75}50%{transform:scale(1.04);opacity:1}}
.category-card-image{object-fit:contain!important;background:#f7faf8!important;padding:20px!important;mix-blend-mode:multiply}.filter-button{font-weight:800}.filter-button.active{background:var(--smart-green)!important;border-color:var(--smart-green)!important}.product-card-image{object-fit:contain!important;background:#fff}.product-card-image-link{background:#fff}.product-card{border-color:#dce7df}.product-card:hover .product-card-image{transform:scale(1.045)}
.mobile-bottom-nav{display:none!important}
.checkout-dialog{width:min(1120px,94vw);max-height:92vh}.checkout-body{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;align-items:start}.checkout-customer-section{grid-row:1/4}.checkout-summary-section,.checkout-payment-section{grid-column:2}.checkout-form-section{border:1px solid #e1e8e3;border-radius:16px;background:#fff}.checkout-form-group select{width:100%;height:48px;border:1px solid #dfe6e1;border-radius:10px;background:#fff;padding:0 13px;color:var(--smart-navy)}.checkout-choice-row,.checkout-address-tabs{display:flex;gap:8px}.checkout-choice{flex:1;border:1px solid #dfe6e1;border-radius:11px;padding:13px;cursor:pointer}.checkout-choice.active{border-color:var(--smart-green);background:#f3faF1}.checkout-address-tabs{background:#f2f4f2;border-radius:10px;padding:3px}.checkout-address-tabs button{flex:1;border:0;background:transparent;border-radius:8px;padding:10px;font-weight:700}.checkout-address-tabs button.active{background:#fff;box-shadow:0 2px 8px rgba(7,26,42,.08);color:var(--smart-green)}.checkout-payment-box{border-color:var(--smart-green);background:#f6fbf4}.checkout-payment-qr{width:150px;height:150px}.checkout-terms{display:flex;gap:9px;align-items:flex-start;margin-top:14px;color:#68766f;font-size:12px;line-height:1.5}.checkout-cost-lines{margin-top:12px;padding-top:12px;border-top:1px solid #e5ebe7}.checkout-cost-lines p{display:flex;justify-content:space-between;margin:7px 0;color:#6d7972;font-size:13px}.checkout-footer{background:#fff}.checkout-footer .primary-button{font-size:0}.checkout-footer .primary-button::after{content:"QPAY-ЭЭР ТӨЛӨХ";font-size:13px}
@media(max-width:900px){.camera-showcase-grid{grid-template-columns:1fr}.showcase-visual{min-height:360px}.checkout-body{grid-template-columns:1fr}.checkout-customer-section,.checkout-summary-section,.checkout-payment-section{grid-column:1;grid-row:auto}.checkout-summary-section{order:2}.checkout-payment-section{order:3}}
@media(max-width:760px){body{padding-bottom:72px}.mobile-bottom-nav{display:flex!important;position:fixed!important;left:10px!important;right:10px!important;bottom:10px!important;width:auto!important;border:1px solid #dce6df!important;border-radius:18px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 14px 35px rgba(7,26,42,.18)!important;padding:8px 6px!important;z-index:9999!important}.mobile-bottom-nav-item{border:0!important;background:transparent!important;color:#7b8881!important}.mobile-bottom-nav-item.active,.mobile-bottom-nav-item:hover{color:var(--smart-green)!important}.mobile-bottom-nav-icon{font-size:20px!important}.camera-showcase{padding:58px 0}.showcase-visual{min-height:300px}.showcase-orbit{width:290px;height:290px}.checkout-dialog{width:100%;max-height:100vh;border-radius:0}.checkout-choice-row{flex-direction:column}.checkout-form-grid{grid-template-columns:1fr}.checkout-form-group{grid-column:1!important}}
@media(prefers-reduced-motion:reduce){.showcase-visual img,.showcase-orbit{animation:none}}
.free-delivery{color:var(--smart-green)}

/* Checkout inspired by the supplied two-column QPay flow */
.checkout-dialog{width:min(1180px,96vw);max-height:94dvh;border-radius:20px;overflow:auto;background:#fff}
.checkout-header{padding:18px 28px}.checkout-header h2{font-size:24px}.checkout-close-button{width:auto;padding:0 15px;gap:6px;font-size:12px;font-weight:800}
.checkout-body{grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:0;padding:0;align-items:start}
.checkout-customer-section{grid-column:1;grid-row:1/4;padding:30px 34px 34px;border:0;border-right:1px solid #e5ebe7;border-radius:0;background:#fff}
.checkout-payment-section{grid-column:2;grid-row:1;padding:28px 30px 20px;border:0;border-radius:0;background:#fff}
.checkout-summary-section{grid-column:2;grid-row:2;padding:12px 30px 30px;border:0;border-radius:0;background:#fff}
.checkout-status{grid-column:2;grid-row:3;margin:0 30px 24px}
.checkout-form-section h3{margin-bottom:22px;font-size:18px}.checkout-form-grid{gap:17px 14px}
.checkout-form-group label{font-size:13px}.checkout-form-group input,.checkout-form-group textarea,.checkout-form-group select{min-height:48px;border-color:#dce4df;border-radius:9px;font-size:14px}.checkout-form-group textarea{min-height:72px}
.checkout-choice{display:flex;align-items:center;gap:10px;padding:14px 16px;border-color:var(--checkout-accent);background:#fdf2f3}.checkout-choice input,.checkout-payment-choice input{width:16px;height:16px;accent-color:var(--checkout-accent)}
.checkout-choice span,.checkout-payment-choice span{display:grid;gap:3px}.checkout-choice strong,.checkout-payment-choice strong{font-size:14px}.checkout-choice small,.checkout-payment-choice small{color:#7b8981;font-size:12px;font-weight:500}
.checkout-address-tabs button{min-height:40px;font-size:13px}.checkout-payment-choice{display:flex;align-items:center;gap:11px;padding:15px 16px;border:1px solid var(--checkout-accent);border-radius:10px;background:#fdf2f3;cursor:pointer}
.checkout-payment-box{grid-template-columns:150px minmax(0,1fr);gap:18px;padding:16px;border:1px solid #dce5df;border-radius:14px;background:#fff}.checkout-payment-qr{width:150px;height:150px;padding:4px;border:0;border-radius:8px}.checkout-payment-box strong{font-size:14px}.checkout-payment-box p{font-size:12px}
.checkout-summary-item{grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0}.checkout-summary-item-image{width:58px;height:58px;border:1px solid #e5ebe7;border-radius:10px;background:#f5f7f5;object-fit:contain}.checkout-summary-item-info strong,.checkout-summary-item>strong{font-size:13px}.checkout-summary-item-info span{font-size:12px}
.checkout-summary-total{order:2;margin-top:14px}.checkout-cost-lines{order:1}.checkout-cost-lines p{font-size:13px}.checkout-summary-total span{font-size:14px}.checkout-summary-total strong{font-size:23px;color:var(--smart-navy)}
.checkout-terms{font-size:12px}.checkout-terms input{flex:0 0 auto;width:16px;height:16px;accent-color:var(--checkout-accent)}
.checkout-footer{justify-content:flex-start;padding:16px 34px;border-top:1px solid #e5ebe7}.checkout-footer .secondary-button{display:none}.checkout-footer .primary-button{width:min(520px,calc(58% - 18px));min-height:52px;border-radius:9px}
@media(max-width:900px){.checkout-dialog{width:100%;max-height:100dvh;border-radius:0}.checkout-body{grid-template-columns:1fr}.checkout-customer-section,.checkout-payment-section,.checkout-summary-section,.checkout-status{grid-column:1;grid-row:auto}.checkout-customer-section{border-right:0;border-bottom:1px solid #e5ebe7}.checkout-payment-section{padding-bottom:12px}.checkout-summary-section{padding-top:12px}.checkout-footer{padding:14px 22px}.checkout-footer .primary-button{width:100%}}
@media(max-width:560px){.checkout-header{padding:15px 18px}.checkout-header h2{font-size:20px}.checkout-customer-section,.checkout-payment-section,.checkout-summary-section{padding-left:18px;padding-right:18px}.checkout-form-grid{grid-template-columns:1fr}.checkout-form-group{grid-column:1!important}.checkout-payment-box{grid-template-columns:112px minmax(0,1fr);padding:12px}.checkout-payment-qr{width:112px;height:112px}.checkout-address-tabs{overflow-x:auto}.checkout-address-tabs button{min-width:105px}.checkout-summary-item{grid-template-columns:50px minmax(0,1fr) auto}.checkout-summary-item-image{width:50px;height:50px}}

/* Hybrid light + security-dark direction */
.nova-hero{background:#fff!important;padding:78px 0 66px!important}.nova-hero::after{content:"SMART CAMERA"!important;position:absolute!important;left:46%!important;right:auto!important;top:auto!important;bottom:-82px!important;font-size:clamp(110px,17vw,280px)!important;font-weight:950!important;letter-spacing:-.08em!important;color:rgba(7,26,42,.025)!important;white-space:nowrap!important;background:none!important}.nova-hero-content{max-width:650px}.nova-hero h1{font-size:clamp(58px,6.4vw,88px)!important;line-height:.92!important;color:#071827!important}.nova-hero-description{color:#67778a!important}.hero-main-card{background:#f3f8fa!important;border-radius:34px!important;box-shadow:0 30px 70px rgba(7,26,42,.14)!important;transform:perspective(900px) rotateY(-2deg);transition:transform .45s ease,box-shadow .45s ease}.hero-main-card:hover{transform:perspective(900px) rotateY(1deg) translateY(-4px);box-shadow:0 38px 78px rgba(7,26,42,.18)!important}.hero-main-card img{animation:heroCameraFloat 5.5s ease-in-out infinite}.hero-floating-badge{animation:liveBadgeFloat 3.4s ease-in-out infinite}.hero-stats{border-color:#dfe7e3!important}@keyframes heroCameraFloat{0%,100%{transform:scale(1.01) translateY(0)}50%{transform:scale(1.025) translateY(-8px)}}@keyframes liveBadgeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.use-cases{background:#fff;padding-bottom:54px}.smart-benefits{background:linear-gradient(135deg,#071827 0%,#10273a 100%)!important}
.best-sellers-section,.products-section{position:relative;background:linear-gradient(90deg,rgba(3,16,29,.96),rgba(7,24,39,.9)),url("images/smart-camera/house-camera-bg.png") center/cover fixed no-repeat!important}.best-sellers-section{padding-top:86px!important;padding-bottom:44px!important}.products-section{padding-top:42px!important;padding-bottom:92px!important}.best-sellers-section::before,.products-section::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 25%,rgba(76,175,56,.15),transparent 30%)}.best-sellers-section>.section-container,.products-section>.section-container{position:relative;z-index:1}.best-sellers-section .section-heading h2,.products-section .section-heading h2{color:#f7faf8!important}.best-sellers-section .section-eyebrow,.products-section .section-eyebrow{color:#6bd255!important}.best-sellers-section .view-all-link{color:#78da63!important}.products-heading-meta{color:#a8b4bc!important}.product-toolbar{background:rgba(16,34,53,.88)!important;border-color:rgba(255,255,255,.13)!important;backdrop-filter:blur(12px)}.filter-button{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.16)!important;color:#eef5f0!important}.filter-button:hover{background:rgba(255,255,255,.13)!important}.filter-button.active{background:var(--smart-green)!important;color:#fff!important}.product-toolbar-search input,.product-sort-select{background:#fff!important;border-color:#fff!important;color:#071827!important}.product-card{background:#fff!important;border-color:rgba(255,255,255,.7)!important;box-shadow:0 18px 45px rgba(0,0,0,.22)!important}.product-card:hover{box-shadow:0 24px 55px rgba(0,0,0,.32)!important}.rail-arrow{background:#fff!important;color:#071827!important}.products-empty-state{color:#fff}.site-footer{background:#03101d!important}.footer-brand-logo{background:#fff!important;border-radius:14px!important;padding:8px 12px!important}
@media(max-width:900px){.nova-hero{padding-top:52px!important}.nova-hero h1{font-size:58px!important}.best-sellers-section,.products-section{background-attachment:scroll!important}.hero-main-card{transform:none}.hero-main-card:hover{transform:translateY(-3px)}}

/* Camera catalog filters */
.products-catalog-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:26px;align-items:start}
.products-catalog-main{min-width:0}
.advanced-filter-panel{position:sticky;top:96px;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(5,20,34,.9);box-shadow:0 20px 48px rgba(0,0,0,.22);overflow:hidden;color:#fff}
.advanced-filter-panel[hidden],.mobile-filter-open[hidden]{display:none!important}.products-catalog-layout:has(.advanced-filter-panel[hidden]){grid-template-columns:1fr}
.advanced-filter-header{display:flex;align-items:center;gap:10px;padding:17px 16px;border-bottom:1px solid rgba(255,255,255,.12)}
.advanced-filter-header strong{font-size:15px;letter-spacing:.04em}.advanced-filter-header button{margin-left:auto;border:0;background:transparent;color:#6fd65a;font-weight:800;font-size:11px}.mobile-filter-close{display:none!important}
.advanced-filter-group{border-bottom:1px solid rgba(255,255,255,.1)}
.advanced-filter-group summary{list-style:none;cursor:pointer;padding:14px 16px;font-size:12px;font-weight:850;display:flex;justify-content:space-between}.advanced-filter-group summary::-webkit-details-marker{display:none}.advanced-filter-group summary::after{content:'⌄';color:#67d252}
.advanced-filter-options{display:grid;gap:9px;padding:0 16px 15px}.advanced-filter-options label{display:flex;align-items:center;gap:9px;color:#cbd6df;font-size:11px;cursor:pointer}.advanced-filter-options input{width:16px;height:16px;accent-color:#4cad38}
.advanced-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.advanced-price-grid input{width:100%;min-width:0;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#0a2032;color:#fff;padding:9px 8px;font-size:10px}
.filter-apply-button,.mobile-filter-open{display:none}.mobile-filter-overlay{display:none}
.products-catalog-layout .all-products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.product-horizontal-rail{cursor:grab}.product-horizontal-rail:active{cursor:grabbing}

/* Featured products: smooth horizontal carousel on mouse, touch and arrows */
.product-horizontal-rail{
  scroll-snap-type:x mandatory!important;
  scroll-padding-inline:2px;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y pinch-zoom;
  user-select:none;
}
.product-horizontal-rail.continuous-product-rail{
  scroll-snap-type:none!important;
  scroll-behavior:auto!important;
}
.product-horizontal-rail .product-card{
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
.product-rail-shell{isolation:isolate}
.product-rail-shell::before,.product-rail-shell::after{
  content:"";
  position:absolute;
  z-index:4;
  top:0;
  bottom:18px;
  width:24px;
  pointer-events:none;
}
.product-rail-shell::before{left:0;background:linear-gradient(90deg,rgba(3,16,29,.82),transparent)}
.product-rail-shell::after{right:0;background:linear-gradient(270deg,rgba(3,16,29,.82),transparent)}
.product-rail-shell .rail-arrow{z-index:12}

/* Reliable, always-running infinite marquee for featured products */
.product-horizontal-rail{
  overflow:hidden!important;
  scroll-snap-type:none!important;
  user-select:auto;
}
.product-horizontal-rail>.continuous-product-track{
  display:flex!important;
  flex:0 0 auto!important;
  width:max-content!important;
  gap:0!important;
  animation:smartCameraProductMarquee 30s linear infinite;
  will-change:transform;
}
.continuous-product-group{
  display:flex;
  flex:0 0 auto;
  gap:18px;
  padding-right:18px;
}
.continuous-product-group>.product-card{
  flex:0 0 clamp(240px,21vw,300px)!important;
  width:clamp(240px,21vw,300px)!important;
}
@keyframes smartCameraProductMarquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@media(max-width:680px){
  .product-horizontal-rail>.continuous-product-track{animation-duration:24s}
  .continuous-product-group{gap:10px;padding-right:10px}
  .continuous-product-group>.product-card{flex-basis:min(72vw,275px)!important;width:min(72vw,275px)!important}
}
@media(prefers-reduced-motion:reduce){
  .product-horizontal-rail>.continuous-product-track{animation-duration:60s}
}

/* Admin-controlled, contained hero background */
.nova-hero{
  isolation:isolate;
  background:
    linear-gradient(
      rgba(3,16,29,var(--hero-background-opacity,.88)),
      rgba(3,16,29,var(--hero-background-opacity,.88))
    ),
    var(--hero-background-image,none) center/cover no-repeat!important;
}
.nova-hero .nova-hero-content h1,
.nova-hero .hero-stat strong{color:#fff!important}
.nova-hero .nova-hero-description{color:rgba(238,245,249,.78)!important}
.nova-hero .hero-stats{border-color:rgba(255,255,255,.2)!important}
.nova-hero .hero-stat span{color:rgba(238,245,249,.6)!important}
.nova-hero .secondary-button{
  border-color:rgba(255,255,255,.45)!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  backdrop-filter:blur(8px);
}
.nova-hero::after{
  content:attr(data-watermark)!important;
  left:50%!important;
  right:auto!important;
  bottom:10px!important;
  max-width:100%!important;
  overflow:hidden!important;
  transform:translateX(-50%)!important;
  font-size:clamp(72px,12vw,180px)!important;
  color:rgba(7,26,42,.025)!important;
}
.nova-hero:not([data-watermark])::after,.nova-hero[data-watermark=""]::after{content:""!important}
@media(max-width:1040px){.products-catalog-layout{grid-template-columns:210px minmax(0,1fr)}.products-catalog-layout .all-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .mobile-filter-open{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:#0b2133;color:#fff;padding:11px 14px;font-weight:850}
  .products-catalog-layout{display:block}.advanced-filter-panel{position:fixed;z-index:1200;top:0;bottom:0;left:0;width:min(330px,88vw);border-radius:0;transform:translateX(-105%);transition:transform .28s ease;overflow-y:auto}.advanced-filter-panel.mobile-open{transform:translateX(0)}
  .mobile-filter-close{display:inline-flex!important;font-size:24px!important;color:#fff!important;margin-left:0!important}.mobile-filter-overlay{position:fixed;z-index:1190;inset:0;background:rgba(0,0,0,.56);backdrop-filter:blur(2px)}.mobile-filter-overlay.active{display:block}
  .filter-apply-button{display:block;width:calc(100% - 32px);margin:16px;border:0;border-radius:10px;background:#4cad38;color:#fff;padding:13px;font-weight:900}
  .products-catalog-layout .all-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){.products-catalog-layout .all-products-grid{grid-template-columns:1fr}}
@media(max-width:600px){.nova-hero{padding-top:38px!important}.nova-hero h1{font-size:47px!important}.nova-hero::after{display:none!important}.hero-main-card img{height:320px!important}.best-sellers-section{padding-top:64px!important}.products-section{padding-bottom:72px!important}}
@media(prefers-reduced-motion:reduce){.hero-main-card img,.hero-floating-badge{animation:none!important}}

/* =========================================================
   SMART CAMERA — SECURITY MONITOR VISUAL SYSTEM
========================================================= */
:root{
  --camera-night:#5bd14a;
  --camera-rec:#ff3b36;
  --camera-panel:#071a2a;
  --camera-line:rgba(91,209,74,.34);
  --camera-mono:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",monospace;
}

.hero-main-card{
  border:1px solid rgba(91,209,74,.42)!important;
  border-radius:8px!important;
  background:#020b12!important;
  box-shadow:0 28px 70px rgba(0,0,0,.42),0 0 0 1px rgba(91,209,74,.08) inset!important;
  transform:none!important;
}
.hero-main-card:hover{transform:translateY(-3px)!important}
.hero-main-card img{
  animation:none!important;
  filter:saturate(.82) contrast(1.08) brightness(.82);
}
.hero-main-card::before{
  content:"";
  position:absolute;
  z-index:2;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(91,209,74,.06),transparent 38%,rgba(1,10,16,.4)),repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0,rgba(255,255,255,.018) 1px,transparent 1px,transparent 4px);
}
.camera-feed-ui{position:absolute;z-index:4;inset:0;pointer-events:none;color:#eaffea;font-family:var(--camera-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-shadow:0 1px 3px #000}
.camera-feed-topline,.camera-feed-bottomline{position:absolute;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between}
.camera-feed-topline{top:18px}.camera-feed-bottomline{bottom:18px;color:var(--camera-night)}
.camera-rec{display:inline-flex;align-items:center;gap:7px}.camera-rec i{width:8px;height:8px;border-radius:50%;background:var(--camera-rec);box-shadow:0 0 12px var(--camera-rec);animation:cameraRecBlink 1.25s steps(1,end) infinite}
.camera-focus-frame{position:absolute;inset:18% 17% 23%;filter:drop-shadow(0 0 5px rgba(91,209,74,.3))}
.camera-focus-frame span{position:absolute;width:42px;height:42px;border-color:var(--camera-night);border-style:solid}
.camera-focus-frame span:nth-child(1){left:0;top:0;border-width:2px 0 0 2px}.camera-focus-frame span:nth-child(2){right:0;top:0;border-width:2px 2px 0 0}.camera-focus-frame span:nth-child(3){right:0;bottom:0;border-width:0 2px 2px 0}.camera-focus-frame span:nth-child(4){left:0;bottom:0;border-width:0 0 2px 2px}
.hero-security-readout{left:20px!important;bottom:44px!important;border:1px solid var(--camera-line)!important;border-left:3px solid var(--camera-night)!important;border-radius:3px!important;background:rgba(2,11,18,.82)!important;color:#fff!important;box-shadow:none!important;backdrop-filter:blur(8px);animation:none!important;font-family:var(--camera-mono)}
.hero-security-readout span{color:var(--camera-night)!important}.hero-security-readout strong{color:#fff!important}
@keyframes cameraRecBlink{50%{opacity:.35}}

.hero-stat strong,.product-card-price,.product-tech-tags,.product-detail-price,.showcase-price{font-family:var(--camera-mono)}

.product-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(91,209,74,.24)!important;
  border-radius:6px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(0,0,0,.2)!important;
}
.product-card::after{content:"";position:absolute;right:0;bottom:0;width:34px;height:3px;background:var(--camera-night)}
.product-card:hover{border-color:rgba(91,209,74,.65)!important;box-shadow:0 20px 44px rgba(0,0,0,.32),0 0 20px rgba(91,209,74,.08)!important}
.product-card-image-wrap{border-radius:0!important;background:#eef3f0!important}
.product-card-image-link{border-radius:2px!important;border:1px solid #d7dfda;background:#f5f8f6!important}
.product-badge{display:grid!important;place-items:center;min-width:48px!important;height:48px!important;padding:5px!important;border:3px solid #eaffea!important;border-radius:50%!important;background:#10283a!important;color:var(--camera-night)!important;box-shadow:0 0 0 2px var(--camera-night),0 0 20px rgba(91,209,74,.24)!important;font-family:var(--camera-mono);font-size:9px!important;text-align:center}
.product-card-info{padding:17px 18px 20px!important}
.product-card-brand{font-family:var(--camera-mono);color:#3b9632!important}
.product-card-title{color:var(--camera-panel)!important;font-size:16px!important;letter-spacing:-.03em}
.product-tech-tags{display:flex;flex-wrap:wrap;gap:5px;margin:11px 0 8px}
.product-tech-tags span{padding:5px 7px;border:1px solid #cad7cf;border-left:2px solid var(--camera-night);border-radius:2px;background:#f3f7f4;color:#23362b;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.product-card-specs{margin-top:8px!important;color:#6c7971!important}
.product-card-bottom{border-top:1px dashed #cdd8d1!important}

@media(max-width:600px){
  .camera-feed-topline,.camera-feed-bottomline{left:12px;right:12px;font-size:9px}
  .camera-focus-frame{inset:18% 12% 25%}
  .hero-security-readout{left:12px!important;right:12px!important;bottom:36px!important}
  .product-tech-tags span{font-size:8px}
}

@media(prefers-reduced-motion:reduce){.camera-rec i{animation:none}}

/* Full-screen SMART CAMERA checkout */
.checkout-modal{position:fixed!important;inset:0!important;z-index:10000!important;display:none!important;background:#fff!important;overflow:auto!important}
.checkout-modal.active{display:block!important}.checkout-overlay{display:none!important}
body.checkout-open{overflow:hidden!important}
.checkout-dialog{position:static!important;transform:none!important;width:100%!important;max-width:none!important;min-height:100dvh!important;max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;overflow:visible!important}
.checkout-header{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:0!important;align-items:end!important;max-width:1400px!important;margin:0 auto!important;padding:28px 46px 0!important;border:0!important}
.checkout-header>div{grid-column:1!important;grid-row:2!important;padding-top:26px!important}.checkout-header h2{margin:0!important;font-size:32px!important;letter-spacing:-.035em!important}
.checkout-close-button{grid-column:1!important;grid-row:1!important;justify-self:start!important;width:auto!important;min-height:44px!important;padding:0 18px!important;border:0!important;border-radius:10px!important;background:#f0f2f3!important;color:var(--smart-navy)!important;font-size:14px!important;font-weight:850!important}
.checkout-dialog form{max-width:1400px!important;margin:0 auto!important}
.checkout-body{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:0!important;padding:20px 46px 56px!important;align-items:start!important}
.checkout-form-section{border:0!important;border-radius:0!important;box-shadow:none!important}
.checkout-customer-section{grid-column:1!important;grid-row:1/4!important;padding:0 54px 0 0!important;border-right:1px solid #dfe5e1!important}
.checkout-customer-section>h3{display:none!important}
.checkout-payment-section{grid-column:2!important;grid-row:1!important;padding:0 0 26px 54px!important;background:#fff!important}
.checkout-payment-section h3{display:none!important}
.checkout-summary-section{grid-column:2!important;grid-row:2!important;padding:0 0 0 54px!important;background:#fff!important}
.checkout-status{grid-column:2!important;grid-row:3!important;margin:18px 0 0 54px!important}
.checkout-form-grid{gap:18px 16px!important}.checkout-form-group label{font-size:14px!important;font-weight:800!important}.checkout-form-group input,.checkout-form-group textarea,.checkout-form-group select{min-height:48px!important;border:1px solid #d7dfe4!important;border-radius:10px!important;background:#fff!important;font-size:14px!important}.checkout-form-group textarea{min-height:80px!important}
.checkout-choice,.checkout-payment-choice{min-height:76px!important;border:1.5px solid var(--checkout-accent)!important;border-radius:12px!important;background:#fdf2f3!important}
.checkout-address-tabs{padding:3px!important;background:#f0f1f2!important}.checkout-address-tabs button{font-size:14px!important;font-weight:700!important;color:var(--smart-navy)!important}.checkout-address-tabs button.active{color:var(--smart-navy)!important}
.checkout-actions{display:grid!important;gap:8px!important;margin-top:6px!important}.checkout-actions .primary-button{width:100%!important;min-height:54px!important;border-radius:10px!important;font-size:14px!important;font-weight:900!important;background:var(--checkout-accent)!important;border-color:var(--checkout-accent)!important;box-shadow:0 12px 26px rgba(224,38,63,.28)!important}.checkout-actions .primary-button:hover{background:var(--checkout-accent-dark)!important;border-color:var(--checkout-accent-dark)!important}.checkout-actions small{color:#8a9690!important;font-size:12px!important}
.checkout-payment-box{display:grid!important;grid-template-columns:210px minmax(0,1fr)!important;gap:26px!important;align-items:start!important;min-height:258px!important;padding:24px!important;border:1px solid #dce3df!important;border-radius:18px!important;background:#fff!important}.checkout-payment-qr{width:210px!important;height:210px!important;object-fit:contain!important}.checkout-payment-box>div{padding-top:12px!important}.checkout-payment-box strong{font-size:16px!important;line-height:1.45!important}.checkout-payment-box p{margin-top:10px!important;font-size:13px!important;line-height:1.55!important}
.checkout-summary-section>h3{display:none!important}.checkout-summary-item{grid-template-columns:76px minmax(0,1fr) auto!important;gap:14px!important;padding:14px 0!important}.checkout-summary-item-image{width:76px!important;height:76px!important;border-radius:12px!important}.checkout-summary-item-info strong,.checkout-summary-item>strong{font-size:14px!important}.checkout-summary-item-info span{font-size:12px!important}
.checkout-promo{margin:16px 0 20px!important}.checkout-promo-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;padding:3px!important;border-radius:12px!important;background:#eff1f2!important}.checkout-promo-tabs button{min-height:42px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:var(--smart-navy)!important;font-size:14px!important;font-weight:700!important}.checkout-promo-tabs button.active{background:#fff!important;box-shadow:0 2px 7px rgba(7,26,42,.1)!important;font-weight:850!important}.checkout-promo-row{display:grid!important;grid-template-columns:minmax(0,1fr) 48px!important;gap:8px!important;margin-top:12px!important}.checkout-promo-row input{width:100%!important;min-height:46px!important;border:1px solid #d7dfe4!important;border-radius:10px!important;padding:0 14px!important;font-size:14px!important}.checkout-promo-row button{border:0!important;border-radius:10px!important;background:var(--checkout-accent)!important;color:#fff!important;font-size:20px!important}.checkout-promo-message{display:block!important;min-height:18px!important;margin-top:6px!important;color:#75827b!important;font-size:12px!important}
.checkout-cost-lines{padding-top:6px!important;border-top:0!important}.checkout-cost-lines p{margin:13px 0!important;color:var(--smart-navy)!important;font-size:14px!important}.checkout-cost-lines small{color:#8a9590!important;font-size:11px!important;font-weight:500!important}.checkout-discount{color:var(--smart-green)!important}.checkout-summary-total{margin-top:18px!important;padding-top:17px!important;border-top:1px dashed #d7dfda!important}.checkout-summary-total span{font-size:18px!important;font-weight:900!important}.checkout-summary-total strong{font-size:24px!important}.checkout-footer{display:none!important}
@media(max-width:900px){.checkout-header{display:block!important;padding:18px 20px 0!important}.checkout-header>div{padding-top:20px!important}.checkout-header h2{font-size:27px!important}.checkout-body{grid-template-columns:1fr!important;padding:18px 20px 42px!important}.checkout-customer-section,.checkout-payment-section,.checkout-summary-section,.checkout-status{grid-column:1!important;grid-row:auto!important;padding-left:0!important;padding-right:0!important;margin-left:0!important;border-right:0!important}.checkout-customer-section{padding-bottom:36px!important;border-bottom:1px solid #e1e7e3!important}.checkout-payment-section{padding-top:36px!important}.checkout-summary-section{padding-top:0!important}}
@media(max-width:560px){.checkout-header{padding-inline:16px!important}.checkout-body{padding-inline:16px!important}.checkout-form-grid{grid-template-columns:1fr!important}.checkout-form-group{grid-column:1!important}.checkout-payment-box{grid-template-columns:120px minmax(0,1fr)!important;gap:14px!important;min-height:0!important;padding:14px!important}.checkout-payment-qr{width:120px!important;height:120px!important}.checkout-summary-item{grid-template-columns:58px minmax(0,1fr) auto!important}.checkout-summary-item-image{width:58px!important;height:58px!important}.checkout-address-tabs{overflow-x:auto!important}.checkout-address-tabs button{min-width:100px!important}}

/* Exact typography and microcopy spacing from the supplied checkout */
.checkout-header h2{font-family:Georgia,"Times New Roman",serif!important;font-weight:500!important;letter-spacing:0!important}
.checkout-field-help{display:block!important;margin-top:7px!important;color:#879399!important;font-size:11px!important;font-weight:500!important}
.checkout-subtitle{font-family:Georgia,"Times New Roman",serif!important;font-size:17px!important;font-weight:500!important}
.checkout-payment-box strong{text-transform:none!important}.checkout-payment-box p{color:#7f8b86!important}.checkout-payment-box p b{color:var(--smart-navy)!important}
.checkout-actions .primary-button{box-shadow:none!important}.checkout-actions>small{font-weight:500!important}

/* Solid deep-navy catalog background */
.best-sellers-section,.products-section{background:#03101d!important}.best-sellers-section::before,.products-section::before{background:radial-gradient(circle at 88% 16%,rgba(76,175,56,.11),transparent 28%),linear-gradient(180deg,rgba(16,34,53,.35),transparent 42%)!important}.best-sellers-section{border-bottom:1px solid rgba(255,255,255,.08)}

/* Deep-navy camera detail page */
.product-page{position:relative;background:#03101d!important;color:#f7faf8!important;min-height:calc(100vh - 78px);padding-bottom:72px}.product-page::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 15%,rgba(76,175,56,.14),transparent 25%),linear-gradient(135deg,rgba(16,34,53,.45),transparent 52%);pointer-events:none}.product-page>.container{position:relative;z-index:1}.product-breadcrumb{color:#a8b4bc!important;border-color:rgba(255,255,255,.12)!important}.product-breadcrumb a{color:#c7d2d8!important}.product-breadcrumb a:hover{color:#72d45d!important}.product-detail-info{background:rgba(16,34,53,.88);border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:34px;box-shadow:0 24px 60px rgba(0,0,0,.28);backdrop-filter:blur(14px)}.product-detail-title{color:#fff!important}.product-detail-category,.product-detail-description{color:#a8b4bc!important}.product-detail-description{border-color:rgba(255,255,255,.12)!important}.product-main-image-wrap{background:#fff!important;border-color:rgba(255,255,255,.18)!important;box-shadow:0 25px 65px rgba(0,0,0,.32)}.product-main-image{mix-blend-mode:multiply}.product-thumbnail-button{border-color:rgba(255,255,255,.2)!important;background:#fff!important}.product-stock-info{background:rgba(76,175,56,.12)!important;border-color:rgba(114,212,93,.32)!important;color:#83df6f!important}.product-quantity-row{border-color:rgba(255,255,255,.12)!important}.product-quantity-label{color:#dbe5df!important}.quantity-control{background:#fff!important;border-color:#fff!important;color:#071827!important}.product-buy-button,.wishlist-detail-button{background:transparent!important;border-color:rgba(255,255,255,.3)!important;color:#fff!important}.product-buy-button:hover,.wishlist-detail-button:hover{border-color:#72d45d!important;color:#72d45d!important}.product-meta-list{background:rgba(3,16,29,.58)!important;border:1px solid rgba(255,255,255,.08)}.product-meta-row{border-color:rgba(255,255,255,.09)!important;color:#a8b4bc!important}.product-meta-row strong{color:#f7faf8!important}.related-products-section{background:#03101d!important;border-top:1px solid rgba(255,255,255,.09)!important}.related-products-section .section-heading h2{color:#fff!important}.related-products-section .section-link{color:#72d45d!important}.product-loading,.product-error-state{color:#fff!important}
@media(max-width:760px){.product-detail-info{padding:24px;border-radius:18px}.product-page{padding-bottom:48px}}

/* Header search and admin access */
.header-search-pill{width:auto!important;min-width:142px!important;padding:0 14px!important;gap:8px!important;border-radius:999px!important;justify-content:flex-start!important;color:#65736c!important}.search-label{font-size:12px;font-weight:700;white-space:nowrap}.admin-access-link{height:42px;display:inline-flex;align-items:center;gap:7px;padding:0 14px;border:1px solid #dce5df;border-radius:999px;color:#071827;font-size:12px;font-weight:850;transition:.2s ease}.admin-access-link:hover{background:#071827;border-color:#071827;color:#fff}.admin-access-link span:first-child{color:var(--smart-green)}
@media(max-width:760px){.header-search-pill{min-width:42px!important;width:42px!important;padding:0!important;justify-content:center!important}.search-label,.admin-access-link span:last-child{display:none}.admin-access-link{width:42px;padding:0;justify-content:center;border-radius:50%}}

/* QPay framed payment card from the supplied checkout */
.checkout-payment-box{
  grid-template-columns:170px minmax(0,1fr)!important;
  gap:24px!important;
  align-items:start!important;
}
.checkout-payment-qr-block{display:flex;flex-direction:column;align-items:center;min-width:0}
.checkout-payment-qr-frame{position:relative;width:150px;height:150px;padding:8px;background:#fff}
.checkout-payment-qr{display:block;width:134px!important;height:134px!important;padding:0!important;border-radius:4px!important;object-fit:contain!important}
.qr-corner{position:absolute;z-index:2;width:23px;height:23px;border-color:#1b1b1f;border-style:solid;pointer-events:none}
.qr-corner-tl{top:0;left:0;border-width:2.5px 0 0 2.5px;border-radius:7px 0 0 0}
.qr-corner-tr{top:0;right:0;border-width:2.5px 2.5px 0 0;border-radius:0 7px 0 0}
.qr-corner-bl{bottom:0;left:0;border-width:0 0 2.5px 2.5px;border-radius:0 0 0 7px}
.qr-corner-br{right:0;bottom:0;border-width:0 2.5px 2.5px 0;border-radius:0 0 7px 0}
.checkout-order-number{margin:10px 0 0!important;color:#8a8a94!important;font-size:12px!important;line-height:1.35!important;text-align:center}
.checkout-order-number b{color:#5f6670!important;font-weight:700!important}
.checkout-payment-copy{padding-top:4px!important}
.checkout-payment-copy strong{display:block;font-size:17px!important;line-height:1.4!important}
@media(max-width:560px){
  .checkout-payment-box{grid-template-columns:130px minmax(0,1fr)!important;gap:14px!important}
  .checkout-payment-qr-frame{width:120px;height:120px;padding:7px}
  .checkout-payment-qr{width:106px!important;height:106px!important}
  .checkout-payment-copy strong{font-size:14px!important}
}

/* Keep uploaded product photos fully visible on the detail page */
.product-main-image-wrap{
  aspect-ratio:1 / 1!important;
  max-height:none!important;
  display:grid!important;
  place-items:center!important;
  background:#fff!important;
}
.product-main-image{
  width:100%!important;
  height:100%!important;
  padding:clamp(14px,2.4vw,30px)!important;
  object-fit:contain!important;
  object-position:center!important;
  mix-blend-mode:normal!important;
}
.product-main-image-wrap:hover .product-main-image{transform:scale(1.01)!important}

/* Product description and sale pricing */
.product-card-price-wrap{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 9px;min-width:0}
.product-card-old-price{width:100%;color:#8b9690;font-family:var(--camera-mono);font-size:12px;font-weight:700;text-decoration:line-through}
.product-card-discount{display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border-radius:4px;background:#fff0f2;color:#d92342;font-family:var(--camera-mono);font-size:10px;font-weight:900}
.product-detail-price-row{display:flex;flex-wrap:wrap;align-items:center;gap:9px 14px;margin:14px 0 18px}
.product-detail-price-row .product-detail-price{margin:0!important}
.product-detail-old-price{width:100%;color:#89969e;font-family:var(--camera-mono);font-size:17px;font-weight:700;text-decoration:line-through}
.product-detail-discount{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid rgba(255,62,91,.35);border-radius:5px;background:rgba(255,62,91,.12);color:#ff6b81;font-family:var(--camera-mono);font-size:13px;font-weight:900}
.product-card-specs{font-size:12px!important;line-height:1.5!important}
/* Product description panel */
.product-description-block{margin:22px 0;padding:18px 0 20px;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.product-description-block h2{margin:0 0 10px;color:#fff;font-size:16px;font-weight:850;letter-spacing:-.01em}
.product-description-block .product-detail-description{margin:0;padding:0;border:0;color:#aebcc6;font-size:15px;line-height:1.7}
