.zjl-v2 .zjl-container {
    width: 100%;
    margin: 0 auto;
    padding-left: var(--zjl-space-6);
    padding-right: var(--zjl-space-6);
}

.zjl-v2 .zjl-container--read   { max-width: var(--zjl-container-read); }
.zjl-v2 .zjl-container--portal { max-width: var(--zjl-container-portal); }
.zjl-v2 .zjl-container--data   { max-width: var(--zjl-container-data); }

.zjl-v2 .zjl-section {
    padding: var(--zjl-space-10) 0;
}

@media (min-width: 1024px) {
    .zjl-v2 .zjl-section { padding: var(--zjl-space-11) 0; }
}

.zjl-v2 .zjl-grid {
    display: grid;
    gap: var(--zjl-space-4);
}

.zjl-v2 .zjl-grid--2 { grid-template-columns: 1fr; }
.zjl-v2 .zjl-grid--3 { grid-template-columns: 1fr; }
.zjl-v2 .zjl-grid--4 { grid-template-columns: 1fr; }

@media (min-width: 768px) {
    .zjl-v2 .zjl-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .zjl-v2 .zjl-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .zjl-v2 .zjl-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 1024px) {
    .zjl-v2 .zjl-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .zjl-v2 .zjl-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

.zjl-v2 .zjl-stack > * + * { margin-top: var(--zjl-space-4); }
.zjl-v2 .zjl-stack--lg > * + * { margin-top: var(--zjl-space-7); }

.zjl-v2 .zjl-divider {
    border: 0;
    border-top: 1px solid var(--zjl-border-warm);
    margin: var(--zjl-space-7) 0;
}
