/* ═══════════════════════════════════════════════════════════════
   Aretype Clean — about.css
   About Us page — monochrome, editorial, Apple-corporate
   Loads on top of homepage.css (shared nav / footer / logos / reveal)
   ═══════════════════════════════════════════════════════════════ */

.ac-ab-eyebrow {
  font-size:11px; font-weight:700; letter-spacing:.16em;
  text-transform:uppercase; color:var(--ac-text-2);
  margin-bottom:18px;
}
.ac-ab-h {
  font-size:clamp(28px,3.4vw,46px);
  font-weight:900; color:var(--ac-text);
  letter-spacing:-.045em; line-height:1.05;
  margin:0 0 18px; text-wrap:balance;
}
.ac-ab-lead {
  font-size:16px; color:var(--ac-text-2);
  line-height:1.7; margin:0; max-width:520px;
}
.ac-ab-ph {
  width:100%; height:100%; min-height:240px;
  background:linear-gradient(135deg,#f0f0f0,#e3e3e3);
  display:flex; align-items:center; justify-content:center;
}
.ac-ab-ph span { font-family:Georgia,serif; font-size:clamp(56px,8vw,120px); font-weight:900; color:rgba(20,20,20,.08); }
.ac-ab-ph--dark { background:linear-gradient(135deg,#1a1a24,#0d0d12); }
.ac-ab-ph--dark span { color:rgba(255,255,255,.06); }

/* ── HERO ── */
.ac-ab-hero { padding:72px 0 80px; }
.ac-ab-hero-inner {
  display:grid; grid-template-columns:1fr 1.1fr;
  gap:64px; align-items:center;
}
.ac-ab-hero-h {
  font-size:clamp(38px,4.8vw,62px);
  font-weight:900; color:var(--ac-text);
  letter-spacing:-.045em; line-height:1.04;
  margin:0 0 22px; text-wrap:balance;
}
.ac-ab-hero-sub {
  font-size:16px; color:var(--ac-text-2);
  line-height:1.7; margin:0 0 32px; max-width:360px;
}
.ac-ab-hero-ctas { display:flex; gap:10px; flex-wrap:wrap; }
.ac-ab-hero-media {
  border-radius:18px; overflow:hidden;
  aspect-ratio:4/3; background:var(--ac-surface);
}
.ac-ab-hero-media img { width:100%; height:100%; object-fit:cover; display:block; }

/* ── OUR STORY ── */
.ac-ab-story { padding:80px 0; border-top:1px solid var(--ac-border); }
.ac-ab-story-inner {
  display:grid; grid-template-columns:1fr 1fr;
  gap:64px; align-items:center;
}
.ac-ab-story-media {
  border-radius:18px; overflow:hidden;
  aspect-ratio:9/8; background:#1a1a24;
}
.ac-ab-story-media img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s ease; }
.ac-ab-story-media:hover img { transform:scale(1.03); }
.ac-ab-story-text { font-size:15px; color:var(--ac-text-2); line-height:1.8; max-width:420px; }
.ac-ab-story-text p { margin:0 0 16px; }
.ac-ab-story-text p:last-child { margin-bottom:0; }

/* ── STATS (animated) ── */
.ac-ab-stats { padding:0 0 80px; }
.ac-ab-stats-grid {
  display:grid; grid-template-columns:repeat(4,1fr);
  border:1px solid var(--ac-border); border-radius:20px;
  overflow:hidden; background:#fff;
}
.ac-ab-stat {
  padding:38px 30px; border-right:1px solid var(--ac-border);
  display:flex; flex-direction:column; gap:8px;
}
.ac-ab-stat:last-child { border-right:none; }
.ac-ab-stat-icon {
  width:40px; height:40px; border-radius:11px;
  background:var(--ac-accent-lite); color:var(--ac-accent);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:6px;
}
.ac-ent-stat-num {
  font-size:clamp(30px,3.4vw,46px);
  font-weight:900; color:var(--ac-text);
  letter-spacing:-.04em; line-height:1;
  font-variant-numeric:tabular-nums;
}
.ac-ab-stat-label { font-size:12.5px; font-weight:600; color:var(--ac-text-2); }

/* ── OUR STUDIO (gallery) ── */
.ac-ab-studio { padding:80px 0; border-top:1px solid var(--ac-border); }
.ac-ab-studio-grid {
  display:grid; grid-template-columns:.8fr 2fr;
  gap:48px; align-items:center;
}
.ac-ab-studio-gallery {
  display:grid; grid-template-columns:repeat(3,1fr); gap:16px;
}
.ac-ab-shot {
  border-radius:14px; overflow:hidden;
  aspect-ratio:4/5; background:var(--ac-surface-2);
}
.ac-ab-shot img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease; }
.ac-ab-shot:hover img { transform:scale(1.05); }

/* ── TEAM ── */
.ac-ab-team { padding:80px 0; border-top:1px solid var(--ac-border); background:var(--ac-surface); }
.ac-ab-team-head { max-width:600px; margin:0 0 44px; }
.ac-ab-team-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.ac-ab-member {
  background:#fff; border:1px solid var(--ac-border); border-radius:16px;
  padding:32px 24px; text-align:center;
  transition:transform .3s cubic-bezier(.22,.61,.36,1), box-shadow .3s;
}
.ac-ab-member:hover { transform:translateY(-4px); box-shadow:0 16px 40px rgba(15,15,26,.07); }
.ac-ab-member-avatar {
  width:64px; height:64px; margin:0 auto 16px; border-radius:50%;
  background:var(--ac-accent); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-size:26px; font-weight:800; font-family:Georgia,serif;
}
.ac-ab-member-name { font-size:15px; font-weight:800; color:var(--ac-text); letter-spacing:-.01em; }
.ac-ab-member-role { font-size:12.5px; color:var(--ac-text-2); margin-top:4px; }

/* ── TIMELINE ── */
.ac-ab-timeline { padding:80px 0; border-top:1px solid var(--ac-border); }
.ac-ab-tl-head { max-width:600px; margin:0 0 40px; }
.ac-ab-tl-list { list-style:none; margin:0; padding:0; position:relative; }
.ac-ab-tl-list::before {
  content:''; position:absolute; left:96px; top:8px; bottom:8px;
  width:2px; background:var(--ac-border);
}
.ac-ab-tl-item {
  display:grid; grid-template-columns:80px 32px 1fr;
  align-items:start; gap:16px; padding:18px 0;
}
.ac-ab-tl-year { font-size:15px; font-weight:900; color:var(--ac-text); letter-spacing:-.02em; text-align:right; padding-top:1px; }
.ac-ab-tl-dot {
  width:14px; height:14px; border-radius:50%; margin:4px auto 0;
  background:var(--ac-accent); border:3px solid #fff;
  box-shadow:0 0 0 1px var(--ac-border); position:relative; z-index:1;
}
.ac-ab-tl-body h3 { font-size:15px; font-weight:800; color:var(--ac-text); margin:0 0 4px; letter-spacing:-.01em; }
.ac-ab-tl-body p { font-size:13.5px; color:var(--ac-text-2); line-height:1.6; margin:0; max-width:520px; }

/* ── VISIT STUDIO ── */
.ac-ab-visit { padding:80px 0; border-top:1px solid var(--ac-border); }
.ac-ab-visit-inner {
  display:grid; grid-template-columns:1fr 1.4fr;
  gap:0; border:1px solid var(--ac-border);
  border-radius:24px; overflow:hidden; background:#fff;
}
.ac-ab-visit-info { padding:48px 44px; }
.ac-ab-visit-city { font-size:clamp(22px,2.4vw,30px); font-weight:900; color:var(--ac-text); letter-spacing:-.03em; margin:0 0 26px; }
.ac-ab-visit-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:18px; }
.ac-ab-visit-list li { display:flex; align-items:flex-start; gap:13px; font-size:13.5px; color:var(--ac-text-2); line-height:1.6; }
.ac-ab-visit-list a { color:var(--ac-text) !important; text-decoration:none !important; font-weight:600; }
.ac-ab-visit-list a:hover { text-decoration:underline !important; }
.ac-ab-visit-list address { font-style:normal; color:var(--ac-text); font-weight:500; }
.ac-ab-visit-ic {
  width:36px; height:36px; flex-shrink:0; border-radius:9px;
  background:var(--ac-accent-lite); color:var(--ac-accent);
  display:flex; align-items:center; justify-content:center;
}
.ac-ab-visit-map { position:relative; min-height:360px; background:var(--ac-surface-2); }
.ac-ab-visit-map img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.ac-ab-map-ph {
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  color:var(--ac-text-3);
  background:
    repeating-linear-gradient(0deg, var(--ac-surface-2), var(--ac-surface-2) 26px, var(--ac-border) 27px),
    repeating-linear-gradient(90deg, var(--ac-surface-2), var(--ac-surface-2) 26px, var(--ac-border) 27px);
}

