/* Veludurthi Technologies About page. Layers on top of styles.css + site.css tokens. */

/* hero */
.about-hero { position: relative; min-height: 62vh; display: grid; align-items: center; border-bottom: 1px solid var(--page-divider); overflow: hidden; }
.about-hero .scene-canvas { position: absolute; inset: 0; width: 100%; height: 100%; opacity: .8; }
.about-hero-inner { padding: 140px 40px 80px; }
.about-hero-title { max-width: 16ch; font-size: clamp(36px,5.4vw,72px); }
@media (max-width: 640px) { .about-hero-inner { padding: 120px 24px 60px; } }

/* vision / mission */
.section-vision { padding: 0 40px 100px; border-bottom: 1px solid var(--page-divider); }
.vision-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2px; background: var(--page-divider); }
.vision-card { background: var(--page-card-bg); padding: 44px; }
.vision-statement { margin: 0; font-size: clamp(22px,2.6vw,32px); font-weight: 500; line-height: 1.25; letter-spacing: -.015em; color: var(--page-text); }
@media (max-width: 900px) { .vision-grid { grid-template-columns: 1fr; } .vision-card { padding: 32px; } }

/* full principle grid */
.section-philosophy-full { padding: 120px 40px; border-bottom: 1px solid var(--page-divider); }
.principle-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 2px; margin-top: 56px; background: var(--page-divider); }
.principle-full { background: var(--page-card-bg); padding: 32px 26px; }
.principle-index { font-family: ui-monospace,Menlo,monospace; font-size: 12px; color: var(--page-text-dim-40); }
.principle-full h3 { margin: 18px 0 10px; font-size: 21px; font-weight: 500; letter-spacing: -.01em; }
.principle-full p { margin: 0; font-size: 14.5px; line-height: 1.65; color: var(--page-text-dim-60); }
.principle-full.is-accent { box-shadow: inset 2px 0 0 var(--page-accent); }
.principle-full.is-accent .principle-index { color: var(--page-accent-light); }

/* lifecycle + generic flow-row (also used for Understand→Assist→Automate→Improve) */
.section-lifecycle { padding: 120px 40px; border-bottom: 1px solid var(--page-divider); }
.flow-row { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 48px; }
.flow-node {
  display: grid; gap: 6px; padding: 14px 16px; border: 1px solid var(--page-divider); border-radius: 10px;
  background: var(--page-card-bg); min-width: 108px;
}
.flow-node.is-accent { border-color: var(--page-accent); }
.flow-num { font-family: ui-monospace,Menlo,monospace; font-size: 11px; color: var(--page-accent-light); }
.flow-name { font-size: 13.5px; font-weight: 500; }
.flow-arrow { color: var(--page-text-dim-32); font-size: 16px; }
.flow-note { max-width: 74ch; margin-top: 26px; font-size: 14px; line-height: 1.75; }
.flow-row-compact { margin-top: 30px; }
@media (max-width: 640px) {
  .flow-row { flex-direction: column; align-items: stretch; }
  .flow-arrow { transform: rotate(90deg); align-self: center; }
  .flow-node { min-width: 0; }
}

/* about CTA (reuses .section-contact / .contact-grid, single-column variant) */
.about-cta-grid { grid-template-columns: 1fr; text-align: left; }
.about-cta .section-intro { max-width: 60ch; }
