/* Gourmet Food: warm cream, kraft and honey; soft serif, pill buttons, wavy section edges,
   scalloped seals and organic blobs. Look only; layout comes from the kit (kit.css). */
:root {
  --lpb-heading-fallback: Georgia, "Times New Roman", serif;
  --lpb-heading-weight: 600;
  --lpb-heading-spacing: -0.015em;
  --lpb-heading-line: 1.08;
  --lpb-h1: clamp(2.45rem, 5.2vw, 4.3rem);
  --lpb-h2: clamp(1.9rem, 3.5vw, 2.9rem);
  --lpb-eyebrow-case: none;
  --lpb-eyebrow-spacing: 0;
  --lpb-btn-radius: 999px;
  --lpb-btn-case: none;
  --lpb-btn-spacing: 0.01em;
  --lpb-btn-weight: 600;
  --lpb-card-bg: color-mix(in srgb, var(--lpb-bg) 45%, #fff);
  --lpb-card-border: 1.5px solid color-mix(in srgb, var(--lpb-ink) 9%, transparent);
  --lpb-card-shadow: 0 1px 0 color-mix(in srgb, var(--lpb-ink) 5%, transparent), 0 22px 44px -32px rgb(90 50 10 / 0.4);
  --lpb-section-pad: clamp(64px, 9vw, 112px);

  /* decoration */
  --gf-wave-h: 22px;
  --gf-wave-top: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 22' preserveAspectRatio='none'%3E%3Cpath d='M0 22V11C25 3 55 1 85 8s55 12 85 7 45 4 70-4v11z'/%3E%3C/svg%3E");
  --gf-wave-bottom: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 22' preserveAspectRatio='none'%3E%3Cpath d='M0 0v11c25 8 55 10 85 3s55-12 85-7 45-4 70 4V0z'/%3E%3C/svg%3E");
  --gf-scallop: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M93 50A8 8 0 0 1 90.4 64.7A8 8 0 0 1 82.9 77.6A8 8 0 0 1 71.5 87.2A8 8 0 0 1 57.5 92.3A8 8 0 0 1 42.5 92.3A8 8 0 0 1 28.5 87.2A8 8 0 0 1 17.1 77.6A8 8 0 0 1 9.6 64.7A8 8 0 0 1 7 50A8 8 0 0 1 9.6 35.3A8 8 0 0 1 17.1 22.4A8 8 0 0 1 28.5 12.8A8 8 0 0 1 42.5 7.7A8 8 0 0 1 57.5 7.7A8 8 0 0 1 71.5 12.8A8 8 0 0 1 82.9 22.4A8 8 0 0 1 90.4 35.3A8 8 0 0 1 93 50z'/%3E%3C/svg%3E");
  --gf-squiggle: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 10'%3E%3Cpath d='M2 6c6-5 10-5 16 0s10 5 16 0 10-5 16 0 10 5 16 0' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");
  --gf-hex: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 4l40 23v46L50 96 10 73V27z'/%3E%3C/svg%3E");
  --gf-comb: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='97' viewBox='0 0 56 97'%3E%3Cpath d='M28 0l28 16v33L28 65 0 49V16zM28 65v32M0 49l-28 16M56 49l28 16' fill='none' stroke='%23000' stroke-opacity='.045' stroke-width='1.5'/%3E%3C/svg%3E");
  --gf-blob: 58% 42% 55% 45% / 47% 56% 44% 53%;
}
body.lpb {
  font-size: 1.02rem;
}

/* ---- headings: soft serif with a hand-drawn squiggle ---- */
.lpb-head .lpb-title::after,
.lpb-richtext .lpb-title::after,
.lpb-newsletter .lpb-title::after {
  content: "";
  display: block;
  width: 64px;
  height: 10px;
  margin: 16px auto 0;
  background: var(--lpb-primary);
  -webkit-mask: var(--gf-squiggle) center / contain no-repeat;
  mask: var(--gf-squiggle) center / contain no-repeat;
}
.lpb-head--left .lpb-title::after,
.lpb-richtext--left .lpb-title::after {
  margin-inline: 0;
}
.lpb-bg--dark .lpb-title::after {
  background: var(--lpb-accent);
}
.lpb-bg--primary .lpb-title::after {
  background: var(--lpb-on-primary);
}
.lpb-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--lpb-font-heading), var(--lpb-heading-fallback);
  font-style: italic;
  font-weight: 500;
  font-size: 1.08rem;
}
.lpb-eyebrow::before {
  content: "";
  flex: none;
  width: 14px;
  height: 14px;
  background: currentColor;
  -webkit-mask: var(--gf-hex) center / contain no-repeat;
  mask: var(--gf-hex) center / contain no-repeat;
}
.lpb-hero__title {
  max-width: 14ch;
}
.lpb-hero__title,
.lpb-title {
  text-wrap: balance;
}
.lpb-hero--centered .lpb-hero__title,
.lpb-hero--hotspot .lpb-hero__title {
  margin-inline: auto;
}