/* ── VALUE PROPS ── */
.ac-ab-props { padding:72px 0; border-top:1px solid var(--ac-border); }
.ac-ab-props-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
.ac-ab-prop { display:flex; flex-direction:column; }
.ac-ab-prop-icon {
  width:46px; height:46px; border-radius:12px;
  background:var(--ac-accent-lite); color:var(--ac-accent);
  display:flex; align-items:center; justify-content:center; margin-bottom:18px;
}
.ac-ab-prop h3 { font-size:15px; font-weight:800; color:var(--ac-text); margin:0 0 8px; letter-spacing:-.01em; }
.ac-ab-prop p { font-size:13.5px; color:var(--ac-text-2); line-height:1.65; margin:0; max-width:280px; }

/* ── CTA BAND (dark) ── */
.ac-ab-cta { padding:0 0 80px; }
.ac-ab-cta-inner {
  display:grid; grid-template-columns:1.4fr 1fr auto;
  gap:40px; align-items:center;
  background:#0a0a0f; color:#fff;
  border-radius:20px; padding:40px 44px;
}
.ac-ab-cta-h { font-size:clamp(20px,2.2vw,26px); font-weight:900; color:#fff; letter-spacing:-.03em; margin:0 0 6px; line-height:1.2; }
.ac-ab-cta-sub { font-size:13.5px; color:rgba(255,255,255,.55); margin:0 0 8px; }
.ac-ab-cta-email { font-size:14px; font-weight:700; color:#fff !important; text-decoration:none !important; border-bottom:1px solid rgba(255,255,255,.3); }
.ac-ab-cta-email:hover { border-bottom-color:#fff; }
.ac-ab-cta-checks { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:11px; }
.ac-ab-cta-checks li { display:flex; align-items:center; gap:10px; font-size:13.5px; color:rgba(255,255,255,.8); }
.ac-ab-cta-checks svg { color:#fff; flex-shrink:0; }
.ac-ab-cta-btn {
  display:inline-flex; align-items:center; gap:8px; white-space:nowrap;
  background:#fff; color:#0a0a0f !important;
  font-size:14px; font-weight:700; font-family:var(--ac-font);
  padding:15px 26px; border-radius:10px; text-decoration:none !important;
  transition:transform .2s, background .2s;
}
.ac-ab-cta-btn:hover { transform:translateY(-2px); background:#f0f0f0; }

/* ── RESPONSIVE ── */
@media (max-width:1024px) {
  .ac-ab-team-grid { grid-template-columns:repeat(2,1fr); }
  .ac-ab-studio-grid { grid-template-columns:1fr; gap:32px; }
  .ac-ab-cta-inner { grid-template-columns:1fr; gap:28px; }
}
@media (max-width:860px) {
  .ac-ab-hero-inner,
  .ac-ab-story-inner,
  .ac-ab-visit-inner { grid-template-columns:1fr; gap:36px; }
  .ac-ab-hero-media { order:-1; }
  .ac-ab-stats-grid { grid-template-columns:repeat(2,1fr); }
  .ac-ab-stat:nth-child(2) { border-right:none; }
  .ac-ab-stat:nth-child(n+3) { border-top:1px solid var(--ac-border); }
  .ac-ab-visit-map { min-height:280px; }
  .ac-ab-props-grid { grid-template-columns:1fr; gap:28px; }
}
@media (max-width:560px) {
  .ac-ab-studio-gallery { grid-template-columns:1fr; }
  .ac-ab-team-grid { grid-template-columns:1fr; }
  .ac-ab-stats-grid { grid-template-columns:1fr; }
  .ac-ab-stat { border-right:none; border-top:1px solid var(--ac-border); }
  .ac-ab-stat:first-child { border-top:none; }
  .ac-ab-tl-list::before { left:60px; }
  .ac-ab-tl-item { grid-template-columns:48px 24px 1fr; gap:12px; }
  .ac-ab-page .ac-nav-left { display:none; }
}
