/* HERO */
#hero{position:relative;height:auto;min-height:680px;display:flex;align-items:center;justify-content:flex-start;width:100%;background-color:var(--ink);background-image:linear-gradient(180deg,rgba(12,5,4,.34),rgba(8,3,4,.92));background-size:cover;background-position:bottom left;background-repeat:no-repeat;overflow:visible}
#hero::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 14% 18%,rgba(255,250,247,.08),transparent 28%),radial-gradient(circle at 82% 18%,rgba(221,191,137,.08),transparent 24%)}
.h-noise{position:absolute;inset:0;opacity:.28;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='.05'/%3E%3C/svg%3E")}
.h-grad{position:absolute;inset:0;background:radial-gradient(circle at 45% 35%,rgba(255,248,239,.06),transparent 45%),linear-gradient(140deg,rgba(14,5,5,.18) 0%,rgba(8,3,4,.08) 42%,rgba(8,3,4,.18) 100%)}
.h-vlines{position:absolute;inset:0;overflow:hidden}
.h-vline{position:absolute;width:1px;top:0;height:100%;background:linear-gradient(to bottom,transparent 12%,rgba(221,191,137,.08) 52%,transparent 88%)}
.h-vline:nth-child(1){left:22%;animation:vlinePulse 9s 0s ease-in-out infinite}
.h-vline:nth-child(2){left:68%;animation:vlinePulse 9s 2.8s ease-in-out infinite}
@keyframes vlinePulse{0%,100%{opacity:.28;transform:scaleY(.58)}50%{opacity:.85;transform:scaleY(1)}}

.h-copy{position:relative;z-index:10;padding:0 1rem 0 clamp(1.5rem, 6vw, 4rem);max-width:46%;margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:1.8rem;text-align:left}
.h-eyebrow{display:flex;align-items:center;gap:1rem;margin-bottom:.8rem;animation:fadeUp .8s .6s both}
.h-eline{width:48px;height:1px;background:var(--burg-deep)}
.h-etxt{font-size:.7rem;letter-spacing:.35em;text-transform:uppercase;color:rgba(14,5,4,.72);font-family:'Libre Baskerville',serif}
.h-title{font-family:'Playfair Display',serif;font-size:clamp(4rem,8vw,7rem);line-height:.92;font-weight:400;color:var(--burg-deep);margin-bottom:2.8rem;animation:fadeUp .9s .8s both}
.h-title .it{font-style:italic;color:var(--burg);display:block}
.h-desc{color:rgba(14,5,4,.88);font-family:'Cormorant Garamond',serif;font-size:1.08rem;line-height:1.9;max-width:380px;margin-bottom:3rem;animation:fadeUp .8s 1s both}
.h-btns{display:flex;align-items:center;gap:1.6rem;animation:fadeUp .8s 1.2s both}
.btn-p{position:relative;display:inline-flex;align-items:center;gap:.8rem;background:var(--burg-deep);color:var(--cream);text-decoration:none;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;padding:1rem 2.3rem;overflow:hidden;transition:all .35s;cursor:none}
.btn-p::before{content:'';position:absolute;inset:0;background:var(--burg);transform:translateX(-101%);transition:transform .6s cubic-bezier(.86,0,.07,1)}
.btn-p:hover::before{transform:translateX(0)}
.btn-p:hover{color:var(--cream)}
.btn-p span,.btn-p svg{position:relative;z-index:1}
.btn-p svg{transition:transform .4s}
.btn-p:hover svg{transform:translateX(5px)}
.btn-g{color:rgba(14,5,4,.74);text-decoration:none;font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;display:flex;align-items:center;gap:.7rem;transition:color .3s;cursor:none}
.btn-g:hover{color:var(--burg-deep)}
.btn-g-line{width:26px;height:1px;background:currentColor;transition:width .4s}
.btn-g:hover .btn-g-line{width:42px}

.h-visual {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  overflow: hidden;
  pointer-events: none;
}
.h-visual img{position:absolute;left:0;bottom:0;width:100%;height:auto;max-height:100%;object-fit:cover;object-position:left bottom;display:block;transform:none;box-shadow:none;border-radius:0}
.h-visual::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,5,5,.65) 0%,rgba(14,5,5,.3) 30%,rgba(14,5,5,.72) 100%)}
.h-visual-shadow{position:absolute;bottom:10%;left:50%;transform:translateX(-50%);width:72%;height:1.8rem;background:radial-gradient(circle,rgba(0,0,0,.45),transparent 56%);filter:blur(1px);opacity:.85}