/* ---- wavy edges on coloured sections ---- */
.lpb-s:is(.lpb-bg--surface, .lpb-bg--dark, .lpb-bg--primary):not(
    .lpb-header,
    .lpb-announcement,
    .lpb-sticky
  )::before {
  content: "";
  position: absolute;
  inset: calc(1px - var(--gf-wave-h)) 0 auto;
  height: var(--gf-wave-h);
  background: var(--gf-wave-c);
  -webkit-mask: var(--gf-wave-top) 0 0 / 240px 100% repeat-x;
  mask: var(--gf-wave-top) 0 0 / 240px 100% repeat-x;
  pointer-events: none;
}
.lpb-s:is(.lpb-bg--surface, .lpb-bg--dark, .lpb-bg--primary):not(
    .lpb-header,
    .lpb-announcement,
    .lpb-sticky,
    .lpb-footer
  )::after {
  content: "";
  position: absolute;
  inset: auto 0 calc(1px - var(--gf-wave-h));
  height: var(--gf-wave-h);
  background: var(--gf-wave-c);
  -webkit-mask: var(--gf-wave-bottom) 60px 0 / 240px 100% repeat-x;
  mask: var(--gf-wave-bottom) 60px 0 / 240px 100% repeat-x;
  pointer-events: none;
}
.lpb-bg--surface {
  --gf-wave-c: var(--lpb-surface);
  background-image: var(--gf-comb);
  background-size: 56px 97px;
}
.lpb-bg--dark {
  --gf-wave-c: var(--lpb-dark);
}
.lpb-bg--primary {
  --gf-wave-c: var(--lpb-primary);
}
.lpb-bg--dark,
.lpb-bg--primary {
  --lpb-card-shadow: none;
}

/* ---- buttons: friendly pills with a pressed edge ---- */
.lpb-btn {
  font-size: 0.98rem;
}
.lpb-btn--primary {
  box-shadow: 0 4px 0 var(--lpb-primary-dark);
}
.lpb-btn--primary:hover {
  transform: translateY(2px);
  box-shadow: 0 2px 0 var(--lpb-primary-dark);
}
.lpb-btn--primary:active {
  transform: translateY(4px);
  box-shadow: none;
}
.lpb-bg--primary .lpb-btn--primary {
  box-shadow: 0 4px 0 rgb(0 0 0 / 0.18);
}
.lpb-btn--ghost {
  border-color: color-mix(in srgb, var(--lpb-ink) 22%, transparent);
  background: color-mix(in srgb, var(--lpb-card-bg) 60%, transparent);
}
.lpb-btn--sm {
  box-shadow: 0 3px 0 var(--lpb-primary-dark);
}
.lpb-price__now {
  font-family: var(--lpb-font-heading), var(--lpb-heading-fallback);
  font-weight: 700;
  font-size: 1.9rem;
  color: var(--lpb-primary);
}
.lpb-bg--dark .lpb-price__now {
  color: var(--lpb-accent);
}
.lpb-bg--primary .lpb-price__now {
  color: inherit;
}
.lpb-price__was {
  font-size: 1.05rem;
}

