/* ============================================================
   HAIRS BY LIBRA — Theme CSS  v6
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Italiana&family=Outfit:wght@300;400;500;600&family=Cormorant:ital,wght@0,400;0,600;1,400&display=swap');

/* ─── TOKENS ─── */
:root {
  --black:      #0A0A0A;
  --charcoal:   #1C1C1C;
  --grey-dk:    #3A3A3A;
  --grey-md:    #787878;
  --grey-lt:    #B8B8B8;
  --border:     #E8E8E8;
  --bg:         #FAFAF8;
  --white:      #FFFFFF;
  --gold:       #B8943E;
  --gold-lt:    #D4B06A;
  --gold-dk:    #8A6C28;

  --font-head:  'Italiana', Georgia, serif;
  --font-body:  'Outfit', system-ui, sans-serif;
  --font-serif: 'Cormorant', Georgia, serif;

  --ease:       cubic-bezier(0.4, 0, 0.2, 1);
  --ease-out:   cubic-bezier(0, 0, 0.2, 1);

  --nav-h:      68px;
  --bottom-bar: 64px;
}

/* ─── RESET ─── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--font-body);
  font-weight:400;
  color:var(--black);
  background:var(--bg);
  overflow-x:hidden;
  line-height:1.6;
}
body.nav-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;line-height:1}
ul,ol{list-style:none}
::selection{background:var(--gold);color:#fff}
::-webkit-scrollbar{width:4px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}

/* ─── ACCESSIBILITY ─── */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.skip-link{position:absolute;top:-100px;left:20px;background:var(--black);color:#fff;padding:10px 20px;z-index:9999;font-size:13px;transition:top .2s}
.skip-link:focus{top:10px}

/* ─── CONTAINER ─── */
.container{max-width:1380px;margin:0 auto;padding:0 40px}
@media(max-width:768px){.container{padding:0 20px}}

/* ─── ANNOUNCEMENT BAR ─── */
.announcement{
  background:var(--black);
  overflow:hidden;
  height:36px;
  display:flex;
  align-items:center;
}
.announcement__track{
  display:flex;
  white-space:nowrap;
  animation:ticker 35s linear infinite;
  width:max-content;
}
.announcement__track span{
  font-size:11px;
  letter-spacing:.14em;
  color:rgba(255,255,255,.75);
  text-transform:uppercase;
  padding:0 48px;
  font-weight:400;
}
.announcement__track span::before{content:'—  ';color:var(--gold)}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ─── HEADER ─── */
.site-header{
  position:sticky;
  top:0;
  z-index:300;
  background:rgba(250,250,248,.96);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border);
  height:var(--nav-h);
}
.header__inner{
  height:var(--nav-h);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  max-width:1380px;
  margin:0 auto;
  padding:0 40px;
}

/* ── Logo ── */
.logo{
  display:flex;
  align-items:center;
  flex-shrink:0;
  min-width:0;
  line-height:0;
}
/* Plain img logo */
.logo-img,
.logo img{
  height:44px !important;
  width:auto !important;
  max-width:160px !important;
  object-fit:contain !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}
/* WP custom logo — target every possible class WP outputs */
.custom-logo-link,
a.custom-logo-link{
  display:flex;
  align-items:center;
  line-height:0;
}
.custom-logo-link img,
.custom-logo-link .custom-logo,
img.custom-logo,
.site-header img.custom-logo,
.site-header .custom-logo-link img{
  height:44px !important;
  width:auto !important;
  max-width:160px !important;
  min-width:unset !important;
  object-fit:contain !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}
/* Mobile logo size */
@media(max-width:768px){
  .logo-img,
  .logo img,
  .custom-logo-link img,
  .custom-logo-link .custom-logo,
  img.custom-logo,
  .site-header img.custom-logo,
  .site-header .custom-logo-link img{
    height:36px !important;
    max-width:120px !important;
  }
}
.footer-logo-img{
  height:40px;
  width:auto;
  max-width:160px;
  object-fit:contain;
  display:block;
  margin-bottom:18px;
  filter:brightness(0) invert(1);
}

/* ── Desktop Nav ── */
.primary-nav{flex:1;display:flex;justify-content:center;overflow:hidden}
.nav-list{display:flex;align-items:center;gap:36px}
.nav-list>li{position:relative}
.nav-list>li>a{
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--grey-dk);
  font-weight:400;
  padding:4px 0;
  position:relative;
  transition:color .2s;
  white-space:nowrap;
}
.nav-list>li>a::after{
  content:'';
  position:absolute;
  bottom:-2px;left:0;
  width:0;height:1px;
  background:var(--gold);
  transition:width .25s var(--ease);
}
.nav-list>li>a:hover{color:var(--black)}
.nav-list>li>a:hover::after{width:100%}

/* Dropdown */
.sub-menu{
  position:absolute;
  top:calc(100% + 16px);
  left:50%;
  transform:translateX(-50%) translateY(6px);
  background:var(--white);
  border:1px solid var(--border);
  min-width:190px;
  opacity:0;
  visibility:hidden;
  transition:opacity .2s,transform .2s,visibility .2s;
  z-index:100;
}
.nav-list>li:hover .sub-menu,
.nav-list>li:focus-within .sub-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.sub-menu a{
  display:block;
  padding:12px 20px;
  font-size:12px;
  letter-spacing:.06em;
  color:var(--grey-dk);
  border-bottom:1px solid var(--border);
  transition:background .15s,color .15s;
}
.sub-menu li:last-child a{border-bottom:none}
.sub-menu a:hover{background:var(--bg);color:var(--black)}

