/* Opt-in author content: these classes are explicitly allowed by the sanitizer. */
.professional-home {
    max-width: 1100px;
    margin: 0 auto;
    padding: 48px 24px;
    color: #17243c;
    font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
    font-size: 17px;
    line-height: 1.75;
}
.professional-home, .professional-home * { box-sizing: border-box; }
.professional-home p { margin: 0 0 18px; font-size: inherit; line-height: inherit; }
.professional-home .ph-eyebrow { color: #2459d3; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.professional-home .ph-title { max-width: 850px; margin: 0 0 24px; color: #17243c; font-size: clamp(32px, 4vw, 52px); font-weight: 750; letter-spacing: -.035em; line-height: 1.12; text-wrap: balance; }
.professional-home .ph-lead { max-width: 790px; color: #40516a; font-size: 21px; line-height: 1.6; }
.professional-home .ph-description { max-width: 820px; color: #526077; }
.professional-home .ph-ai { margin: 36px 0; padding: 30px; border: 1px solid #dbe5fa; border-radius: 18px; background: linear-gradient(135deg, #eff4ff, #f7fafc); }
.professional-home .ph-ai h3 { margin: 0 0 12px; color: #17243c; font-size: 25px; line-height: 1.35; }
.professional-home .ph-ai p { max-width: 880px; }
.professional-home .ph-principles { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0 0; padding: 0; list-style: none; }
.professional-home .ph-principles li { padding: 7px 12px; border: 1px solid #dbe5fa; border-radius: 999px; background: #fff; color: #294574; font-size: 14px; font-weight: 600; }
.professional-home .ph-section-heading { margin: 44px 0 10px; color: #17243c; font-size: 28px; line-height: 1.3; letter-spacing: -.025em; }
.professional-home .ph-section-intro { max-width: 740px; color: #526077; }
.professional-home .ph-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin-top: 26px; }
.professional-home .ph-card { min-width: 0; padding: 28px; border: 1px solid #e2e8f0; border-radius: 16px; background: #fff; box-shadow: 0 5px 20px rgba(23, 36, 60, .04); }
.professional-home .ph-card-number { display: block; margin-bottom: 12px; color: #2459d3; font-size: 13px; font-weight: 700; letter-spacing: .08em; }
.professional-home .ph-card h4 { margin: 0 0 12px; color: #17243c; font-size: 21px; line-height: 1.35; }
.professional-home .ph-card p { color: #526077; font-size: 16px; }
.professional-home .ph-card ul { margin: 0; padding-left: 20px; color: #526077; font-size: 15px; line-height: 1.7; }
.professional-home .ph-card li + li { margin-top: 10px; }
.professional-home .ph-card li::marker { color: #2459d3; }
.professional-home .ph-closing { display: block; margin-top: 32px; padding: 30px; border-radius: 16px; background: #17243c; color: #fff; }
.professional-home .ph-closing p { max-width: 760px; font-size: 20px; }
.professional-home a.ph-button { display: inline-block; padding: 11px 20px; border: 1px solid #2459d3; border-radius: 9px; background: #2459d3; color: #fff; font-size: 16px; font-weight: 600; line-height: 1.5; text-decoration: none; }
.professional-home a.ph-button:hover { background: #1945ac; border-color: #1945ac; }
.professional-home a.ph-button:focus-visible { outline: 3px solid #e0a000; outline-offset: 4px; }
.professional-home .ph-closing a.ph-button { background: #fff; border-color: #fff; color: #17243c; }
.professional-home .ph-closing a.ph-button:hover { background: #eaf0ff; }
@media (max-width: 720px) {
    .professional-home { padding: 32px 16px; }
    .professional-home .ph-grid { grid-template-columns: minmax(0, 1fr); }
    .professional-home .ph-ai, .professional-home .ph-card, .professional-home .ph-closing { padding: 24px; }
    .professional-home .ph-lead { font-size: 19px; }
}
