:root{
  --lx-bg:#fbf7f2;
  --lx-surface:#ffffff;
  --lx-ink:#111111;
  --lx-muted:#6b645c;
  --lx-line:rgba(17,17,17,.10);
  --lx-accent:#c7a36b;        /* champagne */
  --lx-accent2:#d7a8b8;       /* blush */
  --lx-shadow:0 18px 50px rgba(17,17,17,.10);
  --lx-radius:18px;
  --lx-radius-sm:12px;
  --lx-max:1240px;
  --lx-pad:clamp(16px, 2vw, 28px);
  --lx-serif: ui-serif, "Georgia", "Times New Roman", serif;
  --lx-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Inter, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background:var(--lx-bg);
  color:var(--lx-ink);
  font-family:var(--lx-sans);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit}
img{max-width:100%;height:auto;display:block}

.lx-container{max-width:var(--lx-max); margin:0 auto; padding:0 var(--lx-pad);}
.lx-surface{background:var(--lx-surface); border:1px solid var(--lx-line); border-radius:var(--lx-radius); box-shadow:var(--lx-shadow);}
.lx-pill{display:inline-flex; align-items:center; gap:10px; padding:10px 14px; border:1px solid var(--lx-line); border-radius:999px; background:rgba(255,255,255,.7); backdrop-filter: blur(10px);}

.lx-announce{
  background:linear-gradient(90deg, rgba(199,163,107,.20), rgba(215,168,184,.18));
  border-bottom:1px solid var(--lx-line);
  color:var(--lx-ink);
  font-size:13px;
}
.lx-announce .lx-container{display:flex; justify-content:center; padding:10px var(--lx-pad);}

.lx-header{
  position:sticky; top:0; z-index:50;
  background:rgba(251,247,242,.75);
  backdrop-filter: blur(12px);
  border-bottom:1px solid var(--lx-line);
}
.lx-header-inner{
  display:grid;
  grid-template-columns: 1fr auto 1fr;
  align-items:center;
  padding:16px 0;
  gap:12px;
}
.lx-logo{
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:14px;
}
.lx-nav ul{list-style:none; padding:0; margin:0; display:flex; gap:18px; justify-content:center; align-items:center;}
.lx-nav a{font-size:13px; letter-spacing:.08em; text-transform:uppercase; text-decoration:none; opacity:.92}
.lx-actions{display:flex; justify-content:flex-end; gap:10px; align-items:center;}
.lx-iconbtn{
  width:40px; height:40px; border-radius:999px;
  border:1px solid var(--lx-line);
  background:rgba(255,255,255,.72);
  display:inline-flex; align-items:center; justify-content:center;
  cursor:pointer;
}
.lx-iconbtn:hover{transform: translateY(-1px); transition: .18s ease;}

.lx-hero{
  padding:36px 0 10px;
}
.lx-hero-wrap{
  position:relative;
  overflow:hidden;
  border-radius: calc(var(--lx-radius) + 8px);
  border:1px solid var(--lx-line);
  background:
    radial-gradient(1200px 500px at 10% 20%, rgba(215,168,184,.35), transparent 60%),
    radial-gradient(900px 500px at 80% 20%, rgba(199,163,107,.32), transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.85), rgba(255,255,255,.60));
  min-height: 560px;
  box-shadow: var(--lx-shadow);
}
.lx-hero-media{
  position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(251,247,242,.98) 0%, rgba(251,247,242,.70) 44%, rgba(251,247,242,.10) 68%, rgba(251,247,242,0) 100%),
    url("assets/img/hero-placeholder.jpg") center/cover no-repeat;
  opacity:.95;
}
.lx-hero-content{
  position:relative;
  padding: clamp(22px, 4vw, 56px);
  max-width: 620px;
}
.lx-eyebrow{
  font-size:12px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--lx-muted);
  margin-bottom:14px;
}
.lx-h1{
  font-family:var(--lx-serif);
  font-weight:600;
  line-height:1.02;
  font-size: clamp(38px, 5vw, 64px);
  margin:0 0 16px;
}
.lx-sub{
  color:var(--lx-muted);
  font-size:16px;
  line-height:1.6;
  max-width: 44ch;
}
.lx-hero-ctas{display:flex; gap:12px; margin-top:22px; flex-wrap:wrap;}
.lx-btn{
  appearance:none; border:1px solid var(--lx-ink);
  background:var(--lx-ink); color:#fff;
  border-radius:999px;
  padding:12px 18px;
  font-size:13px;
  letter-spacing:.10em;
  text-transform:uppercase;
  cursor:pointer;
  text-decoration:none;
  display:inline-flex; align-items:center; gap:10px;
}
.lx-btn:hover{transform: translateY(-1px); transition:.18s ease;}
.lx-btn.outline{background:transparent; color:var(--lx-ink); border-color:var(--lx-line);}
.lx-btn.outline:hover{border-color:rgba(17,17,17,.26)}

