/* MOR's custom newsletter presentation on the official Constant Contact form.
   Keep provider field names, submit controls, consent, and response containers intact. */
.mor-cc-signup { min-width: 0; --signup-ink: var(--forest); --signup-paper: var(--cream); --signup-rule: var(--border); }
.mor-cc-signup .ctct-inline-form { width: 100%; min-width: 0; }
.mor-cc-signup div.ctct-form-embed { width: 100%; margin: 0 !important; }
.mor-cc-signup div.ctct-form-embed div.ctct-form-defaults { max-width: none !important; margin: 0 !important; padding: 0 !important; background: transparent !important; color: var(--signup-ink) !important; font-family: var(--font-body) !important; }
.mor-cc-signup div.ctct-form-embed form.ctct-form-custom { display: flex; flex-direction: column; gap: 12px; }
.mor-cc-signup div.ctct-form-embed form > h2.ctct-form-header,
.mor-cc-signup div.ctct-form-embed form > p.ctct-form-text { display: none; }
.mor-cc-signup div.ctct-form-embed .ctct-form-field { order: 1; display: flex; flex-direction: column; gap: 6px; margin: 0 !important; }
.mor-cc-signup div.ctct-form-embed label.ctct-form-label { margin: 0 !important; color: var(--signup-ink) !important; font: 400 14px/1.5 var(--font-body) !important; }
.mor-cc-signup div.ctct-form-embed input.ctct-form-element { width: 100%; max-width: 100%; height: auto !important; min-height: 48px; padding: 12px 16px !important; border: 1px solid var(--signup-rule) !important; border-radius: var(--radius) !important; outline: none; background: var(--signup-paper) !important; color: var(--signup-ink) !important; font: 400 16px/1.5 var(--font-body) !important; box-shadow: none !important; transition: border-color .2s, box-shadow .2s; }
.mor-cc-signup div.ctct-form-embed input.ctct-form-element:focus { border-color: var(--sage) !important; box-shadow: 0 0 0 3px rgba(82,121,111,.1) !important; }
.mor-cc-signup div.ctct-form-embed button.ctct-form-button { order: 2; display: flex !important; align-items: center; justify-content: space-between !important; gap: 12px; width: 100%; min-height: 50px; margin: 0 !important; padding: 14px 24px !important; border: 1px solid var(--signup-ink) !important; border-radius: var(--radius) !important; background: var(--signup-ink) !important; color: var(--cream) !important; font: 500 13px/1.6 var(--font-body) !important; letter-spacing: .14em; text-align: left !important; text-transform: uppercase; white-space: normal; cursor: pointer; transition: background .2s; }
.mor-cc-signup div.ctct-form-embed button.ctct-form-button::after { content: '→'; flex-shrink: 0; font-size: 18px; line-height: 1; }
.mor-cc-signup div.ctct-form-embed button.ctct-form-button:hover { background: var(--forest-mid) !important; }
.mor-cc-signup div.ctct-form-embed button.ctct-form-button:disabled { opacity: .65; cursor: wait; }
.mor-cc-signup div.ctct-form-embed #gdpr_text { order: 3; }
.mor-cc-signup div.ctct-form-embed p.ctct-gdpr-text { margin: 2px 0 0 !important; color: var(--muted) !important; font: 400 12px/1.7 var(--font-body) !important; }
.mor-cc-signup div.ctct-form-embed .ctct-form-error { order: 4; }
.mor-cc-signup div.ctct-form-embed .ctct-form-errorMessage { font: 400 13px/1.6 var(--font-body) !important; }
.mor-cc-signup div.ctct-form-embed p.ctct-form-footer { margin: 14px 0 0 !important; padding: 0 !important; font: 400 12px/1.65 var(--font-body) !important; }
.mor-signup-help { color: var(--muted); font: 400 12px/1.7 var(--font-body); }
.mor-signup-help a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
#subscribe .mor-cc-signup { background: transparent; border-color: var(--signup-rule); backdrop-filter: none; }
.newspaper-edition .mor-cc-signup { --signup-ink: var(--paper-ink); --signup-paper: transparent; --signup-rule: var(--paper-rule); }
.mor-cc-signup input:focus-visible, .mor-cc-signup button:focus-visible { outline: 3px solid var(--sage); outline-offset: 3px; }
.mor-form-honeypot { display: none; }
.mor-cc-signup .ctct-form-success h2 { color: var(--signup-ink) !important; font: 400 32px/1.2 var(--font-display) !important; margin-bottom: 16px; }
.mor-cc-signup .ctct-form-success p { color: var(--muted) !important; font: 400 15px/1.75 var(--font-body) !important; }
@media(max-width:540px) {
  .mor-cc-signup div.ctct-form-embed button.ctct-form-button { padding-right: 16px !important; padding-left: 16px !important; font-size: 11px !important; letter-spacing: .1em; }
}
