/* 33&Co product page — validated dark editorial composition. */
.enco-single-product { margin-top: 0 !important; }
.enco-single-page {
  min-width: 0;
  padding: 0 0 76px;
  color: #eef1f2;
  background: #0c1318;
  overflow-x: clip;
}
.enco-single-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 46px;
  border-bottom: 1px solid rgba(255,255,255,.07);
  background: #121b21;
}
.enco-single-page .woocommerce-breadcrumb { margin: 0; color: #9ba6ac; font-size: 10px; }
.enco-single-page .woocommerce-breadcrumb a { color: #dce1e3; }
.enco-product-nav { display: flex; gap: 18px; margin-left: auto; font-size: 9px; font-weight: 750; letter-spacing: .05em; text-transform: uppercase; }
.enco-product-nav a { color: #eef1f2; }

.enco-product-hero {
  border-bottom: 1px solid rgba(255,255,255,.07);
  background:
    radial-gradient(circle at 23% 32%, rgba(43,65,77,.44), transparent 34%),
    linear-gradient(135deg, #111b21 0%, #0b1217 58%, #101a20 100%);
}
.enco-product-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1.35fr) minmax(330px,.65fr);
  align-items: center;
  gap: clamp(32px,4.5vw,72px);
  min-height: 430px;
  padding-block: 30px 24px;
}
.enco-product-visual,
.enco-single-summary { min-width: 0; }

/* Gallery */
.enco-single-gallery { min-width: 0; }
.enco-single-gallery__stage {
  position: relative;
  min-height: 356px;
  overflow: visible;
}
.enco-single-gallery__vinyl {
  position: absolute;
  z-index: 1;
  top: 50%;
  right: 7%;
  display: grid;
  width: min(43vw,390px);
  max-width: 49%;
  aspect-ratio: 1;
  place-items: center;
  border-radius: 50%;
  background:
    repeating-radial-gradient(circle at center, #08090a 0 5px, #181b1d 6px 8px, #090a0b 9px 13px),
    #090a0b;
  box-shadow: 0 24px 55px rgba(0,0,0,.58);
  transform: translateY(-50%);
}
.enco-single-gallery__vinyl::before {
  position: absolute;
  inset: 7%;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  content: "";
}
.enco-single-gallery__vinyl i {
  position: relative;
  width: 23%;
  aspect-ratio: 1;
  border: 3px solid #d4a252;
  border-radius: 50%;
  background: #d4a252;
  box-shadow: inset 0 0 0 20px #d4a252, inset 0 0 0 22px rgba(0,0,0,.18);
}
.enco-single-gallery__vinyl i::after {
  position: absolute;
  inset: 47%;
  border-radius: 50%;
  content: "";
  background: #111;
}
.enco-single-gallery__main {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 4%;
  display: block;
  width: min(54%,430px);
  aspect-ratio: 1;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(218,169,85,.82);
  border-radius: 2px;
  background: #0c1114;
  box-shadow: 24px 26px 48px rgba(0,0,0,.48);
  transform: translateY(-50%);
}
.enco-single-gallery__main img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.enco-single-gallery__main > span {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 9px;
  border-radius: 999px;
  color: #101417;
  background: rgba(255,255,255,.94);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.enco-single-gallery__main .icon { width: 14px; height: 14px; }
.enco-single-gallery__placeholder {
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 10px;
  padding: 28px;
  color: #e9ddc9;
  text-align: center;
  background: linear-gradient(145deg,#18242b,#0d151a);
}
.enco-single-gallery__placeholder img { width: 112px; height: 112px; object-fit: contain; border-radius: 50%; }
.enco-single-gallery__placeholder strong { font-family: var(--font-editorial); font-size: 24px; }
.enco-single-gallery__placeholder small { max-width: 230px; color: #aeb7bc; font-size: 10px; line-height: 1.5; }
.enco-single-gallery__thumbs {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 72px;
  padding: 8px 4%;
  overflow-x: auto;
  scrollbar-width: thin;
}
.enco-single-gallery__thumb {
  flex: 0 0 64px;
  width: 64px;
  aspect-ratio: 1;
  padding: 0;
  overflow: hidden;
  border: 1px solid #45545c;
  border-radius: 2px;
  background: #11191e;
  opacity: .7;
}
.enco-single-gallery__thumb.is-active { border-color: #d4a252; opacity: 1; }
.enco-single-gallery__thumb img { width: 100%; height: 100%; object-fit: cover; }

/* Purchase summary */
.enco-single-summary { align-self: center; padding: 8px 0; }
.enco-single-identity { margin-bottom: 8px; }
.enco-single-artist {
  margin: 0 0 8px;
  color: #d8a653;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.enco-single-summary .product_title {
  max-width: 540px;
  margin: 0 0 9px;
  color: #fff;
  font-size: clamp(46px,4.1vw,66px);
  letter-spacing: -.045em;
  line-height: .94;
}
.enco-single-edition { margin: 0; color: #c4ccd0; font-size: 10px; font-weight: 650; letter-spacing: .025em; text-transform: uppercase; }
.enco-single-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 11px; }
.enco-single-tags span { padding: 4px 7px; border: 1px solid rgba(216,166,83,.48); border-radius: 999px; color: #e5c995; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.enco-single-stock { display: flex; align-items: center; gap: 7px; margin: 12px 0 0; color: #e85d50; font-size: 9px; font-weight: 750; }
.enco-single-stock span { width: 7px; height: 7px; border: 1px solid currentColor; border-radius: 2px; }
.enco-single-stock.is-in span { background: transparent; }
.enco-single-stock.is-out { color: #bd6a61; }
.enco-single-summary p.price { margin: 22px 0 12px; color: #fff !important; font-family: var(--font-editorial); font-size: 34px !important; font-weight: 600; }
.enco-single-summary form.cart { display: flex; align-items: stretch; gap: 9px; margin: 20px 0 0 !important; }
.enco-single-summary form.cart .quantity { display: none; }
.enco-single-summary form.cart .single_add_to_cart_button {
  flex: 1;
  min-height: 48px;
  border: 1px solid #d8a653 !important;
  border-radius: 3px !important;
  color: #111 !important;
  background: linear-gradient(180deg,#e1b35b,#c89543) !important;
  font-size: 11px;
}
.enco-single-favorite {
  display: flex;
  width: 100%;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 9px;
  border: 1px solid #c89543;
  border-radius: 3px;
  color: #fff;
  background: transparent;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.enco-single-favorite .icon { width: 15px; color: #d8a653; }
.enco-single-favorite[aria-pressed="true"] { color: #111; background: #d8a653; }
.enco-single-favorite[aria-pressed="true"] .icon { color: #111; fill: currentColor; }
.enco-purchase-assurance { display: grid; grid-template-columns: repeat(3,1fr); gap: 6px; margin-top: 14px; }
.enco-purchase-assurance > div { display: grid; justify-items: center; gap: 4px; padding: 7px 3px; color: #bdc5c9; text-align: center; }
.enco-purchase-assurance > div > span { color: #d8a653; font-size: 15px; }
.enco-purchase-assurance p { display: grid; margin: 0; }
.enco-purchase-assurance strong { color: #d9dfe1; font-size: 8px; font-weight: 650; }
.enco-purchase-assurance small { display: none; }

/* Evidence area */
.enco-product-evidence { background: #10191f; }
.enco-product-evidence__grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) 300px;
  align-items: start;
  gap: 16px;
  padding-block: 22px 28px;
}
.enco-single-details { min-width: 0; }
.enco-single-details .woocommerce-tabs { margin: 0 !important; }
.enco-single-details .woocommerce-tabs ul.tabs {
  display: flex;
  gap: 26px;
  margin: 0 !important;
  padding: 0 0 10px !important;
  overflow-x: auto;
  border-bottom: 1px solid rgba(255,255,255,.13);
  scrollbar-width: thin;
}
.enco-single-details .woocommerce-tabs ul.tabs::before,
.enco-single-details .woocommerce-tabs ul.tabs li::before,
.enco-single-details .woocommerce-tabs ul.tabs li::after { display: none !important; }
.enco-single-details .woocommerce-tabs ul.tabs li { flex: 0 0 auto; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
.enco-single-details .woocommerce-tabs ul.tabs li a { padding: 0 0 8px !important; color: #d5dbde !important; font-size: 9px; font-weight: 750 !important; letter-spacing: .035em; text-transform: uppercase; }
.enco-single-details .woocommerce-tabs ul.tabs li.active a { color: #fff !important; border-bottom: 2px solid #d8a653; }
.enco-single-details .woocommerce-tabs .panel {
  min-height: 258px;
  margin: 12px 0 0 !important;
  padding: 24px !important;
  border: 1px solid #e7dccb !important;
  border-radius: 3px !important;
  color: #28221e;
  background: #fffaf2 !important;
}
.enco-single-details .woocommerce-tabs .panel h2 { color: #28221e; font-size: 28px; }
.enco-single-details .woocommerce-tabs .panel p,
.enco-single-details .woocommerce-tabs .panel li { font-size: 12px; line-height: 1.68; }
.enco-condition-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.enco-condition-detail-grid article { padding: 18px; border: 1px solid #dfd2c0; border-top: 3px solid #c89543; background: #fffdf9; }
.enco-condition-detail-grid article strong { display: block; margin: 4px 0 6px; font-family: var(--font-editorial); font-size: 30px; }
.enco-specific-note { margin: 16px 0; padding: 15px 17px; border-left: 4px solid #c89543; background: #f4e7d3; }
.enco-delivery-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.enco-delivery-grid article { padding: 17px; border: 1px solid #dfd2c0; background: #fffdf9; }
.enco-delivery-grid article > span { color: #a87532; font-family: var(--font-editorial); font-size: 25px; }
.enco-delivery-grid h3 { margin: 4px 0 6px; font-size: 18px; }
.enco-delivery-grid p { margin: 0; color: #776c61; font-size: 11px; }
.enco-photo-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.enco-photo-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; border: 1px solid #dfd2c0; background: #eee6da; }

.enco-single-facts {
  position: sticky;
  top: 18px;
  overflow: hidden;
  border: 1px solid rgba(200,149,67,.46);
  border-radius: 3px;
  background: #172128;
}
.enco-single-facts:empty { display: none; }
.enco-single-facts > section,
.enco-single-facts > div { padding: 15px 17px; border-bottom: 1px solid rgba(200,149,67,.28); }
.enco-single-facts > :last-child { border-bottom: 0; }
.enco-single-facts h2,
.enco-single-facts h3 { margin: 0 0 11px; color: #d8a653; font-family: var(--font-ui); font-size: 10px; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.enco-single-specs dl { display: grid; gap: 8px; margin: 0; }
.enco-single-specs dl > div { display: grid; grid-template-columns: 82px 1fr; gap: 10px; }
.enco-single-specs dt { color: #9da7ac; font-size: 9px; }
.enco-single-specs dd { margin: 0; color: #edf0f1; font-size: 9px; }
.enco-single-condition { display: grid; grid-template-columns: 44px 1fr; align-items: center; gap: 10px; }
.enco-single-condition strong { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid #d8a653; border-radius: 50%; color: #eccd94; font-family: var(--font-editorial); font-size: 16px; }
.enco-single-condition p { display: grid; margin: 0; }
.enco-single-condition p b { color: #fff; font-size: 10px; }
.enco-single-condition p span { color: #aab2b7; font-size: 9px; line-height: 1.4; }
.enco-single-control ul { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; color: #e0e5e7; font-size: 9px; }
.enco-single-control li::before { margin-right: 7px; color: #d8a653; content: "✓"; }

/* Related products */
.enco-single-related { margin-top: 24px; }
.enco-single-related section.related > h2 { margin-bottom: 14px; color: #fff; font-family: var(--font-ui); font-size: 10px; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.enco-single-related .woocommerce ul.products,
.enco-single-related ul.products { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; }
.enco-single-related .enco-product-card__media { height: 150px; }
.enco-single-related .enco-product-card__vinyl { width: 112px; height: 112px; }
.enco-single-related .enco-product-card__cover { width: 105px; }
.enco-single-related .enco-product-card__body { min-height: 96px; padding: 9px; }
.enco-single-related .enco-product-card__identity h2 { font-size: 11px; }
.enco-single-related .enco-product-card__facts strong { display: none; }
.enco-single-related .enco-product-card__price { font-size: 16px; }
.enco-mobile-buybar { display: none; }
