/* Isolated application drafts only. */
.application { --red: #b8330f; }
.app-hero { padding-top:2.4rem; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:2.5rem; align-items:center; }
.app-hero h1 { font-size:clamp(2rem,4vw,3rem); max-width:19ch; }
.app-label { color:var(--red-deep); font-size:13px; font-weight:600; letter-spacing:.09em; text-transform:uppercase; margin-bottom:1rem; }
.app-hero figure { margin:0; min-width:0; }
.app-hero figure img { display:block; width:100%; height:360px; object-fit:contain; background:#fff; }
.app-hero figcaption { color:var(--grey); font-size:13px; padding-top:.7rem; border-top:1px solid var(--rule); }
.app-section { padding-block:3rem; border-top:1px solid var(--rule); margin-top:3rem; }
.app-section + .app-section { margin-top:0; }
.app-section h2 { font-size:clamp(1.5rem,2.5vw,1.9rem); margin-bottom:1rem; }
.app-section h3 { font-size:1.1rem; margin-bottom:.6rem; }
.app-section p { max-width:70ch; }
.app-section p + p { margin-top:1rem; }
.app-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; margin-top:1.7rem; }
.app-columns p { font-size:15px; color:var(--grey); }
.app-step { display:block; font-size:13px; color:var(--red-deep); margin-bottom:.7rem; }
.app-section .spec { margin-top:1.4rem; }
.app-section .tablewrap { max-width:100%; }
.app-section caption { text-align:left; font-size:13px; color:var(--grey); padding-bottom:.6rem; }
.app-list { padding-left:1.2rem; margin:1rem 0 0; }
.app-list li + li { margin-top:.5rem; }
.app-case { border-left:3px solid var(--red-deep); padding:1.5rem; background:var(--steel); margin-top:1.7rem; }
.app-case dl { margin:0; display:grid; grid-template-columns:140px minmax(0,1fr); gap:.7rem 1rem; font-size:15px; }
.app-case dt { font-weight:600; }.app-case dd { margin:0; }
.app-related { display:flex; flex-wrap:wrap; gap:.6rem 1.5rem; margin-top:2rem; font-size:14px; }
.application .fig img { height:230px; }
.application .foot { margin-top:3.5rem; }
@media(max-width:780px) {
 .app-hero { grid-template-columns:minmax(0,1fr); gap:1.6rem; padding-top:2rem; }
 .app-hero figure img { height:300px; }
 .app-columns { grid-template-columns:minmax(0,1fr); gap:1.6rem; }
 .app-section { padding-block:2.3rem; margin-top:2.3rem; }
 .app-case dl { grid-template-columns:minmax(0,1fr); gap:.25rem; }
 .app-case dd + dt { margin-top:.75rem; }
 .application .hero__cta .btn { white-space:normal; }
}

.application .spec-table tbody th { text-align:left; font-weight:500; padding:.5rem .8rem; border-bottom:1px solid var(--rule); }
.application .spec-table tbody tr:last-child th { border-bottom-color:var(--ink); }