/* ── Header Actions ── */
.header__actions{
  display:flex;
  align-items:center;
  gap:2px;
  flex-shrink:0;
}
.hdr-btn{
  display:flex;align-items:center;justify-content:center;
  width:40px;height:40px;
  color:var(--grey-dk);
  border-radius:4px;
  transition:color .2s,background .2s;
  position:relative;
  flex-shrink:0;
}
.hdr-btn:hover{color:var(--black);background:var(--border)}
.hdr-btn svg{width:20px;height:20px;stroke-width:1.5}
.cart-count-badge{
  position:absolute;top:6px;right:6px;
  width:16px;height:16px;
  background:var(--gold);color:#fff;
  border-radius:50%;
  font-size:9px;font-weight:600;
  display:flex;align-items:center;justify-content:center;
  line-height:1;
}
.hdr-shop-btn{
  margin-left:8px;
  padding:0 20px;
  height:38px;
  background:var(--black);
  color:#fff;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:500;
  border-radius:2px;
  transition:background .2s;
  white-space:nowrap;
  display:flex;align-items:center;
  flex-shrink:0;
}
.hdr-shop-btn:hover{background:var(--gold)}
.mobile-toggle{display:none}

/* ── Search bar ── */
.search-bar{
  display:none;
  position:absolute;
  top:100%;left:0;right:0;
  background:var(--white);
  border-bottom:1px solid var(--border);
  padding:16px 40px;
  z-index:200;
}
.search-bar.open{display:block}
.search-bar-close{
  position:absolute;right:40px;top:50%;
  transform:translateY(-50%);
  font-size:18px;color:var(--grey-md);
  cursor:pointer;
}
.search-bar form{display:flex;max-width:560px;margin:0 auto;gap:0}
.search-bar input{
  flex:1;padding:12px 18px;
  border:1px solid var(--border);border-right:none;
  font-family:var(--font-body);font-size:14px;
  outline:none;background:var(--bg);
  border-radius:2px 0 0 2px;
}
.search-bar input:focus{border-color:var(--black)}
.search-bar button{
  padding:12px 22px;
  background:var(--black);color:#fff;
  font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  border-radius:0 2px 2px 0;
  transition:background .2s;
}
.search-bar button:hover{background:var(--gold)}

/* ─── MOBILE MENU ─── */
.mobile-menu{
  position:fixed;
  inset:0;
  background:var(--white);
  z-index:9999;
  transform:translateX(100%);
  transition:transform .38s var(--ease);
  display:flex;flex-direction:column;
  overflow-y:auto;
}
.mobile-menu.open{transform:none}
.mobile-menu__top{
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 24px;
  border-bottom:1px solid var(--border);
  flex-shrink:0;
}
.mobile-menu__close{
  width:40px;height:40px;
  display:flex;align-items:center;justify-content:center;
  font-size:20px;color:var(--grey-md);
}
.mobile-nav{padding:24px;flex:1}
.mobile-nav a{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 0;
  font-size:16px;
  letter-spacing:.04em;
  color:var(--black);
  border-bottom:1px solid var(--border);
  font-weight:400;
}
.mobile-nav a:last-child{border-bottom:none}
.mobile-nav a:hover{color:var(--gold)}
.mobile-menu__footer{padding:24px;display:flex;flex-direction:column;gap:10px;flex-shrink:0}

/* Overlay */
.mob-overlay{
  position:fixed;inset:0;
  background:rgba(0,0,0,.55);
  z-index:9998;
  opacity:0;visibility:hidden;
  transition:opacity .35s,visibility .35s;
}
.mob-overlay.on{opacity:1;visibility:visible}

/* ─── BOTTOM NAV (mobile) ─── */
/* ─── BOTTOM NAV (mobile only) ─── */
.bottom-nav{
  display:none;
  position:fixed;
  bottom:0;left:0;right:0;
  height:var(--bottom-bar);
  background:var(--white);
  border-top:1px solid var(--border);
  box-shadow:0 -2px 12px rgba(0,0,0,.06);
  z-index:400;
  padding-bottom:env(safe-area-inset-bottom,0px);
}
.bottom-nav__list{
  display:grid;
  grid-template-columns:repeat(5,1fr); /* 5 equal columns — never uneven */
  height:100%;
  width:100%;
  margin:0;
  padding:0;
  list-style:none;
}
.bottom-nav__item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  color:var(--grey-lt);
  cursor:pointer;
  transition:color .18s;
  position:relative;
  border:none;
  background:none;
  font-family:inherit;
  padding:0;
}
.bottom-nav__item:hover,
.bottom-nav__item.active{ color:var(--black); }
.bottom-nav__item svg{
  width:22px; height:22px;
  stroke-width:1.5;
  display:block;
  flex-shrink:0;
}
.bottom-nav__item > span{  /* label span */
  font-size:9px;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-weight:500;
  line-height:1;
  display:block;
  white-space:nowrap;
}
.bnav-badge{
  position:absolute;
  top:7px; left:50%;
  transform:translateX(4px);
  min-width:15px; height:15px;
  background:var(--gold); color:#fff;
  border-radius:8px;
  font-size:8px; font-weight:700;
  display:flex; align-items:center; justify-content:center;
  padding:0 3px; line-height:1;
  border:1.5px solid var(--white);
}
@media(max-width:768px){ .bottom-nav{ display:block; } }

/* ─── HERO VIDEO ─── */
.hero-video{
  position:relative;
  width:100%;
  height:100svh;
  min-height:560px;
  overflow:hidden;
  background:var(--black);
}
.hero-video__video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.hero-video__overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    to right,
    rgba(10,10,10,.7) 0%,
    rgba(10,10,10,.3) 60%,
    rgba(10,10,10,.1) 100%
  );
}
.hero-video__content{
  position:absolute;
  bottom:80px;left:72px;
  max-width:560px;
  z-index:2;
}
.hero-video__tag{
  font-size:11px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:20px;
  display:flex;align-items:center;gap:12px;
  font-weight:400;
}
.hero-video__tag::before{content:'';width:32px;height:1px;background:var(--gold)}
.hero-video__h1{
  font-family:var(--font-head);
  font-size:clamp(52px,6.5vw,96px);
  color:#fff;
  line-height:1.0;
  letter-spacing:.01em;
  margin-bottom:28px;
}
.hero-video__h1 em{font-style:italic;color:var(--gold-lt);font-family:var(--font-serif)}
.hero-video__sub{
  font-size:15px;
  color:rgba(255,255,255,.7);
  line-height:1.7;
  max-width:400px;
  margin-bottom:40px;
  font-weight:300;
}
.hero-video__btns{display:flex;gap:14px;flex-wrap:wrap}
.hero-video__scroll{
  position:absolute;
  bottom:36px;right:56px;
  z-index:2;
  display:flex;flex-direction:column;align-items:center;gap:8px;
  color:rgba(255,255,255,.4);
  font-size:9px;letter-spacing:.2em;text-transform:uppercase;
}
.hero-video__scroll-line{
  width:1px;height:48px;
  background:linear-gradient(to bottom,rgba(255,255,255,.4),transparent);
  animation:scrollLine 1.8s ease-in-out infinite;
}
@keyframes scrollLine{
  0%{transform:scaleY(0);transform-origin:top}
  50%{transform:scaleY(1);transform-origin:top}
  51%{transform-origin:bottom}
  100%{transform:scaleY(0);transform-origin:bottom}
}

