/* Dedicated to product 27141; purchase behavior stays with WooCommerce. */
body.single-product.postid-27141 {
  --calendar-plum: #594059;
  --calendar-ink: #352b31;
  --calendar-muted: #6d5d63;
  --calendar-line: #d8c9c3;
}
body.single-product.postid-27141 .woocommerce-breadcrumb {
  background: none;
  border: 0;
  padding-inline: 0;
  font-size: .8rem;
}
body.single-product.postid-27141 #product-27141 {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: clamp(24px, 3vw, 46px);
  padding: clamp(18px, 2.8vw, 34px);
  background: #fcf7ef;
  border-color: #dfd0bd;
  box-shadow: 0 14px 40px #46332412;
}
body.single-product.postid-27141 #product-27141 div.images {
  transform: none;
  padding: 12px;
  background: #fffaf3;
  box-shadow: 0 8px 24px #46332412;
}
body.single-product.postid-27141 #product-27141 div.images .woocommerce-product-gallery__image:first-child img:not(.zoomImg) {
  object-fit: contain;
  aspect-ratio: 4 / 5;
  max-height: 610px;
  background: #f8f1e7;
}
body.single-product.postid-27141 #product-27141 .flex-viewport {
  aspect-ratio: 4 / 5;
  max-height: 610px;
}
body.single-product.postid-27141 #product-27141 .flex-control-thumbs {
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
  margin-top: 12px;
}
body.single-product.postid-27141 #product-27141 .flex-control-thumbs img {
  border: 2px solid transparent;
  border-radius: 3px;
}
body.single-product.postid-27141 #product-27141 .flex-control-thumbs img.flex-active {
  border-color: var(--calendar-plum);
}
body.single-product.postid-27141 #product-27141 .summary {
  padding: clamp(8px, 1.2vw, 16px) 0 0;
  background: none;
  border: 0;
  box-shadow: none;
  color: var(--calendar-ink);
}
body.single-product.postid-27141 .lpc-calendar-kicker {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 20px;
  color: var(--calendar-muted);
  font: 600 .68rem/1.5 var(--sans, sans-serif);
  letter-spacing: .09em;
  text-transform: uppercase;
}
body.single-product.postid-27141 .lpc-calendar-kicker > span:first-child {
  color: var(--calendar-plum);
  font-size: 1.2rem;
}
body.single-product.postid-27141 .lpc-calendar-badge {
  padding: 4px 9px;
  border: 1px solid #cbb8c6;
  border-radius: 3px;
  color: var(--calendar-plum);
  background: #f1e9ee;
  letter-spacing: .06em;
}
body.single-product.postid-27141 #product-27141 .product_title {
  max-width: 16ch;
  margin-bottom: 14px;
  font-size: clamp(2rem, 3.3vw, 3rem);
  line-height: 1.08;
  letter-spacing: -.025em;
  color: var(--calendar-ink);
}
body.single-product.postid-27141 #product-27141 .woocommerce-product-details__short-description {
  font: 500 clamp(1.4rem, 2vw, 1.75rem)/1.3 var(--serif, Georgia, serif);
  color: var(--calendar-plum);
}
body.single-product.postid-27141 #product-27141 .woocommerce-product-details__short-description p {
  margin: 0;
}
body.single-product.postid-27141 .lpc-calendar-promise {
  margin: 8px 0 24px;
  color: var(--calendar-muted);
  font-size: .95rem;
}
body.single-product.postid-27141 #product-27141 p.price {
  padding-top: 20px;
  margin-bottom: 20px;
  border-top: 1px solid var(--calendar-line);
  color: var(--calendar-ink);
  font-size: 2rem;
  line-height: 1.2;
}
body.single-product.postid-27141 .lpc-calendar-dispatch {
  display: grid;
  gap: 4px;
  padding: 14px 17px;
  margin-bottom: 22px;
  border-left: 3px solid #8c6c86;
  background: #f2ebee;
  color: var(--calendar-muted);
  font-size: .8rem;
  line-height: 1.5;
}
body.single-product.postid-27141 .lpc-calendar-dispatch-label {
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}
body.single-product.postid-27141 .lpc-calendar-dispatch strong {
  color: var(--calendar-plum);
  font-size: 1rem;
}
body.single-product.postid-27141 #product-27141 form.cart {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 20px;
  padding: 0;
  border: 0;
  background: none;
  box-shadow: none;
}
body.single-product.postid-27141 #product-27141 form.cart .quantity {
  margin: 0;
  flex: 0 0 76px;
}
body.single-product.postid-27141 #product-27141 form.cart .qty {
  width: 76px;
  min-height: 52px;
  border: 1px solid #b9a8b3;
  border-radius: 4px;
  background: #fffaf5;
  color: var(--calendar-ink);
}
body.single-product.postid-27141 #product-27141 form.cart .single_add_to_cart_button {
  flex: 1 1 180px;
  min-height: 52px;
  padding: 14px 20px;
  background: var(--calendar-plum) !important;
  color: #fff;
  border-radius: 4px;
  box-shadow: none;
  font-size: .83rem;
  letter-spacing: .04em;
}
body.single-product.postid-27141 #product-27141 form.cart .single_add_to_cart_button:hover {
  background: #433044 !important;
}
body.single-product.postid-27141 #product-27141 form.cart :focus-visible {
  outline: 3px solid #936f8c;
  outline-offset: 3px;
}
body.single-product.postid-27141 #product-27141 .lpc-exclusive-product-notice {
  margin: 0;
  padding: 16px 0 0;
  border: 0;
  border-top: 1px solid var(--calendar-line);
  background: none;
  box-shadow: none;
  color: var(--calendar-muted);
  font-size: .83rem;
  line-height: 1.65;
}
body.single-product.postid-27141 #product-27141 .lpc-exclusive-product-notice::before {
  display: none;
}
body.single-product.postid-27141 #product-27141 .woocommerce-tabs {
  margin-top: 8px;
  padding-top: clamp(20px, 3vw, 36px);
  border-top: 1px solid var(--calendar-line);
}
body.single-product.postid-27141 #product-27141 .woocommerce-Tabs-panel {
  max-width: 780px;
  margin: 0 auto;
  background: none;
  border: 0;
  box-shadow: none;
  color: var(--calendar-ink);
  font-size: 1rem;
  line-height: 1.85;
}
body.single-product.postid-27141 #product-27141 .woocommerce-Tabs-panel h2 {
  font-size: clamp(1.6rem, 2.6vw, 2.25rem);
  line-height: 1.2;
  color: var(--calendar-plum);
}
@media (max-width: 820px) {
  body.single-product.postid-27141 #product-27141 { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  body.single-product.postid-27141 #product-27141 .summary { padding: 0 4px; }
  body.single-product.postid-27141 #product-27141 .product_title { max-width: 20ch; }
  body.single-product.postid-27141 #product-27141 .woocommerce-Tabs-panel { padding: 0 4px; }
}
@media (max-width: 420px) {
  body.single-product.postid-27141 .site-main { width: calc(100% - 24px); }
  body.single-product.postid-27141 #product-27141 { padding: 16px; }
  body.single-product.postid-27141 .lpc-calendar-kicker { font-size: .6rem; gap: 6px; }
  body.single-product.postid-27141 #product-27141 form.cart .single_add_to_cart_button { flex-basis: 160px; padding-inline: 12px; font-size: .74rem; }
  body.single-product.postid-27141 #product-27141 .flex-control-thumbs { gap: 3px; }
}

