/*
Theme Name:  HaridwarStore
Theme URI:   https://haridwarstore.com
Author:      HaridwarStore
Author URI:  https://haridwarstore.com
Description: Premium Indian clothing e-commerce theme for WooCommerce. Elegant black & white design with gold accents, inspired by the HaridwarStore logo. Includes Homepage, Shop, Product, Contact, Returns, Terms, Blog, and About pages.
Version:     3.2.0
Requires at least: 6.2
Tested up to: 6.5
Requires PHP: 8.0
WC requires at least: 7.0
License:     GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: haridwarstore
Tags:        e-commerce, woocommerce, clothing, indian, custom-logo, custom-menu, featured-images, full-width-template
*/

/* ═══════════════════════════════════════════════
   CSS CUSTOM PROPERTIES — BLACK/WHITE/GOLD THEME
═══════════════════════════════════════════════ */
:root {
  /* Core palette — inspired by HS logo */
  --black:      #0A0A0A;
  --black-soft: #111111;
  --black-mid:  #1C1C1C;
  --charcoal:   #2A2A2A;
  --dark-gray:  #3D3D3D;
  --mid-gray:   #6B6B6B;
  --light-gray: #A8A8A8;
  --silver:     #D4D4D4;
  --off-white:  #F5F5F5;
  --white:      #FFFFFF;

  /* Gold accents */
  --gold:       #C9A84C;
  --gold-light: #E8C97A;
  --gold-dark:  #A8872E;
  --gold-pale:  #F7EFD8;

  /* Sacred Indian accents */
  --saffron:      #FF7722;
  --saffron-light:#FF9944;
  --saffron-pale: #FFF0E6;
  --sacred-red:   #8B1A1A;
  --turmeric:     #D4A017;

  /* Semantic */
  --primary:    var(--black);
  --accent:     var(--gold);
  --bg:         var(--white);
  --bg-alt:     var(--off-white);
  --text:       var(--black);
  --text-muted: var(--mid-gray);
  --border:     rgba(0,0,0,0.10);
  --border-gold:rgba(201,168,76,0.30);

  /* Shadows */
  --sh-sm:  0 2px 12px rgba(0,0,0,0.07);
  --sh-md:  0 8px 32px  rgba(0,0,0,0.12);
  --sh-lg:  0 20px 56px rgba(0,0,0,0.16);
  --sh-gold:0 8px 32px  rgba(201,168,76,0.20);

  /* Radius */
  --r-xs: 4px;
  --r-sm: 8px;
  --r-md: 14px;
  --r-lg: 20px;
  --r-xl: 28px;

  /* Typography */
  --font-body:    'Cormorant Garamond', 'Georgia', serif;
  --font-sans:    'Nunito', sans-serif;
  --font-display: 'Cormorant Garamond', 'Georgia', serif;

  /* Motion */
  --tr: 0.25s ease;
}

/* ═══════════════════════════════════════════════
   RESET & BASE
═══════════════════════════════════════════════ */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html  { scroll-behavior:smooth; font-size:16px; }
body  {
  font-family: var(--font-sans);
  background:  var(--bg);
  color:       var(--text);
  line-height: 1.6;
  overflow-x:  hidden;
}
img   { max-width:100%; height:auto; display:block; }
a     { color:var(--gold); text-decoration:none; transition:color var(--tr); }
a:hover { color:var(--gold-dark); }

h1,h2,h3,h4,h5,h6 {
  font-family: var(--font-display);
  color: var(--black);
  line-height: 1.15;
  letter-spacing: 0.02em;
}
p { margin-bottom:1em; color:var(--text); font-family:var(--font-sans); }

/* ═══════════════════════════════════════════════
   LAYOUT
═══════════════════════════════════════════════ */
.hs-container    { max-width:1200px; margin:0 auto; padding:0 32px; }
.hs-container-sm { max-width:800px;  margin:0 auto; padding:0 32px; }
.hs-section      { padding:88px 0; }
.hs-section-sm   { padding:56px 0; }
.text-center     { text-align:center; }

/* ═══════════════════════════════════════════════
   TYPOGRAPHY HELPERS
═══════════════════════════════════════════════ */
.hs-label {
  display:block;
  font-family: var(--font-sans);
  font-size:.68rem; font-weight:700;
  color:var(--gold); letter-spacing:3px; text-transform:uppercase;
  margin-bottom:8px;
}
.hs-title {
  font-size:clamp(1.9rem,3vw,2.8rem);
  font-weight:700; color:var(--black); margin-bottom:40px;
  font-family: var(--font-display);
}
.hs-title span,
.hs-title em { color:var(--gold); font-style:normal; }

/* Gold divider */
.hs-divider {
  width:48px; height:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold-light));
  margin:16px auto 0; border-radius:2px;
}

/* ═══════════════════════════════════════════════
   BUTTONS
═══════════════════════════════════════════════ */
.btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  display:inline-flex; align-items:center; justify-content:center; gap:7px;
  padding:13px 30px; border-radius:var(--r-xs);
  font-family:var(--font-sans);
  font-size:.82rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  border:2px solid transparent; cursor:pointer;
  transition:all var(--tr); line-height:1;
}
/* Primary — Black fill */
.btn-primary,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce #respond input#submit,
.woocommerce #payment #place_order {
  background:var(--black) !important;
  color:var(--white)      !important;
  border-color:var(--black) !important;
}
.btn-primary:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
  background:var(--charcoal) !important;
  border-color:var(--charcoal) !important;
  color:var(--white) !important;
  transform:translateY(-1px);
  box-shadow:var(--sh-md);
}
/* Gold fill */
.btn-gold {
  background:var(--gold); color:var(--black);
  border-color:var(--gold);
  box-shadow:var(--sh-gold);
}
.btn-gold:hover {
  background:var(--gold-dark); border-color:var(--gold-dark);
  color:var(--black); transform:translateY(-1px);
}
/* Outline black */
.btn-outline {
  background:transparent;
  border-color:var(--black); color:var(--black);
}
.btn-outline:hover { background:var(--black); color:var(--white); }
/* Outline gold */
.btn-outline-gold {
  background:transparent;
  border-color:var(--gold); color:var(--gold);
}
.btn-outline-gold:hover { background:var(--gold); color:var(--black); }
/* White fill */
.btn-white {
  background:var(--white); color:var(--black);
  border-color:var(--white);
  box-shadow:var(--sh-md);
}
.btn-white:hover { background:var(--off-white); transform:translateY(-1px); }

.btn-sm  { padding:9px 18px;  font-size:.75rem; letter-spacing:1px; }
.btn-lg  { padding:15px 36px; font-size:.86rem; }

/* ═══════════════════════════════════════════════
   BADGE
═══════════════════════════════════════════════ */
.hs-badge {
  display:inline-block; padding:4px 11px; border-radius:var(--r-xs);
  font-size:.6rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  font-family:var(--font-sans);
}
.hs-badge-black { background:var(--black);   color:var(--white); }
.hs-badge-gold  { background:var(--gold);    color:var(--black); }
.hs-badge-white { background:var(--white);   color:var(--black); border:1px solid var(--border); }
.hs-badge-sale  { background:var(--black);   color:var(--gold);  border:1px solid var(--gold); }

/* ═══════════════════════════════════════════════
   TOPBAR
═══════════════════════════════════════════════ */
.hs-topbar {
  background:var(--saffron);
  color:rgba(255,255,255,0.92);
  font-size:.7rem; font-family:var(--font-sans);
  letter-spacing:1px; text-transform:uppercase; padding:9px 0;
}
.hs-topbar .hs-container { display:flex; align-items:center; justify-content:space-between; }
.hs-topbar-left span, .hs-topbar-right { color:rgba(255,255,255,0.92); }
.hs-topbar-left  { display:flex; gap:24px; }
.hs-topbar-right { display:flex; gap:18px; }
.hs-topbar a { color:rgba(255,255,255,0.85); transition:color var(--tr); }
.hs-topbar a:hover { color:var(--white); text-decoration:underline; }
.hs-topbar-divider { color:rgba(255,255,255,0.35); }

/* ═══════════════════════════════════════════════
   HEADER
═══════════════════════════════════════════════ */
.hs-header {
  position:sticky; top:0; z-index:200;
  background:rgba(255,255,255,0.97);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border);
  transition:box-shadow var(--tr), border-color var(--tr);
}
.hs-header.scrolled {
  box-shadow:0 4px 28px rgba(0,0,0,0.12);
  border-bottom-color:rgba(201,168,76,0.5);
}
.hs-header-inner {
  display:flex; align-items:center; justify-content:space-between;
  height:80px;
}

/* Logo */
.hs-logo {
  display:flex; align-items:center; gap:14px;
  text-decoration:none;
}
.hs-logo-img {
  height:52px; width:52px; border-radius:50%;
  object-fit:cover;
  border:2px solid var(--gold);
  box-shadow:0 0 0 3px rgba(201,168,76,0.12);
  transition:transform var(--tr), box-shadow var(--tr);
  flex-shrink:0;
}
.hs-logo:hover .hs-logo-img {
  box-shadow:0 0 0 4px rgba(201,168,76,0.25);
}

.hs-logo-text-wrap { display:flex; flex-direction:column; }
.hs-logo-name {
  font-family:var(--font-display);
  font-size:1.25rem; font-weight:700;
  color:var(--black); letter-spacing:2px;
  text-transform:uppercase; line-height:1.1;
}
.hs-logo-name span { color:var(--gold); }
.hs-logo-tagline {
  font-family:var(--font-sans);
  font-size:.56rem; color:var(--mid-gray);
  letter-spacing:2px; text-transform:uppercase; margin-top:2px;
}
/* Fallback logo icon */
.hs-logo-icon-fallback {
  width:52px; height:52px; border-radius:50%;
  background:var(--black);
  display:flex; align-items:center; justify-content:center;
  border:2px solid var(--gold);
  box-shadow:0 0 0 3px rgba(201,168,76,0.12);
  flex-shrink:0;
}
.hs-logo-icon-fallback span {
  font-family:var(--font-display);
  font-size:1.1rem; font-weight:700; color:var(--white);
  letter-spacing:0;
}

/* Primary nav */
.hs-nav { display:flex; align-items:center; }
.hs-nav ul { list-style:none; padding:0; margin:0; display:flex; gap:4px; }
.hs-nav ul li { position:relative; }
.hs-nav ul li a {
  display:block; padding:8px 14px; border-radius:var(--r-xs);
  font-family:var(--font-sans);
  font-size:.72rem; font-weight:700; color:var(--dark-gray);
  text-transform:uppercase; letter-spacing:1.5px;
  transition:color var(--tr), background var(--tr);
}
.hs-nav ul li a:hover,
.hs-nav ul li.current-menu-item>a,
.hs-nav ul li.current-page-ancestor>a {
  color:var(--black); background:var(--off-white);
}
/* Active underline */
.hs-nav ul li.current-menu-item>a::after,
.hs-nav ul li.current-page-ancestor>a::after {
  content:''; display:block;
  height:2px; background:var(--gold); border-radius:1px;
  margin-top:2px;
}
/* Dropdown */
.hs-nav ul ul {
  position:absolute; top:calc(100%+6px); left:0;
  background:var(--white); border:1px solid var(--border);
  border-top:2px solid var(--gold);
  border-radius:0 0 var(--r-sm) var(--r-sm);
  box-shadow:var(--sh-lg); min-width:200px;
  padding:8px; opacity:0; visibility:hidden;
  pointer-events:none; transform:translateY(8px);
  transition:all .22s ease; z-index:300;
  display:flex; flex-direction:column; gap:2px;
}
.hs-nav ul li:hover>ul { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); }
.hs-nav ul ul li a {
  padding:9px 14px; font-size:.7rem; color:var(--dark-gray);
  letter-spacing:1px; border-radius:var(--r-xs);
}
.hs-nav ul ul li a:hover { color:var(--gold); background:var(--gold-pale); }

