/* Correção das landings: componentes comuns, sem alterar o formulário da home. */
.liggo-page .nav, .onboardy-page .nav { grid-template-columns: 1fr auto 1fr; }
.nav__brand { min-width: 0; }
.nav .liggo-nav-logo .brand-logo,
.nav .onb-nav-logo .brand-logo { width: 172px; height: 52px; }
.product-nav-back { color: inherit; opacity: .75; font-size: .875rem; }
.l-cta__box, .o-cta__card { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); }
.l-cta__box > *, .o-cta__card > *, .l-features__grid > * { min-width: 0; }
.product-form {
  --form-surface: #0d192b; --form-input: #152237; --form-fg: var(--white);
  --form-muted: #b3c1d3; --form-border: #34445b; --form-accent: var(--cyan);
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px 18px; min-width: 0; width: 100%;
  padding: clamp(20px, 2.6vw, 36px); border-radius: 20px;
  border: 1px solid var(--form-border); background: var(--form-surface);
  color: var(--form-fg); box-shadow: 0 22px 60px -34px rgba(0, 0, 0, .4);
}
.product-form.o-form {
  --form-surface: var(--white); --form-input: #f7f9fc; --form-fg: var(--ink);
  --form-muted: #475569; --form-border: #cbd5e1; --form-accent: var(--blue);
}
.product-form__title {
  grid-column: 1 / -1; font-family: var(--f-display); font-size: 1.1rem;
  font-weight: 600; letter-spacing: -.025em; margin-bottom: 2px;
}
.product-form .field { display: grid; gap: 8px; min-width: 0; align-content: start; }
.product-form .field--full, .product-form .form__submit { grid-column: 1 / -1; }
.product-form .field label {
  position: static; transform: none; color: var(--form-muted);
  font-size: .82rem; font-weight: 500; line-height: 1.5;
}
.product-form .field input, .product-form .field select {
  display: block; width: 100%; min-width: 0; max-width: 100%; min-height: 52px;
  padding: 12px 14px; border: 1px solid var(--form-border); border-radius: 10px;
  background: var(--form-input); color: var(--form-fg); font-size: 1rem;
  line-height: 1.4; outline: none; transition: border-color .2s, box-shadow .2s;
}
.product-form .field select { cursor: pointer; text-overflow: ellipsis; padding-right: 28px; }
.product-form .field select option { background: var(--form-surface); color: var(--form-fg); }
.product-form .field input:focus, .product-form .field select:focus {
  border-color: var(--form-accent); outline: 2px solid var(--form-accent);
  outline-offset: 2px; box-shadow: 0 0 0 4px color-mix(in srgb, var(--form-accent) 10%, transparent);
}
.product-form .field input:user-invalid, .product-form .field select:user-invalid { border-color: #e58080; }
.product-form .form__submit { display: grid; gap: 12px; padding-top: 4px; min-width: 0; }
.product-form .btn {
  justify-content: center; width: 100%; min-height: 52px; border-radius: 12px;
  white-space: normal; text-align: center; font-size: .9rem;
}
.product-form .form__status {
  min-height: 1.6em; color: var(--form-accent); font-size: .75rem;
  line-height: 1.5; letter-spacing: .025em; overflow-wrap: anywhere;
}
.l-cta__badges .byline, .o-cta__badge .byline {
  display: block; font-size: .66rem; line-height: 1.8; letter-spacing: .04em;
  opacity: .75; overflow-wrap: anywhere;
}
@media (max-width: 960px) {
  .l-cta__box, .o-cta__card { grid-template-columns: minmax(0, 1fr); padding: clamp(20px, 4vw, 36px); }
}
@media (max-width: 860px) {
  .liggo-page .nav, .onboardy-page .nav { grid-template-columns: minmax(0, 1fr) auto; gap: 10px; padding-block: 12px; }
  .nav .liggo-nav-logo .brand-logo, .nav .onb-nav-logo .brand-logo { width: 144px; height: 44px; }
  .liggo-page .nav__actions, .onboardy-page .nav__actions { flex-direction: column; align-items: flex-end; gap: 6px; }
  .liggo-page .nav__cta, .onboardy-page .nav__cta { display: inline-flex; padding: .7em .9em; font-size: .72rem; }
  .product-nav-back { font-size: .7rem; }
}
@media (max-width: 600px) {
  .product-form { grid-template-columns: minmax(0, 1fr); gap: 18px; }
}
/* Só a faixa estreita afetada: a marca acompanha a coluna disponível. */
@media (max-width: 340px) {
  .nav .liggo-nav-logo, .nav .onb-nav-logo { width: 100%; max-width: 100%; }
  .nav .liggo-nav-logo .brand-logo, .nav .onb-nav-logo .brand-logo {
    width: 100%; max-width: 144px; height: 36px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .product-form *, .product-form *::before { transition: none; }
}

/* T030–T031: acabamento compartilhado sem substituir cores ou geometria local. */
:is(.liggo-page, .onboardy-page) .btn { min-height: 44px; }
.product-nav-back { min-height: 44px; opacity: 1; }
.product-form .btn:focus-visible { border-radius: 12px !important; }
.product-form .field :is(input, select):focus-visible { border-radius: 10px !important; }
:is(.liggo-page, .onboardy-page) .btn:disabled {
  opacity: .55; cursor: wait; transform: none !important; box-shadow: none;
}
:is(.liggo-page, .onboardy-page) .btn:disabled::before { transform: scaleX(0); }
:is(.liggo-page, .onboardy-page) .btn:disabled .arrow { transform: none; }
:is(.liggo-page, .onboardy-page) .btn:focus-visible { color: var(--btn-fg); }
.liggo-page .btn--cyan:focus-visible::before { background: var(--cyan); }
.onboardy-page .btn--blue:focus-visible::before { background: var(--blue); }
:is(.liggo-page, .onboardy-page) .btn--ghost:focus-visible { color: var(--white); }
:is(.liggo-page, .onboardy-page) .btn--ghost:focus-visible::before { background: var(--blue); }
@media (hover: none) {
  :is(.liggo-page, .onboardy-page) .btn:hover:not(:focus-visible) {
    color: var(--btn-fg); box-shadow: none;
  }
  :is(.liggo-page, .onboardy-page) .btn--ghost:hover:not(:focus-visible) { box-shadow: inset 0 0 0 1px currentColor; }
  :is(.liggo-page, .onboardy-page) .btn:hover:not(:focus-visible)::before { transform: scaleX(0); }
  :is(.liggo-page, .onboardy-page) .btn:hover:not(:focus-visible) .arrow { transform: none; }
  .product-nav-back:hover:not(:focus-visible) { background-size: 0 1px; }
  .product-nav-back:hover:not(:focus-visible) svg { transform: none; }
}
