/* Vibben product details — editorial type, soft surfaces and native review controls. */
body.single-product .woocommerce-tabs {
  --vpd-accent:#b52173;
  --vpd-ink:#30212b;
  --vpd-muted:#786974;
  --vpd-line:#e9dfe6;
  --vpd-tint:#fbf6f9;
  --vpd-display:"DM Serif Display",Georgia,serif;
  --vpd-star-outline:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202.75l2.86%205.8%206.4.93-4.63%204.51%201.09%206.37L12%2017.35l-5.72%203.01%201.09-6.37L2.74%209.48l6.4-.93L12%202.75z%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.25%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");
  --vpd-star-solid:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202.75l2.86%205.8%206.4.93-4.63%204.51%201.09%206.37L12%2017.35l-5.72%203.01%201.09-6.37L2.74%209.48l6.4-.93L12%202.75z%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E");
  max-width:1200px;
  margin:0 auto;
  padding:36px 20px 56px;
  scroll-margin-top:170px;
}
/* Quiet segmented navigation; only the selected tab has a white surface. */
body.single-product .woocommerce-tabs > ul.product-tabs {
  display:grid!important;
  grid-template-columns:auto auto auto;
  align-items:stretch;
  gap:4px;
  width:fit-content!important;
  max-width:100%;
  margin:0!important;
  padding:5px!important;
  border:1px solid var(--vpd-line)!important;
  border-radius:18px;
  background:#f8f3f6;
}
body.single-product .woocommerce-tabs > ul.product-tabs > li {
  min-width:0;
  margin:0!important;
  padding:0!important;
}
body.single-product .woocommerce-tabs > ul.product-tabs > li > a {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  height:100%;
  margin:0!important;
  padding:12px 26px!important;
  border:1px solid transparent!important;
  border-radius:13px;
  background:transparent!important;
  color:#7b6976!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1.4;
  letter-spacing:.01em!important;
  text-transform:none!important;
  text-align:center;
  white-space:normal;
}
body.single-product .woocommerce-tabs > ul.product-tabs > li > a::before,
body.single-product .woocommerce-tabs > ul.product-tabs > li > a::after {
  display:none!important;
  content:none!important;
}
body.single-product .woocommerce-tabs > ul.product-tabs > li:not(.active) > a:hover {
  color:var(--vpd-accent)!important;
  background:#f2e8ef!important;
}
body.single-product .woocommerce-tabs > ul.product-tabs > li.active > a {
  border-color:#eadde6!important;
  background:#fff!important;
  color:var(--vpd-accent)!important;
  font-weight:600!important;
  box-shadow:0 3px 10px rgba(63,27,49,.06);
}
body.single-product .woocommerce-tabs > ul.product-tabs > li > a:focus-visible {
  outline:2px solid var(--vpd-accent);
  outline-offset:3px;
}
body.single-product .woocommerce-tabs > .tab-panels {
  padding:28px 0 0!important;
  border:0!important;
}
body.single-product .woocommerce-tabs #tab-reviews {
  margin:0!important;
  padding:0!important;
  scroll-margin-top:170px;
}
/* One softly framed section; a white writing surface sits inside it. */
body.single-product .woocommerce-tabs #reviews {
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  align-items:start;
  gap:36px;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:36px!important;
  border:1px solid #eee3eb!important;
  border-radius:28px!important;
  background:#fbf7fa!important;
}
body.single-product .woocommerce-tabs #reviews::before,
body.single-product .woocommerce-tabs #reviews::after {
  content:none!important;
  display:none!important;
}
body.single-product .woocommerce-tabs #reviews > #comments,
body.single-product .woocommerce-tabs #reviews > #review_form_wrapper {
  float:none!important;
  flex:none!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title {
  margin:9px 0 28px!important;
  color:var(--vpd-ink)!important;
  font-family:var(--vpd-display)!important;
  font-size:42px!important;
  font-weight:400!important;
  line-height:1.12!important;
  letter-spacing:-.8px!important;
}
body.single-product .woocommerce-tabs #reviews .woocommerce-noreviews {
  max-width:290px;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--vpd-muted)!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.75!important;
}
body.single-product .woocommerce-tabs #reviews .woocommerce-noreviews::before {
  content:"";
  display:block;
  width:72px;
  height:72px;
  margin:0 0 20px;
  background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2072%2072%22%3E%3Ccircle%20cx%3D%2236%22%20cy%3D%2236%22%20r%3D%2235%22%20fill%3D%22%23f4e8f0%22%2F%3E%3Ccircle%20cx%3D%2236%22%20cy%3D%2236%22%20r%3D%2228%22%20fill%3D%22none%22%20stroke%3D%22%23dfc5d6%22%20stroke-width%3D%22.8%22%2F%3E%3Cpath%20d%3D%22m36%2020%204.6%209.3%2010.3%201.5-7.45%207.25%201.76%2010.25L36%2043.46l-9.21%204.84%201.76-10.25L21.1%2030.8l10.3-1.5L36%2020z%22%20fill%3D%22none%22%20stroke%3D%22%23a9487d%22%20stroke-width%3D%221.4%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M54%2014v6m-3-3h6M16%2049v4m-2-2h4%22%20stroke%3D%22%23c18ba9%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
}
body.single-product .woocommerce-tabs #reviews #review_form,
body.single-product .woocommerce-tabs #reviews .review-form-inner.has-border {
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.single-product .woocommerce-tabs #reviews #respond.comment-respond {
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:32px!important;
  border:1px solid #eee5eb!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 14px 40px rgba(57,26,45,.055)!important;
}
body.single-product .woocommerce-tabs #reviews #respond::before,
body.single-product .woocommerce-tabs #reviews #respond::after,
body.single-product .woocommerce-tabs #reviews #reply-title::before,
body.single-product .woocommerce-tabs #reviews #reply-title::after {
  content:none!important;
  display:none!important;
}
body.single-product .woocommerce-tabs #reviews .vpd-review-heading {
  margin:0 0 26px;
}
body.single-product .woocommerce-tabs #reviews .vpd-review-eyebrow {
  display:block;
  margin:0 0 10px;
  color:#a94a7c;
  font-size:10px;
  font-weight:600;
  line-height:1.5;
  letter-spacing:.17em;
  text-transform:uppercase;
}
body.single-product .woocommerce-tabs #reviews #respond #reply-title {
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:var(--vpd-ink)!important;
  font-family:var(--vpd-display)!important;
  font-size:34px!important;
  font-weight:400!important;
  line-height:1.18!important;
  letter-spacing:-.5px!important;
}
body.single-product .woocommerce-tabs #reviews #respond #commentform {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px 16px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.single-product .woocommerce-tabs #reviews #commentform > p,
body.single-product .woocommerce-tabs #reviews #commentform > .comment-form-rating {
  float:none!important;
  grid-column:1/-1;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.single-product .woocommerce-tabs #reviews #commentform > .comment-form-author,
