/* This stylesheet applies only inside the isolated Brevo document. */
html,
body {
  margin: 0;
  padding: 0;
  background: transparent;
  color: #eadfc8;
  font-family: 'DM Sans', sans-serif;
}
* {
  box-sizing: border-box;
}
body {
  /* Include badge margins in the height observed by the embedding component. */
  display: flow-root;
}
.sib-form,
#sib-container,
#sib-form-container {
  width: 100%;
  max-width: none !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  font-family: 'DM Sans', sans-serif !important;
}
.sib-form {
  text-align: left !important;
}
#sib-container {
  border-radius: 0 !important;
}
#sib-container .sib-form-block {
  padding-left: 0;
  padding-right: 0;
}
#sib-container .brevo-heading {
  font:
    600 38px/1.1 'Cormorant Garamond',
    serif !important;
  color: #eadfc8 !important;
  margin-bottom: 12px;
}
.brevo-heading p {
  margin: 0;
}
.recipe-layout .brevo-heading {
  display: none;
}
#sib-container .entry__label {
  font:
    500 16px/1.5 'DM Sans',
    sans-serif !important;
  color: #eadfc8 !important;
  margin-bottom: 9px;
}
#sib-container .entry__field {
  border: 0;
  border-radius: 10px;
  background: transparent;
  /* Brevo also outlines this wrapper on focus; the input owns our focus ring. */
  outline: none !important;
  box-shadow: none !important;
}
#sib-container input[name='EMAIL'] {
  /* Override the vendor's more-specific content-box rule. */
  box-sizing: border-box;
  width: 100%;
  height: 52px;
  min-height: 52px;
  padding: 12px;
  border: 1px solid #9e8da7;
  border-radius: 10px;
  background: #140e1a;
  color: #f5eddf;
  font:
    17px/1.4 'DM Sans',
    sans-serif;
}
#sib-container input::placeholder {
  font-family: 'DM Sans', sans-serif;
  color: #c9bbd0;
}
#sib-container input[name='EMAIL']:focus {
  border-color: #e8ad68;
  box-shadow: inset 0 0 0 1px #e8ad68;
  outline: none;
}
#sib-container input[type='checkbox']:focus-visible,
#sib-container button:focus-visible,
a:focus-visible {
  outline: 3px solid #e8ad68;
  outline-offset: 3px;
}
#sib-container .entry__specification {
  color: #c9bbd0 !important;
  font:
    14px/1.6 'DM Sans',
    sans-serif !important;
}
#sib-container .entry__error {
  font:
    15px/1.5 'DM Sans',
    sans-serif !important;
}
#sib-container .sib-form-block__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 56px;
  margin-top: 14px;
  padding: 14px 20px;
  border: 0 !important;
  border-radius: 30px !important;
  color: #140e1a !important;
  background: #e8622a !important;
  font:
    700 16px/1.4 'DM Sans',
    sans-serif !important;
  cursor: pointer;
  white-space: normal;
}
#sib-container button:disabled {
  opacity: 0.65;
  cursor: wait;
}
.sib-form-message-panel {
  max-width: none !important;
  margin: 0 0 20px;
  font:
    16px/1.6 'DM Sans',
    sans-serif !important;
}
#success-message {
  color: #d7f5df !important;
  background: #173929 !important;
  border-color: #6fb68a !important;
}
#error-message {
  color: #ffded4 !important;
  background: #4b2324 !important;
  border-color: #d78676 !important;
}
.site-consent {
  display: flex;
  align-items: start;
  gap: 12px;
  margin: 18px 0 4px;
  text-align: left;
  font-size: 15px;
  line-height: 1.65;
}
.site-consent input {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  margin: 3px 0 0;
  accent-color: #e8622a;
}
#sib-container .sib-checkbox-group {
  padding: 16px !important;
  border: 1px solid #806c8766;
  border-radius: 12px;
  background: #140e1a66;
}
#sib-container .sib-checkbox-group .entry__choice {
  padding-left: 0;
  text-indent: 0;
}
#sib-container .sib-checkbox-group .entry__choice > .checkbox__label {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 6px 0 !important;
  text-indent: 0;
  text-align: left;
  cursor: pointer;
}
#sib-container .sib-checkbox-group .checkbox__label > span:last-child {
  grid-column: 2;
  min-width: 0;
  text-indent: 0;
  color: #eadfc8 !important;
  font:
    15px/1.6 'DM Sans',
    sans-serif !important;
}
/* Use the same native control as consent; hide only Brevo's decorative box. */
#sib-container .sib-checkbox-group input[type='checkbox'].input_replaced {
  appearance: auto !important;
  display: block !important;
  position: static !important;
  z-index: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  clip: auto !important;
  clip-path: none !important;
  transform: none !important;
  flex: 0 0 20px;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  accent-color: #e8622a;
  cursor: pointer;
  grid-column: 1;
}
#sib-container .sib-checkbox-group .checkbox {
  display: none !important;
}
#sib-container a,
.brevo-load-error a {
  color: #f0c78e;
  text-decoration: underline;
}
.site-consent-error {
  color: #ffbaa8;
  font-size: 14px;
  text-align: left;
}
.brevo-load-error {
  padding: 12px 0;
  color: #ffbaa8;
  font-size: 15px;
  line-height: 1.6;
  text-align: left;
}
.input--hidden {
  display: none !important;
}
/* Keep Google's attribution visible below each isolated form, clear of its button. */
.grecaptcha-badge {
  position: relative !important;
  right: auto !important;
  bottom: auto !important;
  margin: 16px 0 6px;
}
.brevo-captcha-row {
  text-align: left;
  min-width: 0;
}
#sib-container .brevo-captcha-row .sib-form-block {
  padding: 0;
}

