.vcs-section {
  --vcs-ivory:#f8f4ee;
  --vcs-paper:#fffdfa;
  --vcs-gold:#c9a86a;
  --vcs-champagne:#d8be8d;
  --vcs-ink:#2f2f2f;
  width:100%;
  box-sizing:border-box;
  margin:0;
  padding:clamp(26px,3vw,48px) clamp(18px,2.2vw,38px) clamp(54px,5vw,84px);
  color:var(--vcs-ink);
  background:var(--vcs-ivory);
  overflow:hidden;
}

.vcs-section *,
.vcs-section *::before,
.vcs-section *::after { box-sizing:border-box; }

.vcs-layout {
  width:min(1860px,100%);
  min-height:780px;
  margin:0 auto;
  display:none;
  grid-template-columns:minmax(390px,35%) minmax(0,65%);
  gap:clamp(34px,3vw,58px);
  align-items:stretch;
}

.vcs-layout.is-active { display:grid; animation:vcsFade .42s ease both; }

.vcs-feature {
  position:relative;
  container-type:inline-size;
  min-height:0;
  aspect-ratio:1110 / 1420;
  align-self:start;
  display:block;
  border-radius:30px;
  overflow:hidden;
  isolation:isolate;
  background:#8c765c;
  box-shadow:0 20px 45px rgba(70,48,24,.14);
}

.vcs-feature > img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  transition:transform .8s cubic-bezier(.2,.7,.2,1);
}

.vcs-feature:hover > img { transform:scale(1.035); }

.vcs-banner-copy {
  position:absolute;
  z-index:2;
  top:6.4%;
  left:6.4%;
  width:38.5%;
  display:flex;
  flex-direction:column;
  align-items:center;
  color:#ad7a32;
  text-align:center;
  pointer-events:none;
}

.vcs-banner-copy__emblem {
  display:flex;
  align-items:center;
  justify-content:center;
  width:3.3cqw;
  height:3.3cqw;
  color:currentColor;
  font-size:2.35cqw;
  line-height:1;
}

.vcs-banner-copy__brand {
  margin-top:4px;
  font-family:"Bodoni Moda","Times New Roman",serif;
  font-size:4.55cqw;
  font-weight:400;
  line-height:1;
  letter-spacing:.16em;
}

.vcs-banner-copy__brand-rule,
.vcs-banner-copy__divider {
  width:78%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:currentColor;
}

.vcs-banner-copy__brand-rule { margin-top:1.05cqw; }
.vcs-banner-copy__divider { margin-top:1.5cqw; }
.vcs-banner-copy__brand-rule i,
.vcs-banner-copy__divider i { flex:1; height:1px; background:currentColor; opacity:.75; }
.vcs-banner-copy__brand-rule b,
.vcs-banner-copy__divider b { font-size:1cqw; font-weight:400; line-height:1; }

.vcs-banner-copy h2 {
  width:100%;
  margin:16.9cqw 0 0;
  display:flex;
  flex-direction:column;
  align-items:center;
  color:currentColor;
  font-family:"Bodoni Moda","Times New Roman",serif;
  font-size:16.2cqw;
  font-weight:400;
  line-height:.72;
  letter-spacing:-.035em;
}

.vcs-banner-copy h2 small,
.vcs-banner-copy h2 strong,
.vcs-banner-copy h2 em {
  display:block;
  color:inherit;
  font:inherit;
}

.vcs-banner-copy h2 small { margin-bottom:.06em; font-family:"Bodoni Moda","Times New Roman",serif; font-size:.36em; font-style:normal; font-weight:400; }
.vcs-banner-copy h2 strong { font-family:"Bodoni Moda","Times New Roman",serif; font-size:1em; font-weight:400; }
.vcs-banner-copy h2 em { margin-top:.04em; font-family:"Bodoni Moda","Times New Roman",serif; font-size:.76em; font-style:italic; font-weight:400; }

.vcs-banner-copy p {
  max-width:92%;
  margin:1.45cqw auto 0;
  color:#493d30;
  font-family:"Montserrat","Helvetica Neue",Arial,sans-serif;
  font-size:2.35cqw;
  font-weight:400;
  line-height:1.42;
}

.vcs-banner-copy--new p { max-width:86%; text-align:left; }

.vcs-banner-copy--signature {
  top:6.1%;
  left:5.3%;
  width:42.5%;
  color:#073f36;
}