body.single-product .woocommerce-tabs #reviews #commentform > .comment-form-email {
  grid-column:auto;
}
body.single-product .woocommerce-tabs #reviews #commentform label {
  display:block!important;
  margin:0 0 8px!important;
  color:#57434f!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.5!important;
  letter-spacing:.01em!important;
}
body.single-product .woocommerce-tabs #reviews #commentform .required {color:var(--vpd-accent)}
body.single-product .woocommerce-tabs #reviews #commentform > .comment-notes,
body.single-product .woocommerce-tabs #reviews #commentform > .logged-in-as {
  color:var(--vpd-muted)!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.6!important;
}
body.single-product .woocommerce-tabs #reviews #commentform :is(textarea,input[type="text"],input[type="email"]) {
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:13px 16px!important;
  border:1px solid #e6dce3!important;
  border-radius:13px!important;
  background:#fcfafb!important;
  color:var(--vpd-ink)!important;
  font-family:inherit!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.6!important;
  box-shadow:inset 0 1px 2px rgba(47,26,40,.015)!important;
  transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease;
}
body.single-product .woocommerce-tabs #reviews #commentform textarea {
  height:138px!important;
  min-height:138px!important;
  resize:vertical!important;
}
body.single-product .woocommerce-tabs #reviews #commentform textarea::placeholder {
  color:#a1909c;
  font-size:14px;
  font-weight:400;
  opacity:1;
}
body.single-product .woocommerce-tabs #reviews #commentform input:is([type="text"],[type="email"]) {height:50px!important}
body.single-product .woocommerce-tabs #reviews #commentform :is(textarea,input[type="text"],input[type="email"]):hover {border-color:#cdb5c5!important}
body.single-product .woocommerce-tabs #reviews #commentform :is(textarea,input[type="text"],input[type="email"]):focus {
  border-color:#b65b8c!important;
  outline:2px solid rgba(181,33,115,.16)!important;
  outline-offset:2px!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(181,33,115,.035)!important;
}
body.single-product .woocommerce-tabs #reviews #commentform .comment-form-cookies-consent {
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
}
body.single-product .woocommerce-tabs #reviews #commentform .comment-form-cookies-consent input {
  flex:0 0 16px!important;
  width:16px!important;
  height:16px!important;
  margin:3px 0 0!important;
  accent-color:var(--vpd-accent);
}
body.single-product .woocommerce-tabs #reviews #commentform .comment-form-cookies-consent label {
  margin:0!important;
  color:var(--vpd-muted)!important;
  font-size:12px!important;
  font-weight:400!important;
}
body.single-product .woocommerce-tabs #reviews #commentform .comment-form-cookies-consent label::before,
body.single-product .woocommerce-tabs #reviews #commentform .comment-form-cookies-consent label::after {
  content:none!important;
  display:none!important;
}
body.single-product .woocommerce-tabs #reviews #commentform #submit {
  display:inline-block!important;
  box-sizing:border-box!important;
  width:auto!important;
  max-width:100%!important;
  min-width:210px!important;
  min-height:48px!important;
  height:auto!important;
  margin:0!important;
  padding:13px 54px 13px 24px!important;
  border:1px solid #30212b!important;
  border-radius:999px!important;
  background:#30212b url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M4%2012h15m-6-6%206%206-6%206%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") right 22px center/18px 18px no-repeat!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.6!important;
  letter-spacing:.02em!important;
  text-align:left!important;
  text-transform:none!important;
  box-shadow:0 4px 10px rgba(48,33,43,.08)!important;
  transition:background-color .18s ease,border-color .18s ease;
}
body.single-product .woocommerce-tabs #reviews #commentform #submit:hover {
  border-color:#9f245f!important;
  background-color:#9f245f!important;
}
body.single-product .woocommerce-tabs #reviews #commentform #submit:focus-visible {
  outline:2px solid var(--vpd-accent)!important;
  outline-offset:3px!important;
}
/* Freestanding outline stars. Keep WooCommerce's own radio/keyboard behavior. */
body.single-product .woocommerce-tabs #reviews #respond p.stars {
  display:block!important;
  margin:0!important;
  padding:0!important;
  line-height:1!important;
}
body.single-product .woocommerce-tabs #reviews #respond p.stars > span {
  display:inline-flex!important;
  flex-wrap:wrap;
  gap:4px;
}
body.single-product .woocommerce-tabs #reviews #respond p.stars a {
  --vpd-current-star:var(--vpd-star-outline);
  position:relative!important;
  display:block!important;
  flex:0 0 46px;
  box-sizing:border-box!important;
  width:46px!important;
  height:46px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  color:#9e718e!important;
  font-size:0!important;
  line-height:0!important;
  text-indent:-9999px!important;
  box-shadow:none!important;
  transition:color .16s ease;
}
body.single-product .woocommerce-tabs #reviews #respond p.stars a::before {content:none!important;display:none!important}
body.single-product .woocommerce-tabs #reviews #respond p.stars a::after {
  content:""!important;
  position:absolute!important;
  display:block!important;
  inset:7px!important;
  width:32px!important;
  height:32px!important;
  padding:0!important;
  background:currentColor!important;
  color:inherit!important;
  opacity:1!important;
  -webkit-mask:var(--vpd-current-star) center/contain no-repeat;
  mask:var(--vpd-current-star) center/contain no-repeat;
}
body.single-product .woocommerce-tabs #reviews #respond p.stars.selected a,
body.single-product .woocommerce-tabs #reviews #respond p.stars:hover a {
  --vpd-current-star:var(--vpd-star-solid);
  color:var(--vpd-accent)!important;
}
body.single-product .woocommerce-tabs #reviews #respond p.stars.selected:not(:hover) a.active ~ a,
body.single-product .woocommerce-tabs #reviews #respond p.stars a:hover ~ a {
  --vpd-current-star:var(--vpd-star-outline);
  color:#9e718e!important;
}
body.single-product .woocommerce-tabs #reviews #respond p.stars:hover a {
  --vpd-current-star:var(--vpd-star-solid);
  color:var(--vpd-accent)!important;
}
body.single-product .woocommerce-tabs #reviews #respond p.stars a:hover ~ a {
  --vpd-current-star:var(--vpd-star-outline);
  color:#9e718e!important;
}
body.single-product .woocommerce-tabs #reviews #respond p.stars a:focus-visible {
  outline:2px solid var(--vpd-accent)!important;
  outline-offset:1px!important;
}
body.single-product .woocommerce-tabs #reviews .commentlist {margin:0!important;padding:0!important;list-style:none}
body.single-product .woocommerce-tabs #reviews .commentlist > li {
  margin:0 0 18px!important;
  padding:22px!important;
  border:1px solid var(--vpd-line);
  border-radius:18px;
  background:#fff;
}
body.single-product .woocommerce-tabs #reviews .commentlist .comment-text {border:0}
@media(max-width:850px) {
  body.single-product .woocommerce-tabs #reviews {grid-template-columns:minmax(0,1fr);gap:28px;padding:28px!important}
  body.single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title {margin-top:0!important;font-size:36px!important}
  body.single-product .woocommerce-tabs #reviews .woocommerce-noreviews {max-width:none}
  body.single-product .woocommerce-tabs #reviews .woocommerce-noreviews::before {width:56px;height:56px;margin-bottom:14px}
}
@media(max-width:600px) {
  body.single-product .woocommerce-tabs {padding:26px 16px 38px;scroll-margin-top:120px}
  body.single-product .woocommerce-tabs > ul.product-tabs {grid-template-columns:repeat(3,minmax(0,1fr));width:100%!important;gap:3px;border-radius:15px}
  body.single-product .woocommerce-tabs > ul.product-tabs > li > a {min-height:52px;padding:9px 5px!important;border-radius:11px;font-size:12px!important;letter-spacing:0!important}
  body.single-product .woocommerce-tabs > .tab-panels {padding-top:24px!important}
  body.single-product .woocommerce-tabs #reviews {padding:0!important;border:0!important;background:transparent!important;gap:25px;border-radius:0!important}
  body.single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title {font-size:34px!important;margin-bottom:18px!important}
  body.single-product .woocommerce-tabs #reviews .woocommerce-noreviews {font-size:15px!important}
  body.single-product .woocommerce-tabs #reviews #respond.comment-respond {padding:25px 20px!important;border-radius:20px!important;box-shadow:0 8px 28px rgba(57,26,45,.045)!important}
  body.single-product .woocommerce-tabs #reviews #respond #reply-title {font-size:30px!important}
  body.single-product .woocommerce-tabs #reviews .vpd-review-heading {margin-bottom:23px}
  body.single-product .woocommerce-tabs #reviews #respond #commentform {grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
  body.single-product .woocommerce-tabs #reviews #commentform > .comment-form-author,
  body.single-product .woocommerce-tabs #reviews #commentform > .comment-form-email {grid-column:1/-1}
  body.single-product .woocommerce-tabs #reviews #respond p.stars > span {gap:2px}
  body.single-product .woocommerce-tabs #reviews #respond p.stars a {flex-basis:42px;width:42px!important;height:42px!important}
  body.single-product .woocommerce-tabs #reviews #respond p.stars a::after {inset:6px!important;width:30px!important;height:30px!important}
  body.single-product .woocommerce-tabs #reviews #commentform #submit {width:100%!important;min-width:0!important;text-align:center!important}
}
@media(prefers-reduced-motion:reduce) {
  body.single-product .woocommerce-tabs #reviews #commentform input,
  body.single-product .woocommerce-tabs #reviews #commentform textarea,
  body.single-product .woocommerce-tabs #reviews #respond p.stars a {transition:none!important}
}