/* ---- announcement, header ---- */
.lpb-announcement {
  font-weight: 500;
  letter-spacing: 0.01em;
}
.lpb-announcement__link {
  color: var(--lpb-accent);
  text-underline-offset: 3px;
}
.lpb-bg--primary .lpb-announcement__link {
  color: inherit;
}
.lpb-header {
  border-bottom: 1.5px dashed color-mix(in srgb, var(--lpb-primary) 30%, transparent);
}
.lpb-brand {
  gap: 8px;
}
.lpb-brand__name {
  font-weight: 700;
  font-size: clamp(1.02rem, 4.2vw, 1.4rem);
}
.lpb-header .lpb-brand:has(.lpb-brand__name)::before,
.lpb-footer .lpb-footer__brand::before {
  content: "";
  flex: none;
  width: 22px;
  height: 24px;
  background: var(--lpb-primary);
  -webkit-mask: var(--gf-hex) center / contain no-repeat;
  mask: var(--gf-hex) center / contain no-repeat;
}
.lpb-nav__link {
  font-weight: 500;
  text-decoration: underline 2px transparent;
  text-underline-offset: 6px;
  transition: text-decoration-color 0.2s;
}
.lpb-nav__link:hover {
  text-decoration-color: var(--lpb-accent);
}
@media (max-width: 420px) {
  .lpb-header .lpb-brand::before {
    display: none;
  }
  .lpb-header .lpb-btn--sm {
    padding: 0 14px;
  }
}

/* ---- hero: tilted print on a honey blob, with a scalloped seal ---- */
.lpb-hero__media {
  isolation: isolate;
  padding: 4% 4% 2%;
}
.lpb-hero__media::before {
  content: "";
  position: absolute;
  inset: 0 -2% 6% 6%;
  z-index: -1;
  border-radius: var(--gf-blob);
  background: color-mix(in srgb, var(--lpb-accent) 30%, transparent);
  transform: rotate(8deg);
}
.lpb-hero__media::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: clamp(84px, 11vw, 124px);
  aspect-ratio: 1;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%23fff' stroke-opacity='.85'%3E%3Ccircle cx='50' cy='50' r='31' stroke-width='1.6' stroke-dasharray='2.4 3'/%3E%3Cpath d='M50 34l13 7.5v15L50 64l-13-7.5v-15z' stroke-width='2.4'/%3E%3Cpath d='M50 42l6 3.5v7L50 56l-6-3.5v-7z' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E")
      center / 100% no-repeat,
    var(--lpb-primary);
  -webkit-mask: var(--gf-scallop) center / contain no-repeat;
  mask: var(--gf-scallop) center / contain no-repeat;
  transform: rotate(-12deg);
  filter: drop-shadow(0 6px 10px rgb(80 40 0 / 0.25));
}
.lpb-hero__img {
  border-radius: calc(var(--lpb-radius) + 14px);
  border: 8px solid var(--lpb-card-bg);
  box-shadow: 0 34px 60px -34px rgb(90 50 10 / 0.55);
  transform: rotate(-2deg);
}
.lpb-hero--centered .lpb-hero__img,
.lpb-hero--hotspot .lpb-hero__img {
  transform: none;
}
.lpb-hero .lpb-rating {
  font-weight: 500;
}
.lpb-badges li {
  padding: 6px 14px 6px 10px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--lpb-primary) 9%, transparent);
  color: var(--lpb-ink);
  font-weight: 500;
}
.lpb-badges {
  gap: 10px;
}
.lpb-callout {
  border-radius: 18px;
  box-shadow: var(--lpb-card-shadow);
}

/* ---- logos: italic serif names with honeycomb separators ---- */
.lpb-logos {
  padding-block: 40px 44px;
}
.lpb-logos__title {
  font-family: var(--lpb-font-heading), var(--lpb-heading-fallback);
  font-style: italic;
  text-transform: none;
  letter-spacing: 0;
  font-size: 1rem;
}
.lpb-logos__list li {
  font-weight: 600;
  font-style: italic;
  color: var(--lpb-ink);
  opacity: 0.62;
}

/* ---- benefits: rounded cards with blob icons ---- */
.lpb-card {
  border-radius: calc(var(--lpb-radius) + 10px);
}
.lpb-benefit__icon {
  width: 60px;
  height: 60px;
  border-radius: var(--gf-blob);
  background: color-mix(in srgb, var(--lpb-accent) 30%, transparent);
  color: var(--lpb-primary-dark);
  font-size: 1.3rem;
}
.lpb-bg--dark .lpb-benefit__icon,
.lpb-bg--primary .lpb-benefit__icon {
  color: inherit;
}
.lpb-grid > .lpb-benefit:nth-child(3n + 2) .lpb-benefit__icon {
  border-radius: 45% 55% 42% 58% / 58% 44% 56% 42%;
}
.lpb-grid > .lpb-benefit:nth-child(3n) .lpb-benefit__icon {
  border-radius: 52% 48% 60% 40% / 42% 60% 40% 58%;
}
.lpb-card__title {
  font-size: 1.32rem;
}