/* Header actions */
.hs-header-actions { display:flex; gap:4px; align-items:center; }
.hs-hbtn {
  width:40px; height:40px; background:transparent; border:none;
  border-radius:var(--r-xs); cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  color:var(--black); transition:color var(--tr),background var(--tr);
  position:relative;
}
.hs-hbtn:hover { color:var(--gold); background:var(--off-white); }
.hs-hbtn svg { display:block; }
.hs-cart-count {
  position:absolute; top:4px; right:4px;
  width:16px; height:16px;
  background:var(--gold); color:var(--black);
  font-size:.52rem; font-weight:800; font-family:var(--font-sans);
  border-radius:50%; display:flex; align-items:center; justify-content:center;
}
.hs-menu-toggle { display:none; flex-direction:column; gap:5px; padding:5px; }
.hs-menu-toggle span { display:block; width:22px; height:2px; background:var(--black); border-radius:1px; transition:all .3s; }
/* Hamburger → X */
.hs-menu-toggle.open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.hs-menu-toggle.open span:nth-child(2) { opacity:0; }
.hs-menu-toggle.open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* Search bar */
.hs-search-bar {
  border-top:1px solid var(--border);
  background:var(--off-white); padding:14px 0;
  animation:slideDown .2s ease;
}
@keyframes slideDown { from{opacity:0;transform:translateY(-8px)} to{opacity:1;transform:translateY(0)} }
.hs-search-bar .search-form {
  display:flex; max-width:560px; margin:0 auto;
}
.hs-search-bar .search-field {
  flex:1; border:1px solid var(--border); border-right:none;
  border-radius:var(--r-xs) 0 0 var(--r-xs); padding:11px 18px;
  font-size:.85rem; outline:none; background:var(--white);
  font-family:var(--font-sans); letter-spacing:.3px;
}
.hs-search-bar .search-field:focus { border-color:var(--gold); }
.hs-search-bar .search-submit {
  background:var(--black); color:var(--white); border:none;
  padding:11px 22px; border-radius:0 var(--r-xs) var(--r-xs) 0;
  cursor:pointer; font-weight:700; font-size:.75rem;
  font-family:var(--font-sans); letter-spacing:1.5px; text-transform:uppercase;
  transition:background var(--tr);
}
.hs-search-bar .search-submit:hover { background:var(--gold); color:var(--black); }

/* Mobile nav */
.hs-mobile-nav {
  display:none; position:fixed; inset:0; z-index:500;
  background:rgba(0,0,0,0.65); backdrop-filter:blur(4px);
}
.hs-mobile-nav-panel {
  position:absolute; top:0; left:0; bottom:0;
  width:min(320px,85vw); background:var(--white);
  padding:28px 24px; overflow-y:auto;
  transform:translateX(-100%); transition:transform .3s ease;
  display:flex; flex-direction:column;
  border-right:3px solid var(--gold);
}
.hs-mobile-nav.open { display:block; }
.hs-mobile-nav.open .hs-mobile-nav-panel { transform:translateX(0); }
.hs-mobile-nav-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }
.hs-mobile-tagline { font-size:.6rem; color:var(--light-gray); letter-spacing:2px; text-transform:uppercase; margin-bottom:20px; padding-bottom:16px; border-bottom:1px solid var(--border); }
.hs-mobile-close { background:none; border:none; font-size:1.3rem; cursor:pointer; color:var(--black); width:32px; height:32px; display:flex; align-items:center; justify-content:center; border-radius:var(--r-xs); }
.hs-mobile-close:hover { background:var(--off-white); }
.hs-mobile-nav ul { list-style:none; padding:0; }
.hs-mobile-nav ul li a {
  display:block; padding:13px 0;
  font-family:var(--font-sans); font-size:.78rem; font-weight:700;
  color:var(--dark-gray); border-bottom:1px solid var(--border);
  letter-spacing:1.5px; text-transform:uppercase;
  transition:color var(--tr);
}
.hs-mobile-nav ul li a:hover { color:var(--gold); padding-left:8px; }
.hs-mobile-nav-footer { margin-top:28px; }

/* ═══════════════════════════════════════════════
   PAGE HERO
═══════════════════════════════════════════════ */
.hs-page-hero {
  background:var(--black);
  padding:64px 0 52px; text-align:center;
  position:relative; overflow:hidden;
}
.hs-page-hero::after {
  content:''; position:absolute; bottom:0; left:50%; transform:translateX(-50%);
  width:100%; height:2px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
}
.hs-page-hero h1 { font-size:clamp(2rem,4vw,3.2rem); margin-bottom:12px; color:var(--white); }
.hs-page-hero h1 span { color:var(--gold); }
.hs-page-hero p { color:rgba(255,255,255,0.6); max-width:500px; margin:0 auto; font-size:.9rem; font-family:var(--font-sans); }
.hs-page-hero .hs-label { color:var(--gold); }

/* ═══════════════════════════════════════════════
   HERO SECTION
═══════════════════════════════════════════════ */
.hs-hero {
  background:var(--black);
  min-height:90vh; display:flex; align-items:center;
  position:relative; overflow:hidden; padding:80px 0 60px;
}
/* Subtle grain overlay */
.hs-hero::before {
  content:''; position:absolute; inset:0;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
  pointer-events:none; z-index:0;
}
/* Gold circle glow */
.hs-hero-glow {
  position:absolute; right:-5%; top:50%; transform:translateY(-50%);
  width:50vw; max-width:680px; aspect-ratio:1;
  background:radial-gradient(circle,rgba(201,168,76,0.10) 0%,rgba(201,168,76,0.04) 50%,transparent 70%);
  border-radius:50%; pointer-events:none; z-index:0;
}
.hs-hero-grid {
  display:grid; grid-template-columns:1fr 320px;
  gap:60px; align-items:center; position:relative; z-index:1;
}

/* Hero badge */
.hs-hero-badge {
  display:inline-flex; align-items:center; gap:8px;
  background:transparent; border:1px solid rgba(201,168,76,0.4);
  padding:6px 16px; border-radius:var(--r-xs);
  font-size:.62rem; font-weight:700; font-family:var(--font-sans);
  color:var(--gold); text-transform:uppercase; letter-spacing:2px;
  margin-bottom:24px;
}
.hs-hero-badge-dot { width:5px; height:5px; background:var(--gold); border-radius:50%; animation:blink 1.8s ease-in-out infinite; }
@keyframes blink { 0%,100%{opacity:1}50%{opacity:.2} }

/* Hero heading */
.hs-hero h1 {
  font-family:var(--font-display);
  font-size:clamp(2.8rem,5vw,5rem);
  line-height:1.04; margin-bottom:20px; color:var(--white);
}
.hs-hero h1 em {
  font-style:normal; color:var(--gold);
  position:relative; display:inline-block;
}

.hs-hero-sub {
  font-size:.96rem; color:rgba(255,255,255,0.55);
  max-width:420px; margin-bottom:36px; line-height:1.8;
  font-family:var(--font-sans);
}
.hs-hero-actions { display:flex; gap:14px; flex-wrap:wrap; margin-bottom:48px; }

/* Hero stats */
.hs-hero-stats {
  display:flex; gap:36px; padding-top:36px;
  border-top:1px solid rgba(255,255,255,0.10);
}
.hs-stat-num   { display:block; font-family:var(--font-display); font-size:1.9rem; color:var(--gold); font-weight:700; }
.hs-stat-label { font-size:.62rem; color:rgba(255,255,255,0.45); text-transform:uppercase; letter-spacing:1.5px; font-family:var(--font-sans); }

