/* Enterprise page (CHANGES.md section 52). Uses the colours and components of style.css. */
.ent-hero .section-inner > p, .ent-hero .section-inner > h1 { max-width: 760px; }
.ent-kicker { text-transform: uppercase; letter-spacing: .08em; font-size: .8rem; color: var(--text-secondary); margin: 0 0 10px; }
.ent-lead { font-size: 1.08rem; }
.ent-price { margin: 14px 0 0; font-weight: 600; color: var(--text-primary); }
.ent-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
.ent-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.ent-card { border-radius: 18px; padding: 20px; }
.ent-card h2 { font-size: 1.05rem; margin: 0 0 8px; }
.ent-card p { margin: 0; color: var(--text-secondary); line-height: 1.55; }
.ent-included .section-inner > * { max-width: 860px; }
.ent-list { margin-top: 16px; }
.pricing-features { list-style: none; padding: 0; display: grid; gap: 8px; line-height: 1.45; }
.pricing-features li { position: relative; padding-left: 22px; }
.pricing-features li::before { content: ""; position: absolute; left: 2px; top: .42em; width: 10px; height: 6px; border-left: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(-45deg); opacity: .7; }
.ent-steps { margin: 26px 0 0; padding: 0; list-style: none; counter-reset: ent; display: grid; gap: 12px; }
.ent-steps li { counter-increment: ent; display: grid; grid-template-columns: 34px 1fr; column-gap: 12px; align-items: start; }
.ent-steps li::before { content: counter(ent); grid-row: span 2; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--text-primary); font-weight: 600; font-size: .9rem; }
.ent-steps b { display: block; }
.ent-steps span { color: var(--text-secondary); }
.ent-form-wrap { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 28px; align-items: start; }
.ent-form { display: grid; gap: 12px; }
.ent-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.ent-form label { display: block; font-size: .88rem; margin-bottom: 4px; color: var(--text-secondary); }
.ent-privacy { font-size: .82rem; color: var(--text-secondary); margin: 0; }
@media (max-width: 760px) {
    .ent-grid, .ent-form-wrap, .ent-form-grid { grid-template-columns: 1fr; }
    .ent-actions .hero-cta { width: 100%; text-align: center; }
}
.ent-form-grid { align-items: start; }
.ent-form .form-group { margin: 0; }
/* Section 55: the select has the same height and font as the other fields. */
.ent-form-grid .form-input { height: 48px; font: inherit; }