/* INTRO */
.intro{position:relative;padding:10rem 5rem;background:var(--ink);overflow:hidden;text-align:center}
.intro::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 55% 70% at 50% 110%,rgba(128,0,32,.1) 0%,transparent 70%)}
.intro-big{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,4.5vw,4.2rem);line-height:1.18;color:var(--cream);font-weight:400;max-width:880px;margin:0 auto}
.intro-big em{color:var(--gold);font-style:italic}
.intro-orn{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin:3rem 0;opacity:.35}
.intro-orn::before,.intro-orn::after{content:'';flex:1;max-width:110px;height:1px;background:linear-gradient(to right,transparent,var(--gold))}
.intro-orn::after{background:linear-gradient(to left,transparent,var(--gold))}
.intro-diamond{width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
.intro-sub{font-family:'Cormorant Garamond',serif;font-size:1.15rem;color:rgba(255,250,247,.3);line-height:1.85;max-width:580px;margin:0 auto}

/* COLLECTION */
.collection {
  padding: 8rem 5rem 10rem;
  background:
    linear-gradient(180deg, #0C0203 0%, #150508 50%, #0C0203 100%);
  position: relative; overflow: hidden;
}
.collection::before {
  content:''; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(90deg, rgba(201,169,110,.018) 1px, transparent 1px),
    linear-gradient(rgba(201,169,110,.015) 1px, transparent 1px);
  background-size: 140px 140px;
  opacity: .12;
}
.col-hdr {
  text-align: center; margin-bottom: 5rem;
}
.col-hdr .sec-ey { justify-content: center; }
.col-hdr .sec-ey::before { display: none; }
.col-hdr .sec-sub { margin: .8rem auto 0; }

.product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.6rem; position: relative; z-index: 1;
}

/* PRODUCT CARD */
.p-card {
  display: flex; flex-direction: column;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(250,246,240,.05);
  border-radius: 4px;
  overflow: hidden;
  transition: transform .5s var(--ease-out-expo),
              border-color .4s,
              box-shadow .5s var(--ease-out-expo);
}
.p-card:hover {
  transform: translateY(-8px);
  border-color: rgba(201,169,110,.15);
  box-shadow: 0 28px 60px rgba(0,0,0,.3);
}

/* FEATURED CARD */
.p-featured {
  border-color: rgba(201,169,110,.1);
  background: rgba(201,169,110,.03);
}
.p-featured-badge {
  position: absolute;
  top: 1.1rem; left: 1.1rem; z-index: 3;
  font-size: .48rem; letter-spacing: .28em; text-transform: uppercase;
  background: var(--gold); color: var(--ink);
  padding: .3rem .7rem;
}
.p-card { position: relative; } /* for badge */

/* PRODUCT MEDIA */
.p-media {
  position: relative; overflow: hidden;
  background: linear-gradient(160deg, #F0E8DF 0%, #E2D5CA 100%);
  aspect-ratio: 4/3.2;
}
.p-media::after {
  content:''; position:absolute; inset:0;
  background: linear-gradient(to top, rgba(20,10,8,.1), transparent 45%);
  pointer-events: none;
}
.p-number {
  position: absolute; top: .8rem; right: .9rem; z-index: 2;
  font-family: var(--font-display); font-size: .6rem; font-style: italic;
  color: rgba(20,10,8,.12); letter-spacing: .1em;
}
.p-media img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 20%;
  transition: transform 1.1s var(--ease-out-expo), filter .5s;
}
.p-card:hover .p-media img {
  transform: scale(1.04);
  filter: contrast(1.01) saturate(1.02);
}

/* PRODUCT HOVER LAYER */
.p-hover-layer {
  position: absolute; inset: 0; z-index: 3;
  display: flex; align-items: center; justify-content: center;
  background: rgba(20,10,8,.4);
  opacity: 0; backdrop-filter: blur(2px);
  transition: opacity .4s;
}
.p-card:hover .p-hover-layer { opacity: 1; }
.p-qv-btn {
  background: transparent; border: 1px solid rgba(250,246,240,.5);
  color: var(--cream); font-family: var(--font-ui);
  font-size: .58rem; letter-spacing: .22em; text-transform: uppercase;
  padding: .7rem 1.4rem;
  transform: translateY(8px);
  transition: transform .4s var(--ease-out-expo), background .3s, border-color .3s;
}
.p-card:hover .p-qv-btn {
  transform: none;
}
.p-qv-btn:hover { background: var(--cream); color: var(--ink); border-color: var(--cream); }

.p-corner-tag {
  position: absolute; top: 1rem; left: 1rem; z-index: 3;
  font-size: .44rem; letter-spacing: .26em; text-transform: uppercase;
  border: 1px solid rgba(201,169,110,.3);
  color: var(--gold); padding: .25rem .6rem;
}

/* PRODUCT BODY */
.p-body {
  padding: 1.1rem 1.1rem 1.3rem;
  display: flex; flex-direction: column; gap: .7rem;
}
.p-row { display:flex; align-items:center; justify-content:space-between; gap:.5rem; }
.p-name {
  font-family: var(--font-display); font-size: .92rem;
  letter-spacing: .1em; color: var(--cream);
}
.p-price {
  font-family: var(--font-ui); font-size: .78rem;
  color: var(--gold); letter-spacing: .04em;
}
.p-detail {
  font-family: var(--font-body); font-size: .9rem;
  color: var(--text-dim);
}
.p-cta {
  display: flex; align-items: center; justify-content: space-between;
  width: 100%;
  background: transparent; border: 1px solid rgba(201,169,110,.22);
  color: var(--cream); font-family: var(--font-ui);
  font-size: .62rem; letter-spacing: .2em; text-transform: uppercase;
  padding: .8rem 1rem;
  position: relative; overflow: hidden;
  transition: color .4s, border-color .4s;
  margin-top: .3rem;
}
.p-cta::before {
  content:''; position:absolute; inset:0;
  background: var(--gold); transform: translateX(-102%);
  transition: transform .5s var(--ease-out-expo);
}
.p-cta:hover { color: var(--burg); border-color: var(--gold); }
.p-cta:hover::before { transform: none; }
.p-cta span, .p-cta svg { position:relative; z-index:1; }
.p-cta svg { transition: transform .3s; }
.p-cta:hover svg { transform: translateX(4px); }

/* refined responsive behavior */
@media (max-width: 1100px){
  .col{
    padding:7rem 2rem 9rem;
  }

  .p-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 680px){
  .col{
    padding:6rem 1rem 8rem;
  }

  .col-hdr{
    margin-bottom:3.5rem;
  }

  .p-grid{
    grid-template-columns:1fr;
    gap:1.4rem;
  }

  .p-card{
    border-radius:1.6rem;
    padding:1rem 1rem 1.2rem;
  }

  .p-img{
    border-radius:1.25rem;
  }

  .sec-ttl{
    font-size:clamp(2.2rem,11vw,3.2rem);
  }
}

/* FEAT SPLIT */
.feat{display:grid;grid-template-columns:1fr 1fr;min-height:85vh}
.feat-l{background:var(--burg-deep) url("../images/my-image.jpg") center/cover no-repeat;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.feat-l-pat{position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,rgba(221,191,137,.035) 0,rgba(221,191,137,.035) 1px,transparent 0,transparent 50%);background-size:28px 28px;animation:patShift 18s linear infinite}
@keyframes patShift{to{background-position:56px 56px}}
.feat-glow{position:absolute;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(128,0,32,.55) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);animation:glowPulse 5s ease-in-out infinite}
@keyframes glowPulse{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.6}50%{transform:translate(-50%,-50%) scale(1.12);opacity:1}}
.feat-mono{position:relative;font-family:'Playfair Display',serif;font-size:22rem;font-style:italic;color:rgba(221,191,137,.055);line-height:1;user-select:none;animation:monoPulse 6s ease-in-out infinite}
@keyframes monoPulse{0%,100%{transform:scale(1) rotate(-8deg)}50%{transform:scale(1.04) rotate(-8deg)}}
.feat-badge{position:absolute;width:140px;height:140px;border-radius:50%;border:1px solid rgba(221,191,137,.22);display:flex;flex-direction:column;align-items:center;justify-content:center;animation:spin 25s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.feat-badge-inner{position:absolute;inset:9px;border-radius:50%;border:1px solid rgba(221,191,137,.1)}
.feat-badge-cnt{animation:spinR 25s linear infinite;display:flex;flex-direction:column;align-items:center;gap:2px}
@keyframes spinR{to{transform:rotate(-360deg)}}
.feat-badge-yr{font-family:'Playfair Display',serif;font-size:1.7rem;color:var(--gold);line-height:1}
.feat-badge-txt{font-size:.42rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-mid)}

