@charset "utf-8";

.message { align-items: flex-start; border-style: solid; border-width: 0.0625rem; display: flex; flex-direction: row; font-size: 0.75rem; font-weight: 700; gap: 0.75rem; justify-content: flex-start; padding: 0.75rem; width: 100%; }

.message p { font-size: 0.75rem; margin: 0px; }

.message a { text-decoration: underline; }

.message__title { font-size: 1rem; }

.message--warning { background-color: var(--surface-functional-warning); border-color: var(--border-functional-warning); color: var(--text-functional-warning); }

.message--error { background-color: var(--surface-functional-error); border-color: var(--border-functional-error); color: var(--text-functional-error); }

.message--success { background-color: var(--surface-functional-success); border-color: var(--border-functional-success); color: var(--text-functional-success); }

.newsletter { background-color: var(--surface-callout); padding: 3rem 0px; width: 100%; }

.newsletter--darker-background, .newsletter.newsletter--collection { background-color: var(--surface-inactive); }

.newsletter--has-cta { padding: 0px; }

.newsletter--has-cta .newsletter__form-wrapper { display: grid; gap: 1rem; justify-content: stretch; padding-block: 1.25rem; }

.newsletter__title { font-size: 1.4375rem; font-weight: 700; line-height: 1.1; }

.newsletter__form-wrapper { align-items: flex-start; display: flex; flex: 1 1 0%; flex-flow: wrap; gap: 5vw; justify-content: center; }

.newsletter__form-wrapper > * { flex: 1 1 auto; }

.newsletter__form { display: grid; gap: 1rem; }

.newsletter-cta { background-color: rgb(1, 12, 6); color: rgb(255, 255, 255); flex: 1 1 0%; overflow: hidden; padding-block: 1.25rem; padding-right: 1.5rem; position: relative; }

.newsletter-cta__inner { display: grid; gap: 1rem; }

.newsletter-cta__content { align-items: center; display: flex; flex: 1 1 0%; flex-direction: row; gap: 0.75rem; justify-content: space-between; }

.newsletter-cta__content-wrapper { display: grid; flex: 1 1 0%; gap: 1rem; position: relative; }

.newsletter-cta__text { display: grid; flex: 1 1 0%; gap: 0.75rem; }

.newsletter-cta__title { font-size: 1.4375rem; font-weight: 700; line-height: 1.1; }

.newsletter-cta__eyebrow { color: rgb(255, 127, 83); font-family: "Walter Turncoat", sans-serif; font-size: 0.875rem; font-weight: 400; line-height: 1.1; text-transform: uppercase; }

.newsletter-cta__image { flex-shrink: 0; width: 9.7rem; }

.newsletter-cta__background { inset: 0px; opacity: 0.2; position: absolute; }

.newsletter-cta__background img { height: 100%; object-fit: cover; width: 100%; }

@media only screen and (min-width: 48em) {
  .newsletter--has-cta .newsletter__container { max-width: none; padding: 0px; width: 100%; }
  .newsletter--has-cta .newsletter-cta, .newsletter--has-cta .newsletter__form-outer { width: 50vw; }
  .newsletter--has-cta .newsletter-cta > *, .newsletter--has-cta .newsletter__form-outer > * { max-width: 39rem; width: 100%; }
  .newsletter--has-cta .newsletter__form-outer { display: grid; justify-content: stretch; justify-items: flex-end; padding-left: 1.5rem; }
  .newsletter--has-cta .newsletter__container { align-items: center; display: flex; flex-direction: row; justify-content: center; }
  .newsletter--has-cta .newsletter__form-wrapper { padding-right: 2rem; }
  .newsletter__title { font-size: 1.8125rem; }
  .newsletter__form .input-line { gap: 1.4rem; }
  .newsletter__form .input-line input:not([type="submit"]) { border-right-width: 0.0625rem; }
  .newsletter__form .input-line .btn { border-radius: 0px; }
  .newsletter-cta__inner { align-items: flex-start; display: flex; flex-direction: row; gap: 2rem; justify-content: space-between; padding-left: 2rem; }
  .newsletter-cta__content { align-items: flex-start; }
  .newsletter-cta__content-wrapper { gap: 1.5rem; justify-items: flex-start; }
  .newsletter-cta__title { font-size: 1.8125rem; }
  .newsletter-cta__image { width: 8.5rem; }
}

@media only screen and (min-width: 64em) {
  .newsletter--has-cta .newsletter__form-wrapper, .newsletter-cta__inner { gap: 1.5rem; padding-block: 3rem; }
}

@media only screen and (min-width: 80em) {
  .newsletter-cta__title, .newsletter__title { font-size: 2.0625rem; }
}

@media only screen and (max-width: calc(48em - 1px)) {
  .newsletter-cta { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); padding-left: 1.25rem; padding-right: 1.25rem; width: 100vw; }
}

@media only screen and (max-width: calc(48em - 1px)) and (min-width: 30em) {
  .newsletter-cta { padding-left: 1.5rem; padding-right: 1.5rem; }
}