/* ---- spotlight: organic blob image with a stitched outline ---- */
.lpb-spotlight__media {
  position: relative;
  isolation: isolate;
  padding: 3%;
}
.lpb-spotlight__media::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border: 2px dashed color-mix(in srgb, var(--lpb-primary) 45%, transparent);
  border-radius: var(--gf-blob);
  transform: rotate(-6deg);
}
.lpb-spotlight__img,
.lpb-cta-band__media img {
  border-radius: var(--gf-blob);
}
.lpb-points__icon {
  box-sizing: content-box;
  padding: 4px;
  margin-top: 0;
  border-radius: 50%;
  background: var(--lpb-primary);
  color: var(--lpb-on-primary);
  width: 0.9em;
  height: 0.9em;
  stroke-width: 3;
}
.lpb-points strong {
  font-family: var(--lpb-font-heading), var(--lpb-heading-fallback);
  font-size: 1.12rem;
  font-weight: 600;
}

/* ---- steps: hexagon numbers joined by a dotted bee path ---- */
.lpb-step {
  position: relative;
}
.lpb-step__num {
  width: 60px;
  height: 66px;
  border: 0;
  border-radius: 0;
  background: var(--lpb-primary);
  color: var(--lpb-on-primary);
  font-weight: 700;
  font-size: 1.45rem;
  -webkit-mask: var(--gf-hex) center / contain no-repeat;
  mask: var(--gf-hex) center / contain no-repeat;
}
.lpb-bg--primary .lpb-step__num {
  background: var(--lpb-on-primary);
  color: var(--lpb-primary);
}
@media (min-width: 960px) {
  .lpb-steps__list:is(.lpb-grid--3, .lpb-grid--4) .lpb-step:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 41px;
    left: calc(50% + 46px);
    width: calc(100% - 92px + var(--lpb-gap));
    border-top: 2.5px dotted color-mix(in srgb, var(--lpb-primary) 55%, transparent);
  }
}

@media (max-width: 639px) {
  .lpb-step {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 18px;
    text-align: start;
    padding: 0;
  }
  .lpb-step__num {
    grid-row: span 2;
    width: 50px;
    height: 55px;
    margin: 0;
    font-size: 1.25rem;
  }
  .lpb-step .lpb-card__title {
    align-self: end;
  }
}

/* ---- stats: stamped rings ---- */
.lpb-stat__value {
  display: inline-grid;
  place-items: center;
  min-width: 132px;
  height: 132px;
  padding-inline: 16px;
  margin-bottom: 14px;
  border-radius: 999px;
  border: 2px dashed color-mix(in srgb, currentColor 45%, transparent);
  font-weight: 700;
  font-size: clamp(2.1rem, 3.8vw, 2.7rem);
  letter-spacing: -0.02em;
}
.lpb-stat span {
  display: block;
  max-width: 22ch;
  margin-inline: auto;
}
@media (max-width: 639px) {
  .lpb-stats__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 28px 12px;
  }
  .lpb-stat__value {
    min-width: 96px;
    height: 96px;
    padding-inline: 10px;
    font-size: 1.8rem;
  }
  .lpb-stat span {
    font-size: 0.92rem;
  }
}
.lpb-bg--primary .lpb-stat__value {
  background: color-mix(in srgb, var(--lpb-on-primary) 10%, transparent);
}

