:root {
  --hl-cyan: #18b8c8;
  --hl-cyan-dark: #078fa1;
  --hl-lime: #9cd41f;
  --hl-lime-dark: #74a400;
  --hl-ink: #111a23;
  --hl-charcoal: #26323c;
  --hl-muted: #687782;
  --hl-line: #dfe7eb;
  --hl-soft: #f3f7f8;
  --hl-white: #fff;
  --hl-radius: 1rem;
  --hl-shadow: 0 1rem 2.8rem rgba(16, 35, 47, .09);
}

html { scroll-behavior: smooth; }
body { color: var(--hl-ink); background: #fff; font-family: Inter, Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease; }

#header { position: relative; z-index: 20; background: rgba(255,255,255,.98); box-shadow: none; border-bottom: 1px solid var(--hl-line); }
#header .header-nav { min-height: 2.25rem; background: var(--hl-ink); color: #e7edf1; border: 0; }
#header .header-nav a, #header .header-nav .blockcart { color: #e7edf1; }
#header .header-nav a:hover { color: var(--hl-lime); }
#header .header-top { padding: 1.15rem 0; background: #fff; }
#header .logo { max-height: 3.5rem; width: auto; }
#header .header-top a[data-depth="0"] { color: var(--hl-charcoal); font-size: .78rem; font-weight: 700; letter-spacing: .01em; }
#header .header-top a[data-depth="0"]:hover { color: var(--hl-cyan-dark); }
#header .search-widget form input[type=text] { min-height: 3rem; border: 1px solid var(--hl-line); border-radius: .75rem; background: var(--hl-soft); padding-left: 1rem; }
#header .search-widget form button { color: var(--hl-cyan-dark); }
#header .blockcart { border-radius: .65rem; background: var(--hl-cyan); }
#header .blockcart.active { background: var(--hl-lime-dark); }
.hl-header-scrolled { position: sticky !important; top: 0; box-shadow: 0 .5rem 1.5rem rgba(16,35,47,.08) !important; }

#wrapper { padding-top: 0; background: #fff; }
#content-wrapper { min-width: 0; }
.breadcrumb { margin: 1rem 0; font-size: .76rem; }
.breadcrumb a { color: var(--hl-muted); }

.featured-products, .product-accessories, .product-miniature { color: var(--hl-ink); }
.featured-products .products-section-title { margin: 3.5rem 0 2rem; color: var(--hl-ink); font-size: clamp(1.75rem, 3vw, 2.5rem); font-weight: 800; letter-spacing: -.04em; }
.products { gap: 1rem 0; }
.product-miniature .thumbnail-container { height: 100%; padding: .8rem; overflow: hidden; border: 1px solid var(--hl-line); border-radius: var(--hl-radius); background: #fff; box-shadow: none; transition: transform .22s ease, box-shadow .22s ease; }
.product-miniature .thumbnail-container:hover { transform: translateY(-.3rem); box-shadow: var(--hl-shadow); }
.product-miniature .product-thumbnail { overflow: hidden; border-radius: .75rem; background: var(--hl-soft); }
.product-miniature .product-thumbnail img { object-fit: contain; transition: transform .28s ease; }
.product-miniature .thumbnail-container:hover .product-thumbnail img { transform: scale(1.035); }
.product-miniature .product-description { position: static; width: auto; min-height: 8.5rem; padding: 1rem .25rem .25rem; background: #fff; }
.product-miniature .product-title a { color: var(--hl-ink); font-size: .88rem; font-weight: 700; line-height: 1.4; }
.product-miniature .product-price-and-shipping { color: var(--hl-lime-dark); font-size: 1.1rem; font-weight: 800; }
.product-miniature .highlighted-informations { position: static; height: auto; box-shadow: none; }
.product-miniature .quick-view { color: var(--hl-cyan-dark); font-size: .75rem; font-weight: 700; }
.product-flags li.product-flag { padding: .4rem .55rem; border-radius: .4rem; background: var(--hl-cyan); font-size: .65rem; letter-spacing: .04em; }
.product-flags li.product-flag.discount, .product-flags li.product-flag.on-sale { background: var(--hl-lime-dark); }

.product-container { margin-top: 1rem; }
.product-cover img { border-radius: 1rem; box-shadow: none; background: var(--hl-soft); }
.product-images > li.thumb-container > .thumb.selected, .product-images > li.thumb-container > .thumb:hover { border: 2px solid var(--hl-cyan); }
h1.h1, .product-detail-name { color: var(--hl-ink); font-size: clamp(1.65rem, 3vw, 2.5rem); font-weight: 800; letter-spacing: -.035em; line-height: 1.12; }
.current-price span { color: var(--hl-lime-dark); font-size: 2rem; font-weight: 800; }
.product-information { color: var(--hl-muted); line-height: 1.7; }
.btn-primary, .add-to-cart { border-color: var(--hl-lime-dark) !important; border-radius: .7rem; background: var(--hl-lime) !important; color: var(--hl-ink) !important; font-weight: 800; box-shadow: none; }
.btn-primary:hover, .add-to-cart:hover { border-color: var(--hl-lime-dark) !important; background: var(--hl-lime-dark) !important; color: #fff !important; }
.tabs { border: 1px solid var(--hl-line); border-radius: 1rem; box-shadow: none; }
.tabs .nav-tabs .nav-link.active { color: var(--hl-cyan-dark); border-bottom: 3px solid var(--hl-cyan); }
.blockreassurance_product { border-radius: .8rem; background: var(--hl-soft); }

.cart-grid-body .card, .cart-grid-right .card, .checkout-step { border: 1px solid var(--hl-line); border-radius: var(--hl-radius); box-shadow: none; }
.cart-summary-line .value { color: var(--hl-ink); font-weight: 800; }

#footer { padding-top: 2rem; background: var(--hl-ink); color: #dbe3e8; }
#footer .footer-container { padding: 3.25rem 0; box-shadow: none; }
#footer .h3, #footer .h4, #footer .h3 a { color: #fff; font-weight: 800; }
#footer a { color: #aab7c1; }
#footer a:hover { color: var(--hl-lime); }

@media (max-width: 767px) {
  #header { position: relative !important; }
  #header .header-nav { background: #fff; color: var(--hl-ink); }
  #header .header-nav a, #header .header-nav .blockcart { color: var(--hl-ink); }
  #header .header-top { padding: .6rem 0; }
  .product-miniature .thumbnail-container { padding: .55rem; }
  .product-miniature .product-description { min-height: 7.5rem; padding-top: .75rem; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}
