.armor-feature { display:grid; grid-template-columns:minmax(0, 1.65fr) minmax(230px, 1fr); width:min(1180px, 100%); margin:0 auto 28px; border:1px solid var(--line); background:var(--panel); }
.armor-feature img { width:100%; height:100%; object-fit:contain; background:#1c2024; }
.armor-feature-copy { align-self:center; padding:clamp(20px, 3vw, 40px); }
.armor-kicker { color:var(--teal); font-size:.8rem; letter-spacing:.09em; text-transform:uppercase; }
.armor-feature h3 { margin:10px 0; font-size:clamp(1.4rem, 2.2vw, 2rem); line-height:1.15; }
.armor-feature-copy > p:not(.armor-kicker) { color:var(--muted); }
.armor-link { display:inline-block; padding:12px 0; color:var(--teal); text-decoration:underline; text-underline-offset:5px; }
.armor-feature:hover { border-color:var(--teal); }
.armor-project { width:min(1180px, calc(100% - 40px)); margin:0 auto; padding:28px 0 64px; }
.armor-project nav { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; margin-bottom:48px; }
.armor-project nav a { padding:10px 0; text-decoration:underline; text-underline-offset:5px; }
.armor-project h1 { margin:8px 0 14px; font-size:clamp(2rem, 6vw, 4rem); line-height:1.05; }
.armor-project h2 { font-size:1.4rem; margin:0 0 8px; }
.armor-project .armor-lead { max-width:660px; margin:0 0 30px; color:var(--muted); }
.armor-project figure { margin:0; min-width:0; border:1px solid var(--line); background:var(--panel); }
.armor-project figure a { display:block; background:#1c2024; }
.armor-project figure img { width:100%; height:auto; aspect-ratio:auto; }
.armor-project figcaption { padding:12px 16px; color:var(--muted); font-size:.9rem; }
.armor-pair { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:20px; margin-top:20px; }
.armor-process { margin-top:28px; border:1px solid var(--line); background:var(--panel); }
.armor-process summary { padding:20px; font-weight:700; cursor:pointer; }
.armor-process figure { border:0; max-width:900px; margin:auto; }
.armor-credits { border-top:1px solid var(--line); margin-top:36px; padding-top:24px; max-width:800px; }
.armor-credits p { color:var(--muted); }
.armor-credits .armor-status { font-size:.85rem; }
@media (max-width:700px) { .armor-feature, .armor-pair { grid-template-columns:1fr; } .armor-project nav { margin-bottom:28px; } }