/* ---- comparison: rounded label card ---- */
.lpb-compare {
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border-radius: calc(var(--lpb-radius) + 6px);
  background: var(--lpb-card-bg);
  border: var(--lpb-card-border);
  box-shadow: var(--lpb-card-shadow);
}
.lpb-compare th,
.lpb-compare td {
  padding: 16px clamp(10px, 2.4vw, 22px);
}
.lpb-compare tbody tr:last-child td {
  border-bottom: 0;
}
.lpb-compare th {
  font-family: var(--lpb-font-heading), var(--lpb-heading-fallback);
  font-size: 1.08rem;
}
.lpb-compare th.lpb-compare__ours {
  background: var(--lpb-primary);
  color: var(--lpb-on-primary);
}
.lpb-compare__ours {
  background: color-mix(in srgb, var(--lpb-accent) 16%, transparent);
}
.lpb-compare .is-yes {
  stroke-width: 2.6;
}
@media (max-width: 559px) {
  .lpb-compare {
    font-size: 0.9rem;
  }
  .lpb-compare th {
    font-size: 0.92rem;
  }
}

/* ---- reviews: pinned recipe cards ---- */
.lpb-reviews {
  padding-top: 14px;
}
.lpb-review {
  position: relative;
  background: var(--lpb-card-bg);
}
.lpb-review::before {
  content: "";
  position: absolute;
  top: -11px;
  left: 50%;
  width: 84px;
  height: 22px;
  background: color-mix(in srgb, var(--lpb-accent) 45%, transparent);
  transform: translateX(-50%) rotate(-3deg);
  border-radius: 3px;
}
.lpb-review blockquote {
  font-family: var(--lpb-font-heading), var(--lpb-heading-fallback);
  font-size: 1.14rem;
  line-height: 1.5;
}
.lpb-review__who strong {
  font-weight: 600;
}
@media (min-width: 960px) {
  .lpb-reviews > li:nth-child(odd) {
    transform: rotate(-1.2deg);
  }
  .lpb-reviews > li:nth-child(even) {
    transform: rotate(1.2deg) translateY(10px);
  }
}

/* ---- gallery: framed prints ---- */
.lpb-gallery__grid {
  gap: clamp(12px, 2vw, 22px);
}
.lpb-gallery__grid img {
  border-radius: calc(var(--lpb-radius) + 6px);
  border: 6px solid var(--lpb-card-bg);
  box-shadow: var(--lpb-card-shadow);
}
.lpb-gallery__grid li:nth-child(odd) img {
  transform: rotate(-1.2deg);
}
.lpb-gallery__grid li:nth-child(even) img {
  transform: rotate(1.2deg);
}

/* ---- offer: kraft labels with stitched edges and a plate for each bundle ---- */
.lpb-plans {
  padding-top: 10px;
}
.lpb-plan {
  outline: 1.5px dashed color-mix(in srgb, var(--lpb-primary) 30%, transparent);
  outline-offset: -10px;
}
.lpb-plan.is-highlighted {
  border: 2px solid var(--lpb-primary);
  background: color-mix(in srgb, var(--lpb-accent) 10%, var(--lpb-card-bg));
  box-shadow: 0 30px 60px -34px rgb(90 50 10 / 0.6);
}
@media (min-width: 760px) {
  .lpb-plans--3 .lpb-plan.is-highlighted {
    transform: translateY(-12px);
  }
}
.lpb-plan__badge {
  top: -16px;
  padding: 6px 16px;
  background: var(--lpb-accent);
  color: var(--lpb-ink);
  font-family: var(--lpb-font-heading), var(--lpb-heading-fallback);
  font-style: italic;
  font-size: 0.92rem;
  transform: translateX(-50%) rotate(-3deg);
  box-shadow: 0 6px 14px -6px rgb(90 50 10 / 0.5);
}
.lpb-plan.is-highlighted .lpb-plan__badge {
  background: var(--lpb-primary);
  color: var(--lpb-on-primary);
}
.lpb-plan__img {
  width: min(68%, 240px);
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 50%;
  box-shadow: 0 0 0 8px color-mix(in srgb, var(--lpb-surface) 70%, transparent);
  margin-bottom: 22px;
}
.lpb-plan__features li {
  align-items: flex-start;
}
.lpb-plan__features .lpb-icon {
  margin-top: 3px;
  stroke-width: 2.6;
}

