/* ===== Newsletter — centered email capture on soft pink ===== */
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl {
  width: 100%;
  overflow-x: clip;
  padding: var(--nl-pad-y, var(--section-y)) var(--container-pad);
  font-family: var(--font-body);
}

/* Vertical padding presets (paddingY prop) */
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-padding="none"] {
  --nl-pad-y: 0px;
}
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-padding="small"] {
  --nl-pad-y: var(--space-2xl);
}
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-padding="medium"] {
  --nl-pad-y: clamp(56px, 5.6vw, 80px);
}
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-padding="large"] {
  --nl-pad-y: calc(var(--section-y) + var(--space-2xl));
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__inner {
  --nl-muted: var(--color-soft-muted, #6b3f4c);
  max-width: 640px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  text-align: center;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__eyebrow {
  margin: 0;
  color: var(--brand);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__eyebrow:not([data-ts]) {
  font-size: var(--text-label);
  font-weight: 600;
  letter-spacing: var(--ls-none);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__title {
  margin: 0;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__title:not([data-ts]) {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--text-h2);
  line-height: 1.12;
  letter-spacing: var(--ls-heading);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__subtitle {
  margin: 0;
  max-width: 56ch;
  color: var(--nl-muted);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__subtitle:not([data-ts]) {
  font-size: var(--text-body-lg);
  line-height: 1.55;
  letter-spacing: var(--ls-body);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__form {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  width: 100%;
  padding-top: 8px;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field {
  display: flex;
  width: 100%;
  max-width: 560px;
}

/* Attached: one pill, button sits inside on the right */
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="attached"] {
  padding: 4px;
  border: 1px solid var(--color-soft-border, #dc92d1);
  border-radius: var(--radius-btn);
  background: var(--pink-100);
}
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="attached"] .ethm-nl__btn {
  border-radius: var(--radius-btn);
}

/* Inline (default): separate pill input + pill button */
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="inline"] {
  gap: var(--space-xs);
}
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="inline"] .ethm-nl__input, .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="stacked"] .ethm-nl__input {
  min-height: 52px;
  padding: 0 22px;
  border: 1px solid var(--color-soft-border, #dc92d1);
  border-radius: var(--radius-btn);
  background: var(--pink-100);
}
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="inline"] .ethm-nl__btn, .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="stacked"] .ethm-nl__btn {
  min-height: 52px;
  border-radius: var(--radius-btn);
}

/* Stacked: input on top, full-width button beneath */
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="stacked"] {
  flex-direction: column;
  gap: var(--space-xs);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__input {
  flex: 1 1 auto;
  min-width: 0;
  padding: 12px 18px;
  border: 0;
  background: transparent;
  font-family: inherit;
  font-size: var(--text-body);
  letter-spacing: var(--ls-body);
  color: var(--color-text);
  transition: border-color 160ms ease;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__input::placeholder {
  color: var(--nl-muted);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__input:focus {
  outline: none;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="attached"]:focus-within, .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="inline"] .ethm-nl__input:focus, .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="stacked"] .ethm-nl__input:focus {
  border-color: var(--brand);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__btn {
  flex: 0 0 auto;
  padding: 0 26px;
  border: 0;
  background: var(--brand);
  color: var(--color-on-primary);
  cursor: pointer;
  transition: background 0.18s ease, opacity 0.18s ease;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__btn:not([data-ts]) {
  font-family: inherit;
  font-size: var(--text-button);
  font-weight: 600;
  letter-spacing: var(--ls-body);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__btn:hover:not(:disabled) {
  opacity: 0.9;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__btn:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__error {
  font-size: var(--text-small);
  color: var(--color-error);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__success {
  margin: var(--space-sm) 0 0;
  font-size: var(--text-body-lg);
  font-weight: 600;
  color: var(--brand);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__consent {
  display: flex;
  align-items: flex-start;
  gap: var(--space-xs);
  max-width: 560px;
  text-align: left;
  font-size: var(--text-caption);
  font-weight: 500;
  line-height: 1.4;
  color: var(--nl-muted);
  cursor: pointer;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__consent input {
  margin-top: 2px;
  flex: 0 0 auto;
  accent-color: var(--brand);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__consent p {
  margin: 0;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__consent a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__consent[data-missing="true"] input {
  outline: 2px solid var(--color-error);
  outline-offset: 1px;
}

/* Mobile (pen x0MM5E): left-aligned, input above a full-width button */
@media (max-width: 767px) {
  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__inner {
    align-items: stretch;
    gap: 14px;
    text-align: left;
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__icon svg {
    width: 26px;
    height: 26px;
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__subtitle:not([data-ts]) {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0;
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__form {
    gap: 14px;
    padding-top: 0;
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field {
    flex-direction: column;
    gap: 14px;
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="attached"] {
    border-radius: var(--radius-lg);
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="inline"] .ethm-nl__input, .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field[data-layout="stacked"] .ethm-nl__input {
    min-height: 50px;
    padding: 0 18px;
    font-size: 15px;
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__field .ethm-nl__btn {
    min-height: 48px;
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__consent {
    max-width: none;
  }
}

/* Paw mark above the title */
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__icon {
  display: inline-flex;
  color: var(--brand);
}

/* Small note under the form (pen bao0X) */
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__note {
  margin: 0;
  width: 100%;
  font-size: var(--text-caption);
  font-weight: 500;
  line-height: 1.4;
  color: var(--ethm-nl-muted, var(--color-soft-muted, #6b3f4c));
  text-align: inherit;
}


/* ===== Layout wrappers =====
   Centered: the copy/action groups dissolve into the single centred column. */
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl__copy, .cc_pxqp5f8i_d3KCksSRhY .ethm-nl__action {
  display: contents;
}

/* ===== Variant: ticket — a horizontal coupon card for mid-page placement ====
   The section itself takes the page background; the card carries the colour.
   A dashed perforation splits copy | form, with half-circle notches cut out of
   the top and bottom edges where it meets them. */
.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] {
  --nl-card: var(--nl-card-bg, var(--color-soft));
  /* The card already reads as a block; the neighbours' own section padding
     sets the gap, equal above and below, whatever the paddingY preset. */
  padding-top: clamp(16px, 2.5vw, 32px);
  padding-bottom: clamp(16px, 2.5vw, 32px);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__inner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  align-items: center;
  gap: 0;
  max-width: var(--container-max);
  padding: 0;
  border-radius: var(--radius-lg);
  background: var(--nl-card);
  text-align: left;
  /* notches: two transparent circles on the perforation line */
  -webkit-mask:
    radial-gradient(circle 14px at 53.5% 0, #0000 98%, #000) top / 100% 51% no-repeat,
    radial-gradient(circle 14px at 53.5% 100%, #0000 98%, #000) bottom / 100% 51% no-repeat;
  mask:
    radial-gradient(circle 14px at 53.5% 0, #0000 98%, #000) top / 100% 51% no-repeat,
    radial-gradient(circle 14px at 53.5% 100%, #0000 98%, #000) bottom / 100% 51% no-repeat;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__copy, .cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__action {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: clamp(28px, 4vw, 52px);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__copy {
  align-items: flex-start;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__action {
  position: relative;
  align-self: stretch;
  justify-content: center;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__action::before {
  content: "";
  position: absolute;
  top: 22px;
  bottom: 22px;
  left: 0;
  border-left: 2px dashed color-mix(in srgb, currentColor 22%, transparent);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__title:not([data-ts]) {
  font-size: var(--text-h3);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__subtitle:not([data-ts]) {
  font-size: var(--text-body);
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__form {
  align-items: stretch;
  padding-top: 0;
  gap: 12px;
}

.cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__note, .cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__error, .cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__consent {
  text-align: left;
}

@media (max-width: 767px) {
  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__inner {
    grid-template-columns: 1fr;
    -webkit-mask: none;
    mask: none;
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__action {
    padding-top: 0;
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__action::before {
    top: 0;
    left: 28px;
    right: 28px;
    bottom: auto;
    border-left: 0;
    border-top: 2px dashed color-mix(in srgb, currentColor 22%, transparent);
  }

  .cc_pxqp5f8i_d3KCksSRhY .ethm-nl[data-variant="ticket"] .ethm-nl__action {
    padding-top: 24px;
  }
}
