/* Desktop layout adapted from AstroWind Hero, Content and Steps2. */
.about-page { min-height: 0; }
.about-width { width: calc(100% - 96px); max-width: 1120px; margin-inline: auto; }
.about-tag { color: var(--brand); font-size: 14px; line-height: 22px; font-weight: 400; letter-spacing: .12em; }
.about-hero { padding-top: 56px; padding-bottom: 64px; text-align: center; }
.about-company-name { margin-bottom: 6px; font-size: 18px; line-height: 28px; font-weight: 500; }
.about-hero h1 { margin-top: 14px; font-size: 56px; line-height: 1.25; letter-spacing: -.025em; font-weight: 700; }
.about-hero h1 span { display: block; color: var(--brand); }
.about-lead { max-width: 820px; margin: 22px auto 0; color: #5b6575; font-size: 18px; line-height: 32px; }
.about-lead p + p { margin-top: 10px; }
.about-photo { display: block; width: 100%; object-fit: cover; border-radius: 8px; background: #f1f4f7; }
.hero-photo { width: 100%; max-width: 1024px; height: 400px; margin: 36px auto 0; }
.about-capabilities { padding: 40px 0 64px; }
.section-heading { text-align: center; margin-bottom: 40px; }
.about-page h2 { font-size: 36px; line-height: 48px; font-weight: 500; letter-spacing: -.015em; }
.section-heading p { margin-top: 12px; color: #677080; font-size: 17px; line-height: 28px; }
.capability-row { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.capability-row + .capability-row { margin-top: 48px; }
.capability-photo { height: 280px; }
.capability-gallery { display: grid; gap: 16px; min-width: 0; }
.capability-gallery .capability-photo { height: 240px; }
.capability-copy h3 { margin: 0; color: #1f2937; font-size: 26px; line-height: 36px; font-weight: 500; }
.capability-copy .copy-topic { margin-top: 16px; color: #536174; font-size: 18px; line-height: 32px; }
.capability-description { margin-top: 16px; color: #677080; font-size: 16px; line-height: 28px; }
.capability-description + .capability-description { margin-top: 12px; }
.about-values { padding: 64px 0; background: #f8fafc; }
.values-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start; }
.values-heading h2 { margin-top: 10px; }
.values-heading > p:last-child { max-width: 390px; margin-top: 18px; color: #677080; font-size: 18px; line-height: 32px; }
.values-list { display: grid; gap: 28px; list-style: none; padding: 0; margin: 0; }
.values-list li { display: flex; gap: 22px; align-items: flex-start; }
.value-number { display: grid; place-items: center; flex-shrink: 0; width: 56px; height: 56px; border-radius: 50%; background: #e8eff6; color: var(--brand); font-size: 24px; line-height: 1; font-weight: 400; }
.value-copy h3 { margin: 0; font-size: 22px; line-height: 32px; font-weight: 500; }
.value-copy p { margin-top: 8px; color: #677080; font-size: 16px; line-height: 28px; }
.about-contact { padding: 64px 0 72px; text-align: center; }
.about-contact h2 { font-size: 32px; line-height: 44px; }
.about-contact h2 span { color: var(--brand); }
.about-contact > p { margin-top: 14px; color: #677080; font-size: 18px; line-height: 30px; }
.about-contact-button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; margin-top: 26px; min-height: 48px; padding: 10px 28px; background: var(--brand); border: 1px solid var(--brand); border-radius: 6px; color: #fff; font-weight: 400; }
.about-contact-button:hover { background: #20476c; }
.about-contact-button svg { width: 18px; height: 18px; }
