:root {
  --black: #000000;
  --dark-1: #0c0c0c;
  --dark-2: #141414;
  --dark-3: #1e1e1e;
  --dark-4: #2a2a2a;
  --silver-dim: #6b6b6b;
  --silver: #a8a8a8;
  --silver-light:#d4d4d4;
  --white: #ffffff;
  --font-head: "Barlow Condensed", sans-serif;
  --font-body: "Inter", sans-serif;
  --radius: 6px;
  --transition: 0.3s ease;
}

/* Global body + container */
body {
  background: var(--dark-1) !important;
  color: var(--white) !important;
  font-family: var(--font-body) !important;
  font-size: 15px;
  line-height: 1.6;
  overflow-x: hidden;
  margin: 0 !important;
  padding: 0 !important;
}

.hl-container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 24px;
}

/* Condensed Inter styling for section headings */
body .hl-section-label {
  font-family: var(--font-body) !important;  /* Inter */
  font-stretch: ultra-condensed;                  /* request condensed width */
  font-size: 12px;                          /* keep original size */
  font-weight: 600;
  letter-spacing: 2px;                      /* reduce spread a bit */
  text-transform: uppercase;
  color: var(--silver);
  display: block;
  margin-bottom: 8px;
}

body .hl-section-title {
  font-family: var(--font-body) !important;  /* Inter */
  font-stretch: ultra-condensed;                  /* request condensed width */
  font-size: clamp(28px, 4vw, 42px);        /* keep original range */
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;                    /* slightly tighter */
  color: var(--white);
  line-height: 1.1;
}

body .hl-section-title span {
  color: var(--silver-light);
}




/* ───────────────── HEADER & ANNOUNCEMENT ───────────────── */

.hl-announce {
  background: var(--black);
  border-bottom: 1px solid var(--dark-4);
  padding: 8px 0;
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--silver);
}
.hl-announce strong { color: var(--white); }

.hl-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(10,10,10,0.97);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--dark-4);
}
.hl-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 72px;
}

/* Force header logo size */
.hl-header .hl-logo img {
  height: 100px !important;
  width: auto !important;
}

/* Header nav base layout */
.hl-nav {
  display: flex;
  align-items: center;
  gap: 6px;
}

/* Header nav link typography (global, including WP menu items) */
.hl-nav a,
.hl-nav-item a,
.hl-nav-menu > li > a,
.hl-nav-menu > li.current-menu-item > a,
.hl-nav-menu > li.current-menu-ancestor > a,
.hl-nav-menu > li.current_page_item > a {
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--silver);
  padding: 8px 14px;
  border-radius: 4px;
  transition: var(--transition);
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

/* Hover/active colors consistent everywhere */
.hl-nav a:hover,
.hl-nav-item a:hover,
.hl-nav-menu > li > a:hover,
.hl-nav-menu > li.current-menu-item > a {
  color: var(--white);
}