.vcs-banner-copy--signature .vcs-banner-copy__emblem,
.vcs-banner-copy--signature .vcs-banner-copy__brand-rule,
.vcs-banner-copy--signature .vcs-banner-copy__divider,
.vcs-banner-copy--signature h2 small,
.vcs-banner-copy--signature h2 em { color:#aa7a36; }
.vcs-banner-copy--signature h2 { margin-top:14cqw; font-size:8.7cqw; line-height:.82; }
.vcs-banner-copy--signature h2 small { align-self:flex-start; margin:0 0 -.16em 2%; font-family:"Italianno","Brush Script MT",cursive; font-size:1.06em; font-style:normal; line-height:.72; }
.vcs-banner-copy--signature h2 strong { font-family:"Bodoni Moda","Times New Roman",serif; font-size:1.08em; letter-spacing:-.065em; }
.vcs-banner-copy--signature h2 em { align-self:flex-start; margin:-.01em 0 0 2%; font-family:"Bodoni Moda","Times New Roman",serif; font-size:1.18em; font-style:normal; line-height:.9; }
.vcs-banner-copy--signature p { color:#213e38; text-align:left; }

.vcs-banner-copy--loved {
  top:7.7%;
  left:8.7%;
  width:40%;
  color:#b48238;
}

.vcs-banner-copy--loved .vcs-banner-copy__emblem {
  width:8.4cqw;
  height:8.4cqw;
  border:1px solid currentColor;
  border-radius:50%;
  font-size:3.4cqw;
}

.vcs-banner-copy--loved h2 { margin-top:19.5cqw; color:#4d2c18; font-size:8.8cqw; line-height:.82; }
.vcs-banner-copy--loved h2 strong { font-family:"Bodoni Moda","Times New Roman",serif; letter-spacing:.01em; }
.vcs-banner-copy--loved h2 em { margin:-.04em 0 -.02em; font-family:"Italianno","Brush Script MT",cursive; color:#e32b53; font-size:1.52em; font-style:normal; line-height:.72; letter-spacing:.01em; }
.vcs-banner-copy--loved p { color:#5a3d27; }

.vcs-feature__shade {
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(43,31,19,.72) 0%,rgba(43,31,19,.34) 48%,rgba(43,31,19,.05) 78%),linear-gradient(0deg,rgba(38,26,15,.5),transparent 42%);
}

.vcs-feature__content {
  position:absolute;
  z-index:2;
  left:clamp(38px,3.6vw,70px);
  bottom:clamp(142px,12vw,184px);
  width:min(390px,76%);
  color:#fff;
}

.vcs-feature__content h2 {
  margin:0;
  color:#fff;
  font-family:"Playfair Display","Cormorant Garamond",Georgia,serif;
  font-size:clamp(54px,4.5vw,82px);
  line-height:1.02;
  font-weight:400;
  letter-spacing:-.035em;
  text-shadow:0 3px 18px rgba(0,0,0,.24);
}

.vcs-feature__ornament {
  width:220px;
  margin:26px 0 24px;
  display:flex;
  align-items:center;
  gap:16px;
  color:var(--vcs-gold);
}

.vcs-feature__ornament i { width:82px; height:1px; background:currentColor; opacity:.85; }
.vcs-feature__ornament b { width:18px; height:18px; font-size:18px; line-height:18px; font-weight:400; }

.vcs-feature__content p {
  max-width:310px;
  margin:0 0 30px;
  color:#fff;
  font-family:"Inter","Helvetica Neue",Arial,sans-serif;
  font-size:clamp(18px,1.4vw,24px);
  line-height:1.42;
}

.vcs-feature__content > a {
  min-width:205px;
  min-height:62px;
  padding:0 25px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:7px;
  color:#fff;
  background:var(--vcs-gold);
  box-shadow:0 10px 25px rgba(45,28,8,.22);
  text-decoration:none;
  font-family:"Playfair Display",Georgia,serif;
  font-size:18px;
  transition:transform .3s ease,background .3s ease;
}

.vcs-feature__content > a:hover { color:#fff; background:#b78f4c; transform:translateY(-3px); }
.vcs-feature__content > a .dashicons { width:20px; height:20px; font-size:20px; }

.vcs-feature footer {
  position:absolute;
  z-index:2;
  left:clamp(38px,3.6vw,70px);
  right:clamp(38px,3.6vw,70px);
  bottom:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:25px;
  color:#fff;
  font-family:"Inter","Helvetica Neue",Arial,sans-serif;
  font-size:13px;
  font-weight:600;
  letter-spacing:.28em;
}

.vcs-feature footer i { width:1px; height:24px; background:rgba(255,255,255,.52); }

.vcs-content { min-width:0; display:flex; flex-direction:column; }

.vcs-tabs {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(22px,3vw,68px);
  align-items:end;
  padding:0 0 16px;
  border-bottom:1px solid rgba(174,139,83,.3);
}

.vcs-tab {
  min-width:0;
  min-height:0;
  padding:0 4px 13px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-bottom:2px solid transparent;
  border-radius:0;
  color:var(--vcs-ink);
  background:transparent !important;
  text-align:center;
  cursor:pointer;
  box-shadow:none !important;
  transition:color .2s ease,border-color .2s ease;
}

.vcs-tab:hover,
.vcs-tab:focus,
.vcs-tab:focus-visible {
  color:#054340 !important;
  background:transparent !important;
  transform:none;
}

.vcs-tab.is-active {
  color:#054340 !important;
  border-color:#054340;
  background:transparent !important;
  box-shadow:none !important;
}

.vcs-tab__icon {
  width:58px;
  height:58px;
  min-width:58px;
  min-height:58px;
  aspect-ratio:1 / 1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  color:#a27c3e;
  background:#f6ead8;
  overflow:hidden;
  line-height:1;
}

.vcs-tab__icon .dashicons {
  width:29px;
  height:29px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:29px;
  line-height:1;
}
.vcs-tab strong {
  display:block;
  margin:0;
  color:var(--vcs-ink) !important;
  opacity:1 !important;
  visibility:visible !important;
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(18px,1.3vw,23px);
  line-height:1.12;
  font-weight:600;
}
.vcs-tab small {
  display:block;
  color:#5c5852 !important;
  opacity:1 !important;
  visibility:visible !important;
  font-family:"Inter","Helvetica Neue",Arial,sans-serif;
  font-size:14px;
  line-height:1.5;
}

.vcs-tab:hover strong,
.vcs-tab:focus strong,
.vcs-tab:focus-visible strong,
.vcs-tab.is-active strong {
  color:var(--vcs-ink) !important;
  opacity:1 !important;
  visibility:visible !important;
}

.vcs-tab:hover small,
.vcs-tab:focus small,
.vcs-tab:focus-visible small,
.vcs-tab.is-active small {
  color:#4f4942 !important;
  opacity:1 !important;
  visibility:visible !important;
}

.vcs-divider { height:1px; margin:34px 0 36px; background:rgba(174,139,83,.3); }

.vcs-products {
  min-width:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.vcs-product {
  position:relative;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(128,103,65,.11);
  border-radius:22px;
  background:var(--vcs-paper);
  box-shadow:0 12px 28px rgba(60,43,22,.09);
  transition:transform .35s ease,box-shadow .35s ease;
}

.vcs-product:hover { transform:translateY(-7px); box-shadow:0 19px 38px rgba(60,43,22,.15); }

.vcs-product__image { display:block; height:390px; overflow:hidden; background:#eee4d5; }
.vcs-product__image img { width:100%; height:100%; object-fit:cover; object-position:center top; transition:transform .65s cubic-bezier(.2,.7,.2,1); }
.vcs-product:hover .vcs-product__image img { transform:scale(1.045); }

.vcs-wishlist {
  position:absolute;
  z-index:2;
  top:16px;
  right:16px;
  width:48px;
  height:48px;
  min-width:48px;
  min-height:48px;
  aspect-ratio:1 / 1;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(201,168,106,.28);
  border-radius:50%;
  color:#5b544b;
  background:rgba(255,255,255,.94);
  box-shadow:0 7px 18px rgba(54,40,24,.12);
  cursor:pointer;
  transition:color .25s ease,background .25s ease,transform .25s ease;
}

.vcs-wishlist:hover,
.vcs-wishlist[aria-pressed="true"] { color:#fff; background:var(--vcs-gold); transform:scale(1.06); }
.vcs-wishlist .dashicons {
  width:21px;
  height:21px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:21px;
  line-height:1;
}

.vcs-product__body { min-height:147px; padding:18px 18px 16px; }
.vcs-product__body > a { color:inherit; text-decoration:none; }
.vcs-product h3 { min-height:44px; margin:0 0 8px; color:var(--vcs-ink); font-family:"Inter","Helvetica Neue",Arial,sans-serif; font-size:15px; line-height:1.45; font-weight:600; }
.vcs-product__price { color:#1f1f1f; font-family:"Inter","Helvetica Neue",Arial,sans-serif; font-size:18px; font-weight:750; line-height:1.2; }
.vcs-product__price del { margin-right:4px; color:#8c867c; font-size:13px; font-weight:500; }
.vcs-product__price ins { text-decoration:none; }

.vcs-product__foot { margin-top:10px; display:flex; align-items:center; justify-content:space-between; gap:10px; }
.vcs-product__foot small { min-width:0; overflow:hidden; color:#665f57; font-family:"Inter","Helvetica Neue",Arial,sans-serif; font-size:12px; white-space:nowrap; text-overflow:ellipsis; }

.vcs-cart {
  width:43px;
  height:43px;
  min-width:43px;
  min-height:43px;
  aspect-ratio:1 / 1;
  flex:0 0 43px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--vcs-gold);
  border-radius:50%;
  color:#9a7438;
  background:#fff;
  text-decoration:none;
  transition:color .25s ease,background .25s ease,transform .25s ease;
}

.vcs-cart:hover { color:#fff; background:var(--vcs-gold); transform:translateY(-2px); }
.vcs-cart .dashicons {
  width:20px;
  height:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
  line-height:1;
}

@keyframes vcsFade { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }

@media (max-width:1320px) {
  .vcs-layout { grid-template-columns:minmax(330px,34%) minmax(0,66%); gap:28px; min-height:690px; }
  .vcs-feature { min-height:0; }
  .vcs-tab { min-height:0; padding:0 4px 12px; }
  .vcs-tab__icon { width:50px; height:50px; }
  .vcs-tab small { font-size:12px; }
  .vcs-product__image { height:325px; }
}

@media (max-width:1024px) {
  .vcs-layout { grid-template-columns:minmax(290px,37%) minmax(0,63%); }
  .vcs-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  .vcs-tab { min-height:0; padding:0 4px 11px; }
  .vcs-tab strong { font-size:16px; }
  .vcs-tab small { font-size:13px; }
  .vcs-divider { margin:24px 0; }
  .vcs-products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vcs-product__image { height:310px; }
}

@media (max-width:767px) {
  .vcs-section { padding:20px 10px 42px; }
  .vcs-layout { display:none !important; min-height:0; }
  .vcs-layout.is-active { display:block !important; min-height:0; animation:none; }
  .vcs-feature { min-height:0; margin-bottom:16px; border-radius:18px; }
  .vcs-banner-copy { top:6.4%; left:6.4%; width:38.5%; }
  .vcs-banner-copy__emblem { width:3.3cqw; height:3.3cqw; font-size:2.35cqw; }
  .vcs-banner-copy__brand { margin-top:2px; font-size:4.55cqw; letter-spacing:.15em; }
  .vcs-banner-copy__brand-rule { margin-top:1.05cqw; }
  .vcs-banner-copy__brand-rule,
  .vcs-banner-copy__divider { width:82%; gap:4px; }
  .vcs-banner-copy__brand-rule b,
  .vcs-banner-copy__divider b { font-size:1cqw; }
  .vcs-banner-copy h2 { margin-top:16.9cqw; font-size:16.2cqw; line-height:.72; }
  .vcs-banner-copy__divider { margin-top:1.5cqw; }
  .vcs-banner-copy p { max-width:96%; margin-top:1.45cqw; font-size:2.35cqw; line-height:1.42; }
  .vcs-banner-copy--signature { top:6.1%; left:5.3%; width:42.5%; }
  .vcs-banner-copy--signature h2 { margin-top:14cqw; font-size:8.7cqw; line-height:.82; }
  .vcs-banner-copy--signature p { font-size:2.2cqw; }
  .vcs-banner-copy--loved { top:7.7%; left:8.7%; width:40%; }
  .vcs-banner-copy--loved .vcs-banner-copy__emblem { width:8.4cqw; height:8.4cqw; font-size:3.4cqw; }
  .vcs-banner-copy--loved h2 { margin-top:19.5cqw; font-size:8.8cqw; line-height:.82; }
  .vcs-feature__content { left:22px; bottom:86px; width:78%; }
  .vcs-feature__content h2 { font-size:39px; letter-spacing:0; }
  .vcs-feature__ornament { width:150px; margin:16px 0 14px; gap:10px; }
  .vcs-feature__ornament i { width:54px; }
  .vcs-feature__content p { max-width:250px; margin-bottom:18px; font-size:15px; line-height:1.35; }
  .vcs-feature__content > a { min-width:154px; min-height:42px; padding:0 15px; gap:9px; border-radius:6px; font-size:14px; }
  .vcs-feature footer { left:18px; right:18px; bottom:18px; gap:10px; font-size:8px; letter-spacing:.14em; }
  .vcs-content { display:block; }
  .vcs-tabs {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    overflow:visible;
    scroll-snap-type:none;
    border-bottom:1px solid rgba(201,168,106,.28);
    margin:0 0 12px;
  }
  .vcs-tabs::-webkit-scrollbar { display:none; }
  .vcs-tab {
    min-width:0;
    min-height:0;
    padding:0 4px 9px;
    display:block;
    border:0;
    border-radius:0;
    background:transparent !important;
    box-shadow:none;
    color:#625d55 !important;
    text-align:center;
    scroll-snap-align:none;
    transform:none !important;
    transition:color .16s ease, border-color .16s ease;
    border-bottom:2px solid transparent;
  }
  .vcs-tab.is-active {
    color:#054340 !important;
    border-color:#054340;
    background:transparent !important;
    box-shadow:none;
  }
  .vcs-tab__icon,
  .vcs-tab small { display:none !important; }
  .vcs-tab strong {
    margin:0;
    font-family:"Playfair Display",Georgia,serif;
    font-size:12px;
    line-height:1.12;
    letter-spacing:0;
    color:inherit !important;
  }
  .vcs-divider { display:none; }
  .vcs-products {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
  }
  .vcs-product:nth-child(n+4) { display:none; }
  .vcs-product { border-radius:12px; box-shadow:0 8px 18px rgba(60,43,22,.08); }
  .vcs-product:hover { transform:none; box-shadow:0 8px 18px rgba(60,43,22,.08); }
  .vcs-product__image { height:132px; }
  .vcs-wishlist {
    top:7px;
    right:7px;
    width:28px;
    height:28px;
    min-width:28px;
    min-height:28px;
    border-radius:999px;
  }
  .vcs-wishlist .dashicons { width:15px; height:15px; font-size:15px; }
  .vcs-product__body { min-height:86px; padding:9px 8px 8px; }
  .vcs-product h3 {
    min-height:31px;
    margin-bottom:6px;
    font-size:10px;
    line-height:1.25;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .vcs-product__price { font-size:11px; line-height:1.15; }
  .vcs-product__price del { font-size:9px; }
  .vcs-product__foot { margin-top:6px; gap:5px; }
  .vcs-product__foot small { font-size:8px; }
  .vcs-cart {
    width:26px;
    height:26px;
    min-width:26px;
    min-height:26px;
    flex-basis:26px;
    border-radius:999px;
  }
  .vcs-cart .dashicons { width:13px; height:13px; font-size:13px; }
}

@media (max-width:767px) {
  .vcs-feature {
    min-height: 0 !important;
    aspect-ratio: 1110 / 1420 !important;
    overflow: hidden !important;
  }

  .vcs-feature__content {
    top: 18px !important;
    bottom: auto !important;
    left: 18px !important;
    width: min(82%, 285px) !important;
    padding-top: 0 !important;
  }

  .vcs-feature__content h2 {
    display: block !important;
    max-width: 230px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    font-size: clamp(31px, 9vw, 38px) !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
    overflow: visible !important;
    text-shadow: 0 3px 14px rgba(0, 0, 0, .34) !important;
  }

  .vcs-feature__ornament {
    margin: 12px 0 12px !important;
  }

  .vcs-feature__content p {
    max-width: 235px !important;
    margin-bottom: 14px !important;
    font-size: 14px !important;
    line-height: 1.34 !important;
  }

  .vcs-product {
    height: auto !important;
    min-height: 0 !important;
  }

  .vcs-product__body {
    height: auto !important;
    min-height: 0 !important;
    padding-bottom: 10px !important;
    overflow: visible !important;
  }

  .vcs-product h3 {
    display: block !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 0 7px !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
    font-size: 9.5px !important;
    line-height: 1.22 !important;
    word-break: normal !important;
  }
}

@media (prefers-reduced-motion:reduce) {
  .vcs-section *, .vcs-section *::before, .vcs-section *::after { animation:none!important; transition:none!important; }
}
