/* Shared inline company promotion. All layout and state styles stay scoped. */
.mp-signup {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.85fr);
  align-items: stretch;
  width: 100%;
  min-width: 0;
  height: var(--mp-editorial-chapter-height, clamp(560px, 61vh, 630px));
  min-height: 0;
  border: 1px solid var(--mp-color-border);
  border-radius: var(--mp-editorial-radius, 18px);
  overflow: hidden;
  background: var(--mp-color-surface);
  color: var(--mp-color-text-strong);
  font-family: var(--mp-font-sans);
  text-align: left;
}
.mp-signup *, .mp-signup *::before, .mp-signup *::after { box-sizing: border-box; }
.mp-signup [hidden] { display: none !important; }
.mp-signup__intro, .mp-signup__body { min-width: 0; padding: clamp(24px, 2.7vw, 44px); }
.mp-signup__intro { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; background: color-mix(in srgb, #10b9d3 4%, var(--mp-color-surface)); }
.mp-signup__intro-content { width: 100%; max-width: 520px; min-width: 0; margin-inline: auto; text-align: left; }
.mp-signup__identity { display: flex; align-items: center; gap: 0.78rem; min-width: 0; margin-bottom: 26px; }
.mp-signup__company-icon { display: block; width: 60px; height: 60px; flex: 0 0 auto; color: color-mix(in srgb, var(--mp-editorial-accent-default, #657080) 84%, #ffffff); }
.mp-signup__identity > .mp-signup__eyebrow { margin: 0; }
.mp-signup__eyebrow { margin: 0 0 12px; color: var(--mp-color-text-muted); font-size: 0.7rem; font-weight: 600; line-height: 1.5; letter-spacing: 0.13em; }
.mp-signup__title { margin: 0; color: inherit; font-size: clamp(1.9rem, 3vw, 3.15rem); font-weight: 500; line-height: 1.08; letter-spacing: -0.045em; overflow-wrap: anywhere; }
.mp-signup__description { max-width: 440px; margin: 20px 0 0; color: var(--mp-color-text); font-size: 1rem; line-height: 1.65; text-wrap: balance; }
.mp-signup__benefits { display: grid; gap: 12px; margin: 28px 0 0; padding: 0; list-style: none; color: var(--mp-color-text); font-size: 0.84rem; line-height: 1.5; }
.mp-signup__benefits li { position: relative; padding-left: 23px; }
.mp-signup__benefits li::before { content: ''; position: absolute; left: 2px; top: 5px; width: 6px; height: 10px; border: solid #0b9db6; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg); }
.mp-signup__body { display: grid; align-content: center; border-left: 1px solid var(--mp-color-border); }
.mp-signup__form { display: grid; gap: 17px; width: 100%; max-width: 520px; margin: 0 auto; }
.mp-signup__form-heading h3 { margin: 0; color: inherit; font-size: 1.25rem; font-weight: 500; line-height: 1.3; letter-spacing: -0.02em; }
.mp-signup__form-heading p { margin: 7px 0 2px; color: var(--mp-color-text-muted); font-size: 0.82rem; line-height: 1.5; }
.mp-signup__field { display: grid; gap: 7px; min-width: 0; }
.mp-signup__field label { color: var(--mp-color-text); font-size: 0.8rem; font-weight: 500; line-height: 1.4; }
.mp-signup__field input { display: block; width: 100%; min-width: 0; height: 50px; padding: 0 14px; border: 1px solid var(--mp-color-border); border-radius: 7px; outline: none; background: var(--mp-color-surface); color: var(--mp-color-text-strong); font: inherit; font-size: 16px; line-height: normal; box-shadow: none; transition: border-color 150ms ease; }
.mp-signup__field input::placeholder { color: var(--mp-color-text-muted); opacity: 0.8; }
.mp-signup__field input:focus { border-color: #0b9db6; outline: 2px solid var(--mp-color-focus-soft); outline-offset: 1px; }
.mp-signup__field input[aria-invalid="true"] { border-color: #c54b48; }
.mp-signup__submit { display: flex; align-items: center; justify-content: center; gap: 16px; width: 100%; min-height: 52px; margin: 3px 0 0; padding: 13px 16px; border: 1px solid var(--mp-color-action-border); border-radius: 7px; background: var(--mp-color-action-bg); color: var(--mp-color-action-text); font: inherit; font-size: 0.94rem; font-weight: 600; line-height: 1.4; cursor: pointer; box-shadow: none; transition: background-color 150ms ease; }
.mp-signup__submit svg { flex: 0 0 18px; width: 18px; height: 18px; }
.mp-signup__submit:focus-visible { outline: 3px solid var(--mp-color-focus-soft); outline-offset: 3px; }
.mp-signup__submit:disabled { opacity: 0.65; cursor: wait; }
@media (hover: hover) { .mp-signup__submit:hover:not(:disabled) { background: var(--mp-color-action-bg-hover); } }
.mp-signup__note { margin: 0; color: var(--mp-color-text-muted); font-size: 0.73rem; line-height: 1.6; }
.mp-signup__honeypot { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip-path: inset(50%); pointer-events: none; }
.mp-signup__error { margin: 0; color: #c54b48; font-size: 0.84rem; line-height: 1.5; }
.mp-signup__success { width: 100%; max-width: 520px; margin: 0 auto; outline: none; }
.mp-signup__success-mark { display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; border-radius: 50%; background: color-mix(in srgb, #15976b 12%, var(--mp-color-surface)); color: #15976b; }
.mp-signup__success-mark svg { width: 26px; height: 26px; }
.mp-signup__success h3 { margin: 0 0 16px; font-size: clamp(1.6rem, 2.1vw, 2.1rem); font-weight: 500; line-height: 1.15; letter-spacing: -0.035em; }
.mp-signup__success > p:not([class]) { margin: 0 0 24px; color: var(--mp-color-text); font-size: 0.92rem; line-height: 1.65; }
.mp-signup__next { display: grid; gap: 20px; margin: 24px 0; padding-left: 22px; color: var(--mp-color-text-muted); font-size: 0.84rem; line-height: 1.5; }
.mp-signup__next strong, .mp-signup__next span { display: block; padding-left: 4px; }
.mp-signup__next strong { margin-bottom: 4px; color: var(--mp-color-text-strong); font-weight: 500; }
@media (max-width: 980px) {
  .mp-signup { grid-template-columns: minmax(0, 1fr); height: auto; min-height: 0; }
  .mp-signup__intro, .mp-signup__body { padding: 28px; }
  .mp-signup__intro { justify-content: start; }
  .mp-signup__identity { margin-bottom: 22px; }
  .mp-signup__company-icon { width: 48px; height: 48px; }
  .mp-signup__body { border-left: 0; border-top: 1px solid var(--mp-color-border); }
  .mp-signup__intro-content, .mp-signup__form, .mp-signup__success { max-width: none; }
  .mp-signup__title { font-size: clamp(1.9rem, 5.5vw, 2.6rem); }
  .mp-signup__description { margin-top: 16px; font-size: 0.92rem; }
  .mp-signup__benefits { gap: 9px; margin-top: 20px; }
}
@media (max-width: 480px) {
  .mp-signup__intro, .mp-signup__body { padding: 24px 20px; }
  .mp-signup__title { font-size: 1.9rem; }
  .mp-signup__form { gap: 16px; }
}
