/* assets/css/about.css
   About page specific (BMD)
*/

/* Hero */
.a-hero{
  padding: 82px 0 34px;
}

.a-hero-inner{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:18px;
  align-items:start;
}

.a-hero-card{
  padding:24px 22px;
}

.a-top{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:12px;
}

/* Pills (local-safe; matches BMD vibe) */
.pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  font-weight:800;
  font-size:12px;
  letter-spacing:.07em;
  text-transform:uppercase;
}
:root[data-theme="light"] .pill{
  border-color: rgba(0,0,0,.12);
  background: rgba(255,255,255,.86);
}
.pill-soft{ opacity:.9; font-weight:700; }

.a-title{
  margin:0 0 10px;
  font-family: var(--font-display);
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size: clamp(34px, 4.4vw, 52px);
  line-height:1.03;
}
:root[data-theme="light"] .a-title{
  color: rgba(18,19,26,.96);
}

.a-sub{
  margin:0;
  max-width: 70ch;
  color: rgba(232,232,238,.88);
  font-size:14px;
  line-height:1.75;
}
:root[data-theme="light"] .a-sub{
  color: rgba(18,19,26,.78);
}

.a-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:16px;
}

/* Right column cards — Index-like (3 separated glass cards) */
.a-side{
  display:flex;
  flex-direction:column;
  gap:14px;
}

/* Close to index.css stat-card vibe */
.a-side-card{
  padding:18px 18px 16px;
  box-shadow: var(--shadow-soft);
}

.a-side-k{
  color: rgba(232,232,238,.6);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin:0 0 8px;
  font-weight:800;
}
:root[data-theme="light"] .a-side-k{
  color: rgba(18,19,26,.56);
}

.a-side-v{
  margin:0 0 6px;
  font-weight:900;
  letter-spacing:.02em;
  line-height:1.25;
}
:root[data-theme="light"] .a-side-v{
  color: rgba(18,19,26,.95);
}

.a-side-d{
  margin:0;
  color: rgba(232,232,238,.78);
  font-size:13px;
  line-height:1.55;
}
:root[data-theme="light"] .a-side-d{
  color: rgba(18,19,26,.72);
}

.a-side a{
  text-decoration:none;
  border-bottom: 1px dashed rgba(255,255,255,.30);
}
:root[data-theme="light"] .a-side a{
  border-bottom-color: rgba(0,0,0,.28);
}
.a-side a:hover{
  border-bottom-style: solid;
}

/* Story / Values */
.a-story,
.a-values{
  padding: 14px 0;
}

.a-story-card,
.a-values-card{
  padding:22px;
  box-shadow: var(--shadow-soft);
}

.a-text{
  margin: .7rem 0 0;
  color: rgba(232,232,238,.88);
  font-size:14px;
  line-height:1.75;
}
:root[data-theme="light"] .a-text{
  color: rgba(18,19,26,.78);
}

.a-values-list{
  margin: .9rem 0 0;
  padding-left: 18px;
  display:grid;
  gap:10px;
}

.a-values-list li{
  color: rgba(232,232,238,.86);
  line-height:1.7;
}
:root[data-theme="light"] .a-values-list li{
  color: rgba(18,19,26,.76);
}

/* Local spacing polish */
.a-story-card .section-title,
.a-values-card .section-title{
  margin-bottom: 6px;
}
.a-story-card .section-sub,
.a-values-card .section-sub{
  margin-bottom: 14px;
}

/* Process */
.a-process{
  padding: 22px 0 12px;
}

.a-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom: 14px;
}

.a-steps{
  display:grid;
  grid-template-columns: repeat(5, 1fr);
  gap:12px;
}