.feat-r{background:#070102;padding:7rem 6rem;display:flex;flex-direction:column;justify-content:center;position:relative}
.feat-r::before{content:'';position:absolute;left:0;top:15%;bottom:15%;width:1px;background:linear-gradient(to bottom,transparent,rgba(221,191,137,.12),transparent)}
.feat-tag{font-family:'Cormorant Garamond',serif;font-size:.82rem;letter-spacing:.4em;text-transform:uppercase;color:var(--gold-mid);margin-bottom:2rem}
.feat-ttl{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,2.8vw,2.7rem);color:var(--cream);line-height:1.1;margin-bottom:2rem;font-weight:400}
.feat-ttl em{color:var(--gold);font-style:italic}
.feat-body{color:rgba(255,250,247,.42);font-family:'Cormorant Garamond',serif;font-size:1.12rem;line-height:1.9;margin-bottom:3rem}
.feat-stats{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:3.5rem}
.f-stat{border-left:1px solid rgba(221,191,137,.12);padding-left:1.2rem}
.f-stat-n{font-family:'Playfair Display',serif;font-size:2.1rem;color:var(--gold);line-height:1;margin-bottom:.25rem}
.f-stat-l{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}

/* PROCESS */
.proc{
  padding:10rem 5rem;
  background:
    radial-gradient(circle at 50% 20%, rgba(128,0,32,.12) 0%, transparent 38%),
    linear-gradient(180deg, #100304 0%, #070102 100%);
  position:relative;
  overflow:hidden;
}

.proc::before{
  content:'';
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(221,191,137,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(221,191,137,.03) 1px, transparent 1px);
  background-size:110px 110px;
  opacity:.22;
  pointer-events:none;
}

.proc-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:0;
  margin-top:6rem;
  position:relative;
}

.proc-grid::before{
  content:'';
  position:absolute;
  top:29px;
  left:10%;
  right:10%;
  height:1px;
  background:linear-gradient(
    to right,
    transparent,
    rgba(221,191,137,.18) 18%,
    rgba(221,191,137,.18) 82%,
    transparent
  );
  pointer-events:none;
}

.p-step{
  text-align:center;
  padding:0 1.2rem;
  position:relative;
  z-index:1;
}

.p-num-w{
  width:58px;
  height:58px;
  border:1px solid rgba(221,191,137,.24);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 2rem;
  background:rgba(57,16,16,.88);
  transition:border-color .4s, background .4s, transform .4s, box-shadow .4s;
  position:relative;
  box-shadow:0 0 0 1px rgba(255,250,247,.02) inset;
}

.p-step:hover .p-num-w{
  border-color:rgba(221,191,137,.72);
  background:rgba(221,191,137,.08);
  transform:translateY(-3px);
  box-shadow:0 12px 30px rgba(0,0,0,.18);
}

.p-num{
  font-family:'Playfair Display',serif;
  font-size:.72rem;
  color:rgba(221,191,137,.78);
  font-style:italic;
  transition:color .4s;
}