/* The hero uses the same Brevo form and scripts, with its original compact row. */
.compact-layout #sib-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 12px;
}
.compact-layout .brevo-heading-row {
  display: none;
}
.compact-layout .brevo-email-row {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  padding: 0 !important;
}
.compact-layout .brevo-submit-row {
  grid-column: 2;
  grid-row: 1;
  padding: 0 !important;
}
.compact-layout #sib-container .entry__label {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  white-space: nowrap;
  overflow: hidden;
  clip-path: inset(50%);
}
.compact-layout .entry__specification {
  display: none;
}
.compact-layout #sib-container input[name='EMAIL'] {
  height: 58px;
  min-height: 58px;
  padding: 12px 18px;
}
.compact-layout #sib-container .sib-form-block__button {
  min-height: 58px;
  margin: 0;
  padding: 12px 22px;
  border-radius: 24px 24px 0 24px !important;
}
.compact-layout .brevo-consent-row,
.compact-layout .compact-note {
  grid-column: 1 / -1;
}
.compact-layout .brevo-consent-row {
  grid-row: 2;
}
.compact-layout .site-consent {
  margin-top: 14px;
  font-size: 14px;
  color: #d4c6dc;
}
.compact-layout .compact-note {
  grid-row: 4;
  margin: 8px 0 4px;
  font-size: 14px;
  line-height: 1.6;
  color: #d4c6dc;
}
.compact-layout .brevo-captcha-row {
  grid-column: 1 / -1;
  grid-row: 3;
}
/* Any exported CAPTCHA block retains its markup and spans the form width. */
.compact-layout
  #sib-form
  > div:not(.brevo-email-row):not(.brevo-submit-row):not(.brevo-heading-row):not(
    .brevo-consent-row
  ) {
  grid-column: 1 / -1;
}
@media (max-width: 380px) {
  .compact-layout #sib-form {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 10px;
  }
  .compact-layout .brevo-submit-row {
    grid-column: 1;
    grid-row: 4;
  }
  .compact-layout .compact-note {
    grid-row: 5;
  }
}
@media (max-width: 319px) {
  #sib-captcha {
    transform: scale(0.82);
    transform-origin: left top;
    width: 304px;
    height: 64px;
  }
}