.lx-trust{
  margin-top:18px;
  display:flex; flex-wrap:wrap; gap:10px;
  color:var(--lx-muted);
  font-size:13px;
}
.lx-trust .lx-pill{gap:8px}

.lx-section{padding:36px 0;}
.lx-kicker{color:var(--lx-muted); letter-spacing:.22em; text-transform:uppercase; font-size:12px; margin:0 0 8px;}
.lx-title{
  font-family:var(--lx-serif);
  font-weight:600;
  margin:0 0 12px;
  font-size: clamp(26px, 3.2vw, 40px);
}
.lx-lede{color:var(--lx-muted); max-width:72ch; line-height:1.7; margin:0 0 18px;}

.lx-collections{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:18px;
}
.lx-collection{
  position:relative;
  overflow:hidden;
  border-radius: var(--lx-radius);
  border:1px solid var(--lx-line);
  min-height: 320px;
  box-shadow: 0 18px 60px rgba(17,17,17,.09);
  background: #eee;
}
.lx-collection::before{
  content:"";
  position:absolute; inset:0;
  background: radial-gradient(800px 380px at 20% 20%, rgba(255,255,255,.20), transparent 60%),
              linear-gradient(0deg, rgba(17,17,17,.55), rgba(17,17,17,0) 55%);
}
.lx-collection .label{
  position:absolute; left:18px; bottom:18px;
  color:#fff;
  font-size:14px;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.lx-collection .sub{
  position:absolute; left:18px; bottom:42px;
  color:rgba(255,255,255,.82);
  font-size:12px;
}

.lx-products{display:grid; grid-template-columns: repeat(4, 1fr); gap:16px;}
.lx-product{
  border-radius: var(--lx-radius);
  border:1px solid var(--lx-line);
  overflow:hidden;
  background:rgba(255,255,255,.78);
  backdrop-filter: blur(10px);
  box-shadow: 0 18px 60px rgba(17,17,17,.08);
  transition: transform .18s ease, box-shadow .18s ease;
}
.lx-product:hover{transform: translateY(-3px); box-shadow: 0 22px 70px rgba(17,17,17,.12);}
.lx-product .img{
  aspect-ratio: 1 / 1.1;
  background: linear-gradient(135deg, rgba(199,163,107,.24), rgba(215,168,184,.22));
}
.lx-product .body{padding:14px 14px 16px;}
.lx-product .name{font-size:14px; margin:0 0 6px; line-height:1.3;}
.lx-product .meta{display:flex; justify-content:space-between; align-items:center; gap:10px;}
.lx-price{color:var(--lx-accent); font-weight:700; letter-spacing:.02em;}
.lx-chip{
  font-size:11px; letter-spacing:.14em; text-transform:uppercase;
  padding:6px 10px; border-radius:999px;
  border:1px solid var(--lx-line);
  color:var(--lx-muted);
  background:rgba(255,255,255,.55);
}

.lx-editorial{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:18px;
  align-items:stretch;
}
.lx-editorial .media{
  border-radius: var(--lx-radius);
  border:1px solid var(--lx-line);
  background:
    linear-gradient(180deg, rgba(251,247,242,.10), rgba(251,247,242,.45)),
    url("assets/img/model-silhouette-1.jpg") center/cover no-repeat;
  min-height: 520px;
  box-shadow: var(--lx-shadow);
}
.lx-editorial .copy{
  padding: 26px;
  border-radius: var(--lx-radius);
  border:1px solid var(--lx-line);
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(12px);
  box-shadow: 0 18px 60px rgba(17,17,17,.08);
}
.lx-points{display:grid; gap:10px; margin-top:14px;}
.lx-point{display:flex; gap:10px; align-items:flex-start; color:var(--lx-muted);}
.lx-dot{width:10px;height:10px;border-radius:99px;background:linear-gradient(135deg,var(--lx-accent),var(--lx-accent2)); margin-top:6px;}

.lx-igstrip{
  display:grid;
  grid-template-columns: repeat(6, 1fr);
  gap:10px;
}
.lx-igstrip .tile{
  aspect-ratio: 1/1;
  border-radius: 14px;
  border:1px solid var(--lx-line);
  background: linear-gradient(135deg, rgba(215,168,184,.28), rgba(199,163,107,.22));
}

.lx-footer{
  margin-top: 34px;
  border-top:1px solid var(--lx-line);
  background: rgba(255,255,255,.55);
  backdrop-filter: blur(10px);
}
.lx-footer .grid{
  display:grid;
  grid-template-columns: 1.2fr 1fr 1fr 1fr;
  gap:18px;
  padding:28px 0;
}
.lx-footer .muted{color:var(--lx-muted); line-height:1.7; font-size:14px;}
.lx-footer h4{margin:0 0 10px; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--lx-muted);}
.lx-footer a{color:var(--lx-ink); text-decoration:none; opacity:.85}
.lx-footer a:hover{opacity:1}
.lx-copy{padding:12px 0; border-top:1px solid var(--lx-line); color:var(--lx-muted); font-size:13px;}