.p-step:hover .p-num{
  color:rgba(255,232,181,.98);
}

.p-dot{
  position:absolute;
  top:-4px;
  right:-4px;
  width:8px;
  height:8px;
  background:rgba(221,191,137,.42);
  border-radius:50%;
  border:1px solid rgba(255,232,181,.75);
  opacity:0;
  transition:opacity .4s, transform .4s;
  transform:scale(.8);
}

.p-step:hover .p-dot{
  opacity:1;
  transform:scale(1);
}

.p-stitle{
  font-family:'Playfair Display',serif;
  font-size:.98rem;
  color:rgba(255,250,247,.94);
  margin-bottom:.6rem;
  letter-spacing:.02em;
}

.p-sdesc{
  font-family:'Cormorant Garamond',serif;
  font-size:1rem;
  color:rgba(255,250,247,.56);
  line-height:1.7;
  font-style:italic;
}

/* LOOKBOOK */
.look{
  padding:10rem 5rem;
  background:
    radial-gradient(circle at top center, rgba(221,191,137,.05), transparent 26%),
    linear-gradient(180deg, #0a0203 0%, var(--ink) 100%);
  position:relative;
  overflow:hidden;
}

.look::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(221,191,137,.025) 1px, transparent 1px),
    linear-gradient(rgba(221,191,137,.02) 1px, transparent 1px);
  background-size:110px 110px;
  opacity:.18;
  pointer-events:none;
}

.look-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  grid-template-rows:auto auto;
  gap:1rem;
  margin-top:5rem;
  position:relative;
  z-index:1;
}

.lk{
  position:relative;
  overflow:hidden;
  cursor:none;
  border-radius:1.6rem;
  background:#120406;
  box-shadow:0 28px 70px rgba(0,0,0,.22);
  isolation:isolate;
}

.lk:nth-child(1){grid-column:1;grid-row:1/3}
.lk:nth-child(2){grid-column:2;grid-row:1}
.lk:nth-child(3){grid-column:3;grid-row:1}
.lk:nth-child(4){grid-column:2/4;grid-row:2}

.lk-img{
  width:100%;
  height:100%;
  background:
    radial-gradient(circle at top, rgba(255,255,255,.08), transparent 28%),
    var(--burg-deep);
  overflow:hidden;
  position:relative;
}

.lk:nth-child(1) .lk-img{
  aspect-ratio:auto;
  height:100%;
  min-height:100%;
}

.lk:nth-child(2) .lk-img,
.lk:nth-child(3) .lk-img{
  aspect-ratio:3/4;
}

.lk:nth-child(4) .lk-img{
  aspect-ratio:16/7;
}

/* supports both old svg and new asset images */
.lk-img img,
.lk-img svg{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  transition:transform .95s cubic-bezier(.25,.46,.45,.94), filter .5s ease;
}

/* slightly different crop for the hero-wide tile */
.lk:nth-child(4) .lk-img img{
  object-position:center 42%;
}

/* subtle image polish */
.lk-img::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(to bottom, rgba(255,255,255,.04), transparent 22%),
    linear-gradient(to top, rgba(14,5,5,.18), transparent 30%);
  z-index:1;
  pointer-events:none;
}

.lk-img::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(to top, rgba(8,2,4,.72) 0%, rgba(8,2,4,.18) 30%, transparent 58%);
  z-index:1;
  pointer-events:none;
}

.lk:hover .lk-img img,
.lk:hover .lk-img svg{
  transform:scale(1.06);
  filter:saturate(1.03) contrast(1.02);
}

.lk-cap{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  z-index:2;
  padding:1.65rem 1.5rem 1.45rem;
  background:linear-gradient(to top, rgba(14,5,5,.94) 0%, rgba(14,5,5,.52) 45%, transparent 100%);
  transform:translateY(55px);
  opacity:0;
  transition:transform .5s ease, opacity .5s ease;
}

.lk:hover .lk-cap{
  transform:none;
  opacity:1;
}

.lk-name{
  font-family:'Playfair Display',serif;
  font-size:1rem;
  color:var(--cream);
  margin-bottom:.32rem;
  letter-spacing:.03em;
}

.lk-detail{
  font-size:.6rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:rgba(221,191,137,.78);
}

