.origin { padding: 96px 32px; background: var(--white); }
.origin-inner { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start; }
.origin-copy h2 { font-size: 2.5rem; font-weight: 700; color: var(--dark); margin: 0 0 24px; line-height: 1.2; letter-spacing: -0.03em; }
.origin-copy p { font-size: 1.0625rem; color: var(--text-muted); line-height: 1.8; margin: 0 0 20px; }
.origin-copy p:last-child { margin: 0; }
.origin-aside { display: flex; flex-direction: column; gap: 24px; padding-top: 8px; }
.origin-stat { background: var(--bg-light); border: 1px solid var(--border); border-radius: 12px; padding: 28px 32px; }
.origin-stat-val { font-size: 3rem; font-weight: 700; color: var(--dark); letter-spacing: -0.04em; line-height: 1; }
.origin-stat-val span { color: var(--primary); }
.origin-stat-label { font-size: 0.9375rem; color: var(--text-muted); margin-top: 6px; line-height: 1.5; }
.mission-bar { background: var(--dark); padding: 72px 32px; text-align: center; position: relative; overflow: hidden; }
.mission-bar::before { content: ''; position: absolute; inset: 0; background-image: radial-gradient(circle, #4169E1 1px, transparent 1px); background-size: 36px 36px; opacity: 0.04; pointer-events: none; }
.mission-bar blockquote { font-size: 2rem; font-weight: 600; color: #fff; max-width: 760px; margin: 0 auto; line-height: 1.45; letter-spacing: -0.02em; font-style: normal; position: relative; z-index: 1; }
.mission-bar blockquote span { color: var(--primary); }
.values { background: var(--bg-light); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); padding: 96px 32px; }
.values-inner { max-width: 1200px; margin: 0 auto; }
.values-head { text-align: center; margin-bottom: 56px; }
.values-head h2 { font-size: 2.25rem; font-weight: 700; color: var(--dark); margin: 0; letter-spacing: -0.025em; }
.values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.value-card { background: var(--white); border-radius: 12px; padding: 32px; transition: box-shadow 0.2s, transform 0.2s; }
.value-card:hover { box-shadow: 0 8px 24px rgba(0,0,0,0.07); transform: translateY(-2px); }
.value-num { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; color: var(--primary); margin-bottom: 14px; }
.value-title { font-size: 1.125rem; font-weight: 700; color: var(--dark); margin: 0 0 10px; }
.value-desc { font-size: 0.9375rem; color: var(--text-muted); line-height: 1.7; margin: 0; }
.team { padding: 96px 32px; background: var(--white); }
.team-inner { max-width: 1200px; margin: 0 auto; }
.team-head { text-align: center; margin-bottom: 56px; }
.team-head h2 { font-size: 2.25rem; font-weight: 700; color: var(--dark); margin: 0; letter-spacing: -0.025em; }
.team-head p { font-size: 1.0625rem; color: var(--text-muted); margin: 12px auto 0; max-width: 480px; line-height: 1.7; }
.team-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.team-card { text-align: center; }
.team-avatar { width: 80px; height: 80px; border-radius: 50%; margin: 0 auto 16px; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; font-weight: 700; color: #fff; }
.team-name { font-size: 1rem; font-weight: 700; color: var(--dark); margin-bottom: 4px; }
.team-role { font-size: 0.875rem; color: var(--text-muted); margin-bottom: 8px; }
.team-bio { font-size: 0.875rem; color: var(--text-muted); line-height: 1.65; }
.about-cta { background: var(--primary); padding: 96px 32px; text-align: center; }
.about-cta h2 { font-size: 3rem; font-weight: 700; color: #fff; margin: 0 0 14px; letter-spacing: -0.03em; line-height: 1.15; }
.about-cta p { font-size: 1.125rem; color: rgba(255,255,255,0.55); max-width: 520px; margin: 0 auto 40px; line-height: 1.7; }
@media (max-width: 960px) {
    .origin-inner { grid-template-columns: 1fr; gap: 48px; }
    .values-grid { grid-template-columns: 1fr 1fr; }
    .team-grid { grid-template-columns: 1fr 1fr; }
    .about-hero h1 { font-size: 2.75rem; }
}
@media (max-width: 640px) {
    .about-hero { padding: 56px 20px 48px; }
    .origin, .values, .team { padding: 64px 20px; }
    .values-grid { grid-template-columns: 1fr; }
    .mission-bar blockquote { font-size: 1.5rem; }
    .about-cta h2 { font-size: 2rem; }
}