@media (max-width: 980px){
  .lx-header-inner{grid-template-columns: 1fr auto 1fr;}
  .lx-nav{display:none;}
  .lx-collections{grid-template-columns: 1fr; }
  .lx-products{grid-template-columns: repeat(2, 1fr);}
  .lx-editorial{grid-template-columns: 1fr;}
  .lx-igstrip{grid-template-columns: repeat(3, 1fr);}
  .lx-footer .grid{grid-template-columns: 1fr 1fr;}
  .lx-hero-wrap{min-height: 520px;}
}


/* === Motion: luxury entrance effects (prefers-reduced-motion respected) === */
[data-animate]{
  opacity:0;
  transform: translateY(10px);
  transition: opacity .8s ease, transform .8s ease;
}
[data-animate].is-in{
  opacity:1;
  transform: translateY(0);
}
@media (prefers-reduced-motion: reduce){
  [data-animate]{opacity:1; transform:none; transition:none;}
}


/* === Overlays (Cart drawer + full-screen search) === */
.lx-search[hidden], .lx-drawer[hidden]{display:none !important;}
.lx-search, .lx-drawer{position:fixed; inset:0; z-index:80;}

.lx-search-backdrop, .lx-drawer-backdrop{
  position:absolute; inset:0;
  background: rgba(17,17,17,.42);
  backdrop-filter: blur(2px);
}
.lx-search-panel{
  position:relative;
  height:100%;
  display:flex;
  flex-direction:column;
  background: rgba(251,247,242,.96);
  backdrop-filter: blur(10px);
}
.lx-search-top{
  display:flex; align-items:center; justify-content:space-between;
  padding: 18px var(--lx-pad);
  border-bottom:1px solid var(--lx-line);
}
.lx-search-box{max-width: var(--lx-max); margin: 0 auto; width:100%; padding: 26px var(--lx-pad);}
#lx-search-input{
  width:100%;
  padding: 18px 18px;
  border-radius: 999px;
  border:1px solid rgba(17,17,17,.14);
  background: rgba(255,255,255,.82);
  font-size: 16px;
  outline: none;
}
#lx-search-input:focus{border-color: rgba(17,17,17,.30); box-shadow: 0 0 0 6px rgba(199,163,107,.14);}
.lx-search-results{
  margin-top:18px;
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap:14px;
}
.lx-sr-item{
  border-radius: 18px;
  border:1px solid var(--lx-line);
  background: rgba(255,255,255,.78);
  overflow:hidden;
  box-shadow: 0 18px 50px rgba(17,17,17,.08);
  text-decoration:none;
}
.lx-sr-item .thumb{aspect-ratio: 1/1; background: linear-gradient(135deg, rgba(215,168,184,.22), rgba(199,163,107,.18));}
.lx-sr-item .body{padding:12px 14px;}
.lx-sr-item .name{font-size:13px; line-height:1.25; margin:0 0 6px;}
.lx-sr-item .price{color:var(--lx-accent); font-weight:700; font-size:13px;}

