*{box-sizing:border-box}html,body{margin:0}
body.ecp-vault{
  --ecp-accent:#c9a24a;--ecp-cta-ink:#f4ead8;
  --vault-wine:#1c1214;--vault-wine-2:#2a181c;--vault-paper:#f4ead8;--vault-ink:#2a1c14;--vault-gold:#c9a24a;
  background:#1c1214;color:#f4ead8;--ecp-link:#e8d9a8;font-family:Karla,system-ui,sans-serif
}
.ecp-preview-banner{background:#c9a24a;color:#1c1214;text-align:center;font-size:12px;letter-spacing:.18em;text-transform:uppercase;padding:.4rem}
.ecp-preview-banner a{color:inherit}
body.ecp-vault .ecp-merch-util{
  background:#140e10;color:#e8d9a8;border-bottom:1px solid #c9a24a44;letter-spacing:.04em
}
.ecp-nav{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"pad brand tools" "links links links";align-items:center;column-gap:.75rem;row-gap:.7rem;padding:1.25rem 1.1rem 1rem;background:#140e10;border-bottom:double 4px #c9a24a88}
.ecp-brand{grid-area:brand;color:#c9a24a;text-decoration:none;font-family:"Playfair Display",serif;font-size:2rem;letter-spacing:.12em;text-transform:uppercase;text-align:center;padding:0}
.ecp-brand img{object-fit:contain;display:block}
.ecp-links{grid-area:links;display:flex;gap:1.15rem;flex-wrap:wrap;justify-content:center;width:100%;padding:.15rem 0 0;position:relative;z-index:1}
.ecp-links > a,.ecp-links > .ecp-more .ecp-more-btn,.ecp-links > .ecp-catnav .ecp-catnav-btn{color:#f4ead8;text-decoration:none;letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;background:none;border:0;padding:0;font-family:inherit;cursor:pointer}
.ecp-tools{grid-area:tools;position:relative;justify-self:end;display:flex;align-items:center;gap:.45rem;z-index:400;min-width:0}
.ecp-tools a,.ecp-tools button{
  background:transparent;color:#f4ead8;border:1px solid #c9a24a;padding:.42rem .8rem;cursor:pointer;text-decoration:none;font-weight:650;letter-spacing:.06em
}
body.ecp-vault .ecp-tools .ecp-account-link,
body.ecp-vault .ecp-tools [data-ec-cart-open],
body.ecp-vault .ecp-tools .ec-cart-open{
  background:transparent !important;
  color:#f4ead8 !important;
  border:1px solid #c9a24a !important;
  text-decoration:none !important;
  padding:.42rem .8rem !important;
  display:inline-flex;
  align-items:center;
  white-space:nowrap !important;
}
.ecp-nav-toggle{display:none}
body.ecp-vault .ecp-nav-toggle{
  background:transparent !important;color:#f4ead8 !important;border:1px solid #c9a24a !important
}
body.ecp-vault .ecp-catalog-head h2{font-family:"Playfair Display",serif;font-weight:500;letter-spacing:.04em}
.ecp-slider{margin:1.75rem auto;max-width:1080px;height:54vh;position:relative;overflow:hidden;border:14px solid #2a181c;outline:1px solid #c9a24a;box-shadow:0 0 0 1px #c9a24a55}
body.ecp-vault .ecp-landing-tiles{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  max-width:1100px !important;
  width:100%;
  margin:0 auto !important;
  padding:0 !important;
  gap:0;
  border:1px solid #c9a24a55;
  box-sizing:border-box;
  background:#140e10;
}
body.ecp-vault .ecp-landing-tiles a{
  text-align:center;
  padding:1.35rem 1rem;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  min-height:6.75rem;
  border-right:1px solid #c9a24a44;
  color:#f4ead8;
  text-decoration:none;
}
body.ecp-vault .ecp-landing-tiles a:last-child{border-right:0}
body.ecp-vault .ecp-landing-tiles strong{color:#c9a24a;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-family:"Playfair Display",serif}
body.ecp-vault .ecp-landing-tiles span{font-size:.88rem;opacity:.85;text-align:center}
.ecp-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .7s}
.ecp-slide.is-on{opacity:1;z-index:1}
.ecp-slide-shade{position:absolute;inset:0;background:rgba(0,0,0,.35)}
.ecp-slide-copy{position:absolute;inset:auto 8% 12%;z-index:2;text-align:center;width:84%}
.ecp-hero{font-family:"Playfair Display",serif;font-size:clamp(2rem,5vw,3.4rem);margin:0}
.ecp-kicker{letter-spacing:.28em;text-transform:uppercase;color:#c4a35a;font-size:.72rem}
.ecp-cta{display:inline-block;margin-top:.8rem;color:#c4a35a;border:1px solid #c4a35a;padding:.55rem 1.1rem;text-decoration:none;letter-spacing:.16em;text-transform:uppercase;font-size:.78rem}
.ecp-prev,.ecp-next{position:absolute;top:50%;z-index:3;background:transparent;border:1px solid #c4a35a;color:#c4a35a;width:40px;height:40px;cursor:pointer}
.ecp-prev{left:12px}.ecp-next{right:12px}
.ecp-prev::before{content:"‹"}.ecp-next::before{content:"›"}
.ecp-dots{display:flex;gap:6px;justify-content:center;position:absolute;bottom:12px;left:0;right:0;z-index:3}
.ecp-dot{width:8px;height:8px;border:0;border-radius:50%;background:#c4a35a55;padding:0;cursor:pointer}
.ecp-dot.is-on{background:#c4a35a}
.ecp-masonry{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem 1rem;padding:1.5rem 0 3rem;max-width:none;margin:0 auto;columns:auto}
.ecp-vault-card{background:transparent;border:0;margin:0}
.ecp-vault-hit{display:block;position:relative;color:inherit;text-decoration:none}
.ecp-vault-card .ecp-media{display:block;aspect-ratio:1;background:#140e10;overflow:hidden;outline:1px solid #c9a24a55;padding:.45rem}
.ecp-vault-card img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.ecp-vault-meta{display:flex;flex-direction:column;gap:.4rem;min-width:0;padding-top:.55rem}
.ecp-vault-cap{display:block;padding:0}
.ecp-vault-card h3{font-family:"Playfair Display",serif;margin:0 0 .25rem;font-size:1.05rem;font-weight:500}
.ecp-vault-card h3 a{color:inherit;text-decoration:none}
.ecp-vault-buy{padding:0;display:flex;flex-direction:column;gap:.4rem}
.ecp-price{color:#c4a35a}
.ecp-foot{padding:2rem;border-top:1px solid #c4a35a44}
.ecp-foot a{color:#c4a35a}
.ecp-product{display:grid;grid-template-columns:1.2fr .8fr;min-height:70vh}
.ecp-product-gal{background:#140e10;display:grid;place-items:center;padding:2rem}
.ecp-product-gal img{max-width:100%;max-height:75vh;object-fit:contain;border:1px solid #c9a24a88;padding:1rem;background:#1c1214}
.ecp-product-buy{padding:3rem 2rem;background:#f4ead8;color:#2a1c14}
body.ecp-vault .ecp-product-buy h1{font-family:"Playfair Display",serif;color:#2a1c14}
body.ecp-vault .ecp-product-buy a{color:#8a6a22}
.ecp-page{max-width:var(--ecp-content);margin:0 auto;padding:3rem 1.25rem}
.ecp-price-lg{color:#c4a35a;font-size:1.8rem}
@media(max-width:1240px){
  body.ecp-vault .ecp-nav{
    grid-template-columns:1fr;
    grid-template-areas:"brand" "tools" "links";
  }
  body.ecp-vault .ecp-tools{justify-self:center;position:static}
}
@media(max-width:900px){
  .ecp-masonry{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ecp-product{grid-template-columns:1fr}
  .ecp-tools{position:static}
  body.ecp-vault .ecp-landing-tiles{grid-template-columns:1fr 1fr !important}
}
@media(max-width:560px){.ecp-masonry{grid-template-columns:1fr}}

/* ----- Checkout: cream gallery ledger on wine, not a dark Forge clone ----- */
body.ecp-vault.ecp-checkout-page{background:#1c1214}
.ecp-checkout--vault{max-width:1180px;padding-top:1.5rem}
.ecp-vault-ledger{
  background:#f4ead8;
  color:#2a1c14;
  padding:1.6rem 1.6rem 1.85rem;
  box-shadow:inset 0 0 0 1px #c9a24a, 0 0 0 10px #1c1214, 0 0 0 11px #c9a24a88;
}
.ecp-vault-ledger-head{max-width:none;margin:0 0 1.35rem;padding-bottom:1rem;border-bottom:1px solid #c9a24a66}
.ecp-checkout--vault .ecp-checkout-hero .ecp-kicker{color:#8a6a22;letter-spacing:.22em;text-transform:uppercase;font-size:.68rem;margin:0 0 .35rem}
.ecp-checkout--vault h1{font-family:"Playfair Display",serif;font-weight:600;letter-spacing:.01em;text-transform:none;color:#2a1c14;margin:.1rem 0 .4rem;font-size:clamp(1.85rem,3.2vw,2.6rem)}
.ecp-checkout--vault .ecp-checkout-lead{color:#4a3a2c;opacity:1;max-width:40rem}
.ecp-checkout--vault .ecp-checkout-board{outline:0;padding:0;background:transparent;color:#2a1c14}
body.ecp-vault .ecp-checkout-board .bg-white,
body.ecp-vault .ecp-checkout-board .bg-emerald-50,
body.ecp-vault .ecp-checkout-board .bg-amber-50,
body.ecp-vault .ecp-checkout-board [id$="-panel"],
body.ecp-vault .ecp-checkout-board > .grid > div > div:not(.ec-checkout-summary){
  background:#fffaf2 !important;
  color:#2a1c14 !important;
  border:1px solid #d9c7a0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body.ecp-vault .ecp-checkout-board > .grid > div > div.ec-checkout-summary,
body.ecp-vault .ecp-checkout-board .ec-checkout-summary.bg-white{
  background:#2a181c !important;
  color:#f4ead8 !important;
  border:1px solid #c9a24a !important;
  box-shadow:0 0 0 6px #f4ead8, 0 0 0 7px #c9a24a55 !important;
}
body.ecp-vault .ecp-checkout-board .ec-checkout-summary h2{
  font-family:"Playfair Display",serif;font-weight:600;color:#c9a24a;letter-spacing:.04em
}
body.ecp-vault .ecp-checkout-board .ec-checkout-summary .text-slate-500,
body.ecp-vault .ecp-checkout-board .ec-checkout-summary .text-slate-600,
body.ecp-vault .ecp-checkout-board .ec-checkout-summary .text-xs,
body.ecp-vault .ecp-checkout-board .ec-checkout-summary .text-sm,
body.ecp-vault .ecp-checkout-board .ec-checkout-summary a{
  color:#f4ead8 !important;opacity:.9
}
body.ecp-vault .ecp-checkout-board h2{
  font-family:"Playfair Display",serif;font-weight:600;color:#2a1c14;letter-spacing:.02em
}
body.ecp-vault .ecp-checkout-board .text-slate-500,
body.ecp-vault .ecp-checkout-board .text-slate-600,
body.ecp-vault .ecp-checkout-board .text-xs,
body.ecp-vault .ecp-checkout-board .text-sm{color:#4a3a2c !important;opacity:1}
body.ecp-vault .ecp-checkout-board label{color:#2a1c14}
body.ecp-vault .ecp-checkout-board input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]),
body.ecp-vault .ecp-checkout-board textarea,
body.ecp-vault .ecp-checkout-board select,
body.ecp-vault .ecp-checkout-board .ec-cardz3n-field{
  min-height:2.85rem!important;border:0!important;border-radius:0!important;
  background:#fff!important;color:#2a1c14!important;
  padding:.7rem .9rem!important;box-shadow:inset 0 -2px 0 #c9a24a
}
body.ecp-vault .ecp-checkout-board input::placeholder{color:#8a7a68;opacity:1}
body.ecp-vault .ecp-checkout-board .ec-fulfillment-option{
  background:#fffaf2 !important;border:1px solid #d9c7a0 !important;color:#2a1c14
}
body.ecp-vault .ecp-checkout-board .ec-fulfillment-option:has(input:checked){
  border-color:#c9a24a !important;background:#f7edd4 !important
}
body.ecp-vault.ecp-checkout-page #ec-pay-card-btn,
body.ecp-vault.ecp-checkout-page #ec-pay-zelle-btn,
body.ecp-vault.ecp-checkout-page #ec-pay-cash-btn,
body.ecp-vault.ecp-checkout-page #ec-pay-wire-ach-btn,
body.ecp-vault.ecp-checkout-page #ec-pay-paypal-btn,
body.ecp-vault .ecp-checkout-board #ec-pay-plaid-btn{
  background:#2a181c !important;color:#f4ead8 !important;border:1px solid #c9a24a !important;
  border-radius:0 !important;font-family:"Playfair Display",serif;letter-spacing:.06em
}
body.ecp-vault .ecp-checkout-board .ec-checkout-remove{
  border-color:#c9a24a !important;color:#c9a24a !important;border-radius:0 !important
}
body.ecp-vault .ecp-checkout-preview{background:#fff4cc;color:#3a2a00;border-color:#c9a24a}

/* ecp-uniq-skins-20260913 */
body.ecp-vault #ecStoreCart.offcanvas{
  top:0!important;right:0!important;left:auto!important;bottom:0!important;
  width:min(400px,94vw)!important;height:100%!important;max-height:none!important;
  transform:none!important;visibility:hidden;
  background:#2a181c!important;color:#f4ead8!important;
  border:0!important;border-left:1px solid #c9a24a!important;
}
body.ecp-vault #ecStoreCart.show,body.ecp-vault #ecStoreCart.showing{
  visibility:visible!important;
}
body.ecp-vault .ecp-live-find{width:14rem;min-width:12rem;max-width:16rem}
body.ecp-vault .ecp-live-q{background:#1c1214;color:#f4ead8;border:1px solid #c9a24a;padding:.5rem .7rem}
body.ecp-vault .ecp-live-hits{
  background:#2a181c !important;
  border:1px solid #c9a24a !important;
  color:#f4ead8 !important;
  box-shadow:0 18px 44px rgba(0,0,0,.45);
}
body.ecp-vault .ecp-tools .ecp-live-hits a,
body.ecp-vault .ecp-live-row{
  background:transparent !important;
  color:#f4ead8 !important;
  border:0 !important;
  box-shadow:none !important;
  font-weight:650 !important;
  padding:.7rem .85rem !important;
  min-height:0 !important;
  display:grid !important;
}
@media (max-width: 720px) {
  .ecp-vault-ledger{
    padding:1rem .85rem 1.15rem;
    box-shadow:inset 0 0 0 1px #c9a24a, 0 0 0 6px #1c1214, 0 0 0 7px #c9a24a88;
  }
  body.ecp-vault .ecp-checkout-board .ec-checkout-summary{
    box-shadow:none !important;
  }
}