/* WP menu list layout */
.hl-nav-menu {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hl-nav-item {
  position: relative;
}
.hl-dropdown {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  min-width: 220px;
  background: var(--dark-2);
  border: 1px solid var(--dark-4);
  border-radius: var(--radius);
  padding: 8px 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: var(--transition);
  z-index: 200;
}
.hl-nav-item:hover .hl-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.hl-dropdown a {
  display: block;
  padding: 9px 20px;
  font-size: 13px;
  letter-spacing: 1px;
  color: var(--silver);
  transition: var(--transition);
}
.hl-dropdown a:hover {
  color: var(--white);
  background: var(--dark-3);
  padding-left: 26px;
}

.hl-header-actions {
  display: flex;
  align-items: center;
  gap: 4px;
}

/* Force H-LIGHTS search styling on all pages */
.hl-search-bar {
  background: var(--dark-3) !important;
  border: 1px solid var(--dark-4) !important;
}

.hl-search-bar input[type="search"],
.hl-search-bar input[type="text"] {
  background: transparent !important;
  color: var(--white) !important;
}

/* Placeholder color */
.hl-search-bar input::placeholder {
  color: var(--silver-dim) !important;
}

/* Focus state: widen + lighten border, not background */
.hl-search-bar:focus-within {
  border-color: var(--silver-dim) !important;
  width: 260px !important;
}

/* Prevent theme/woocommerce from forcing white background on shop search */
.woocommerce .hl-search-bar input[type="search"],
.woocommerce-page .hl-search-bar input[type="search"] {
  background: transparent !important;
  color: var(--white) !important;
}

.hl-search-bar {
  display: flex;
  align-items: center;
  background: var(--dark-3);
  border: 1px solid var(--dark-4);
  border-radius: var(--radius);
  overflow: hidden;
  width: 220px;
  transition: var(--transition);
}
.hl-search-bar:focus-within {
  border-color: var(--silver-dim);
  width: 260px;
}
.hl-search-bar input {
  background: none;
  border: none;
  outline: none;
  color: var(--white);
  font-size: 13px;
  padding: 9px 14px;
  width: 100%;
  font-family: var(--font-body);
}
.hl-search-bar input::placeholder {
  color: var(--silver-dim);
}
.hl-search-bar button {
  padding: 9px 12px;
  color: var(--silver);
  font-size: 13px;
  background: none;
  border: none;
  cursor: pointer;
}
.hl-search-bar button:hover {
  color: var(--white);
}

.hl-icon-btn {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius);
  color: var(--silver);
  font-size: 16px;
  transition: var(--transition);
  position: relative;
}
.hl-icon-btn:hover {
  color: var(--white);
  background: var(--dark-3);
}
.hl-cart-count {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 16px;
  height: 16px;
  background: var(--white);
  color: var(--black);
  font-size: 9px;
  font-weight: 700;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ───────────────── SHOP LAYOUT ───────────────── */

.hl-products {
  padding: 80px 0;
  background: var(--dark-2);
}

.hl-prod-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

/* Product cards */
.hl-prod-card {
  background: var(--dark-3);
  border: 1px solid var(--dark-4);
  border-radius: 8px;
  overflow: hidden;
  transition: var(--transition);
  position: relative;
}
.hl-prod-card:hover {
  border-color: var(--silver-dim);
  transform: translateY(-4px);
  box-shadow: 0 12px 36px rgba(0,0,0,0.5);
}
.hl-prod-img {
  aspect-ratio: 1;
  background: var(--dark-2);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 60px;
  color: var(--dark-4);
  position: relative;
  overflow: hidden;
}
.hl-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  font-family: var(--font-head);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 3px 10px;
  border-radius: 3px;
}
.hl-badge-new {
  background: var(--white);
  color: var(--black);
}
.hl-badge-sale {
  background: #c0392b;
  color: var(--white);
}
.hl-badge-hot {
  background: var(--dark-4);
  color: var(--silver-light);
  border: 1px solid var(--silver-dim);
}

.hl-prod-actions {
  position: absolute;
  top: 12px;
  right: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  opacity: 0;
  transform: translateX(8px);
  transition: var(--transition);
}
.hl-prod-card:hover .hl-prod-actions {
  opacity: 1;
  transform: translateX(0);
}
.hl-action-btn {
  width: 32px;
  height: 32px;
  background: rgba(0,0,0,0.7);
  border: 1px solid var(--dark-4);
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--silver-light);
  font-size: 13px;
  transition: var(--transition);
  cursor: pointer;
}
.hl-action-btn:hover {
  background: var(--white);
  color: var(--black);
}