.lx-drawer-panel{
  position:absolute; top:0; right:0;
  height:100%;
  width:min(440px, 92vw);
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(12px);
  border-left:1px solid var(--lx-line);
  box-shadow: -20px 0 70px rgba(17,17,17,.18);
  display:flex; flex-direction:column;
  transform: translateX(12px);
  animation: lxSlideIn .22s ease forwards;
}
@keyframes lxSlideIn{to{transform: translateX(0);}}
.lx-drawer-top{
  display:flex; align-items:center; justify-content:space-between;
  padding: 16px 16px;
  border-bottom:1px solid var(--lx-line);
}
.lx-drawer-body{padding: 14px 16px; overflow:auto; flex:1;}
.lx-drawer-bottom{
  padding: 14px 16px;
  border-top:1px solid var(--lx-line);
  display:flex; gap:10px;
}
.lx-drawer-bottom .lx-btn{flex:1; justify-content:center;}

/* Woo mini cart look */
.woocommerce-mini-cart{list-style:none; padding:0; margin:0; display:grid; gap:12px;}
.woocommerce-mini-cart-item{
  display:grid;
  grid-template-columns: 64px 1fr auto;
  gap:10px;
  align-items:center;
  border:1px solid var(--lx-line);
  border-radius: 16px;
  padding: 10px;
  background: rgba(255,255,255,.72);
}
.woocommerce-mini-cart-item img{border-radius: 12px; width:64px; height:64px; object-fit:cover;}
.woocommerce-mini-cart-item a{ text-decoration:none; }
.woocommerce-mini-cart__total{margin:14px 0 0; color:var(--lx-muted);}
.woocommerce-mini-cart__buttons{display:none;} /* we provide our own buttons */

/* === Product card hover image swap === */
.lx-wc-card{position:relative;}
.lx-wc-thumb{position:relative; overflow:hidden; border-radius: 18px;}
.lx-wc-thumb img{width:100%; height:auto; display:block; transition: opacity .22s ease, transform .4s ease;}
.lx-wc-thumb img.secondary{position:absolute; inset:0; opacity:0;}
.lx-wc-card:hover .lx-wc-thumb img.primary{opacity:0; transform: scale(1.02);}
.lx-wc-card:hover .lx-wc-thumb img.secondary{opacity:1; transform: scale(1.02);}

/* === Quick Add === */
.lx-quickadd{
  margin-top: 10px;
  display:flex;
  gap:10px;
}
.lx-quickadd .button{
  flex:1;
  border-radius: 999px !important;
  padding: 12px 14px !important;
  font-size: 12px !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
}
.lx-quickadd .button.alt{
  background: var(--lx-ink) !important;
  color:#fff !important;
  border:1px solid var(--lx-ink) !important;
}
.lx-quickadd .button.view{
  background: transparent !important;
  border:1px solid rgba(17,17,17,.14) !important;
}

/* Search responsive */
@media (max-width: 980px){
  .lx-search-results{grid-template-columns: repeat(2, 1fr);}
}

/* === Cart drawer totals + free shipping progress === */
.lx-cart-summary{
  margin-top:14px;
  border-top:1px solid var(--lx-line);
  padding-top:12px;
  display:grid;
  gap:10px;
}
.lx-cart-row{display:flex; justify-content:space-between; align-items:center; color:var(--lx-muted);}
.lx-cart-row strong{color:var(--lx-ink);}
.lx-shipping-bar{
  height:10px;
  border-radius:999px;
  background: rgba(17,17,17,.08);
  overflow:hidden;
}
.lx-shipping-fill{
  height:100%;
  border-radius:999px;
  background: linear-gradient(90deg, var(--lx-accent2), var(--lx-accent));
  width:0%;
  transition: width .35s ease;
}
.lx-cart-note{color:var(--lx-muted); font-size:13px; line-height:1.4;}