/* Editorial description: story, photograph, then practical information. */
body.single-product.postid-27141 #product-27141 #tab-description {
  max-width: 960px;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story {
  padding-top: 8px;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story p {
  text-align: left !important;
  max-width: none;
  width: 100%;
  margin: 0 0 16px;
  margin-inline: 0 !important;
  font-size: .96rem;
  line-height: 1.8;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story .lpc-calendar-story__intro {
  max-width: 650px;
  margin: 0 auto 36px;
  margin-inline: auto !important;
  text-align: center !important;
  color: var(--calendar-muted);
  font-size: 1.08rem;
  line-height: 1.75;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story__feature {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1fr);
  gap: clamp(24px, 4vw, 52px);
  align-items: center;
  margin-bottom: 40px;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story__photo {
  margin: 0;
  padding: 10px 10px 0;
  background: #fffaf5;
  border: 1px solid #d9c7b9;
  box-shadow: 0 6px 22px #49362a0d;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story__photo img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  transform: none;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story__photo figcaption {
  padding: 12px 8px;
  text-align: center;
  color: var(--calendar-muted);
  font: italic .82rem/1.5 var(--serif, Georgia, serif);
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story h3,
body.single-product.postid-27141 #tab-description .lpc-calendar-story h4 {
  width: auto;
  max-width: none;
  margin: 0 0 14px;
  padding: 0;
  color: var(--calendar-plum);
  background: none;
  border: 0;
  box-shadow: none;
  transform: none;
  text-align: left;
  text-transform: none;
  letter-spacing: -.015em;
  font: 500 clamp(1.5rem, 2.2vw, 1.95rem)/1.2 var(--serif, Georgia, serif);
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story h3::before,
body.single-product.postid-27141 #tab-description .lpc-calendar-story h3::after,
body.single-product.postid-27141 #tab-description .lpc-calendar-story h4::before,
body.single-product.postid-27141 #tab-description .lpc-calendar-story h4::after {
  display: none;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story__chapters section + section {
  margin-top: 28px;
  padding-top: 28px;
  border-top: 1px solid var(--calendar-line);
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story .lpc-calendar-story__eyebrow {
  margin: 0 0 12px;
  color: var(--calendar-muted);
  font: 700 .65rem/1.5 var(--sans, sans-serif);
  text-transform: uppercase;
  letter-spacing: .12em;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story__order {
  padding: clamp(20px, 3vw, 32px);
  background: #f0e8ec;
  border: 1px solid #d8c8d2;
  border-top: 3px solid #8c6c86;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story__practical {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 28px;
  margin-top: 24px;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story__practical > div + div {
  padding-left: 28px;
  border-left: 1px solid #d4becb;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story__practical h4 {
  margin-bottom: 10px;
  color: var(--calendar-ink);
  font: 700 .94rem/1.4 var(--sans, sans-serif);
  letter-spacing: 0;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story__practical p {
  margin: 0;
  font-size: .88rem;
  line-height: 1.75;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story .lpc-calendar-story__tracking {
  margin: 24px 0 0;
  padding-top: 18px;
  border-top: 1px solid #d4becb;
  color: var(--calendar-muted);
  font-size: .83rem;
  line-height: 1.65;
}
body.single-product.postid-27141 #tab-description .lpc-calendar-story .lpc-calendar-story__signoff {
  margin: 30px 0 0;
  color: var(--calendar-plum);
  text-align: center !important;
  font: italic 1.35rem/1.5 var(--serif, Georgia, serif);
}
@media (max-width: 640px) {
  body.single-product.postid-27141 #tab-description .lpc-calendar-story__feature { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  body.single-product.postid-27141 #tab-description .lpc-calendar-story__photo { max-width: 350px; margin-inline: auto; }
  body.single-product.postid-27141 #tab-description .lpc-calendar-story__practical { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  body.single-product.postid-27141 #tab-description .lpc-calendar-story__practical > div + div { border-left: 0; padding-left: 0; border-top: 1px solid #d4becb; padding-top: 20px; }
  body.single-product.postid-27141 #tab-description .lpc-calendar-story .lpc-calendar-story__intro { margin-bottom: 24px; font-size: 1rem; }
}