/* ---- guarantee: scalloped seal ---- */
.lpb-guarantee__inner,
.lpb-newsletter__inner {
  width: min(820px, 100% - 2 * clamp(16px, 4vw, 32px));
}
.lpb-guarantee__inner {
  padding: clamp(28px, 4vw, 44px);
  border-radius: calc(var(--lpb-radius) + 14px);
  background: var(--lpb-card-bg);
  border: 2px dashed color-mix(in srgb, var(--lpb-primary) 35%, transparent);
  gap: clamp(20px, 3vw, 32px);
}
.lpb-bg--dark .lpb-guarantee__inner,
.lpb-bg--primary .lpb-guarantee__inner {
  border-color: color-mix(in srgb, currentColor 30%, transparent);
}
.lpb-guarantee__icon {
  width: 120px;
  height: 120px;
  border: 0;
  border-radius: 0;
  background: var(--lpb-primary);
  color: var(--lpb-on-primary);
  font-size: 2.6rem;
  -webkit-mask: var(--gf-scallop) center / contain no-repeat;
  mask: var(--gf-scallop) center / contain no-repeat;
  transform: rotate(-10deg);
}
.lpb-bg--primary .lpb-guarantee__icon {
  background: var(--lpb-on-primary);
  color: var(--lpb-primary);
}
.lpb-guarantee__icon .lpb-icon {
  transform: rotate(10deg);
}

/* ---- faq: rounded cards ---- */
.lpb-faq__list {
  display: grid;
  gap: 12px;
  border: 0;
}
.lpb-faq__item {
  padding-inline: clamp(18px, 3vw, 26px);
  border: var(--lpb-card-border);
  border-radius: calc(var(--lpb-radius) + 2px);
  background: var(--lpb-card-bg);
}
.lpb-faq__item[open] {
  box-shadow: var(--lpb-card-shadow);
}
.lpb-faq__item summary {
  font-family: var(--lpb-font-heading), var(--lpb-heading-fallback);
  font-size: 1.14rem;
}
.lpb-faq__icon {
  box-sizing: content-box;
  padding: 6px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--lpb-accent) 28%, transparent);
  color: var(--lpb-primary-dark);
}
.lpb-bg--dark .lpb-faq__icon,
.lpb-bg--primary .lpb-faq__icon {
  color: inherit;
}

/* ---- cta band ---- */
.lpb-cta-band__media img {
  box-shadow: 0 0 0 10px color-mix(in srgb, var(--lpb-on-dark) 8%, transparent);
}
.lpb-cta-band.lpb-bg--default .lpb-cta-band__media img,
.lpb-cta-band.lpb-bg--surface .lpb-cta-band__media img {
  box-shadow: 0 0 0 10px color-mix(in srgb, var(--lpb-primary) 12%, transparent);
}

/* ---- newsletter: kraft tag ---- */
.lpb-newsletter__inner {
  padding: clamp(32px, 5vw, 56px) clamp(20px, 4vw, 48px);
  border-radius: calc(var(--lpb-radius) + 14px);
  background: var(--lpb-card-bg);
  border: 2px dashed color-mix(in srgb, var(--lpb-primary) 35%, transparent);
  box-shadow: var(--lpb-card-shadow);
}
.lpb-newsletter__form input[type="email"] {
  border-width: 1.5px;
  background: var(--lpb-bg);
}
.lpb-bg--dark .lpb-newsletter__inner,
.lpb-bg--primary .lpb-newsletter__inner {
  border-color: color-mix(in srgb, currentColor 30%, transparent);
}

/* ---- rich text, custom html ---- */
.lpb-richtext__body {
  font-size: 1.1rem;
  line-height: 1.75;
}
.lpb-html .lpb-wrap {
  color: var(--lpb-muted);
  font-size: 1.05rem;
}

/* ---- footer ---- */
.lpb-footer__brand {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 10px;
  align-items: center;
}
.lpb-footer .lpb-footer__brand::before {
  background: var(--lpb-accent);
}
.lpb-footer__brand p {
  grid-column: 1 / -1;
}
.lpb-footer .lpb-brand__name {
  font-size: 1.6rem;
}
.lpb-footer__links a:hover {
  color: var(--lpb-accent);
}
.lpb-social a:hover {
  background: var(--lpb-accent);
  border-color: var(--lpb-accent);
  color: var(--lpb-dark);
}

/* ---- sticky bar ---- */
.lpb-sticky {
  border-top: 1.5px dashed color-mix(in srgb, var(--lpb-primary) 35%, transparent);
}
.lpb-sticky .lpb-price__now {
  font-size: 1.15rem;
}
