/* ── ABOUT PAGE ── */

.founding-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--border); border-bottom: 1px solid var(--border); }
.f-stat { background: var(--bg); padding: 1.5rem 2rem; }

.philosophy { display: grid; grid-template-columns: 1fr 2fr; border-bottom: 1px solid var(--border); }
.phil-left { padding: 2.5rem; border-right: 1px solid var(--border); display: flex; flex-direction: column; justify-content: space-between; }
.phil-title { font-family: var(--font-head); font-size: 32px; color: var(--text); line-height: 1; margin-top: 0.5rem; }
.phil-quote { font-size: 14px; color: var(--text-dark); font-family: var(--font-sans); font-weight: 300; margin-top: 1.5rem; line-height: 1.6; font-style: italic; }
.phil-right { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--border); }
.phil-card { background: var(--bg); padding: 1.5rem; }
.phil-num { font-size: 9px; color: var(--border-mid); letter-spacing: 0.12em; margin-bottom: 8px; }
.phil-line { width: 24px; height: 1px; background: var(--gold); margin-bottom: 10px; }
.phil-card-title { font-family: var(--font-head); font-size: 20px; color: var(--text); letter-spacing: 0.04em; margin-bottom: 8px; }
.phil-card-desc { font-size: 12px; color: var(--text-dim); line-height: 1.65; font-weight: 300; font-family: var(--font-sans); }

.standards { border-bottom: 1px solid var(--border); }
.standards-header { padding: 1.5rem 2.5rem; border-bottom: 1px solid var(--border); }
.standards-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1px; background: var(--border); }
.std-item { background: var(--bg); padding: 1.2rem 1.5rem; transition: background 0.2s; }
.std-item:hover { background: var(--bg-card); }
.std-code { font-family: var(--font-head); font-size: 22px; color: var(--gold); letter-spacing: 0.05em; }
.std-name { font-size: 10px; color: var(--text-mute); letter-spacing: 0.08em; text-transform: uppercase; margin-top: 3px; line-height: 1.4; }

.offices-section { display: grid; grid-template-columns: 2fr 1fr; border-bottom: 1px solid var(--border); }
.off-left { padding: 2.5rem; border-right: 1px solid var(--border); }
.off-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--border); }
.off-card { background: var(--bg); padding: 1.2rem; }
.off-city { font-family: var(--font-head); font-size: 18px; color: var(--gold); }
.off-country { font-size: 9px; color: var(--text-mute); letter-spacing: 0.1em; text-transform: uppercase; margin-top: 2px; }
.off-detail { font-size: 11px; color: var(--text-dark); margin-top: 6px; font-family: var(--font-sans); font-weight: 300; line-height: 1.5; }
.off-right { padding: 2.5rem; display: flex; flex-direction: column; }
.tekla-label { font-size: 9px; letter-spacing: 0.15em; text-transform: uppercase; color: var(--border-mid); margin-bottom: 0.75rem; }
.tekla-title { font-family: var(--font-head); font-size: 28px; color: var(--text); line-height: 1; margin-bottom: 0.75rem; }
.tekla-title span { color: var(--gold); }
.tekla-desc { font-size: 12px; color: var(--text-dim); line-height: 1.65; font-weight: 300; font-family: var(--font-sans); }
.tekla-badges { display: flex; flex-direction: column; gap: 6px; margin-top: 1.2rem; }
.t-badge { font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gold); border: 1px solid var(--border-mid); padding: 5px 10px; width: fit-content; }

/* SCROLL FADE */
.scroll-fade { opacity: 0; transform: translateY(20px); transition: opacity 0.6s ease, transform 0.6s ease; }
.scroll-fade.visible { opacity: 1; transform: translateY(0); }

@media (max-width: 900px) {
  .founding-strip { grid-template-columns: repeat(2, 1fr); }
  .philosophy { grid-template-columns: 1fr; }
  .phil-left { border-right: none; border-bottom: 1px solid var(--border); }
  .standards-grid { grid-template-columns: repeat(3, 1fr); }
  .offices-section { grid-template-columns: 1fr; }
  .off-left { border-right: none; border-bottom: 1px solid var(--border); }
  .off-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .founding-strip { grid-template-columns: 1fr 1fr; }
  .phil-right { grid-template-columns: 1fr; }
  .standards-grid { grid-template-columns: 1fr 1fr; }
  .off-grid { grid-template-columns: 1fr; }
}