/* MATERIALS */
.mats{padding:10rem 5rem;background:var(--ink)}
.mat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(221,191,137,.05);margin-top:5rem;border:1px solid rgba(221,191,137,.05)}
.mat-item{background:var(--ink);padding:2.5rem;position:relative;overflow:hidden;cursor:none;transition:background .4s}
.mat-item:hover{background:#0d0205}
.mat-swatch{width:56px;height:56px;border-radius:50%;margin-bottom:1.5rem;transition:transform .4s;position:relative}
.mat-swatch::after{content:'';position:absolute;inset:2px;border-radius:50%;border:1px solid rgba(255,255,255,.07)}
.mat-item:hover .mat-swatch{transform:scale(1.1)}
.mat-name{font-family:'Playfair Display',serif;font-size:.95rem;color:var(--cream);margin-bottom:.38rem}
.mat-desc{font-family:'Cormorant Garamond',serif;font-size:.88rem;color:var(--muted);line-height:1.65}
.mat-origin{font-size:.55rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(221,191,137,.28);margin-top:.75rem}
.mat-sheen{position:absolute;inset:0;background:linear-gradient(130deg,rgba(128,0,32,.12) 0%,transparent 55%);opacity:0;transition:opacity .4s}
.mat-item:hover .mat-sheen{opacity:1}

/* NEWSLETTER */
.nl{padding:10rem 5rem;text-align:center;position:relative;overflow:hidden}
.nl::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--burg-deep) 0%,#12040a 100%)}
.nl::after{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,rgba(221,191,137,.018) 0,rgba(221,191,137,.018) 1px,transparent 0,transparent 38px),repeating-linear-gradient(-45deg,rgba(221,191,137,.018) 0,rgba(221,191,137,.018) 1px,transparent 0,transparent 38px)}
.nl>*{position:relative;z-index:1}
.nl-ey{font-size:.6rem;letter-spacing:.42em;text-transform:uppercase;color:var(--gold-mid);margin-bottom:1.4rem}
.nl-ttl{font-family:'Playfair Display',serif;font-size:clamp(1.9rem,3.2vw,3rem);color:var(--cream);font-weight:400;margin-bottom:.9rem}
.nl-ttl em{color:var(--gold);font-style:italic}
.nl-sub{font-family:'Cormorant Garamond',serif;font-size:1.1rem;color:rgba(255,250,247,.3);margin-bottom:3.5rem}
.nl-form{display:flex;max-width:490px;margin:0 auto}
.nl-in{flex:1;background:rgba(255,250,247,.035);border:1px solid rgba(221,191,137,.12);border-right:none;padding:1.1rem 1.5rem;font-family:'Libre Baskerville',serif;font-size:.78rem;color:var(--cream);outline:none;transition:border-color .3s}
.nl-in::placeholder{color:rgba(255,250,247,.18)}
.nl-in:focus{border-color:rgba(221,191,137,.38)}
.nl-sub-btn{background:var(--gold);color:var(--burg-deep);border:none;padding:1.1rem 1.9rem;font-family:'Libre Baskerville',serif;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;cursor:none;transition:background .3s;white-space:nowrap}
.nl-sub-btn:hover{background:var(--cream)}
.nl-note{margin-top:1.2rem;font-size:.58rem;letter-spacing:.14em;color:rgba(255,250,247,.18);text-transform:uppercase}

/* ─── CONFIGURATOR ─── */
.config{padding:10rem 5rem;background:linear-gradient(180deg,var(--ink) 0%,#0a0202 100%);position:relative;overflow:hidden}
.config::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(221,191,137,.018) 0,rgba(221,191,137,.018) 1px,transparent 0,transparent 80px)}
.config-inner{display:grid;grid-template-columns:1fr 1fr;gap:8rem;align-items:center;margin-top:6rem}
.config-stage{position:relative;display:flex;align-items:center;justify-content:center}
.config-bag-wrap{position:relative;width:340px;height:420px;transition:all .5s cubic-bezier(.25,.46,.45,.94)}
.config-bag-svg{width:100%;height:100%;filter:drop-shadow(0 40px 60px rgba(0,0,0,.7));transition:filter .5s}
.config-bag-wrap:hover .config-bag-svg{filter:drop-shadow(0 60px 80px rgba(0,0,0,.8))}
.config-glow{position:absolute;inset:-40px;border-radius:50%;background:radial-gradient(circle,rgba(128,0,32,.25) 0%,transparent 70%);pointer-events:none;transition:background .5s;animation:cglow 4s ease-in-out infinite}
@keyframes cglow{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.08);opacity:1}}
.config-rotate-hint{position:absolute;bottom:-2.5rem;left:50%;transform:translateX(-50%);font-size:.55rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(221,191,137,.3);white-space:nowrap;display:flex;align-items:center;gap:.5rem}
.config-rotate-hint svg{animation:rotHint 2s ease-in-out infinite}
@keyframes rotHint{0%,100%{transform:rotate(0deg)}50%{transform:rotate(180deg)}}

.config-panel{display:flex;flex-direction:column;gap:2.5rem}
.config-section-title{font-family:'Playfair Display',serif;font-size:.8rem;color:var(--gold-mid);letter-spacing:.3em;text-transform:uppercase;margin-bottom:1rem}
.config-options{display:flex;gap:.8rem;flex-wrap:wrap}
.config-color-btn{width:36px;height:36px;border-radius:50%;border:2px solid transparent;cursor:none;transition:all .3s;position:relative}
.config-color-btn.active{border-color:var(--gold);transform:scale(1.15)}
.config-color-btn::after{content:'';position:absolute;inset:-4px;border-radius:50%;border:1px solid rgba(221,191,137,.2);opacity:0;transition:opacity .3s}
.config-color-btn.active::after{opacity:1}
.config-color-btn:hover{transform:scale(1.1)}
.config-hw-btn{background:transparent;border:1px solid rgba(221,191,137,.2);color:rgba(255,250,247,.45);padding:.5rem 1.2rem;font-family:'Libre Baskerville',serif;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;cursor:none;transition:all .35s}
.config-hw-btn.active,.config-hw-btn:hover{border-color:var(--gold);color:var(--gold);background:rgba(221,191,137,.06)}
.config-monogram-wrap{display:flex;align-items:center;gap:1rem}
.config-mono-input{background:rgba(255,250,247,.04);border:1px solid rgba(221,191,137,.18);color:var(--cream);padding:.75rem 1rem;font-family:'Playfair Display',serif;font-size:1.2rem;letter-spacing:.3em;text-transform:uppercase;width:100px;outline:none;text-align:center;transition:border-color .3s}
.config-mono-input:focus{border-color:rgba(221,191,137,.5)}
.config-mono-input::placeholder{color:rgba(255,250,247,.18);font-size:.85rem;letter-spacing:.2em}
.config-mono-hint{font-family:'Cormorant Garamond',serif;font-size:.9rem;color:rgba(255,250,247,.28);line-height:1.6}
.config-price-bar{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0;border-top:1px solid rgba(221,191,137,.1);border-bottom:1px solid rgba(221,191,137,.1);margin-top:1rem}
.config-price-label{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}
.config-price-val{font-family:'Playfair Display',serif;font-size:1.8rem;color:var(--gold)}
.config-add{width:100%;background:var(--gold);color:var(--burg-deep);border:none;padding:1.15rem;font-family:'Libre Baskerville',serif;font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;cursor:none;transition:all .4s;position:relative;overflow:hidden;margin-top:1rem}
.config-add::before{content:'';position:absolute;inset:0;background:var(--burg-deep);transform:translateX(-101%);transition:transform .55s cubic-bezier(.86,0,.07,1)}
.config-add:hover::before{transform:translateX(0)}
.config-add span{position:relative;z-index:1;transition:color .4s}
.config-add:hover span{color:var(--gold)}