.hl-prod-info {
  padding: 12px 14px;
}
.hl-prod-brand {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--silver-dim);
  margin-bottom: 4px;
}
.hl-prod-name {
  font-family: var(--font-head);
  font-size: 18px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 8px;
  line-height: 1.3;
}
.hl-prod-rating {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 6px;
}
.hl-stars {
  color: #f0c040;
  font-size: 11px;
}
.hl-rating-count {
  font-size: 11px;
  color: var(--silver-dim);
}
.hl-prod-price {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  flex-wrap: wrap;
}
.hl-price {
  font-family: var(--font-head);
  font-size: 20px;
  font-weight: 700;
  color: var(--white);
}
.hl-price-old {
  font-size: 13px;
  color: var(--silver-dim);
  text-decoration: line-through;
}
.hl-price-save {
  font-size: 11px;
  color: #6bcb77;
  font-weight: 500;
}
.hl-atc {
  width: 100%;
  background: var(--dark-4);
  color: var(--silver-light);
  font-family: var(--font-head);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 11px;
  border-radius: var(--radius);
  transition: var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: none;
  cursor: pointer;
}
.hl-atc:hover {
  background: var(--white);
  color: var(--black);
}

/* Force header icons to be visible against dark header */
.hl-header .hl-icon-btn i {
  color: var(--silver-light) !important;
}

/* Hover state */
.hl-header .hl-icon-btn:hover i {
  color: var(--white) !important;
}

/* FOOTER */
.hl-footer { background: var(--dark-2); border-top: 1px solid var(--dark-4); }
.hl-footer-main { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 48px; padding: 64px 0 48px; }
.hl-footer-brand p { font-size: 13.5px; color: var(--silver); line-height: 1.75; margin: 18px 0 24px; max-width: 280px; }
.hl-social-links { display: flex; gap: 10px; }
.hl-social-btn { width: 36px; height: 36px; border: 1px solid var(--dark-4); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; color: var(--silver); font-size: 14px; transition: var(--transition); }
.hl-social-btn:hover { border-color: var(--white); color: var(--white); background: var(--dark-4); }
.hl-footer-col-title { font-family: var(--font-head); font-size: 14px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--white); margin-bottom: 18px; font-style: normal;}
.hl-footer-links { display: flex; flex-direction: column; gap: 10px; list-style: none; margin: 0; padding-left: 0;}
.hl-footer-links a { font-size: 13.5px; color: var(--silver) !important; transition: var(--transition); display: inline-block; padding-left: 0; font-style: normal;}
.hl-footer-links a:hover { color: var(--white) !important; padding-left: 4px; }
.hl-contact-item { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; color: var(--silver); margin-bottom: 12px; }
.hl-contact-item i { color: var(--silver-light); margin-top: 2px; }
.hl-footer-bottom { border-top: 1px solid var(--dark-4); padding: 20px 0; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.hl-footer-bottom p { font-size: 12px; color: var(--silver-dim); }
.hl-payment-icons { display: flex; gap: 8px; }
.hl-payment-icon { width: 38px; height: 24px; background: var(--dark-3); border: 1px solid var(--dark-4); border-radius: 3px; display: flex; align-items: center; justify-content: center; font-size: 9px; color: var(--silver-dim); font-weight: 600; }

/* SCROLL TOP */
.hl-scroll-top { position: fixed; bottom: 28px; right: 28px; width: 44px; height: 44px; background: var(--white); color: var(--black); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-size: 16px; cursor: pointer; z-index: 9999; opacity: 0; transform: translateY(12px); transition: var(--transition); box-shadow: 0 4px 16px rgba(0,0,0,0.4); border: none; }
.hl-scroll-top.hl-visible { opacity: 1; transform: translateY(0); }

/* RESPONSIVE */
@media (max-width: 1100px) {
  .hl-prod-grid { grid-template-columns: repeat(3,1fr); }
  .hl-why-grid { grid-template-columns: repeat(2,1fr); }
  .hl-arrivals-layout { grid-template-columns: 1fr; }
  .hl-arrivals-list { grid-template-columns: repeat(4,1fr); }
  .hl-footer-main { grid-template-columns: 1fr 1fr; gap: 32px; }
}
@media (max-width: 768px) {
  .hl-nav { display: none; }
  .hl-search-bar { display: none; }
  .hl-hero { height: 480px; }
  .hl-slide-content { padding: 0 24px; }
  .hl-slider-controls { left: 24px; }
  .hl-slider-arrows { display: none; }
  .hl-cat-grid { grid-template-columns: repeat(2,1fr); }
  .hl-prod-grid { grid-template-columns: repeat(2,1fr); }
  .hl-why-grid { grid-template-columns: 1fr; }
  .hl-reviews-grid { grid-template-columns: 1fr; }
  .hl-newsletter-inner { flex-direction: column; }
  .hl-newsletter-form { max-width:100%; width:100%; }
  .hl-footer-main { grid-template-columns: 1fr; }
  .hl-trust-inner { flex-wrap: wrap; }
  .hl-trust-item { flex: 0 0 50%; border-bottom: 1px solid var(--dark-4); }
}

/* Override default WooCommerce product list so our grid takes over */
ul.products,
ul.products li.product {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.products {
  display: block;
}

ul.products li.product {
  width: auto;
  float: none;
}

/* Make WooCommerce product images behave inside our card */
.hl-prod-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* Ensure product names use the same white styling as home Featured Products */
.hl-prod-name a {
  color: var(--white);
  text-decoration: none;
}

.hl-prod-name a:hover {
  color: var(--silver-light);
}

/* Make shop/archive product grid use full container width */
.hl-shop-archive .hl-container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 24px;
}

/* Ensure grid still uses 4 equal columns on desktop */
.hl-shop-archive .hl-prod-grid {
  grid-template-columns: repeat(4, 1fr);
  margin-bottom: 32px;
}

/* Shop/archive toolbar (result count + sorting) layout */
.hl-shop-archive .hl-section-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  margin-bottom: 40px;
}

