.jc-container { width: min(100% - 48px, var(--jc-container)); margin-inline: auto; }
.jc-section { padding-block: var(--jc-section-y); background: var(--jc-bg); }
.jc-section--alt { background: var(--jc-bg-alt); }
.jc-section--surface { background: var(--jc-surface); }
.jc-section--inverse { background: var(--jc-bg-inverse); color: var(--jc-paper); }
.jc-section--ruled { border-top: var(--jc-rule); }
.jc-section--tight { padding-block: var(--jc-space-72); }
.jc-grid { display: grid; gap: var(--jc-grid-gap); align-items: start; }
.jc-grid--editorial { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
.jc-grid--editorial-rev { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); }
.jc-grid--asym { grid-template-columns: .75fr 1.35fr .9fr; }
.jc-grid--cards-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--jc-grid-gap-cards); }
.jc-grid--cards-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--jc-grid-gap-cards); }
.jc-section-header { max-width: var(--jc-measure-copy); margin-bottom: var(--jc-space-56); }
.jc-section-header h2 { margin: 0 0 var(--jc-space-24); }
.jc-section-header .jc-rule-accent { margin: 0 0 var(--jc-space-24); }
.jc-section-header--center { margin-inline: auto; text-align: center; }
.jc-section-header--center .jc-rule-accent { margin-inline: auto; }
.jc-section-header--split { max-width: none; display: flex; justify-content: space-between; align-items: end; gap: var(--jc-space-24); }
.jc-section-header--split .jc-section-header__copy { max-width: var(--jc-measure-copy); }
.jc-page-hero { padding-block: var(--jc-space-90); background: var(--jc-paper); }
.jc-page-hero h1 { margin: var(--jc-space-32) 0 var(--jc-space-24); }
.jc-page-hero .jc-lead { color: var(--jc-text-secondary); }
@media (max-width: 1024px) { .jc-grid--asym { grid-template-columns: repeat(2, 1fr); } .jc-grid--asym > :first-child { grid-column: 1 / -1; } .jc-grid--cards-4 { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 767px) { .jc-container { width: min(100% - 40px, var(--jc-container)); } .jc-section--tight { padding-block: var(--jc-space-48); } .jc-grid--editorial, .jc-grid--editorial-rev, .jc-grid--asym, .jc-grid--cards-3, .jc-grid--cards-4 { grid-template-columns: 1fr; } .jc-grid--asym > :first-child { grid-column: auto; } .jc-section-header--split { display: block; } .jc-section-header--split > :last-child { margin-top: var(--jc-space-24); } .jc-page-hero { padding-block: var(--jc-space-72); } }