/* ─── BUTTONS ─── */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--font-body);
  font-size:12px;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;
  padding:0 28px;height:48px;
  border-radius:2px;
  transition:all .22s var(--ease);
  white-space:nowrap;cursor:pointer;
}
.btn-dark{background:var(--black);color:#fff}
.btn-dark:hover{background:var(--gold)}
.btn-white{background:#fff;color:var(--black)}
.btn-white:hover{background:var(--gold);color:#fff}
.btn-outline{border:1px solid rgba(255,255,255,.5);color:#fff}
.btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.12)}
.btn-gold{background:var(--gold);color:#fff}
.btn-gold:hover{background:var(--gold-dk)}
.btn-sm{height:38px;font-size:11px;padding:0 20px}

/* ─── SECTION HEADER ─── */
.sec-head{margin-bottom:52px}
.sec-head--center{text-align:center}
.sec-head--center .sec-eyebrow{justify-content:center}
.sec-eyebrow{
  display:flex;align-items:center;gap:14px;
  font-size:10px;letter-spacing:.28em;text-transform:uppercase;
  color:var(--gold);font-weight:500;
  margin-bottom:14px;
}
.sec-eyebrow::before{content:'';flex:0 0 28px;height:1px;background:var(--gold-lt)}
.sec-head--center .sec-eyebrow::after{content:'';flex:0 0 28px;height:1px;background:var(--gold-lt)}
.sec-title{
  font-family:var(--font-head);
  font-size:clamp(32px,3.5vw,52px);
  font-weight:400;
  line-height:1.1;
  letter-spacing:.02em;
  color:var(--black);
}
.sec-title em{font-style:italic;color:var(--gold);font-family:var(--font-serif)}
.sec-sub{
  margin-top:14px;
  font-size:14px;
  color:var(--grey-md);
  line-height:1.75;
  max-width:480px;
  font-weight:300;
}
.sec-head--center .sec-sub{margin-inline:auto}

/* ─── TRUST STRIP ─── */
.trust-strip{
  background:var(--black);
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.trust-strip__item{
  padding:24px 28px;
  display:flex;align-items:center;gap:14px;
  border-right:1px solid rgba(255,255,255,.07);
}
.trust-strip__item:last-child{border-right:none}
.trust-strip__icon{font-size:20px;flex-shrink:0;opacity:.8}
.trust-strip__title{
  font-size:12px;font-weight:500;
  letter-spacing:.1em;text-transform:uppercase;
  color:rgba(255,255,255,.9);
  margin-bottom:3px;
}
.trust-strip__sub{font-size:11px;color:rgba(255,255,255,.45);font-weight:300}

/* ─── CATEGORY FILTER + CARDS ─── */
.section{padding:88px 0}
.categories{}

/* Filter scroll bar */
.cat-filter-wrap{
  position:relative;
  margin-bottom:40px;
}
.cat-filter-wrap::after{
  content:'';
  position:absolute;
  right:0;top:0;bottom:0;
  width:60px;
  background:linear-gradient(to right,transparent,var(--bg));
  pointer-events:none;
}
.cat-filter-scroll{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding-bottom:2px;
  scrollbar-width:none;
  -ms-overflow-style:none;
  scroll-behavior:smooth;
}
.cat-filter-scroll::-webkit-scrollbar{display:none}
.cat-filter-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:10px 20px;
  border-radius:40px;
  font-size:12px;
  font-weight:400;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--grey-md);
  background:var(--white);
  border:1px solid var(--border);
  white-space:nowrap;
  cursor:pointer;
  transition:all .22s var(--ease);
  flex-shrink:0;
}
.cat-filter-btn:hover{
  color:var(--black);
  border-color:var(--black);
}
.cat-filter-btn.active{
  background:var(--black);
  color:#fff;
  border-color:var(--black);
}
.cat-filter-icon{font-size:14px}

/* Category cards grid */
.cat-row{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  transition:opacity .25s;
}
.cat-card{
  display:block;
  position:relative;
  overflow:hidden;
  border-radius:2px;
  cursor:pointer;
  background:var(--border);
  transition:opacity .3s,transform .3s;
}
.cat-card.hidden{
  display:none;
}
.cat-card__img-wrap{
  aspect-ratio:2/3;
  overflow:hidden;
  position:relative;
}
.cat-card__img{
  position:absolute;inset:0;
  width:100%;height:100%;
  background-size:cover;
  background-position:center top;
  transition:transform .55s var(--ease);
}
/* Logo placeholder style */
.cat-card__img--logo{
  background:#f5f0ea;
  display:flex;align-items:center;justify-content:center;
}
.cat-logo-img{
  width:70%;
  height:auto;
  object-fit:contain;
  opacity:.5;
  mix-blend-mode:multiply;
}
.cat-card:hover .cat-card__img{transform:scale(1.06)}
.cat-card__overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 30%,rgba(10,10,10,.6) 60%,rgba(10,10,10,.88) 100%);
}
.cat-card__badge{
  position:absolute;top:12px;left:12px;
  font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  padding:4px 10px;border-radius:2px;
}
.badge-trend{background:var(--gold);color:#fff}
.badge-pop{background:var(--black);color:rgba(255,255,255,.85)}
.badge-new{background:#fff;color:var(--black)}
.cat-card__foot{
  position:absolute;bottom:0;left:0;right:0;
  padding:18px 16px;
  transform:translateY(6px);
  transition:transform .3s var(--ease);
}
.cat-card:hover .cat-card__foot{transform:translateY(0)}
.cat-card__name{
  font-family:var(--font-head);
  font-size:20px;font-weight:400;
  color:#fff;line-height:1.15;
  margin-bottom:4px;
}
.cat-card__tag{
  font-size:11px;color:rgba(255,255,255,.6);
  font-weight:300;margin-bottom:8px;
}
.cat-card__cta{
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-lt);font-style:italic;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .25s .05s,transform .25s .05s;
  display:block;
}
.cat-card:hover .cat-card__cta{opacity:1;transform:none}

/* ─── PRODUCTS SECTION ─── */
.products-section{background:var(--white)}
.products-tabs{
  display:flex;gap:0;
  border-bottom:1px solid var(--border);
  margin-bottom:48px;
  overflow-x:auto;
  scrollbar-width:none;
}
.products-tabs::-webkit-scrollbar{display:none}
.ptab{
  padding:14px 24px;
  font-size:12px;font-weight:400;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--grey-md);
  cursor:pointer;
  border-bottom:2px solid transparent;
  margin-bottom:-1px;
  transition:color .2s,border-color .2s;
  white-space:nowrap;
  flex-shrink:0;
}
.ptab.active{color:var(--black);border-color:var(--black)}
.ptab:hover:not(.active){color:var(--black)}
.products-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:2px;
  transition:opacity .25s;
  /* Ensure last row fills without orphan gaps */
  align-items: start;
}
/* Force product cards to same height */
.products-grid .product-card {
  display:flex;
  flex-direction:column;
}
.products-grid .product-card__img-wrap {
  flex-shrink:0;
}
.products-grid .product-card__info {
  flex:1;
  display:flex;
  flex-direction:column;
}
.products-grid.loading{opacity:.3;pointer-events:none}
.products-footer{text-align:center;margin-top:48px}