/* Hero product card */
.hs-hero-card {
  background:var(--white); border-radius:var(--r-xl);
  overflow:hidden; position:relative;
  box-shadow:0 30px 80px rgba(0,0,0,0.5);
  border:1px solid rgba(201,168,76,0.3);
}
.hs-hero-card-img {
  height:300px;
  background:linear-gradient(160deg,#F5F5F5,#E8E8E8);
  display:flex; align-items:center; justify-content:center;
  font-size:9rem; position:relative; overflow:hidden;
}
.hs-hero-card-img img { width:100%; height:100%; object-fit:cover; }
.hs-hero-emoji { animation:float 3s ease-in-out infinite; display:block; }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
.hs-hero-card-body { padding:20px 22px; background:var(--white); }
.hs-hero-card-body h4 {
  font-family:var(--font-display); font-size:1.05rem; color:var(--black); margin-bottom:4px;
}
.hs-hero-card-meta { font-size:.72rem; color:var(--mid-gray); margin-bottom:12px; font-family:var(--font-sans); letter-spacing:.5px; }
.hs-hero-card-footer { display:flex; align-items:center; justify-content:space-between; }
.hs-hero-price { font-family:var(--font-display); font-size:1.4rem; color:var(--black); font-weight:700; }

/* Float badges */
.hs-float-badge {
  position:absolute; background:var(--white);
  border-radius:var(--r-sm); padding:10px 14px;
  box-shadow:0 8px 28px rgba(0,0,0,0.2);
  display:flex; align-items:center; gap:9px;
  font-size:.74rem; font-weight:600; color:var(--black);
  border:1px solid rgba(201,168,76,0.3);
  font-family:var(--font-sans); z-index:2;
}
.hs-float-badge-icon { font-size:1.2rem; }
.hs-float-badge small { display:block; font-size:.6rem; color:var(--mid-gray); letter-spacing:.5px; text-transform:uppercase; }
.hs-float-badge strong { display:block; font-size:.8rem; color:var(--black); }
.hs-fb-1 { top:24px; left:-40px; animation:float 3.5s .3s ease-in-out infinite; }
.hs-fb-2 { bottom:60px; left:-52px; animation:float 3s .8s ease-in-out infinite; }

/* ═══════════════════════════════════════════════
   MARQUEE
═══════════════════════════════════════════════ */
.hs-marquee-wrap { background:var(--gold); padding:12px 0; overflow:hidden; }
.hs-marquee-track {
  display:flex; gap:44px; white-space:nowrap;
  width:max-content; animation:marquee 22s linear infinite;
}
@keyframes marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.hs-marquee-track span {
  color:var(--black); font-size:.72rem; font-weight:700;
  letter-spacing:2px; text-transform:uppercase; opacity:.9;
  font-family:var(--font-sans);
}
.hs-marquee-sep { color:rgba(0,0,0,0.3) !important; }

/* ═══════════════════════════════════════════════
   CATEGORY CARDS
═══════════════════════════════════════════════ */
.hs-cat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.hs-cat-card {
  border-radius:var(--r-lg); overflow:hidden;
  position:relative; aspect-ratio:.75; display:block;
  text-decoration:none; transition:transform .3s;
}
.hs-cat-card:hover { transform:translateY(-6px); }
.hs-cat-card:hover .hs-cat-thumb { transform:scale(1.06); }
.hs-cat-thumb {
  width:100%; height:100%;
  background:var(--off-white);
  display:flex; align-items:center; justify-content:center; font-size:5rem;
  object-fit:cover; transition:transform .4s ease;
}
.hs-cat-overlay {
  position:absolute; inset:0;
  background:linear-gradient(to top,rgba(0,0,0,0.80) 0%,rgba(0,0,0,0.15) 55%,transparent 100%);
}
/* Gold line on hover */
.hs-cat-card::after {
  content:''; position:absolute; bottom:0; left:0; right:0;
  height:3px; background:var(--gold);
  transform:scaleX(0); transition:transform .3s ease;
}
.hs-cat-card:hover::after { transform:scaleX(1); }
.hs-cat-info { position:absolute; bottom:0; left:0; right:0; padding:20px; }
.hs-cat-info h3 {
  font-family:var(--font-display); font-size:1.1rem;
  color:var(--white); margin-bottom:3px; letter-spacing:.5px;
}
.hs-cat-info span { font-size:.68rem; color:rgba(255,255,255,0.65); font-family:var(--font-sans); letter-spacing:1px; text-transform:uppercase; }
/* Category bg tones */
.hs-cat-bg-1 { background:linear-gradient(135deg,#E8E8E8,#D0D0D0); }
.hs-cat-bg-2 { background:linear-gradient(135deg,#F0F0F0,#DCDCDC); }
.hs-cat-bg-3 { background:linear-gradient(135deg,#F7EFD8,#EDD9A3); }
.hs-cat-bg-4 { background:linear-gradient(135deg,#EFEFEF,#E0E0E0); }

/* ═══════════════════════════════════════════════
   PRODUCT CARDS
═══════════════════════════════════════════════ */
.hs-products-bg { background:var(--off-white); }
/* ═══════════════════════════════════════════════
   PRODUCT GRID & CARDS
═══════════════════════════════════════════════ */
.hs-product-grid   { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.hs-product-grid-3 { grid-template-columns:repeat(3,1fr); }

.hs-product-card,
.woocommerce ul.products li.product {
  background:var(--white) !important;
  border-radius:var(--r-md) !important;
  overflow:hidden;
  border:1px solid var(--border) !important;
  transition:box-shadow .25s, transform .25s, border-color .25s;
  position:relative;
}
.hs-product-card:hover,
.woocommerce ul.products li.product:hover {
  box-shadow:var(--sh-md) !important;
  transform:translateY(-3px);
  border-color:var(--gold) !important;
}

/* Thumbnail */
.hs-product-thumb {
  height:220px; position:relative; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
}
.hs-product-thumb img {
  width:100%; height:100%; object-fit:cover;
  transition:transform .4s ease;
}
.hs-product-card:hover .hs-product-thumb img { transform:scale(1.05); }
.hs-product-thumb-fallback {
  width:100%; height:100%; display:flex; align-items:center;
  justify-content:center; font-size:4rem; text-decoration:none;
}

/* Badges */
.hs-product-badges {
  position:absolute; top:10px; left:10px;
  display:flex; flex-direction:column; gap:4px; z-index:2;
}
.hs-badge-sale {
  display:inline-block; background:var(--gold); color:var(--black);
  font-family:var(--font-sans); font-size:.62rem; font-weight:800;
  letter-spacing:.8px; padding:3px 9px; border-radius:3px; text-transform:uppercase;
}
.hs-badge-new {
  display:inline-block; background:var(--black); color:var(--white);
  font-family:var(--font-sans); font-size:.62rem; font-weight:800;
  letter-spacing:.8px; padding:3px 9px; border-radius:3px; text-transform:uppercase;
}

/* Hover overlay */
.hs-product-hover {
  position:absolute; inset:0;
  background:rgba(0,0,0,0.72);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:8px; padding:16px; opacity:0; transition:opacity .22s;
}
.hs-product-card:hover .hs-product-hover { opacity:1; }
.hs-product-hover .btn { width:100%; justify-content:center; }
.btn-ghost {
  background:transparent; border:1px solid rgba(255,255,255,0.35); color:var(--white);
  font-family:var(--font-sans); font-size:.72rem; font-weight:700;
  padding:8px 16px; border-radius:var(--r-xs); text-align:center;
  transition:all var(--tr); cursor:pointer; display:inline-flex; align-items:center; justify-content:center;
}
.btn-ghost:hover { background:rgba(255,255,255,0.12); border-color:rgba(255,255,255,0.6); }

/* Wishlist */
.hs-wishlist {
  position:absolute; top:10px; right:10px;
  width:30px; height:30px;
  background:var(--white); border:1px solid var(--border); border-radius:50%;
  font-size:.9rem; cursor:pointer; z-index:3;
  display:flex; align-items:center; justify-content:center;
  transition:all .2s; line-height:1; color:var(--mid-gray);
}
.hs-wishlist:hover { border-color:var(--gold); color:var(--gold); transform:scale(1.1); }

/* Card body */
.hs-product-body { padding:14px 16px; border-top:1px solid var(--border); }
.hs-product-cat {
  font-size:.6rem; color:var(--light-gray); margin-bottom:5px;
  font-family:var(--font-sans); letter-spacing:1px; text-transform:uppercase;
}
.hs-product-cat a { color:var(--light-gray); }

.hs-product-body h4,
.woocommerce ul.products li.product h2 {
  font-family:var(--font-display) !important;
  font-size:.95rem !important; color:var(--black) !important;
  margin-bottom:10px !important; letter-spacing:.2px !important;
  line-height:1.3 !important;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.hs-product-body h4 a { color:var(--black); }
.hs-product-body h4 a:hover { color:var(--gold); }

/* Footer row */
.hs-product-footer { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.hs-product-price-wrap { min-width:0; }
.hs-product-price,
.woocommerce ul.products li.product .price {
  font-family:var(--font-sans) !important;
  font-size:.92rem !important; color:var(--black) !important; font-weight:700 !important;
  line-height:1.2 !important;
}
.hs-product-price del,
.woocommerce ul.products li.product .price del {
  font-size:.74rem !important; color:var(--light-gray) !important;
  text-decoration:line-through !important; font-weight:400 !important;
}

/* Stars */
.hs-stars {
  font-size:.6rem; color:var(--gold); margin-top:3px;
  display:flex; align-items:center; gap:3px; letter-spacing:0;
}
.hs-star-count { font-family:var(--font-sans); color:var(--light-gray); font-size:.6rem; letter-spacing:0; }

/* Add to cart button */
.hs-add-btn {
  flex-shrink:0; width:30px; height:30px;
  background:var(--black); color:var(--white); border:none;
  border-radius:var(--r-xs); cursor:pointer; font-size:1rem;
  display:flex; align-items:center; justify-content:center;
  transition:background .2s, transform .2s; text-decoration:none; line-height:1;
}
.hs-add-btn:hover { background:var(--gold); color:var(--black); transform:scale(1.08); }

/* Thumb bg tones */
.hs-tb-1{background:linear-gradient(135deg,#F5F5F5,#E8E8E8)}
.hs-tb-2{background:linear-gradient(135deg,#F0F0F0,#DCDCDC)}
.hs-tb-3{background:linear-gradient(135deg,#F7EFD8,#EDDA9F)}
.hs-tb-4{background:linear-gradient(135deg,#EFEFEF,#E2E2E2)}
.hs-tb-5{background:linear-gradient(135deg,#F2F2F2,#E5E5E5)}
.hs-tb-6{background:linear-gradient(135deg,#F9F6EE,#EFE5C4)}
.hs-tb-7{background:linear-gradient(135deg,#F5F5F5,#EAEAEA)}
.hs-tb-8{background:linear-gradient(135deg,#F0EEE8,#E4DFCF)}

/* ═══════════════════════════════════════════════
   PROMO BANNER
═══════════════════════════════════════════════ */
.hs-promo {
  background:var(--black);
  border-radius:var(--r-xl); padding:64px 72px;
  display:flex; align-items:center; justify-content:space-between; gap:40px;
  position:relative; overflow:hidden;
  border:1px solid rgba(201,168,76,0.2);
}
.hs-promo::before {
  content:'HS'; position:absolute; right:56px; top:50%; transform:translateY(-50%);
  font-family:var(--font-display); font-size:14rem; font-weight:700; color:rgba(255,255,255,0.03);
  letter-spacing:-4px; pointer-events:none;
}
/* Gold border top */
.hs-promo::after {
  content:''; position:absolute; top:0; left:0; right:0;
  height:3px; background:linear-gradient(90deg,transparent,var(--gold),transparent);
}
.hs-promo h2 { font-size:clamp(1.7rem,2.8vw,2.6rem); color:var(--white); margin-bottom:10px; }
.hs-promo p  { color:rgba(255,255,255,0.6); max-width:400px; margin:0; font-family:var(--font-sans); font-size:.9rem; }
.hs-promo-cta { flex-shrink:0; position:relative; z-index:1; }

/* ═══════════════════════════════════════════════
   FEATURES GRID
═══════════════════════════════════════════════ */
.hs-features-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.hs-feature-card {
  background:var(--white); border-radius:var(--r-md); padding:32px 26px;
  text-align:center; border:1px solid var(--border);
  transition:box-shadow .3s,transform .3s,border-color .3s;
}
.hs-feature-card:hover {
  box-shadow:var(--sh-md); transform:translateY(-4px);
  border-color:var(--gold);
}
.hs-feature-icon { font-size:2rem; margin-bottom:14px; }
.hs-feature-card h4 { font-family:var(--font-display); font-size:1rem; color:var(--black); margin-bottom:8px; letter-spacing:.5px; }
.hs-feature-card p  { font-size:.8rem; color:var(--mid-gray); margin:0; line-height:1.65; font-family:var(--font-sans); }

/* ═══════════════════════════════════════════════
   TESTIMONIALS
═══════════════════════════════════════════════ */
.hs-testi-bg  { background:var(--black); }
.hs-testi-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.hs-testi-card {
  background:var(--black-mid); border-radius:var(--r-md); padding:26px;
  border:1px solid rgba(255,255,255,0.08);
  transition:border-color .3s, transform .3s;
}
.hs-testi-card:hover { border-color:var(--gold); transform:translateY(-3px); }
.hs-testi-stars { color:var(--gold); font-size:.88rem; margin-bottom:13px; }
.hs-testi-card blockquote {
  font-size:.86rem; color:rgba(255,255,255,0.65); line-height:1.8;
  margin-bottom:18px; font-style:italic; padding:0; border:none;
  font-family:var(--font-body);
}
.hs-testi-author { display:flex; align-items:center; gap:10px; }
.hs-testi-avatar {
  width:40px; height:40px; border-radius:50%; flex-shrink:0;
  background:var(--gold); display:flex; align-items:center; justify-content:center;
  font-family:var(--font-display); font-size:1.1rem; color:var(--black); font-weight:700;
}
.hs-testi-author h5 { font-size:.84rem; font-weight:700; color:var(--white); margin:0; font-family:var(--font-sans); }
.hs-testi-author span { font-size:.7rem; color:rgba(255,255,255,0.4); font-family:var(--font-sans); }

/* ═══════════════════════════════════════════════
   INSTAGRAM GRID
═══════════════════════════════════════════════ */
.hs-insta-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:8px; }
.hs-insta-cell {
  aspect-ratio:1; border-radius:var(--r-sm); overflow:hidden;
  background:var(--off-white);
  display:flex; align-items:center; justify-content:center; font-size:2.5rem;
  position:relative; text-decoration:none; transition:transform .3s;
}
.hs-insta-cell:hover { transform:scale(.96); }
.hs-insta-cell img { width:100%; height:100%; object-fit:cover; }
.hs-insta-hover {
  position:absolute; inset:0; background:rgba(0,0,0,0.8);
  display:flex; align-items:center; justify-content:center;
  opacity:0; transition:opacity .25s;
}
.hs-insta-cell:hover .hs-insta-hover { opacity:1; }
.hs-insta-hover span { color:var(--gold); font-size:.7rem; font-weight:700; font-family:var(--font-sans); letter-spacing:1.5px; text-transform:uppercase; }

/* ═══════════════════════════════════════════════
   SHOP — HERO
═══════════════════════════════════════════════ */
.hs-shop-hero {
  background:var(--off-white);
  border-bottom:1px solid var(--border);
  padding:28px 0 24px;
}
.hs-breadcrumb {
  display:flex; align-items:center; gap:6px;
  font-size:.72rem; color:var(--mid-gray); font-family:var(--font-sans);
  letter-spacing:.5px; margin-bottom:12px;
}
.hs-breadcrumb a { color:var(--mid-gray); }
.hs-breadcrumb a:hover { color:var(--gold); }
.hs-shop-hero-inner {
  display:flex; align-items:flex-end; justify-content:space-between; gap:20px;
}
.hs-shop-hero h1 {
  font-size:clamp(1.8rem,3vw,2.6rem); margin-bottom:6px;
}
.hs-shop-hero h1 span { color:var(--gold); }
.hs-shop-hero p {
  font-size:.85rem; color:var(--mid-gray); font-family:var(--font-sans); margin:0;
}
.hs-shop-count-badge {
  display:inline-block; background:var(--black); color:var(--white);
  font-family:var(--font-sans); font-size:.7rem; font-weight:700;
  letter-spacing:1px; padding:5px 14px; border-radius:99px;
  white-space:nowrap;
}

/* ═══════════════════════════════════════════════
   SHOP — CATEGORY PILL BAR
═══════════════════════════════════════════════ */
.hs-cat-pills-bar {
  background:var(--white);
  border-bottom:1px solid var(--border);
  padding:14px 0;
  position:sticky; top:80px; z-index:20;
}
.hs-cat-pills {
  display:flex; gap:8px; overflow-x:auto;
  scrollbar-width:none; -ms-overflow-style:none;
  padding-bottom:2px;
}
.hs-cat-pills::-webkit-scrollbar { display:none; }
.hs-cat-pill {
  display:inline-flex; align-items:center; gap:5px;
  padding:6px 14px; border-radius:99px;
  border:1px solid var(--border);
  font-family:var(--font-sans); font-size:.75rem; font-weight:700;
  color:var(--mid-gray); white-space:nowrap;
  transition:all var(--tr); text-decoration:none; background:var(--white);
}
.hs-cat-pill:hover { border-color:var(--gold); color:var(--black); }
.hs-cat-pill.active {
  background:var(--black); border-color:var(--black); color:var(--white);
}
.hs-cat-pill-count {
  background:rgba(255,255,255,0.15); color:inherit;
  font-size:.62rem; padding:1px 5px; border-radius:99px;
}
.hs-cat-pill:not(.active) .hs-cat-pill-count {
  background:var(--off-white); color:var(--mid-gray);
}

/* ═══════════════════════════════════════════════
   SHOP — LAYOUT
═══════════════════════════════════════════════ */
.hs-shop-section { padding-top:36px; }
.hs-shop-layout {
  display:grid;
  grid-template-columns:220px 1fr;
  gap:32px;
  align-items:start;
}
.hs-shop-main { min-width:0; }

/* ═══════════════════════════════════════════════
   SHOP — SIDEBAR
═══════════════════════════════════════════════ */
.hs-shop-sidebar {
  position:sticky; top:130px;
  display:flex; flex-direction:column; gap:12px;
}
.hs-filter-box {
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--r-md);
  padding:18px 20px;
}
.hs-filter-title {
  font-family:var(--font-sans);
  font-size:.68rem; font-weight:700; letter-spacing:1.2px;
  text-transform:uppercase; color:var(--mid-gray);
  margin-bottom:14px;
}

/* Search in sidebar */
.hs-search-wrap { position:relative; }
.hs-filter-input {
  width:100%; border:1px solid var(--border); border-radius:var(--r-xs);
  padding:9px 40px 9px 12px; font-size:.82rem; outline:none;
  background:var(--off-white); font-family:var(--font-sans);
  transition:border-color var(--tr), background var(--tr);
}
.hs-filter-input:focus { border-color:var(--gold); background:var(--white); box-shadow:0 0 0 3px rgba(201,168,76,0.08); }
.hs-search-btn {
  position:absolute; right:0; top:0; bottom:0;
  width:36px; background:var(--black); color:var(--white);
  border:none; border-radius:0 var(--r-xs) var(--r-xs) 0;
  cursor:pointer; font-size:1rem; transition:background var(--tr);
}
.hs-search-btn:hover { background:var(--gold); color:var(--black); }

/* Category list */
.hs-cat-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:2px; }
.hs-cat-link {
  display:flex; align-items:center; justify-content:space-between;
  padding:7px 10px; border-radius:var(--r-xs);
  font-family:var(--font-sans); font-size:.8rem; color:var(--mid-gray);
  text-decoration:none; transition:all var(--tr);
}
.hs-cat-link:hover { background:var(--off-white); color:var(--black); }
.hs-cat-link.active {
  background:var(--gold-pale); color:var(--black);
  font-weight:700; border-left:2px solid var(--gold);
  padding-left:8px;
}
.hs-cat-count {
  background:var(--off-white); color:var(--mid-gray);
  font-size:.62rem; padding:2px 7px; border-radius:99px;
  font-family:var(--font-sans);
}
.hs-cat-link.active .hs-cat-count { background:var(--gold); color:var(--black); }

/* Price list */
.hs-price-list { display:flex; flex-direction:column; gap:2px; }
.hs-price-link {
  display:flex; align-items:center; gap:8px;
  padding:7px 10px; border-radius:var(--r-xs);
  font-family:var(--font-sans); font-size:.8rem; color:var(--mid-gray);
  text-decoration:none; transition:all var(--tr);
}
.hs-price-link:hover { background:var(--off-white); color:var(--black); }
.hs-price-link.active { color:var(--black); font-weight:700; }
.hs-price-dot {
  width:8px; height:8px; border-radius:50%;
  border:2px solid var(--border); flex-shrink:0; transition:all var(--tr);
}
.hs-price-link.active .hs-price-dot { background:var(--gold); border-color:var(--gold); }

/* Size grid */
.hs-size-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:5px; }
.hs-size-btn {
  border:1px solid var(--border); background:var(--white); color:var(--mid-gray);
  border-radius:var(--r-xs); padding:7px 2px; font-size:.7rem; font-weight:700;
  cursor:pointer; text-align:center; transition:all var(--tr); font-family:var(--font-sans);
}
.hs-size-btn:hover { border-color:var(--black); color:var(--black); }
.hs-size-btn.active { border-color:var(--gold); background:var(--gold); color:var(--black); }

/* Clear button */
.hs-clear-btn {
  display:block; text-align:center; padding:9px;
  border:1px solid var(--border); border-radius:var(--r-xs);
  font-family:var(--font-sans); font-size:.75rem; color:var(--mid-gray);
  text-decoration:none; transition:all var(--tr);
}
.hs-clear-btn:hover { border-color:var(--black); color:var(--black); }

/* ═══════════════════════════════════════════════
   SHOP — TOOLBAR
═══════════════════════════════════════════════ */
.hs-shop-toolbar {
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom:20px; padding-bottom:16px;
  border-bottom:1px solid var(--border); gap:12px; flex-wrap:wrap;
}
.hs-result-count {
  font-size:.82rem; color:var(--mid-gray);
  font-family:var(--font-sans);
}
.hs-result-count strong { color:var(--black); font-weight:700; }
.hs-sort-form { display:flex; align-items:center; gap:8px; }
.hs-sort-label { font-size:.72rem; color:var(--mid-gray); font-family:var(--font-sans); letter-spacing:.5px; }
.hs-sort-select {
  border:1px solid var(--border); border-radius:var(--r-xs);
  padding:8px 12px; font-family:var(--font-sans); font-size:.78rem;
  outline:none; background:var(--white); cursor:pointer;
  transition:border-color var(--tr);
}
.hs-sort-select:focus { border-color:var(--gold); }

/* Active filter chips */
.hs-active-filters { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:18px; }
.hs-filter-chip {
  display:inline-flex; align-items:center; gap:4px;
  background:var(--off-white); border:1px solid var(--border);
  padding:4px 10px; border-radius:99px;
  font-family:var(--font-sans); font-size:.72rem; color:var(--dark-gray);
}
.hs-filter-chip a {
  color:var(--mid-gray); font-size:.9rem; line-height:1;
  text-decoration:none; margin-left:2px;
}
.hs-filter-chip a:hover { color:var(--black); }

/* ═══════════════════════════════════════════════
   SINGLE PRODUCT PAGE
═══════════════════════════════════════════════ */
.hs-breadcrumb {
  background:var(--off-white); padding:10px 0;
  font-size:.72rem; color:var(--mid-gray); border-bottom:1px solid var(--border);
  font-family:var(--font-sans); letter-spacing:.5px; text-transform:uppercase;
}
.hs-breadcrumb a { color:var(--mid-gray); }
.hs-breadcrumb a:hover { color:var(--gold); }
.hs-product-single { display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start; padding:52px 0 72px; }
.hs-gallery-main {
  border-radius:var(--r-xl); overflow:hidden;
  background:var(--off-white); height:460px;
  display:flex; align-items:center; justify-content:center;
  font-size:11rem; position:relative; margin-bottom:12px;
  border:1px solid var(--border);
}
.hs-gallery-main img { width:100%; height:100%; object-fit:cover; }
.hs-gallery-thumbs { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; }
.hs-gallery-thumb {
  border-radius:var(--r-sm); overflow:hidden; height:76px;
  display:flex; align-items:center; justify-content:center;
  background:var(--off-white); font-size:2rem; cursor:pointer;
  border:2px solid transparent; transition:border-color var(--tr);
}
.hs-gallery-thumb.active,.hs-gallery-thumb:hover { border-color:var(--gold); }
.hs-gallery-thumb img { width:100%; height:100%; object-fit:cover; }
/* Product info */
.hs-product-badges { display:flex; gap:7px; margin-bottom:14px; }
.hs-product-title { font-size:clamp(1.6rem,3vw,2.3rem); color:var(--black); margin-bottom:10px; line-height:1.2; }
.hs-product-rating { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.hs-rating-stars { color:var(--gold); font-size:1rem; letter-spacing:-1px; }
.hs-rating-count { font-size:.78rem; color:var(--mid-gray); font-family:var(--font-sans); }
.hs-in-stock { font-size:.78rem; color:#2d8a4e; font-weight:700; font-family:var(--font-sans); }
.hs-product-pricing { display:flex; align-items:baseline; gap:10px; margin-bottom:6px; }
.hs-price-main { font-family:var(--font-display); font-size:2.4rem; color:var(--black); font-weight:700; }
.hs-price-old { font-size:1rem; color:var(--light-gray); text-decoration:line-through; font-family:var(--font-sans); }
.hs-price-save { background:var(--gold); color:var(--black); font-size:.7rem; font-weight:700; padding:3px 9px; border-radius:var(--r-xs); font-family:var(--font-sans); letter-spacing:.5px; }
.hs-sold-count { font-size:.76rem; color:var(--mid-gray); font-family:var(--font-sans); margin-bottom:20px; }
.hs-color-label { font-size:.76rem; font-weight:700; color:var(--dark-gray); margin-bottom:10px; font-family:var(--font-sans); letter-spacing:1px; text-transform:uppercase; }
.hs-color-swatches { display:flex; gap:10px; margin-bottom:20px; }
.hs-color-swatch { width:30px; height:30px; border-radius:50%; cursor:pointer; border:3px solid transparent; outline:2px solid transparent; transition:all .2s; }
.hs-color-swatch.active { border-color:var(--white); outline-color:var(--gold); }
.hs-size-row { display:flex; justify-content:space-between; margin-bottom:10px; }
.hs-size-label { font-size:.76rem; font-weight:700; color:var(--dark-gray); font-family:var(--font-sans); letter-spacing:1px; text-transform:uppercase; }
.hs-size-guide { font-size:.74rem; color:var(--gold); font-weight:600; cursor:pointer; font-family:var(--font-sans); }
.hs-sizes { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:22px; }
.hs-size-pill {
  width:48px; height:48px; border:1px solid var(--border); background:var(--white);
  border-radius:var(--r-xs); font-weight:700; font-size:.82rem; color:var(--mid-gray);
  cursor:pointer; transition:all .2s; display:flex; align-items:center; justify-content:center;
  font-family:var(--font-sans);
}
.hs-size-pill:hover { border-color:var(--black); color:var(--black); }
.hs-size-pill.active { border-color:var(--black); background:var(--black); color:var(--white); }
.hs-qty-row { display:flex; gap:10px; align-items:center; margin-bottom:13px; }
.hs-qty { display:flex; align-items:center; border:1px solid var(--border); border-radius:var(--r-xs); overflow:hidden; }
.hs-qty-btn {
  width:40px; height:48px; border:none; background:var(--off-white);
  cursor:pointer; font-size:1.1rem; font-weight:700; color:var(--black);
  font-family:var(--font-sans); transition:background var(--tr);
}
.hs-qty-btn:hover { background:var(--gold); color:var(--black); }
.hs-qty-val { width:46px; text-align:center; font-size:.92rem; font-weight:700; line-height:48px; color:var(--black); font-family:var(--font-sans); }
.hs-product-cta { flex:1; }
.hs-product-buy { width:100%; margin-top:10px; }
.hs-trust-bar {
  display:grid; grid-template-columns:repeat(3,1fr); gap:10px;
  padding:16px; background:var(--off-white); border-radius:var(--r-md);
  border:1px solid var(--border); margin-top:20px; text-align:center;
}
.hs-trust-icon  { font-size:1.2rem; margin-bottom:5px; }
.hs-trust-label { font-size:.7rem; font-weight:700; color:var(--black); font-family:var(--font-sans); letter-spacing:.5px; text-transform:uppercase; }
.hs-trust-sub   { font-size:.63rem; color:var(--mid-gray); font-family:var(--font-sans); }
/* Product tabs */
.hs-product-tabs { margin:56px 0; }
.hs-tab-nav { display:flex; border-bottom:2px solid var(--border); margin-bottom:28px; }
.hs-tab-btn {
  padding:11px 22px; border:none; background:none; font-family:var(--font-sans);
  font-size:.74rem; font-weight:700; cursor:pointer; color:var(--light-gray);
  border-bottom:2px solid transparent; margin-bottom:-2px; transition:all .2s;
  text-transform:uppercase; letter-spacing:1px;
}
.hs-tab-btn.active,.hs-tab-btn:hover { color:var(--black); border-bottom-color:var(--gold); }
.hs-tab-panel { display:none; }
.hs-tab-panel.active { display:block; }
.hs-tab-panel p { font-size:.9rem; color:var(--mid-gray); line-height:1.85; margin-bottom:14px; font-family:var(--font-sans); }
.hs-features-list { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.hs-feature-item { display:flex; align-items:center; gap:10px; padding:11px 14px; background:var(--off-white); border-radius:var(--r-xs); font-size:.82rem; color:var(--black); font-family:var(--font-sans); }
.hs-care-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.hs-care-card { background:var(--white); border-radius:var(--r-md); padding:18px 14px; text-align:center; border:1px solid var(--border); }
.hs-care-icon { font-size:1.6rem; margin-bottom:8px; }
.hs-care-label { font-size:.78rem; font-weight:700; color:var(--black); font-family:var(--font-sans); letter-spacing:.5px; margin-bottom:3px; }
.hs-care-sub { font-size:.7rem; color:var(--mid-gray); font-family:var(--font-sans); }
/* Reviews */
.hs-reviews-summary { display:flex; gap:28px; align-items:center; padding:20px; background:var(--off-white); border-radius:var(--r-md); border:1px solid var(--border); margin-bottom:24px; }
.hs-review-score-num { font-family:var(--font-display); font-size:3.5rem; color:var(--black); font-weight:700; line-height:1; }
.hs-review-score-stars { color:var(--gold); font-size:1rem; margin:5px 0; }
.hs-review-score-count { font-size:.7rem; color:var(--mid-gray); font-family:var(--font-sans); }
.hs-review-bars { flex:1; }
.hs-review-bar-row { display:flex; align-items:center; gap:9px; margin-bottom:5px; }
.hs-review-bar-label { font-size:.7rem; color:var(--mid-gray); width:28px; font-family:var(--font-sans); }
.hs-review-bar-track { flex:1; height:6px; background:var(--border); border-radius:3px; overflow:hidden; }
.hs-review-bar-fill { height:100%; background:var(--gold); border-radius:3px; }
.hs-review-bar-num { font-size:.7rem; color:var(--mid-gray); width:20px; font-family:var(--font-sans); }
.hs-review-item { padding:18px 0; border-bottom:1px solid var(--border); }
.hs-review-meta { display:flex; justify-content:space-between; margin-bottom:8px; }
.hs-reviewer { display:flex; align-items:center; gap:10px; }
.hs-reviewer-avatar { width:34px; height:34px; border-radius:50%; background:var(--gold); display:flex; align-items:center; justify-content:center; color:var(--black); font-weight:700; font-size:.85rem; font-family:var(--font-sans); }
.hs-reviewer-name { font-size:.86rem; font-weight:700; color:var(--black); font-family:var(--font-sans); }
.hs-reviewer-loc { font-size:.7rem; color:var(--mid-gray); font-family:var(--font-sans); }
.hs-review-date { font-size:.7rem; color:var(--mid-gray); font-family:var(--font-sans); }
.hs-review-stars { color:var(--gold); font-size:.84rem; margin-bottom:5px; }
.hs-review-text { font-size:.84rem; color:var(--mid-gray); line-height:1.7; font-family:var(--font-sans); }

/* ═══════════════════════════════════════════════
   BLOG
═══════════════════════════════════════════════ */
.hs-blog-layout { display:grid; grid-template-columns:1fr 300px; gap:52px; align-items:start; }
.hs-blog-featured { background:var(--white); border-radius:var(--r-xl); overflow:hidden; margin-bottom:40px; border:1px solid var(--border); box-shadow:var(--sh-md); display:grid; grid-template-columns:1.2fr 1fr; }
.hs-blog-featured-thumb { overflow:hidden; min-height:300px; position:relative; }
.hs-blog-featured-thumb img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.hs-blog-featured:hover .hs-blog-featured-thumb img { transform:scale(1.04); }
.hs-blog-featured-lbl { position:absolute; top:16px; left:16px; background:var(--gold); color:var(--black); font-size:.62rem; font-weight:700; padding:4px 12px; border-radius:var(--r-xs); text-transform:uppercase; letter-spacing:1px; font-family:var(--font-sans); }
.hs-blog-featured-body { padding:36px 32px; display:flex; flex-direction:column; justify-content:center; }
.hs-blog-featured-title { font-size:1.5rem; margin-bottom:13px; line-height:1.25; }
.hs-blog-featured-title a { color:var(--black); }
.hs-blog-featured-title a:hover { color:var(--gold); }
.hs-blog-featured-excerpt { font-size:.85rem; color:var(--mid-gray); line-height:1.8; margin-bottom:22px; font-family:var(--font-sans); }
.hs-blog-featured-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.hs-blog-author-mini { display:flex; align-items:center; gap:8px; font-size:.76rem; color:var(--mid-gray); font-family:var(--font-sans); }
.hs-blog-avatar-mini { border-radius:50%; }
.hs-blog-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.hs-blog-card { background:var(--white); border-radius:var(--r-md); overflow:hidden; border:1px solid var(--border); transition:box-shadow .3s,transform .3s; }
.hs-blog-card:hover { box-shadow:var(--sh-lg); transform:translateY(-4px); border-color:var(--gold); }
.hs-blog-thumb { aspect-ratio:16/9; overflow:hidden; }
.hs-blog-thumb img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.hs-blog-card:hover .hs-blog-thumb img { transform:scale(1.05); }
.hs-blog-body { padding:22px; }
.hs-blog-cat { font-size:.62rem; color:var(--gold); text-transform:uppercase; font-weight:700; letter-spacing:1.5px; margin-bottom:9px; font-family:var(--font-sans); }
.hs-blog-title { font-size:.98rem; margin-bottom:9px; line-height:1.35; }
.hs-blog-title a { color:var(--black); }
.hs-blog-title a:hover { color:var(--gold); }
.hs-blog-excerpt { font-size:.8rem; color:var(--mid-gray); line-height:1.7; margin-bottom:14px; font-family:var(--font-sans); }
.hs-blog-footer { display:flex; align-items:center; justify-content:space-between; }
.hs-blog-meta { font-size:.7rem; color:var(--light-gray); font-family:var(--font-sans); }
.hs-blog-read { font-size:.72rem; font-weight:700; color:var(--gold); font-family:var(--font-sans); letter-spacing:1px; text-transform:uppercase; }
/* Pagination */
.hs-blog-pagination { display:flex; gap:7px; justify-content:center; margin-top:48px; flex-wrap:wrap; }
.hs-blog-pagination .page-numbers {
  display:inline-flex; align-items:center; justify-content:center;
  width:40px; height:40px; border-radius:var(--r-xs);
  border:1px solid var(--border); color:var(--mid-gray);
  font-size:.82rem; font-weight:700; transition:all .2s; font-family:var(--font-sans);
}
.hs-blog-pagination .page-numbers:hover,
.hs-blog-pagination .page-numbers.current { background:var(--black); color:var(--white); border-color:var(--black); }
.hs-blog-pagination .prev,.hs-blog-pagination .next { width:auto; padding:0 16px; }

/* ═══════════════════════════════════════════════
   SIDEBAR
═══════════════════════════════════════════════ */
.hs-sidebar { position:sticky; top:90px; display:flex; flex-direction:column; gap:22px; }
.hs-sidebar-widget { background:var(--white); border-radius:var(--r-md); padding:24px; border:1px solid var(--border); }
.hs-sidebar-title {
  font-family:var(--font-display); font-size:1rem; color:var(--black);
  margin-bottom:16px; padding-bottom:12px; border-bottom:1px solid var(--border);
  letter-spacing:.5px;
}
.hs-recent-list { list-style:none; padding:0; display:flex; flex-direction:column; gap:14px; }
.hs-recent-item { display:flex; gap:10px; align-items:flex-start; }
.hs-recent-thumb { flex-shrink:0; width:58px; height:58px; border-radius:var(--r-sm); overflow:hidden; }
.hs-recent-thumb img { width:100%; height:100%; object-fit:cover; }
.hs-recent-title { font-size:.82rem; font-weight:700; color:var(--black); display:block; line-height:1.35; margin-bottom:3px; font-family:var(--font-sans); }
.hs-recent-title:hover { color:var(--gold); }
.hs-recent-date { font-size:.7rem; color:var(--mid-gray); font-family:var(--font-sans); }
.hs-cat-list { list-style:none; padding:0; }
.hs-cat-list li { border-bottom:1px solid var(--border); }
.hs-cat-list li:last-child { border:none; }
.hs-cat-list li a { display:flex; justify-content:space-between; padding:9px 0; font-size:.8rem; color:var(--mid-gray); font-family:var(--font-sans); }
.hs-cat-list li a:hover { color:var(--gold); }
.hs-tag-cloud,.widget .tag-cloud-link {
  display:inline-block !important; background:var(--off-white) !important;
  border:1px solid var(--border) !important; color:var(--mid-gray) !important;
  padding:5px 11px !important; border-radius:var(--r-xs) !important;
  font-size:.7rem !important; margin:3px 2px !important;
  font-family:var(--font-sans) !important; letter-spacing:.5px !important;
  transition:all var(--tr) !important;
}
.hs-tag-cloud:hover,.widget .tag-cloud-link:hover { border-color:var(--gold) !important; color:var(--gold) !important; background:var(--gold-pale) !important; }
.hs-sidebar-nl { text-align:center; background:var(--black); }
.hs-sidebar-nl .hs-sidebar-title { color:var(--white); border-color:rgba(255,255,255,0.1); }
.hs-sidebar-nl-icon { font-size:1.8rem; margin-bottom:10px; }
.hs-sidebar-nl h3 { font-size:.96rem; color:var(--white); margin-bottom:6px; }
.hs-sidebar-nl p  { font-size:.78rem; color:rgba(255,255,255,0.5); margin-bottom:14px; font-family:var(--font-sans); }
.hs-sidebar-nl input { width:100%; border:1px solid rgba(255,255,255,0.15); border-radius:var(--r-xs); padding:10px 13px; font-size:.84rem; outline:none; font-family:var(--font-sans); background:rgba(255,255,255,0.08); color:var(--white); }
.hs-sidebar-nl input:focus { border-color:var(--gold); }
.hs-sidebar-nl input::placeholder { color:rgba(255,255,255,0.3); }
.hs-sidebar-nl button { width:100%; margin-top:9px; }

/* ═══════════════════════════════════════════════
   POST SINGLE
═══════════════════════════════════════════════ */
.hs-post-hero { position:relative; padding:60px 0 48px; background:var(--black); }
.hs-post-hero.has-thumb { min-height:440px; display:flex; align-items:flex-end; }
.hs-post-hero-bg { position:absolute; inset:0; overflow:hidden; }
.hs-post-hero-bg img { width:100%; height:100%; object-fit:cover; filter:brightness(.4) saturate(0.8); }
.hs-post-hero-overlay { position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,0.85) 0%,rgba(0,0,0,0.3) 60%,transparent 100%); }
.hs-post-hero-content { position:relative; z-index:2; max-width:800px; }
.hs-post-hero .hs-post-hero-content h1 { color:var(--white); }
.hs-post-cats { display:flex; gap:7px; margin-bottom:16px; }
.hs-post-cat { background:var(--gold); color:var(--black); font-size:.62rem; font-weight:700; padding:4px 11px; border-radius:var(--r-xs); text-transform:uppercase; letter-spacing:1px; font-family:var(--font-sans); }
.hs-post-title { font-size:clamp(1.9rem,3.5vw,3rem); margin-bottom:22px; line-height:1.2; }
.hs-post-meta { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.hs-author-row { display:flex; align-items:center; gap:9px; }
.hs-author-avatar { border-radius:50%; }
.hs-author-name { display:block; font-size:.86rem; font-weight:700; color:var(--white); font-family:var(--font-sans); }
.hs-author-name a { color:var(--white); }
.hs-author-name a:hover { color:var(--gold); }
.hs-post-date { font-size:.72rem; color:rgba(255,255,255,0.5); font-family:var(--font-sans); }
.hs-meta-right { display:flex; align-items:center; gap:14px; font-size:.76rem; color:rgba(255,255,255,0.5); font-family:var(--font-sans); }
.hs-post-layout { display:grid; grid-template-columns:1fr 300px; gap:52px; align-items:start; padding:60px 0 80px; }
.hs-post-intro { font-size:1rem; color:var(--mid-gray); line-height:1.85; border-left:3px solid var(--gold); padding:14px 20px; background:var(--off-white); border-radius:0 var(--r-sm) var(--r-sm) 0; margin-bottom:32px; font-family:var(--font-sans); }
.entry-content h2,.entry-content h3 { font-family:var(--font-display); color:var(--black); margin:34px 0 13px; }
.entry-content p   { font-size:.9rem; color:var(--dark-gray); line-height:1.9; margin-bottom:1.3em; font-family:var(--font-sans); }
.entry-content ul,.entry-content ol { font-size:.88rem; color:var(--mid-gray); margin-bottom:1.3em; font-family:var(--font-sans); }
.entry-content blockquote { border-left:3px solid var(--gold); background:var(--off-white); padding:16px 22px; margin:26px 0; border-radius:0 var(--r-md) var(--r-md) 0; font-style:italic; color:var(--dark-gray); font-family:var(--font-body); }
.entry-content img { border-radius:var(--r-md); margin:22px auto; box-shadow:var(--sh-md); }
.entry-content a { color:var(--gold); text-decoration:underline; }
.hs-post-tags { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin:32px 0; padding:20px; background:var(--off-white); border-radius:var(--r-md); border:1px solid var(--border); }
.hs-post-tags-lbl { font-size:.76rem; font-weight:700; color:var(--mid-gray); font-family:var(--font-sans); }
.hs-post-tag { background:var(--white); border:1px solid var(--border); color:var(--mid-gray); padding:4px 11px; border-radius:var(--r-xs); font-size:.74rem; font-family:var(--font-sans); transition:all var(--tr); }
.hs-post-tag:hover { border-color:var(--gold); color:var(--gold); }
.hs-share { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:28px 0; }
.hs-share-lbl { font-size:.76rem; font-weight:700; color:var(--mid-gray); font-family:var(--font-sans); letter-spacing:1px; text-transform:uppercase; }
.hs-share-btn { display:inline-flex; align-items:center; gap:5px; padding:8px 16px; border-radius:var(--r-xs); font-size:.74rem; font-weight:700; color:var(--white); font-family:var(--font-sans); letter-spacing:.5px; }
.hs-share-btn:hover { opacity:.86; transform:translateY(-1px); color:var(--white); }
.hs-share-fb{background:#1877F2} .hs-share-tw{background:#1DA1F2} .hs-share-wa{background:#25D366}
.hs-author-bio { display:flex; gap:18px; align-items:flex-start; background:var(--off-white); border-radius:var(--r-md); padding:26px; border:1px solid var(--border); margin:36px 0; }
.hs-author-bio-avatar { border-radius:50%; flex-shrink:0; }
.hs-author-bio-name { font-size:.98rem; margin-bottom:7px; }
.hs-author-bio-name a { color:var(--black); }
.hs-author-bio-name a:hover { color:var(--gold); }
.hs-author-bio-desc { font-size:.84rem; color:var(--mid-gray); margin-bottom:9px; font-family:var(--font-sans); }
.hs-author-bio-link { font-size:.78rem; color:var(--gold); font-weight:700; font-family:var(--font-sans); letter-spacing:.5px; text-transform:uppercase; }
.hs-post-nav { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:48px 0; }
.hs-post-nav-item { background:var(--white); border:1px solid var(--border); border-radius:var(--r-md); padding:20px 22px; display:flex; flex-direction:column; gap:5px; transition:box-shadow .2s,transform .2s,border-color .2s; }
.hs-post-nav-item:hover { box-shadow:var(--sh-md); transform:translateY(-2px); border-color:var(--gold); }
.hs-post-nav-next { text-align:right; }
.hs-post-nav-dir   { font-size:.68rem; color:var(--mid-gray); text-transform:uppercase; letter-spacing:1px; font-weight:700; font-family:var(--font-sans); }
.hs-post-nav-title { font-family:var(--font-display); font-size:.94rem; color:var(--black); line-height:1.3; }
.hs-related-posts h3 { font-family:var(--font-display); font-size:1.5rem; color:var(--black); margin-bottom:24px; padding-bottom:14px; border-bottom:2px solid var(--border); }

/* ═══════════════════════════════════════════════
   CONTACT PAGE
═══════════════════════════════════════════════ */
.hs-contact-layout { display:grid; grid-template-columns:1fr 1.6fr; gap:48px; align-items:start; }
.hs-contact-cards { display:flex; flex-direction:column; gap:14px; }
.hs-contact-card { background:var(--white); border-radius:var(--r-md); padding:22px; border:1px solid var(--border); transition:box-shadow .3s,transform .3s,border-color .3s; }
.hs-contact-card:hover { box-shadow:var(--sh-md); transform:translateY(-3px); border-color:var(--gold); }
.hs-contact-card-icon { font-size:1.6rem; margin-bottom:9px; }
.hs-contact-card h3 { font-family:var(--font-display); font-size:.96rem; color:var(--black); margin-bottom:3px; }
.hs-contact-card p  { font-size:.78rem; color:var(--mid-gray); margin-bottom:5px; font-family:var(--font-sans); }
.hs-contact-card a  { font-size:.84rem; font-weight:700; color:var(--gold); font-family:var(--font-sans); }
.hs-social-row { display:flex; gap:8px; }
.hs-social-btn { width:36px; height:36px; border:1px solid var(--border); border-radius:var(--r-xs); display:flex; align-items:center; justify-content:center; font-size:.88rem; text-decoration:none; transition:all var(--tr); }
.hs-social-btn:hover { border-color:var(--gold); transform:translateY(-2px); background:var(--gold-pale); }
.hs-contact-form-card { background:var(--white); border-radius:var(--r-xl); padding:40px; border:1px solid var(--border); box-shadow:var(--sh-sm); }
.hs-contact-form-card h2 { margin-bottom:8px; }
.hs-form-sub { font-size:.84rem; color:var(--mid-gray); margin-bottom:28px; font-family:var(--font-sans); }
.hs-form { display:flex; flex-direction:column; gap:18px; }
.hs-form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.hs-form-group { display:flex; flex-direction:column; gap:5px; }
.hs-form-group label { font-size:.74rem; font-weight:700; color:var(--dark-gray); font-family:var(--font-sans); letter-spacing:1px; text-transform:uppercase; }
.req { color:var(--gold); }
.hs-form-group input,
.hs-form-group select,
.hs-form-group textarea {
  border:1px solid var(--border); border-radius:var(--r-xs); padding:12px 15px;
  font-size:.88rem; color:var(--text); outline:none;
  font-family:var(--font-sans); transition:border-color var(--tr),box-shadow var(--tr);
  background:var(--white);
}
.hs-form-group input:focus,
.hs-form-group select:focus,
.hs-form-group textarea:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,168,76,0.08); }
.hs-form-group textarea { resize:vertical; min-height:130px; }
.hs-contact-faq { margin-top:30px; padding-top:26px; border-top:1px solid var(--border); }
.hs-contact-faq h4 { font-family:var(--font-display); font-size:.96rem; color:var(--black); margin-bottom:12px; }

/* ═══════════════════════════════════════════════
   RETURNS PAGE
═══════════════════════════════════════════════ */
.hs-policy-cards { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-bottom:52px; }
.hs-policy-card { border-radius:var(--r-md); padding:26px 20px; text-align:center; border:1px solid var(--border); transition:box-shadow .3s,transform .3s,border-color .3s; background:var(--white); }
.hs-policy-card:hover { box-shadow:var(--sh-md); transform:translateY(-4px); border-color:var(--gold); }
.hs-policy-card-icon { font-size:2rem; margin-bottom:12px; }
.hs-policy-card h3 { font-family:var(--font-display); font-size:.96rem; color:var(--black); margin-bottom:7px; }
.hs-policy-card p  { font-size:.78rem; color:var(--mid-gray); margin:0; line-height:1.6; font-family:var(--font-sans); }
/* Color strips on top */
.hs-pc-green::before  { content:''; display:block; height:3px; background:#2d8a4e; border-radius:var(--r-xs) var(--r-xs) 0 0; margin:-26px -20px 18px; }
.hs-pc-blue::before   { content:''; display:block; height:3px; background:#1a73e8; border-radius:var(--r-xs) var(--r-xs) 0 0; margin:-26px -20px 18px; }
.hs-pc-sf::before     { content:''; display:block; height:3px; background:var(--gold); border-radius:var(--r-xs) var(--r-xs) 0 0; margin:-26px -20px 18px; }
.hs-pc-purple::before { content:''; display:block; height:3px; background:#7c3aed; border-radius:var(--r-xs) var(--r-xs) 0 0; margin:-26px -20px 18px; }
.hs-policy-layout { display:grid; grid-template-columns:1fr 320px; gap:48px; align-items:start; }
.hs-policy-content { display:flex; flex-direction:column; gap:40px; }
.hs-policy-section h2 { font-family:var(--font-display); font-size:1.3rem; color:var(--black); margin-bottom:14px; padding-bottom:10px; border-bottom:1px solid var(--border); }
.hs-policy-section p  { font-size:.88rem; color:var(--mid-gray); line-height:1.85; margin-bottom:12px; font-family:var(--font-sans); }
.hs-policy-list { list-style:none; padding:0; display:flex; flex-direction:column; gap:9px; }
.hs-policy-list li { display:flex; align-items:flex-start; gap:10px; padding:11px 14px; background:var(--white); border-radius:var(--r-xs); border:1px solid var(--border); font-size:.86rem; color:var(--dark-gray); line-height:1.6; font-family:var(--font-sans); }
.hs-li-icon { flex-shrink:0; font-size:.85rem; margin-top:1px; }
.hs-timeline { display:flex; flex-direction:column; }
.hs-timeline-item { display:flex; gap:16px; align-items:flex-start; padding:14px 0; border-bottom:1px solid var(--border); }
.hs-timeline-item:last-child { border:none; }
.hs-timeline-dot { width:34px; height:34px; border-radius:50%; flex-shrink:0; background:var(--gold); color:var(--black); font-weight:800; font-size:.86rem; display:flex; align-items:center; justify-content:center; font-family:var(--font-sans); }
.hs-timeline-item strong { font-size:.88rem; color:var(--black); display:block; margin-bottom:3px; font-family:var(--font-sans); font-weight:700; }
.hs-timeline-item p { font-size:.8rem; color:var(--mid-gray); margin:0; font-family:var(--font-sans); }
.hs-return-steps-card { background:var(--black); border-radius:var(--r-xl); padding:30px; position:sticky; top:90px; border:1px solid rgba(201,168,76,0.2); }
.hs-return-steps-card h3 { font-family:var(--font-display); font-size:1.1rem; color:var(--white); margin-bottom:22px; }
.hs-steps { display:flex; flex-direction:column; gap:15px; }
.hs-step { display:flex; gap:13px; align-items:flex-start; }
.hs-step-num { width:28px; height:28px; border-radius:50%; background:var(--gold); color:var(--black); font-weight:800; font-size:.78rem; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-family:var(--font-sans); }
.hs-step strong { font-size:.86rem; color:var(--white); display:block; margin-bottom:2px; font-family:var(--font-sans); }
.hs-step p { font-size:.78rem; color:rgba(255,255,255,0.5); margin:0; font-family:var(--font-sans); line-height:1.55; }
.hs-policy-faq { margin-top:24px; padding-top:20px; border-top:1px solid rgba(255,255,255,0.08); }
.hs-policy-faq h4 { font-size:.82rem; color:rgba(255,255,255,0.6); margin-bottom:12px; font-family:var(--font-sans); letter-spacing:1px; text-transform:uppercase; }
.hs-policy-faq .hs-faq-item { border-color:rgba(255,255,255,0.08); }
.hs-policy-faq .hs-faq-item summary { color:rgba(255,255,255,0.75); }
.hs-policy-faq .hs-faq-item p { color:rgba(255,255,255,0.45); }

/* ═══════════════════════════════════════════════
   TERMS PAGE
═══════════════════════════════════════════════ */
.hs-legal-layout { display:grid; grid-template-columns:200px 1fr; gap:52px; align-items:start; }
.hs-legal-toc { background:var(--white); border-radius:var(--r-md); padding:22px; border:1px solid var(--border); position:sticky; top:90px; }
.hs-legal-toc h4 { font-size:.68rem; text-transform:uppercase; letter-spacing:2px; color:var(--mid-gray); margin-bottom:14px; font-family:var(--font-sans); }
.hs-legal-toc ol { padding-left:16px; display:flex; flex-direction:column; gap:7px; }
.hs-legal-toc ol a { font-size:.78rem; color:var(--mid-gray); line-height:1.4; font-family:var(--font-sans); }
.hs-legal-toc ol a:hover { color:var(--gold); }
.hs-legal-intro { background:var(--off-white); border-left:3px solid var(--gold); padding:16px 20px; border-radius:0 var(--r-sm) var(--r-sm) 0; margin-bottom:38px; font-size:.9rem; color:var(--mid-gray); line-height:1.8; font-family:var(--font-sans); }
.hs-legal-content { display:flex; flex-direction:column; gap:36px; }
.hs-legal-section h2 { font-family:var(--font-display); font-size:1.2rem; color:var(--black); margin-bottom:12px; padding-bottom:10px; border-bottom:1px solid var(--border); scroll-margin-top:92px; }
.hs-legal-section p  { font-size:.88rem; color:var(--mid-gray); line-height:1.85; margin-bottom:11px; font-family:var(--font-sans); }
.hs-legal-section ul { padding-left:20px; display:flex; flex-direction:column; gap:7px; }
.hs-legal-section ul li { font-size:.86rem; color:var(--mid-gray); line-height:1.7; font-family:var(--font-sans); }
.hs-legal-contact { background:var(--off-white); border-radius:var(--r-md); padding:20px 24px; font-size:.86rem; color:var(--mid-gray); line-height:2; font-family:var(--font-sans); border-left:3px solid var(--gold); }

/* ═══════════════════════════════════════════════
   ABOUT PAGE
═══════════════════════════════════════════════ */
.hs-about-grid { display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; margin-bottom:64px; }
.hs-about-visual { border-radius:var(--r-xl); background:var(--black); height:420px; display:flex; align-items:center; justify-content:center; font-size:10rem; position:relative; overflow:hidden; border:1px solid rgba(201,168,76,0.2); }
.hs-about-visual-label { position:absolute; bottom:18px; left:0; right:0; text-align:center; font-family:var(--font-sans); font-size:.68rem; color:rgba(255,255,255,0.3); letter-spacing:3px; text-transform:uppercase; }
.hs-about-stats { display:flex; gap:32px; padding-top:28px; border-top:1px solid var(--border); flex-wrap:wrap; }
.hs-mission-bg { background:var(--off-white); border-radius:var(--r-xl); padding:52px 48px; margin-bottom:56px; border:1px solid var(--border); }
.hs-mission-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.hs-mission-card { background:var(--white); border-radius:var(--r-md); padding:28px 22px; text-align:center; border:1px solid var(--border); transition:border-color .3s,box-shadow .3s; }
.hs-mission-card:hover { border-color:var(--gold); box-shadow:var(--sh-md); }
.hs-mission-icon { font-size:2.2rem; margin-bottom:13px; }
.hs-mission-card h3 { font-family:var(--font-display); font-size:.98rem; margin-bottom:8px; }
.hs-mission-card p  { font-size:.8rem; color:var(--mid-gray); margin:0; line-height:1.65; font-family:var(--font-sans); }
.hs-team-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.hs-team-card { background:var(--white); border-radius:var(--r-md); padding:26px 18px; text-align:center; border:1px solid var(--border); transition:box-shadow .3s,transform .3s,border-color .3s; }
.hs-team-card:hover { box-shadow:var(--sh-md); transform:translateY(-4px); border-color:var(--gold); }
.hs-team-avatar { width:60px; height:60px; border-radius:50%; background:var(--gold); display:flex; align-items:center; justify-content:center; font-size:1.8rem; margin:0 auto 14px; border:2px solid var(--black); }
.hs-team-name { font-family:var(--font-display); font-size:.98rem; color:var(--black); margin-bottom:3px; }
.hs-team-role { font-size:.66rem; color:var(--gold); font-weight:700; text-transform:uppercase; letter-spacing:1.5px; margin-bottom:9px; font-family:var(--font-sans); }
.hs-team-bio  { font-size:.77rem; color:var(--mid-gray); margin:0; line-height:1.65; font-family:var(--font-sans); }

/* ═══════════════════════════════════════════════
   FAQ ACCORDION
═══════════════════════════════════════════════ */
.hs-faq-item { border-bottom:1px solid var(--border); }
.hs-faq-item summary {
  padding:13px 0; font-size:.86rem; font-weight:700;
  color:var(--black); cursor:pointer; list-style:none;
  display:flex; justify-content:space-between; align-items:center;
  font-family:var(--font-sans); letter-spacing:.3px;
}
.hs-faq-item summary::-webkit-details-marker { display:none; }
.hs-faq-item summary::after { content:'+'; color:var(--gold); font-size:1.2rem; flex-shrink:0; transition:transform .2s; }
.hs-faq-item[open] summary::after { transform:rotate(45deg); }
.hs-faq-item p { font-size:.83rem; color:var(--mid-gray); line-height:1.7; padding:6px 0 14px; margin:0; font-family:var(--font-sans); }

/* ═══════════════════════════════════════════════
   ALERTS
═══════════════════════════════════════════════ */
.hs-alert { padding:14px 18px; border-radius:var(--r-xs); margin-bottom:18px; font-size:.86rem; line-height:1.65; font-family:var(--font-sans); }
.hs-alert-success { background:rgba(45,138,78,.08);  border:1px solid rgba(45,138,78,.25);  color:#1a5c32; }
.hs-alert-error   { background:rgba(220,53,69,.08);  border:1px solid rgba(220,53,69,.25);  color:#8b1a24; }
.hs-alert-info    { background:var(--gold-pale);     border:1px solid var(--border-gold);   color:var(--charcoal); }

/* ═══════════════════════════════════════════════
   NEWSLETTER SECTION
═══════════════════════════════════════════════ */
.hs-newsletter { background:linear-gradient(135deg,#fdf8ee,#f5efd6); padding:80px 0; text-align:center; border-top:1px solid var(--border-gold); border-bottom:1px solid var(--border-gold); }
.hs-newsletter .hs-label { color:var(--gold); }
.hs-newsletter h2 { font-size:2rem; margin-bottom:10px; color:var(--black); }
.hs-newsletter p  { color:var(--mid-gray); margin-bottom:30px; font-family:var(--font-sans); }
.hs-nl-form {
  display:flex; max-width:480px; margin:0 auto;
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--r-xs); overflow:hidden;
  box-shadow:var(--sh-sm);
}
.hs-nl-form input {
  flex:1; border:none; outline:none; padding:14px 18px;
  background:transparent; color:var(--text);
  font-size:.86rem; font-family:var(--font-sans);
}
.hs-nl-form input::placeholder { color:var(--light-gray); }
.hs-nl-form button {
  background:var(--black); color:var(--white); border:none;
  padding:14px 24px; font-weight:700; font-size:.74rem; cursor:pointer;
  font-family:var(--font-sans); letter-spacing:1.5px; text-transform:uppercase;
  transition:background var(--tr);
}
.hs-nl-form button:hover { background:var(--gold); color:var(--black); }
.hs-nl-msg { margin-top:12px; font-size:.82rem; color:var(--gold); font-family:var(--font-sans); }

/* ═══════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════ */
.hs-footer { background:#0d0b08; color:rgba(255,255,255,0.50); padding:64px 0 0; }
.hs-footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:52px; margin-bottom:48px; }
.hs-footer-brand-desc { font-size:.8rem; line-height:1.8; max-width:250px; margin-top:18px; font-family:var(--font-sans); }
.hs-footer-social { display:flex; gap:8px; margin-top:20px; }
.hs-footer-social a {
  width:34px; height:34px; border:1px solid rgba(255,255,255,0.12);
  border-radius:var(--r-xs); display:flex; align-items:center; justify-content:center;
  font-size:.86rem; color:rgba(255,255,255,0.4);
  transition:all var(--tr); text-decoration:none;
}
.hs-footer-social a:hover { border-color:var(--gold); color:var(--gold); background:rgba(201,168,76,0.08); }
.hs-footer-col h4 {
  color:var(--white); font-size:.68rem; text-transform:uppercase;
  letter-spacing:2px; margin-bottom:18px; font-family:var(--font-sans);
}
/* Gold underline on footer headings */
.hs-footer-col h4::after {
  content:''; display:block; width:20px; height:1px;
  background:var(--gold); margin-top:8px;
}
.hs-footer-col ul { list-style:none; padding:0; }
.hs-footer-col ul li { margin-bottom:10px; }
.hs-footer-col ul li a { font-size:.8rem; color:rgba(255,255,255,0.35); transition:color var(--tr); font-family:var(--font-sans); }
.hs-footer-col ul li a:hover { color:var(--gold); }
.hs-footer-bottom {
  border-top:1px solid rgba(255,255,255,0.10);
  padding:24px 0; display:flex; justify-content:space-between;
  align-items:center; font-size:.72rem; color:rgba(255,255,255,0.45);
}
.hs-footer-payments { font-size:1.2rem; display:flex; gap:7px; }

/* ═══════════════════════════════════════════════
   WOOCOMMERCE OVERRIDES
═══════════════════════════════════════════════ */
.woocommerce ul.products { display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:22px !important; list-style:none !important; padding:0 !important; margin:0 !important; }
.woocommerce ul.products li.product { padding:0 !important; margin:0 !important; }
.woocommerce div.product div.images { border-radius:var(--r-xl); overflow:hidden; }
.woocommerce div.product p.price,.woocommerce div.product span.price { color:var(--black) !important; font-family:var(--font-display) !important; font-size:2rem !important; font-weight:700 !important; }
.woocommerce .star-rating span::before,.woocommerce .star-rating::before { color:var(--gold); }
.woocommerce .woocommerce-breadcrumb { font-size:.74rem; color:var(--mid-gray); font-family:var(--font-sans); letter-spacing:.5px; }
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea { border:1px solid var(--border); border-radius:var(--r-xs); padding:11px 14px; font-family:var(--font-sans); }
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus { border-color:var(--gold); outline:none; box-shadow:0 0 0 3px rgba(201,168,76,0.08); }
.woocommerce .woocommerce-ordering select { border:1px solid var(--border); border-radius:var(--r-xs); padding:9px 14px; font-family:var(--font-sans); }
.woocommerce-cart table.cart img { border-radius:var(--r-sm); }
.woocommerce-checkout #payment { border-radius:var(--r-md); }

/* ═══════════════════════════════════════════════
   NO RESULTS
═══════════════════════════════════════════════ */
.hs-no-results { text-align:center; padding:80px 24px; color:var(--mid-gray); }
.hs-no-results-icon { font-size:4rem; margin-bottom:16px; }
.hs-no-results h3 { font-family:var(--font-display); font-size:1.5rem; color:var(--black); margin-bottom:8px; }

/* ═══════════════════════════════════════════════
   SCROLL REVEAL
═══════════════════════════════════════════════ */
.hs-reveal { opacity:0; transform:translateY(22px); transition:opacity .55s ease,transform .55s ease; }
.hs-reveal.visible { opacity:1; transform:translateY(0); }

/* ═══════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════ */
@media (max-width:1100px){
  .hs-hero-grid      { grid-template-columns:1fr; text-align:center; }
  .hs-hero h1        { font-size:clamp(2.4rem,5vw,3.8rem); }
  .hs-hero-sub,.hs-hero-actions { max-width:100%; }
  .hs-hero-actions   { justify-content:center; }
  .hs-hero-stats     { justify-content:center; }
  .hs-hero-visual    { display:none; }
  .hs-cat-grid       { grid-template-columns:repeat(2,1fr); }
  .hs-product-grid   { grid-template-columns:repeat(3,1fr); }
  .woocommerce ul.products { grid-template-columns:repeat(3,1fr) !important; }
  .hs-features-grid  { grid-template-columns:repeat(2,1fr); }
  .hs-testi-grid     { grid-template-columns:repeat(2,1fr); }
  .hs-policy-cards   { grid-template-columns:repeat(2,1fr); }
  .hs-policy-layout  { grid-template-columns:1fr; }
  .hs-return-steps-card { position:static; }
  .hs-legal-layout   { grid-template-columns:1fr; }
  .hs-legal-toc      { position:static; }
  .hs-about-grid     { grid-template-columns:1fr; }
  .hs-team-grid      { grid-template-columns:repeat(2,1fr); }
  .hs-contact-layout { grid-template-columns:1fr; }
  .hs-blog-featured  { grid-template-columns:1fr; }
  .hs-blog-layout    { grid-template-columns:1fr; }
  .hs-sidebar        { position:static; }
  .hs-footer-grid    { grid-template-columns:1fr 1fr; gap:36px; }
  .hs-promo          { flex-direction:column; text-align:center; padding:48px 36px; }
  .hs-insta-grid     { grid-template-columns:repeat(3,1fr); }
  .hs-mission-grid   { grid-template-columns:1fr 1fr; }
}
@media (max-width:900px){
  .hs-nav            { display:none; }
  .hs-menu-toggle    { display:flex; }
  .hs-topbar-right   { display:none; }
  .hs-shop-layout    { grid-template-columns:1fr; }
  .hs-shop-sidebar   { position:static; }
  .hs-cat-pills-bar  { position:static; }
  .hs-shop-hero-inner { flex-direction:column; align-items:flex-start; gap:10px; }
  .hs-product-single { grid-template-columns:1fr; }
  .hs-post-layout    { grid-template-columns:1fr; }
  .hs-post-nav       { grid-template-columns:1fr; }
}
@media (max-width:640px){
  .hs-container      { padding:0 18px; }
  .hs-section        { padding:56px 0; }
  .hs-product-grid   { grid-template-columns:repeat(2,1fr); }
  .woocommerce ul.products { grid-template-columns:repeat(2,1fr) !important; }
  .hs-testi-grid,.hs-policy-cards { grid-template-columns:1fr; }
  .hs-insta-grid     { grid-template-columns:repeat(3,1fr); }
  .hs-form-row       { grid-template-columns:1fr; }
  .hs-footer-grid    { grid-template-columns:1fr; }
  .hs-blog-grid      { grid-template-columns:1fr; }
  .hs-care-grid      { grid-template-columns:repeat(2,1fr); }
  .hs-features-list  { grid-template-columns:1fr; }
  .hs-mission-grid   { grid-template-columns:1fr; }
  .hs-team-grid      { grid-template-columns:repeat(2,1fr); }
  .hs-nl-form        { flex-direction:column; }
}