/* ─── HORIZONTAL SCROLL STRIP ─── */
.hscroll-section{padding:8rem 0;background:#060102;overflow:hidden;position:relative}
.hscroll-label{padding:0 5rem;margin-bottom:3rem}
.hscroll-track-wrap{overflow:hidden;cursor:grab;position:relative}
.hscroll-track-wrap:active{cursor:grabbing}
.hscroll-track{display:flex;gap:1.5rem;padding:0 5rem;width:max-content;transition:transform .1s linear;user-select:none}
.hscroll-card{flex:0 0 280px;background:var(--burg-deep);position:relative;overflow:hidden}
.hscroll-img{height:360px;background:var(--burg-deep);position:relative;overflow:hidden;pointer-events:none}
.hscroll-img svg{width:100%;height:100%;display:block;transition:transform .6s ease}
.hscroll-card:hover .hscroll-img svg{transform:scale(1.05)}
.hscroll-info{padding:1.2rem;background:var(--burg-deep)}
.hscroll-name{font-family:'Playfair Display',serif;font-size:.95rem;color:var(--cream);margin-bottom:.2rem}
.hscroll-price{font-family:'Playfair Display',serif;font-size:.82rem;color:var(--gold)}
.hscroll-drag-hint{position:absolute;right:5rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:.35;pointer-events:none}
.hscroll-drag-hint span{font-size:.55rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}
.hscroll-drag-icon{width:48px;height:48px;border:1px solid var(--gold-mid);border-radius:50%;display:flex;align-items:center;justify-content:center;animation:dragPulse 2s ease-in-out infinite}
@keyframes dragPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}

/* ─── CINEMATIC BANNER ─── */
.cinema{position:relative;height:65vh;min-height:400px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--burg-deep)}
.cinema-bg{position:absolute;inset:0;overflow:hidden}
.cinema-canvas{position:absolute;inset:0;width:100%;height:100%}
.cinema-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(14,5,5,.8) 0%,rgba(57,16,16,.4) 50%,rgba(14,5,5,.8) 100%)}
.cinema-content{position:relative;z-index:2;text-align:center}
.cinema-eyebrow{font-size:.6rem;letter-spacing:.5em;text-transform:uppercase;color:var(--gold-mid);margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;gap:1rem}
.cinema-eyebrow::before,.cinema-eyebrow::after{content:'';width:40px;height:1px;background:var(--gold-mid)}
.cinema-title{font-family:'Playfair Display',serif;font-size:clamp(2.5rem,6vw,5.5rem);color:var(--cream);font-weight:400;line-height:1;margin-bottom:2rem}
.cinema-title em{font-style:italic;color:var(--gold)}
.cinema-cta{display:inline-flex;align-items:center;gap:.8rem;border:1px solid rgba(221,191,137,.4);color:var(--gold);text-decoration:none;font-family:'Libre Baskerville',serif;font-size:.65rem;letter-spacing:.28em;text-transform:uppercase;padding:1rem 2.5rem;transition:all .4s;position:relative;overflow:hidden}
.cinema-cta::before{content:'';position:absolute;inset:0;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.86,0,.07,1)}
.cinema-cta:hover::before{transform:scaleX(1)}
.cinema-cta:hover{color:var(--burg-deep)}
.cinema-cta span,.cinema-cta svg{position:relative;z-index:1}

/* ─── PRESS ─── */
.press{padding:6rem 5rem;background:var(--ink);border-top:1px solid rgba(221,191,137,.05)}
.press-inner{display:flex;align-items:center;gap:4rem}
.press-label{font-size:.58rem;letter-spacing:.4em;text-transform:uppercase;color:rgba(221,191,137,.25);white-space:nowrap}
.press-line{flex:0 0 1px;height:40px;background:rgba(221,191,137,.1)}
.press-logos{display:flex;align-items:center;gap:3.5rem;flex:1;overflow:hidden}
.press-logo{font-family:'Playfair Display',serif;font-size:clamp(.9rem,1.5vw,1.2rem);color:rgba(255,250,247,.18);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-style:italic;transition:color .4s;cursor:default}
.press-logo:hover{color:rgba(221,191,137,.55)}
.press-quote{flex:1;font-family:'Cormorant Garamond',serif;font-size:1rem;font-style:italic;color:rgba(255,250,247,.25);line-height:1.6;padding-left:3rem;border-left:1px solid rgba(221,191,137,.08);max-width:380px}
.press-quote cite{display:block;font-style:normal;font-size:.58rem;letter-spacing:.25em;text-transform:uppercase;color:rgba(221,191,137,.25);margin-top:.5rem}