/* Product Card */
.product-card{
  background:var(--bg);
  position:relative;
  overflow:hidden;
}
.product-card__img-wrap{
  aspect-ratio:3/4;
  overflow:hidden;
  position:relative;
  background:#f0eded;
}
.product-card__img{
  width:100%;height:100%;
  object-fit:cover;
  transition:transform .5s var(--ease);
  display:block;
}
.product-card:hover .product-card__img{transform:scale(1.04)}
.product-card__badge{
  position:absolute;top:12px;left:12px;z-index:2;
  font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  padding:4px 10px;border-radius:2px;
}
.badge--sale{background:#C94040;color:#fff}
.badge--new{background:var(--black);color:#fff}
.badge--best{background:var(--gold);color:#fff}
.product-card__quick{
  position:absolute;
  bottom:-52px;left:0;right:0;
  z-index:3;
  transition:bottom .25s var(--ease);
}
.product-card:hover .product-card__quick{bottom:0}
.product-card__add{
  display:flex;align-items:center;justify-content:center;
  width:100%;height:52px;
  background:var(--black);color:#fff;
  font-size:11px;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;
  transition:background .2s;
  cursor:pointer;
  border:none;font-family:inherit;
}
.product-card__add:hover{background:var(--gold)}
.product-card__wish{
  position:absolute;top:12px;right:12px;z-index:2;
  width:34px;height:34px;
  background:rgba(255,255,255,.9);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:15px;
  opacity:0;
  transform:translateY(-4px);
  transition:opacity .2s,transform .2s,background .2s;
  cursor:pointer;
}
.product-card:hover .product-card__wish{opacity:1;transform:none}
.product-card__wish:hover{background:var(--black);color:#fff}
.product-card__info{padding:16px 0}
.product-card__cat{
  font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold);margin-bottom:6px;font-weight:400;
}
.product-card__cat a{color:inherit}
.product-card__name{
  font-family:var(--font-head);
  font-size:17px;font-weight:400;
  color:var(--black);line-height:1.2;
  margin-bottom:8px;display:block;
  transition:color .18s;
}
.product-card__name:hover{color:var(--gold)}
.product-card__rating{display:flex;align-items:center;gap:6px;margin-bottom:8px}
.product-card__stars{color:var(--gold);font-size:11px;letter-spacing:2px}
.product-card__rcount{font-size:11px;color:var(--grey-lt)}
.product-card__price{display:flex;align-items:center;gap:10px}
.product-card__price ins,.price-now{
  font-family:var(--font-head);
  font-size:18px;font-weight:400;
  color:var(--black);text-decoration:none;
}
.product-card__price del,.price-old{font-size:13px;color:var(--grey-lt);text-decoration:line-through}
.no-products-msg{text-align:center;padding:60px;color:var(--grey-md);grid-column:1/-1;font-size:15px}
.out-of-stock-txt{
  display:flex;align-items:center;justify-content:center;
  width:100%;height:52px;
  background:#f4f4f4;color:var(--grey-md);
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;
}

/* ─── EDITORIAL BANNER ─── */
.editorial{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:580px;
}
.editorial__img{
  background:linear-gradient(160deg,#2A1E18,#7A5040);
  background-size:cover;background-position:center;
  position:relative;overflow:hidden;
}
.editorial__body{
  background:var(--black);
  display:flex;flex-direction:column;justify-content:center;
  padding:80px 72px;
  position:relative;overflow:hidden;
}
.editorial__body::before{
  content:'"';
  position:absolute;bottom:-40px;right:48px;
  font-family:var(--font-serif);font-size:320px;font-style:italic;
  color:rgba(255,255,255,.04);line-height:1;pointer-events:none;
}
.editorial__tag{
  font-size:10px;letter-spacing:.28em;text-transform:uppercase;
  color:var(--gold);margin-bottom:28px;
  display:flex;align-items:center;gap:16px;
}
.editorial__tag::before{content:'';width:28px;height:1px;background:var(--gold)}
.editorial__quote{
  font-family:var(--font-serif);
  font-size:clamp(24px,3vw,40px);
  font-style:italic;font-weight:400;
  color:#fff;line-height:1.4;margin-bottom:24px;
}
.editorial__quote em{font-style:normal;color:var(--gold-lt)}
.editorial__text{
  font-size:14px;color:rgba(255,255,255,.5);
  line-height:1.85;max-width:420px;margin-bottom:40px;font-weight:300;
}

/* ─── TESTIMONIALS ─── */
.testimonials-section{background:var(--bg)}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border)}
.testi-card{
  background:var(--white);
  padding:40px 36px;
  transition:transform .3s var(--ease);
}
.testi-card:hover{transform:translateY(-4px)}
.testi-mark{
  font-family:var(--font-serif);
  font-size:72px;font-style:italic;
  color:var(--gold-lt);line-height:.6;
  margin-bottom:20px;display:block;
}
.testi-body{
  font-family:var(--font-serif);
  font-size:16px;font-style:italic;
  color:var(--charcoal);line-height:1.75;margin-bottom:20px;
}
.testi-stars{color:var(--gold);font-size:12px;letter-spacing:2px;margin-bottom:18px}
.testi-who{display:flex;align-items:center;gap:12px}
.testi-avi{
  width:42px;height:42px;border-radius:50%;
  background:linear-gradient(135deg,#D4B06A,#C9978E);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-head);font-size:16px;color:var(--black);flex-shrink:0;
}
.testi-name{font-size:12px;font-weight:500;letter-spacing:.06em}
.testi-loc{font-size:11px;color:var(--grey-md);margin-top:2px}

/* ─── INSTAGRAM ─── */
.insta-section{background:var(--white)}
.insta-head{
  display:flex;align-items:flex-end;justify-content:space-between;
  margin-bottom:32px;flex-wrap:wrap;gap:20px;
}
.insta-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:2px}
.insta-tile{
  aspect-ratio:1;overflow:hidden;position:relative;display:block;
  background:var(--border);
}
.insta-tile__img,.insta-tile__bg{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;background-size:cover;background-position:center;
  transition:transform .4s var(--ease);
}
.insta-tile:hover .insta-tile__img,
.insta-tile:hover .insta-tile__bg{transform:scale(1.08)}
.insta-tile__over{
  position:absolute;inset:0;
  background:transparent;
  display:flex;align-items:center;justify-content:center;
  font-size:24px;
  transition:background .3s;
}
.insta-tile:hover .insta-tile__over{background:rgba(10,10,10,.42)}
.ig-a{background:linear-gradient(135deg,#5A3828,#9A7060)}
.ig-b{background:linear-gradient(135deg,#3A2A20,#7A5A48)}
.ig-c{background:linear-gradient(135deg,#4A3830,#8A6858)}
.ig-d{background:linear-gradient(135deg,#2A1E18,#6A4838)}
.ig-e{background:linear-gradient(135deg,#3E2C24,#7E5E4E)}
.ig-f{background:linear-gradient(135deg,#302620,#70504A)}

/* ─── NEWSLETTER ─── */
.newsletter-section{
  background:var(--black);
  padding:88px 0;
  text-align:center;
}
.newsletter-section .sec-title{color:#fff}
.newsletter-sub{font-size:14px;color:rgba(255,255,255,.45);max-width:400px;margin:14px auto 44px;line-height:1.75;font-weight:300}
.newsletter-form{display:flex;max-width:480px;margin:0 auto}
.newsletter-input{
  flex:1;padding:14px 20px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.15);border-right:none;
  color:#fff;font-family:var(--font-body);font-size:14px;outline:none;
  border-radius:2px 0 0 2px;transition:border-color .2s;
}
.newsletter-input::placeholder{color:rgba(255,255,255,.35)}
.newsletter-input:focus{border-color:var(--gold)}
.newsletter-btn{
  background:var(--gold);color:#fff;
  padding:14px 28px;
  font-family:var(--font-body);font-size:11px;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;
  border-radius:0 2px 2px 0;
  transition:background .2s;white-space:nowrap;
}
.newsletter-btn:hover{background:var(--gold-dk)}
.newsletter-msg{margin-top:14px;font-size:12px;color:var(--gold-lt);min-height:18px}

/* ─── FOOTER ─── */
.site-footer{background:#060604;padding:72px 0 40px}
.footer-grid{
  display:grid;
  grid-template-columns:1.8fr 1fr 1fr 1fr;
  gap:56px;margin-bottom:56px;
}
.footer-brand__logo{display:block;margin-bottom:18px}
.footer-brand__logo img{height:40px;width:auto}
.footer-about{font-size:13px;color:rgba(255,255,255,.38);line-height:1.85;max-width:270px;margin-bottom:28px;font-weight:300}
.footer-socials{display:flex;gap:10px}
.footer-social{
  width:36px;height:36px;
  border:1px solid rgba(255,255,255,.12);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:10px;font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;
  color:rgba(255,255,255,.4);
  transition:border-color .2s,color .2s,background .2s;
}
.footer-social:hover{border-color:var(--gold);color:var(--gold)}
.footer-col-title{
  font-size:10px;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;
  color:rgba(255,255,255,.55);margin-bottom:22px;
}
.footer-links li{margin-bottom:11px}
.footer-links a{font-size:13px;color:rgba(255,255,255,.32);transition:color .2s;font-weight:300}
.footer-links a:hover{color:rgba(255,255,255,.8)}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.06);
  padding-top:32px;
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:14px;
}
.footer-copy{font-size:12px;color:rgba(255,255,255,.22);font-weight:300}
.footer-pay{display:flex;gap:8px;flex-wrap:wrap}
.pay-badge{
  border:1px solid rgba(255,255,255,.1);border-radius:2px;
  padding:5px 12px;font-size:9px;
  letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.28);font-weight:400;
}

/* ─── WHATSAPP ─── */
.wa-btn{
  position:fixed;bottom:calc(var(--bottom-bar) + 16px);right:28px;
  width:52px;height:52px;
  background:#25D366;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 20px rgba(37,211,102,.35);
  z-index:350;
  transition:transform .2s,box-shadow .2s;
}
.wa-btn:hover{transform:scale(1.08);box-shadow:0 6px 28px rgba(37,211,102,.5)}
@media(min-width:769px){.wa-btn{bottom:28px}}

/* ─── SHOP / ARCHIVE PAGE ─── */
.woo-archive{padding:52px 0 88px}
.archive-header{
  margin-bottom:36px;
  padding-bottom:24px;
  border-bottom:1px solid var(--border);
}
.archive-title{
  font-family:var(--font-head);
  font-size:clamp(28px,4vw,48px);
  font-weight:400;
  color:var(--black);
  margin-bottom:8px;
  letter-spacing:.02em;
}
.shop-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:28px;
  flex-wrap:wrap;
  gap:12px;
}
.shop-page{padding:52px 0 88px}
.shop-topbar{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:36px;padding-bottom:20px;
  border-bottom:1px solid var(--border);
  flex-wrap:wrap;gap:14px;
}
.shop-topbar__left{font-size:13px;color:var(--grey-md);display:flex;align-items:center;gap:8px}
.shop-breadcrumb{font-size:12px;color:var(--grey-lt)}
.shop-breadcrumb a{color:var(--grey-md)}
.shop-breadcrumb a:hover{color:var(--black)}
.shop-layout{display:grid;grid-template-columns:1fr;gap:44px;align-items:start}
.shop-sidebar{display:none} /* sidebar removed — hide if present */
.shop-sidebar__title{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--black);margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--border)}
.sidebar-widget{margin-bottom:36px}
.sidebar-widget-title{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--grey-dk);margin-bottom:14px}
.sidebar-cat-list li{margin-bottom:8px}
.sidebar-cat-list a{font-size:13px;color:var(--grey-md);transition:color .2s;display:flex;align-items:center;justify-content:space-between}
.sidebar-cat-list a:hover,.sidebar-cat-list a.current{color:var(--black)}
.sidebar-cat-count{font-size:11px;color:var(--grey-lt)}

/* WooCommerce */
.woocommerce ul.products{
  display:grid;grid-template-columns:repeat(3,1fr);gap:2px;list-style:none;
  background:var(--border);
}
.woocommerce ul.products li.product{background:var(--bg)}
.woocommerce nav.woocommerce-pagination ul{
  display:flex;gap:6px;margin-top:52px;list-style:none;justify-content:center;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  display:flex;align-items:center;justify-content:center;
  width:40px;height:40px;
  border:1px solid var(--border);
  font-size:13px;color:var(--grey-md);
  transition:all .2s;border-radius:2px;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:var(--black);color:#fff;border-color:var(--black);
}
.woocommerce-result-count{font-size:13px;color:var(--grey-md)}
.woocommerce-ordering select{
  border:1px solid var(--border);padding:9px 14px;
  font-family:var(--font-body);font-size:12px;
  border-radius:2px;outline:none;background:var(--white);color:var(--grey-dk);
}
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.woocommerce div.product h1.product_title{
  font-family:var(--font-head);font-size:38px;font-weight:400;
  margin-bottom:16px;line-height:1.1;letter-spacing:.02em;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price{
  font-family:var(--font-head);font-size:26px;margin-bottom:24px;color:var(--black);
}
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .single_add_to_cart_button{
  background:var(--black)!important;color:#fff!important;
  font-family:var(--font-body)!important;
  font-size:11px!important;font-weight:500!important;
  letter-spacing:.16em!important;text-transform:uppercase!important;
  padding:0 36px!important;height:52px!important;
  border-radius:2px!important;border:none!important;
  transition:background .2s!important;
  display:inline-flex!important;align-items:center!important;
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce .single_add_to_cart_button:hover{background:var(--gold)!important}
.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--grey-lt);margin-bottom:28px}
.woocommerce .woocommerce-breadcrumb a{color:var(--grey-md)}
.woocommerce .woocommerce-breadcrumb a:hover{color:var(--black)}

/* ─── PAGE/BLOG ─── */
.page-wrap,.post-wrap{padding:72px 0}
.page-title,.post-title{font-family:var(--font-head);font-size:clamp(28px,4vw,52px);font-weight:400;margin-bottom:32px;line-height:1.1}
.page-content-body,.post-content-body{font-size:16px;line-height:1.85;color:var(--grey-dk);max-width:740px}
.page-content-body h2,.post-content-body h2{font-family:var(--font-head);font-size:28px;font-weight:400;color:var(--black);margin:40px 0 16px}
.page-content-body p,.post-content-body p{margin-bottom:20px}

/* ─── REVEAL ANIMATIONS ─── */
.reveal{
  opacity:0;transform:translateY(24px);
  transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);
}
.reveal.in{opacity:1;transform:none}
.reveal-l{opacity:0;transform:translateX(-24px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}
.reveal-l.in{opacity:1;transform:none}

/* ─── RESPONSIVE ─── */
@media(max-width:1200px){
  .products-grid{grid-template-columns:repeat(3,1fr)}
  .cat-row{grid-template-columns:repeat(4,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr;gap:40px}
}
@media(max-width:860px){
  .primary-nav{display:none}
  .hdr-shop-btn{display:none}
  .mobile-toggle{display:flex}
  .editorial{grid-template-columns:1fr}
  .editorial__img{min-height:380px}
  .editorial__body{padding:56px 40px}
  .testi-grid{grid-template-columns:1fr 1fr}
  .trust-strip{grid-template-columns:repeat(2,1fr)}
  .trust-strip__item:nth-child(2){border-right:none}
  .shop-layout{grid-template-columns:1fr}
  .shop-sidebar{display:none}
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr)}
  .cat-row{grid-template-columns:repeat(3,1fr)}
}
@media(min-width:861px) and (max-width:1024px){
  .primary-nav{display:flex}
  .nav-list{gap:20px}
  .nav-list>li>a{font-size:12px}
}
@media(max-width:768px){
  :root{--nav-h:60px}
  .header__inner{padding:0 16px;gap:8px}
  .logo-img{height:36px;max-width:120px}
  .hdr-btn{width:36px;height:36px}
  .hdr-btn svg{width:18px;height:18px}

  .products-grid{grid-template-columns:repeat(2,1fr)}
  .cat-row{grid-template-columns:repeat(2,1fr)}
  .testi-grid{grid-template-columns:1fr;background:none;gap:16px}
  .insta-grid{grid-template-columns:repeat(3,1fr)}
  .newsletter-form{flex-direction:column}
  .newsletter-input{border-right:1px solid rgba(255,255,255,.15);border-bottom:none;border-radius:2px 2px 0 0}
  .newsletter-btn{border-radius:0 0 2px 2px}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .trust-strip{grid-template-columns:1fr}
  .trust-strip__item{border-right:none;border-bottom:1px solid rgba(255,255,255,.07)}
  .trust-strip__item:last-child{border-bottom:none}
  .woocommerce div.product{grid-template-columns:1fr}
  .hero-video__content{bottom:88px;left:24px;right:24px}
  .hero-video__h1{font-size:clamp(38px,9vw,62px)}
  .hero-video__scroll{display:none}
  .section{padding:60px 0}
  .insta-head{flex-direction:column;gap:16px}
  .sec-head{margin-bottom:32px}
  .cat-filter-btn{padding:8px 16px;font-size:11px}
}
@media(max-width:480px){
  .products-grid{grid-template-columns:repeat(2,1fr)}
  .cat-row{grid-template-columns:repeat(2,1fr)}
  .insta-grid{grid-template-columns:repeat(3,1fr)}
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr)}
  .hero-video__btns{flex-direction:column;gap:10px}
  .hero-video__btns .btn{width:100%;justify-content:center}
}

/* Mobile bottom padding to avoid bottom nav overlap */
@media(max-width:768px){
  .site-footer{padding-bottom:calc(var(--bottom-bar) + 32px)}
}


/* ============================================================
   LIBRA LUXE — About Page
   ============================================================ */

/* ── SPLIT HERO ── */
.lx-about__split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 100vh;
}
@media (max-width: 860px) {
  .lx-about__split { grid-template-columns: 1fr; min-height: auto; }
}

/* Left text panel */
.lx-about__split-text {
  display: flex;
  align-items: center;
  background: var(--cream, #faf7f4);
  padding: 120px 60px 80px;
}
@media (max-width: 1100px) { .lx-about__split-text { padding: 100px 40px 60px; } }
@media (max-width: 860px)  { .lx-about__split-text { padding: 100px 24px 60px; } }

.lx-about__split-inner { max-width: 520px; }

.lx-about__eyebrow {
  display: block;
  font-family: 'Tenor Sans', sans-serif;
  font-size: 10px;
  letter-spacing: .25em;
  text-transform: uppercase;
  color: var(--gold, #c9a84c);
  margin-bottom: 16px;
}
.lx-about__h1 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(32px, 4.5vw, 56px);
  font-weight: 300;
  color: var(--charcoal, #1a1a1a);
  line-height: 1.15;
  margin: 0 0 24px;
}
.lx-about__divider {
  width: 48px;
  height: 2px;
  background: var(--gold, #c9a84c);
  margin-bottom: 28px;
}
.lx-about__lead {
  font-size: 16px;
  line-height: 1.8;
  color: var(--mid, #666);
  margin-bottom: 40px;
}

/* Stats row inside hero */
.lx-about__stats-row {
  display: flex;
  gap: 0;
  margin-bottom: 40px;
  border: 1px solid var(--blush, #e8ddd5);
  border-radius: 8px;
  overflow: hidden;
}
.lx-about__stat {
  flex: 1;
  padding: 20px 16px;
  text-align: center;
  border-right: 1px solid var(--blush, #e8ddd5);
}
.lx-about__stat:last-child { border-right: none; }
.lx-about__stat-num {
  font-family: 'Cormorant Garamond', serif;
  font-size: 32px;
  font-weight: 600;
  color: var(--gold, #c9a84c);
  line-height: 1;
  margin-bottom: 4px;
}
.lx-about__stat-lbl {
  font-family: 'Tenor Sans', sans-serif;
  font-size: 9px;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--mid, #888);
}

.lx-about__hero-btns { display: flex; gap: 14px; flex-wrap: wrap; }

/* Right photo panel — NO white space, image fills entire column */
.lx-about__split-photo {
  position: relative;
  overflow: hidden;
  min-height: 600px;
}
@media (max-width: 860px) {
  .lx-about__split-photo { min-height: 70vw; }
}
.lx-about__hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* Gold floating badge on image */
.lx-about__hero-badge {
  position: absolute;
  bottom: 40px;
  left: -1px;
  background: var(--gold, #c9a84c);
  color: #1a1a1a;
  padding: 18px 24px;
  border-radius: 0 8px 8px 0;
  text-align: center;
  box-shadow: 0 8px 30px rgba(0,0,0,.2);
}
.lx-about__hero-badge-top {
  display: block;
  font-family: 'Cormorant Garamond', serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
}
.lx-about__hero-badge-bot {
  display: block;
  font-family: 'Tenor Sans', sans-serif;
  font-size: 9px;
  letter-spacing: .15em;
  text-transform: uppercase;
  margin-top: 4px;
}

/* ── BRAND STORY BAND ── */
.lx-about__story-band { padding: 100px 0; background: #fff; }
.lx-about__story-inner { max-width: 780px; margin: 0 auto; }
.lx-about__story-text p {
  font-size: 16px;
  line-height: 1.9;
  color: var(--mid, #666);
  margin-bottom: 20px;
}
.lx-about__story-text .sec-title { margin-bottom: 32px; }
.lx-about__quote {
  font-family: 'Cormorant Garamond', serif;
  font-size: 20px;
  font-style: italic;
  font-weight: 400;
  color: var(--charcoal, #1a1a1a);
  border-left: 3px solid var(--gold, #c9a84c);
  padding: 12px 0 12px 24px;
  margin: 32px 0 0;
  line-height: 1.7;
}

/* ── VALUES GRID ── */
.lx-about__values { padding: 100px 0; background: var(--cream, #faf7f4); }
.lx-about__values-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-top: 56px;
}
@media (max-width: 860px)  { .lx-about__values-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 540px)  { .lx-about__values-grid { grid-template-columns: 1fr; } }

.lx-value-card {
  background: #fff;
  border: 1px solid var(--blush, #e8ddd5);
  border-radius: 12px;
  padding: 36px 28px;
  transition: transform .25s, box-shadow .25s;
}
.lx-value-card:hover { transform: translateY(-5px); box-shadow: 0 16px 40px rgba(0,0,0,.07); }
.lx-value-card__icon { font-size: 28px; margin-bottom: 16px; }
.lx-value-card__title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 22px;
  font-weight: 500;
  color: var(--charcoal,#1a1a1a);
  margin-bottom: 10px;
}
.lx-value-card__body { font-size: 14px; line-height: 1.75; color: var(--mid,#777); }

/* ── CTA BAND ── */
.lx-about__cta-band { background: var(--charcoal, #1a1a1a); padding: 80px 0; }
.lx-about__cta-band-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
}
.lx-about__cta-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(26px,3.5vw,44px);
  font-weight: 300;
  color: #fff;
  margin-bottom: 10px;
}
.lx-about__cta-title em { color: var(--gold,#c9a84c); font-style: italic; }
.lx-about__cta-sub { color: rgba(255,255,255,.55); font-size: 15px; }
.lx-about__cta-btns { display: flex; gap: 14px; flex-wrap: wrap; }
.lx-about__wa-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14px 28px;
  border: 1px solid rgba(255,255,255,.3);
  color: #fff;
  text-decoration: none;
  font-family: 'Tenor Sans',sans-serif;
  font-size: 11px;
  letter-spacing: .15em;
  text-transform: uppercase;
  border-radius: 2px;
  transition: border-color .2s, color .2s;
}
.lx-about__wa-btn:hover { border-color: var(--gold,#c9a84c); color: var(--gold,#c9a84c); }

/* ── No-image product card ── */
.product-card__img-blank {
  width: 100%;
  aspect-ratio: 3/4;
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2418 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 2px;
}
.product-card__img-blank-icon {
  font-size: 48px;
  opacity: .35;
}


/* ============================================================
   LIBRA LUXE — Category Archive Page  (v18)
   ============================================================ */

/* ── Category Hero ── */
.lx-cat-hero {
  background: var(--cream, #faf8f5);
  padding: 56px 0 48px;
  border-bottom: 1px solid var(--border);
  position: relative;
  overflow: hidden;
}
.lx-cat-hero--has-img {
  background: linear-gradient(
    135deg,
    rgba(0,0,0,.55) 0%,
    rgba(0,0,0,.25) 100%
  ), var(--cat-bg) center/cover no-repeat;
  padding: 80px 0 64px;
  color: #fff;
}
.lx-cat-hero--has-img .lx-breadcrumb,
.lx-cat-hero--has-img .lx-breadcrumb a,
.lx-cat-hero--has-img .lx-breadcrumb__sep {
  color: rgba(255,255,255,.75);
}
.lx-cat-hero--has-img .lx-cat-hero__title {
  color: #fff;
}
.lx-cat-hero--has-img .lx-cat-hero__desc {
  color: rgba(255,255,255,.85);
}
.lx-cat-hero--has-img .lx-cat-hero__count {
  color: rgba(255,255,255,.7);
  border-color: rgba(255,255,255,.3);
}

.lx-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--grey-md);
  margin-bottom: 20px;
}
.lx-breadcrumb a {
  color: var(--grey-md);
  text-decoration: none;
  transition: color .2s;
}
.lx-breadcrumb a:hover { color: var(--black); }
.lx-breadcrumb__sep { opacity: .4; }

.lx-cat-hero__title {
  font-family: var(--font-head);
  font-size: clamp(36px, 5vw, 64px);
  font-weight: 400;
  letter-spacing: .02em;
  color: var(--black);
  margin: 0 0 12px;
  line-height: 1.1;
}
.lx-cat-hero__desc {
  font-size: 15px;
  color: var(--grey-md);
  max-width: 480px;
  line-height: 1.65;
  margin: 0 0 16px;
}
.lx-cat-hero__count {
  display: inline-block;
  font-size: 11px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--grey-md);
  border: 1px solid var(--border);
  padding: 5px 14px;
  border-radius: 40px;
}

/* ── Archive body ── */
.lx-archive__body {
  padding-top: 40px;
  padding-bottom: 80px;
}

/* ── Toolbar ── */
.lx-archive-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 28px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--border);
  flex-wrap: wrap;
  gap: 12px;
}
.lx-archive-toolbar .woocommerce-result-count {
  font-size: 13px;
  color: var(--grey-md);
  margin: 0;
}

/* ── Products grid — uses product-card component ── */
.lx-products-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  background: var(--border);
}
.lx-products-grid .product-card {
  background: var(--bg);
}
@media (max-width: 1024px) {
  .lx-products-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  .lx-products-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ── Pagination ── */
.lx-archive-pagination {
  margin-top: 52px;
  display: flex;
  justify-content: center;
}

/* ── Empty state ── */
.lx-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 100px 24px;
  min-height: 60vh;
}
.lx-empty-state__icon {
  font-size: 40px;
  color: var(--gold);
  margin-bottom: 24px;
  opacity: .5;
  animation: lx-pulse 3s ease-in-out infinite;
}
@keyframes lx-pulse {
  0%, 100% { opacity: .3; transform: scale(1); }
  50%       { opacity: .7; transform: scale(1.1); }
}
.lx-empty-state__title {
  font-family: var(--font-head);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 400;
  color: var(--black);
  margin: 0 0 16px;
  letter-spacing: .02em;
}
.lx-empty-state__text {
  font-size: 15px;
  color: var(--grey-md);
  line-height: 1.7;
  max-width: 400px;
  margin: 0 0 36px;
}

/* ── Fix: hide WC's own ul.products wrapper on archive — we use lx-products-grid ── */
.lx-archive .woocommerce ul.products {
  display: contents;
  background: none;
  gap: 0;
}
.lx-archive .woocommerce ul.products li.product {
  background: none;
}