/* Ensure the WooCommerce result count + ordering wrap nicely */
/* Products-per-page control: align with Default sorting */
.hl-shop-archive .woocommerce-result-count,
.hl-shop-archive .woocommerce-ordering,
.hl-shop-archive .hl-perpage {
  margin-bottom: 0;
}

.hl-shop-archive .woocommerce-ordering select {
  background: var(--dark-3);
  border: 1px solid var(--dark-4);
  color: var(--white);
  padding: 6px 10px;
  font-size: 13px;
}

/* Make cards equal-height and pin Add to Cart to bottom */
.hl-prod-card {
  display: flex;
  flex-direction: column;
}

.hl-prod-info {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.hl-atc {
  margin-top: auto;
}

/* Normalize card alignment inside the grid */
.hl-prod-grid {
  align-items: stretch;
}

/* Remove any extra bottom margin on the last card's info area */
.hl-prod-card:last-child .hl-prod-info {
  margin-bottom: 0;
}

/* Make sure no extra bottom margin is added around the card as a whole */
.hl-prod-card {
  margin-bottom: 0;
}

.hl-prod-sku {
  font-size: 12px;
  font-weight: 500;
  color: var(--white-soft);
  margin-bottom: 0;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.hl-shop-archive .hl-perpage {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-right: 12px;
  font-size: 13px;
  color: var(--silver-light);
}

.hl-shop-archive .hl-perpage label {
  margin-right: 8px;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-family: var(--font-head);
  color: var(--white);
}

.hl-shop-archive .hl-perpage select {
  background: var(--dark-3);
  border: 1px solid var(--dark-4);
  color: var(--white);
  padding: 6px 10px;
  border-radius: var(--radius);
  font-size: 13px;
}

/* Force footer logo size */
.hl-footer .hl-footer-brand img {
  height: 100px !important;
  width: auto !important;
  display: block;
}

.hl-price-guest {
  font-family: var(--font-body);
  font-size: 13px;
  color: var(--silver);
}
