/* Public SaaS launch surfaces — additive only, loaded after locked foundation assets. */
body .auth-threshold:has(.public-launch-shell) { place-items: start center; }
body .auth-threshold:has(.public-launch-shell) .threshold-frame { align-self: start; }

.threshold-panel.public-launch-shell {
  justify-content: center;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 82px clamp(34px, 4.2vw, 64px) 54px;
  background: #fdfcf9;
}
.threshold-panel.public-launch-shell .threshold-panel-head { top: 30px; }
.threshold-panel.public-launch-shell .auth-copy {
  width: 100%;
  max-width: 470px;
  margin: 0 0 clamp(34px, 5vh, 56px);
}
.threshold-panel.public-launch-shell .auth-copy .eyebrow { margin-bottom: 18px; }
.threshold-panel.public-launch-shell .auth-copy strong {
  max-width: 450px;
  color: #16211d;
  font: 500 clamp(38px, 3.35vw, 50px)/.98 Newsreader, Georgia, serif;
  letter-spacing: -.045em;
  text-wrap: balance;
}
.threshold-panel.public-launch-shell .auth-copy small {
  display: block;
  max-width: 430px;
  margin-top: 20px;
  color: #676861;
  font-size: 15px;
  line-height: 1.62;
  text-wrap: pretty;
}

.public-launch-grid,
.public-pricing-grid,
.public-support-stack {
  width: 100%;
  min-width: 0;
  max-width: 470px;
  margin: 0;
}
.public-conversion { width: 100%; min-width: 0; }
.public-signup {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
  margin: 0;
}
.public-email-field { display: grid; min-width: 0; gap: 8px; }
.public-field-label {
  color: #5f615d;
  font: 700 11px/1.2 'DM Mono', ui-monospace, monospace;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.public-signup .field {
  min-width: 0;
  min-height: 50px;
  border-color: #d9d6cf;
  background: #fff;
  box-shadow: none;
}
.public-signup .capture-button {
  min-height: 50px;
  padding-inline: 22px;
  border-radius: 10px;
  white-space: nowrap;
}
.public-trust-note {
  margin: 15px 0 0;
  color: #5f615d;
  font-size: 12px;
  line-height: 1.45;
  letter-spacing: .01em;
}
.public-secondary-links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 18px;
  margin-top: 34px;
  padding-top: 20px;
  border-top: 1px solid #e6e2db;
}
.public-text-link {
  min-height: 44px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #5f615d;
  font: 600 12px/1.2 'DM Sans', sans-serif;
  cursor: pointer;
}
.public-text-link:first-child { color: #1765c1; }
.public-text-link:hover { color: #16211d; text-decoration: underline; text-underline-offset: 4px; }
.public-text-link:focus-visible { outline: 2px solid #1765c1; outline-offset: 4px; border-radius: 2px; }

/* Secondary public routes retain structured, readable surfaces. */
.public-pricing-grid,
.public-support-stack { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.pricing-tile,
.public-feature-stack article {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 10px;
  padding: 20px;
  border: 1px solid #e3ded6;
  border-radius: 16px;
  background: #fffdfa;
  box-shadow: 0 10px 30px rgba(43, 35, 27, .06);
}
.pricing-tile h3 {
  max-width: 100%;
  margin: 0;
  color: #19231f;
  font: 500 clamp(27px, 2.35vw, 34px)/1.04 Newsreader, Georgia, serif;
  letter-spacing: -.035em;
  overflow-wrap: anywhere;
  text-wrap: balance;
}
.pricing-tile p,
.public-feature-stack span { margin: 0; color: #6f6a63; font-size: 13px; line-height: 1.55; }
.public-feature-stack { display: grid; gap: 10px; }
.public-feature-stack article { padding: 16px 18px; }
.public-feature-stack strong { color: #19231f; font: 600 19px/1.15 Newsreader, Georgia, serif; }
.pricing-tile.featured { color: #fffdfa; background: #19231f; border-color: #19231f; transform: none; }
.pricing-tile.featured h3 { color: #fffdfa; }
.pricing-tile.featured p,
.pricing-tile.featured li { color: #d7d0c5; }
.pricing-tile ul { margin: 0; padding-left: 18px; color: #6f6a63; line-height: 1.7; }
.public-wide { grid-column: 1 / -1; }
.public-support-stack { grid-template-columns: minmax(0, 1fr); }

@media (max-height: 720px) and (min-width: 801px) {
  .threshold-panel.public-launch-shell { justify-content: flex-start; padding-top: 72px; padding-bottom: 34px; }
  body .auth-threshold:has(.public-launch-shell) .threshold-steps { display: none; }
  body .auth-threshold:has(.public-launch-shell) .threshold-story { padding-block: 34px 26px; }
  body .auth-threshold:has(.public-launch-shell) .threshold-assurance { margin-top: 0; }
  .threshold-panel.public-launch-shell .auth-copy { margin-bottom: 28px; }
  .threshold-panel.public-launch-shell .auth-copy strong { font-size: clamp(34px, 3vw, 42px); }
  .threshold-panel.public-launch-shell .auth-copy small { margin-top: 14px; }
  .public-secondary-links { margin-top: 22px; padding-top: 12px; }
}

@media (max-width: 800px) {
  .threshold-panel.public-launch-shell {
    min-height: auto;
    justify-content: flex-start;
    overflow: visible;
    padding: 76px 24px 46px;
  }
  .threshold-panel.public-launch-shell .auth-copy { max-width: 560px; margin-bottom: 34px; }
  .threshold-panel.public-launch-shell .auth-copy strong { max-width: 520px; font-size: clamp(36px, 10vw, 48px); }
  .public-launch-grid,
  .public-pricing-grid,
  .public-support-stack { max-width: 560px; }
}

@media (max-width: 520px) {
  .threshold-panel.public-launch-shell { padding-inline: 20px; }
  .threshold-panel.public-launch-shell .auth-copy strong { font-size: clamp(34px, 10vw, 42px); }
  .public-signup { grid-template-columns: minmax(0, 1fr); }
  .public-signup .capture-button { width: 100%; }
  .public-secondary-links { align-items: flex-start; flex-direction: column; gap: 0; }
}
