/* Phase 09 — company information pages; extends the existing design system. */
.pm-company-page { background: var(--pm-surface, #f7f9fc); }
.pm-company-hero { padding: clamp(2.5rem, 7vw, 5.25rem) 0 3rem; background: linear-gradient(135deg, #f8fbff 0%, #fff 58%, #edf3fb 100%); border-bottom: 1px solid rgba(23,54,93,.09); }
.pm-company-hero .pm-breadcrumb { margin-bottom: 2rem; }
.pm-company-hero h1 { max-width: 900px; margin: .45rem 0 1rem; color: #17365d; font-size: clamp(2.25rem, 5.5vw, 4.25rem); line-height: 1.08; letter-spacing: -.04em; }
.pm-company-lead { max-width: 800px; margin: 0 0 1rem; color: #233f63; font-size: clamp(1.2rem, 2.5vw, 1.65rem); line-height: 1.5; }
.pm-company-intro { max-width: 820px; color: #5b6b7e; font-size: 1.02rem; line-height: 1.85; }
.pm-company-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.7rem; }
.pm-company-info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.2rem; }
.pm-company-info-card { min-height: 230px; padding: clamp(1.25rem, 2.7vw, 2rem); border: 1px solid rgba(23,54,93,.1); }
.pm-company-card-number { display: inline-flex; align-items: center; justify-content: center; width: 2.6rem; height: 2.6rem; margin-bottom: 1rem; border-radius: .8rem; background: #e9f0fa; color: #17365d; font-weight: 800; }
.pm-company-info-card h2, .pm-company-process-item h2 { margin: 0 0 .7rem; color: #17365d; font-size: 1.25rem; }
.pm-company-info-card p, .pm-company-process-item p { margin: 0; color: #5b6b7e; line-height: 1.8; }
.pm-company-process-list { max-width: 900px; margin: 0 auto; }
.pm-company-process-item { display: grid; grid-template-columns: 3.5rem 1fr; gap: 1.15rem; padding: 1.5rem 0; border-bottom: 1px solid rgba(23,54,93,.12); }
.pm-company-process-item:first-child { padding-top: 0; }
.pm-company-process-number { display: flex; align-items: center; justify-content: center; width: 3.2rem; height: 3.2rem; border-radius: 50%; background: #17365d; color: #fff; font-weight: 800; }
.pm-company-faq-list { max-width: 900px; margin: 0 auto; }
.pm-company-faq { margin-bottom: .8rem; padding: 0 1.25rem; border: 1px solid rgba(23,54,93,.12); border-radius: 1rem; background: #fff; }
.pm-company-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.2rem 0; color: #17365d; font-weight: 700; cursor: pointer; list-style: none; }
.pm-company-faq summary::-webkit-details-marker { display: none; }
.pm-company-faq summary span { color: #b07b2b; font-size: 1.3rem; }
.pm-company-faq p { margin: 0; padding: 0 0 1.2rem; color: #5b6b7e; line-height: 1.8; }
.pm-company-cta { padding: 3rem 0; background: #17365d; color: #fff; }
.pm-company-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.pm-company-cta h2 { margin: .25rem 0 .6rem; color: #fff; font-size: clamp(1.6rem, 3.5vw, 2.35rem); }
.pm-company-cta p:not(.pm-eyebrow) { margin: 0; color: #d7e1ef; line-height: 1.7; }
.pm-company-cta .pm-eyebrow { color: #f3c978; }
@media (max-width: 800px) { .pm-company-info-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pm-company-cta__inner { align-items: flex-start; flex-direction: column; } }
@media (max-width: 560px) { .pm-company-info-grid { grid-template-columns: 1fr; } .pm-company-info-card { min-height: 0; } .pm-company-process-item { grid-template-columns: 2.8rem 1fr; gap: .8rem; } .pm-company-process-number { width: 2.6rem; height: 2.6rem; } .pm-company-actions .pm-btn { width: 100%; justify-content: center; } }