.a-step{
  padding:16px;
  box-shadow: var(--shadow-soft);
  border: 1px solid rgba(255,255,255,.12);
  cursor:pointer;
  user-select:none;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
:root[data-theme="light"] .a-step{
  border-color: rgba(0,0,0,.10);
}

.a-step:hover{
  transform: translateY(-2px);
  border-color: rgba(255,45,45,.24);
  background: rgba(255,255,255,.07);
}
:root[data-theme="light"] .a-step:hover{
  background: rgba(255,255,255,.92);
  border-color: rgba(255,45,45,.30);
}

.a-step:focus{ outline:none; }
.a-step:focus-visible{
  border-color: rgba(78,161,255,.45);
  box-shadow: 0 0 0 4px rgba(78,161,255,.16);
}

.a-step-n{
  font-family: var(--font-display);
  letter-spacing:.10em;
  text-transform:uppercase;
  font-weight:900;
  font-size:12px;
  opacity:.65;
  margin-bottom: 10px;
}
:root[data-theme="light"] .a-step-n{ opacity:.55; }

.a-step-title{
  font-weight:900;
  letter-spacing:.02em;
  margin:0 0 6px;
}
:root[data-theme="light"] .a-step-title{
  color: rgba(18,19,26,.92);
}

.a-step-text{
  margin:0;
  color: rgba(232,232,238,.82);
  font-size:13px;
  line-height:1.55;
}
:root[data-theme="light"] .a-step-text{
  color: rgba(18,19,26,.70);
}

/* CTA */
.a-cta{
  padding: 18px 0 80px;
}

.a-cta-card{
  padding:20px;
  box-shadow: var(--shadow-soft);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.a-cta-title{
  margin:0 0 6px;
  font-family: var(--font-display);
  letter-spacing:.05em;
  text-transform:uppercase;
  font-size:18px;
}
:root[data-theme="light"] .a-cta-title{
  color: rgba(18,19,26,.92);
}

.a-cta-sub{
  margin:0;
  color: rgba(232,232,238,.82);
  font-size:13px;
  line-height:1.55;
}
:root[data-theme="light"] .a-cta-sub{
  color: rgba(18,19,26,.72);
}

.a-cta-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

/* Responsive */
@media (max-width: 980px){
  .a-hero-inner{
    grid-template-columns: 1fr;
  }
  .a-steps{
    grid-template-columns: repeat(2, 1fr);
  }
  .a-head{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media (max-width: 560px){
  .a-hero{
    padding-top: 58px;
  }
  .a-hero-card,
  .a-story-card,
  .a-values-card,
  .a-cta-card{
    padding:18px;
  }
  .a-steps{
    grid-template-columns: 1fr;
  }
  .a-cta-card{
    flex-direction:column;
    align-items:stretch;
  }
}

/* BMD Neo-Metro 2026 */
.pill,.a-side-card,.a-values-card,.a-step,.a-cta-card{ border-radius:var(--radius-md); }
.pill{ border-radius:var(--radius-xs); }
.a-hero-card,.a-values-card,.a-cta-card{ background:var(--panel-bg-raised); border-left:3px solid var(--accent); box-shadow:none; }
.a-side-card,.a-step{ background:var(--panel-bg); box-shadow:none; }
.a-step:hover{ transform:translateY(-2px); box-shadow:var(--card-shadow-hover); }
.a-top::before,.a-cta-title::before{ border-radius:0; box-shadow:none; background:var(--accent); }

/* Midnight Atelier: About supporting-route pilot */
.a-hero{
  padding:clamp(60px, 7.5vw, 82px) 0 28px;
}

.a-hero-inner{
  grid-template-columns:minmax(0, 1.34fr) minmax(280px, .66fr);
  gap:20px;
}

.a-hero-card,
.a-side-card,
.a-story-card,
.a-values-card,
.a-cta-card{
  border-color:var(--panel-border);
  background:var(--panel-bg);
  box-shadow:var(--card-shadow);
}

.a-hero-card{
  padding:clamp(25px, 3vw, 32px) clamp(20px, 3vw, 30px) 25px;
}

.a-top{
  margin-bottom:18px;
}

.a-top::before{
  content:"";
  flex:0 0 74px;
  width:74px;
  height:2px;
  margin-right:calc(100% - 74px);
  margin-bottom:5px;
  border-radius:999px;
  background:var(--paint-line);
  box-shadow:0 0 18px var(--paint-line-glow);
}

.a-hero .pill{
  min-height:30px;
  padding:0 12px;
  border-color:var(--label-border);
  background:var(--label-bg);
  color:var(--label-text);
  font-size:11px;
  letter-spacing:.10em;
}

.a-hero .pill:first-of-type{
  border-color:var(--accent-border);
  background:var(--accent-wash);
  color:var(--text);
}

.a-title{
  margin-bottom:14px;
  letter-spacing:.06em;
}

.a-sub,
.a-text,
.a-values-list li,
.a-cta-sub{
  color:var(--content-soft);
}

.a-sub{
  line-height:1.8;
  max-width:60ch;
}

.a-actions{
  gap:10px;
  margin-top:22px;
}

.a-actions .btn,
.a-cta-actions .btn{
  min-height:48px;
}

.a-actions .btn-primary,
.a-cta-actions .btn-primary{
  box-shadow:var(--cta-shadow);
}

.a-actions .btn:focus-visible,
.a-cta-actions .btn:focus-visible,
.a-side a:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px var(--focus-ring);
}

.a-side{
  gap:10px;
}

.a-side-card{
  padding:18px 16px;
}

.a-side-card:first-child{
  border-color:var(--accent-border);
}

.a-side-k{
  color:var(--label-text);
  font-size:10px;
  letter-spacing:.12em;
}

.a-side-v{
  color:var(--text);
}

.a-side-d{
  color:var(--content-soft);
  line-height:1.65;
}

.a-side a{
  border-bottom-color:var(--accent-border);
}

.a-story,
.a-values{
  padding:12px 0;
}

.a-story-card,
.a-values-card{
  padding:clamp(20px, 3vw, 27px);
}

.a-story-card .section-title::after,
.a-values-card .section-title::after,
.a-head .section-title::after,
.a-cta-title::before{
  content:"";
  display:block;
  width:50px;
  height:2px;
  margin-top:11px;
  border-radius:999px;
  background:var(--paint-line);
}

.a-story-card .section-sub,
.a-values-card .section-sub,
.a-head .section-sub{
  color:var(--content-muted);
  line-height:1.65;
}

.a-text{
  max-width:78ch;
  line-height:1.82;
}

.a-values-list{
  gap:11px;
}

.a-process{
  padding:28px 0 18px;
}

.a-head{
  margin-bottom:22px;
}

.a-steps{
  gap:13px;
}

.a-step{
  padding:18px 16px;
  border-color:var(--panel-border);
  background:var(--panel-bg);
  box-shadow:var(--card-shadow);
}

.a-step:hover{
  transform:translateY(-3px);
  border-color:var(--panel-border-hover);
  background:var(--panel-bg-raised);
  box-shadow:var(--card-shadow-hover);
}

.a-step:focus-visible{
  border-color:var(--panel-border-hover);
  box-shadow:0 0 0 3px var(--focus-ring), var(--card-shadow-hover);
}

.a-step-n{
  color:var(--label-text);
  opacity:1;
}

.a-step-title{
  color:var(--text);
}

.a-step-text{
  color:var(--content-soft);
  line-height:1.65;
}

.a-cta{
  padding:24px 0 82px;
}

.a-cta-card{
  padding:24px;
}

.a-cta-title{
  letter-spacing:.08em;
}

@media (max-width: 980px){
  .a-hero-inner{
    grid-template-columns:1fr;
  }
}

@media (max-width: 560px){
  .a-hero{
    padding-top:48px;
  }

  .a-sub{
    font-size:14px;
  }

  .a-actions .btn,
  .a-cta-actions .btn{
    width:100%;
  }

  .a-story-card,
  .a-values-card{
    padding:19px 17px;
  }
}

/* BMD Neo-Metro 2026: final component geometry */
.pill{ border-radius:var(--radius-xs); }
.a-hero-card,.a-side-card,.a-values-card,.a-story-card,.a-step,.a-cta-card{ border-radius:var(--radius-md); box-shadow:none; }
.a-hero-card,.a-values-card,.a-story-card,.a-cta-card{ background:var(--panel-bg-raised); border-left:3px solid var(--accent); }
.a-side-card,.a-step{ background:var(--panel-bg); }
.a-step:hover{ transform:translateY(-2px); box-shadow:var(--card-shadow-hover); }
.a-top::before,.a-cta-title::before{ border-radius:0; box-shadow:none; background:var(--accent); }