/* ─── V2 SECTION MERGE OVERRIDES ─── */
.collection{padding:8rem 5rem 10rem;background:linear-gradient(180deg,#0C0203 0%,#150508 50%,#0C0203 100%);position:relative;overflow:hidden}
.collection::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(201,169,110,.018) 1px,transparent 1px),linear-gradient(rgba(201,169,110,.015) 1px,transparent 1px);background-size:140px 140px;opacity:.12}
.col-hdr{text-align:center;margin-bottom:5rem}
.col-hdr .sec-ey{justify-content:center}
.col-hdr .sec-sub{margin:.8rem auto 0}

.atelier{display:grid;grid-template-columns:1fr 1fr;min-height:70vh;overflow:hidden}
.atelier-visual{background:var(--burg-deep) url("../images/my-image.jpg") center/cover no-repeat;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.atelier-text{background:#08020A;padding:5.5rem 5.5rem;display:flex;flex-direction:column;justify-content:center;gap:1.6rem;position:relative}
.atelier-text::before{content:'';position:absolute;left:0;top:12%;bottom:12%;width:1px;background:linear-gradient(to bottom,transparent,rgba(201,169,110,.1),transparent)}
.at-body{display:flex;flex-direction:column;gap:1rem;margin:.3rem 0 .5rem}
.at-body p{font-family:'Cormorant Garamond',serif;font-size:1.04rem;color:rgba(250,246,240,.4);line-height:1.92;max-width:400px}
.at-pillars{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:.4rem}
.at-pillar{border-left:1px solid rgba(201,169,110,.1);padding-left:1rem}
.at-pillar-icon{color:var(--gold);font-size:.6rem;margin-bottom:.4rem}
.at-pillar-name{font-family:'Playfair Display',serif;font-size:.88rem;color:var(--cream);margin-bottom:.2rem}
.at-pillar-desc{font-family:'Cormorant Garamond',serif;font-size:.88rem;color:rgba(255,250,247,.4)}
.btn-primary{display:inline-flex;align-items:center;gap:.7rem;border:1px solid rgba(201,169,110,.4);color:var(--cream);text-decoration:none;font-family:'Libre Baskerville',serif;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;padding:.85rem 2rem;position:relative;overflow:hidden;transition:color .4s,border-color .4s;background:transparent;max-width:max-content}
.btn-primary::before{content:'';position:absolute;inset:0;background:var(--gold);transform:translateX(-102%);transition:transform .55s}
.btn-primary:hover{color:var(--burg-deep);border-color:var(--gold)}
.btn-primary:hover::before{transform:none}
.btn-primary span,.btn-primary svg{position:relative;z-index:1}
.btn-primary svg{transition:transform .3s}
.btn-primary:hover svg{transform:translateX(4px)}

.lookbook{padding:8rem 5rem 10rem;background:linear-gradient(180deg,#080202 0%,var(--ink) 100%);position:relative;overflow:hidden}
.lookbook::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(201,169,110,.018) 1px,transparent 1px),linear-gradient(rgba(201,169,110,.015) 1px,transparent 1px);background-size:120px 120px;opacity:.14}
.lk-hdr{margin-bottom:4rem}
.lk-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto auto;gap:.8rem;position:relative;z-index:1}
.lk{position:relative;overflow:hidden;border-radius:3px;background:var(--ink);cursor:none;transition:box-shadow .4s}
.lk:hover{box-shadow:0 24px 60px rgba(0,0,0,.3)}
.lk-tall{grid-column:1;grid-row:1/3}
.lk:nth-child(2){grid-column:2}
.lk:nth-child(3){grid-column:3}
.lk-wide{grid-column:2/4}
.lk-media{width:100%;height:100%;background:linear-gradient(160deg,#2C1010 0%,#1A0808 100%);overflow:hidden}
.lk-tall .lk-media{min-height:100%}
.lk:nth-child(2) .lk-media,.lk:nth-child(3) .lk-media{aspect-ratio:3/2.4}
.lk-wide .lk-media{aspect-ratio:16/5}
.lk-media img{width:100%;height:100%;object-fit:cover;object-position:center 18%;padding:0;transition:transform 1s}
.lk:hover .lk-media img{transform:scale(1.05)}
.lk-cap{position:absolute;bottom:0;left:0;right:0;padding:1.4rem 1.2rem 1.1rem;background:linear-gradient(to top,rgba(14,5,5,.95) 0%,rgba(14,5,5,.5) 45%,transparent 100%);transform:translateY(50px);opacity:0;transition:transform .5s,opacity .4s;display:flex;flex-direction:column;gap:.25rem}
.lk:hover .lk-cap{transform:none;opacity:1}
.lk-cap span{font-family:'Playfair Display',serif;font-size:.92rem;color:var(--cream);letter-spacing:.04em}
.lk-cap i{font-style:normal;font-family:'Libre Baskerville',serif;font-size:.52rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-mid)}

/* QUICK VIEW */
.qv-modal{position:fixed;inset:0;z-index:900;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .35s}
.qv-modal.open{opacity:1;pointer-events:all}
.qv-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(8px)}
.qv-panel{position:relative;z-index:1;width:min(880px,92vw);display:grid;grid-template-columns:1.05fr .95fr;background:#0c0203;border:1px solid rgba(221,191,137,.1);box-shadow:0 30px 80px rgba(0,0,0,.45)}
.qv-close{position:absolute;top:1rem;right:1rem;z-index:2;background:none;border:none;color:rgba(255,250,247,.55);cursor:none}
.qv-media{background:linear-gradient(160deg,#f0e8df 0%,#e2d5ca 100%);aspect-ratio:4/4.2}
.qv-media img{width:100%;height:100%;object-fit:cover}
.qv-info{padding:2.2rem;display:flex;flex-direction:column;justify-content:center}
.qv-eyebrow{font-size:.55rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-mid);margin-bottom:1rem}
.qv-name{font-family:'Playfair Display',serif;font-size:2rem;color:var(--cream);font-weight:400;margin-bottom:.8rem}
.qv-price{font-family:'Playfair Display',serif;font-size:1rem;color:var(--gold);margin-bottom:1rem}
.qv-divider{height:1px;background:rgba(221,191,137,.09);margin:1rem 0}
.qv-spec{display:flex;justify-content:space-between;gap:1rem;font-size:.72rem;letter-spacing:.08em;color:rgba(255,250,247,.58)}
.toast{position:fixed;left:50%;bottom:1.4rem;transform:translateX(-50%) translateY(14px);z-index:950;background:#130607;border:1px solid rgba(221,191,137,.12);color:var(--cream);font-family:'Libre Baskerville',serif;font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;padding:.8rem 1.8rem;opacity:0;pointer-events:none;transition:opacity .4s,transform .4s}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}


/* ─── WhatsApp + section title refinements ─── */
.collection .sec-ey,
.atelier-text .sec-ey,
.lookbook .sec-ey{
  display:flex;
  align-items:center;
  gap:1rem;
  font-family:'Libre Baskerville',serif;
  font-size:.58rem;
  letter-spacing:.42em;
  text-transform:uppercase;
  color:rgba(201,169,110,.68);
  margin-bottom:1.55rem;
}

.collection .sec-ey::before,
.atelier-text .sec-ey::before,
.lookbook .sec-ey::before{
  content:'';
  display:block;
  width:30px;
  height:1px;
  background:linear-gradient(to right, rgba(201,169,110,.78), rgba(201,169,110,.18));
  flex:0 0 30px;
}

.collection .sec-ttl,
.atelier-text .sec-ttl,
.lookbook .sec-ttl{
  margin:0;
  font-family:'Playfair Display',serif;
  font-size:clamp(3.8rem, 7vw, 5.8rem);
  line-height:.98;
  font-weight:400;
  letter-spacing:-.035em;
  color:#f5eee9;
  text-wrap:balance;
}

.collection .sec-ttl em,
.atelier-text .sec-ttl em,
.lookbook .sec-ttl em{
  color:#c8a15f;
  font-style:italic;
  font-weight:400;
}

.collection .sec-sub,
.atelier-text .sec-sub,
.lookbook .sec-sub{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.08rem,1.45vw,1.3rem);
  line-height:1.65;
  color:rgba(245,238,233,.36);
  max-width:620px;
}

.col-hdr .sec-ey,
.col-hdr .sec-sub{
  justify-content:center;
  text-align:center;
}

.col-hdr .sec-ey::before{
  display:none;
}

.lk-hdr .sec-ttl,
.atelier-text .sec-ttl{
  max-width:780px;
}

@media (max-width: 820px){
  .collection .sec-ey,
  .atelier-text .sec-ey,
  .lookbook .sec-ey{
    gap:.8rem;
    font-size:.52rem;
    letter-spacing:.34em;
    margin-bottom:1.1rem;
  }

  .collection .sec-ey::before,
  .atelier-text .sec-ey::before,
  .lookbook .sec-ey::before{
    width:24px;
    flex-basis:24px;
  }

  .collection .sec-ttl,
  .atelier-text .sec-ttl,
  .lookbook .sec-ttl{
    font-size:clamp(2.7rem, 12vw, 4.1rem);
    line-height:1.02;
  }

  .collection .sec-sub,
  .atelier-text .sec-sub,
  .lookbook .sec-sub{
    font-size:1rem;
    max-width:100%;
  }
}


/* ─── merged version refinements: smaller titles + centered narrower content ─── */
.collection .sec-ttl,
.atelier-text .sec-ttl,
.lookbook .sec-ttl{
  font-size:clamp(3rem,5.2vw,4.7rem);
}

.product-grid{
  width:min(1080px,100%);
  margin:0 auto;
}

.lk-grid{
  width:min(980px,100%);
  margin:0 auto;
}

.col-hdr,
.lk-hdr{
  width:min(900px,100%);
  margin-left:auto;
  margin-right:auto;
}

@media (max-width: 820px){
  .collection .sec-ttl,
  .atelier-text .sec-ttl,
  .lookbook .sec-ttl{
    font-size:clamp(2.3rem,9vw,3.45rem);
  }

  .product-grid,
  .lk-grid,
  .col-hdr,
  .lk-hdr{
    width:100%;
  }
}
