/* Cybox journal comparison. Scoped to this article; no global type or layout changes. */
.trial-article .document-body { --trial-green:#3f6140; --trial-line:#dbe3d5; --trial-soft:#f2f6ed; }
.trial-article .document-body > h2 { margin-top:48px; scroll-margin-top:110px; }
.trial-article .document-body > h3 { margin-top:28px; }
.trial-article .trial-opening { color:#384631; }
.trial-article .trial-promise,
.trial-article .trial-final { margin:30px 0 42px; padding:32px; border:1px solid #d7e1cc; border-radius:28px; background:radial-gradient(ellipse at 0 0,#fff2dc,transparent 70%),linear-gradient(125deg,#f5f8ef,#eaf2e5); }
.trial-article .document-body .trial-promise-line { margin:0; color:#263d29; font-family:var(--font-heading); font-size:clamp(1.5rem,2.8vw,2rem); line-height:1.3; letter-spacing:-.035em; }
.trial-article .trial-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:27px 0 22px; padding-block:21px; border-block:1px solid #d4dfcd; }
.trial-article .trial-facts > div { min-width:0; }
.trial-article .trial-facts strong { display:block; font-size:1.6rem; line-height:1.25; letter-spacing:-.045em; }
.trial-article .trial-facts span { display:block; margin-top:8px; color:#586550; font-size:.9375rem; line-height:1.5; }
.trial-article .trial-promise > p:not(.trial-promise-line) { margin:18px 0 0; }
.trial-article .trial-promise .button,
.trial-article .trial-final .button { margin-top:22px; max-width:100%; text-decoration:none; color:#0c2914; font-size:1rem; line-height:1.45; text-align:center; }
.trial-article .trial-promise .button .icon,
.trial-article .trial-final .button .icon { flex:none; }
.trial-article .document-body .trial-route { list-style:none; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; padding:0; margin:26px 0; }
.trial-article .trial-route > li { position:relative; min-width:0; margin:0; padding:17px 13px; border:1px solid var(--trial-line); border-radius:19px; background:#f7f9f3; }
.trial-article .trial-route > li:last-child { background:#eaf2e3; border-color:#cdddc1; }
.trial-article .trial-route > li > span { display:block; color:#59674f; font-size:.875rem; font-weight:650; }
.trial-article .trial-route > li > strong { display:block; margin-top:7px; font-size:.9375rem; line-height:1.4; }
.trial-article .trial-route > li > p { margin:8px 0 0; font-size:.875rem; line-height:1.55; }
.trial-article .trial-method { margin:24px 0; padding:23px 25px; border-left:3px solid #9bb589; border-radius:0 18px 18px 0; background:#f6f7f3; font-size:.9375rem; line-height:1.8; }
.trial-article .trial-method p { margin:0; }
.trial-article .trial-method p + p { margin-top:12px; }

/* Native disclosures keep each school comparison short and easy to scan. */
.trial-article .trial-comparison-panel { margin:16px 0; border:1px solid var(--trial-line); border-radius:23px; background:#fff; }
.trial-article .trial-comparison-panel > summary { display:grid; grid-template-columns:minmax(0,1fr) 26px; gap:3px 20px; padding:23px 25px; cursor:pointer; list-style:none; border-radius:22px; }
.trial-article .trial-comparison-panel > summary::-webkit-details-marker { display:none; }
.trial-article .trial-comparison-panel > summary::marker { content:''; }
.trial-article .trial-comparison-panel > summary::after { content:'+'; grid-column:2; grid-row:1/3; align-self:center; color:var(--trial-green); font-size:1.5rem; line-height:1; text-align:center; }
.trial-article .trial-comparison-panel[open] > summary::after { content:'−'; }
.trial-article .trial-comparison-panel > summary > strong { grid-column:1; font-size:1.25rem; line-height:1.4; }
.trial-article .trial-comparison-panel > summary > span { grid-column:1; color:#606b58; font-size:.9375rem; line-height:1.6; }
.trial-article .trial-comparison-panel > summary:hover { background:#f6f8f2; }
.trial-article .trial-comparison-panel[open] > summary { border-bottom:1px solid var(--trial-line); border-radius:22px 22px 0 0; background:#f7f9f4; }
.trial-article .trial-comparison-panel > summary:focus-visible,
.trial-article .trial-chart-label:focus-visible { outline:3px solid #5a8547; outline-offset:4px; }
.trial-article .trial-table-wrap { max-width:100%; padding:0 19px; }
.trial-article .document-body .trial-comparison-table { width:100%; margin:0; border-collapse:separate; border-spacing:0; table-layout:fixed; font-size:.9375rem; line-height:1.65; }
.trial-article .trial-comparison-table caption { padding:18px 7px; color:#637058; font-size:.875rem; line-height:1.6; text-align:left; }
.trial-article .trial-comparison-table th,
.trial-article .trial-comparison-table td { padding:17px 14px; border-bottom:1px solid #e1e7db; text-align:left; vertical-align:top; overflow-wrap:break-word; }
.trial-article .trial-comparison-table thead th { background:#f1f4ed; color:#3f5135; font-size:.9375rem; }
.trial-article .trial-comparison-table thead th:first-child { width:25%; border-top-left-radius:12px; }
.trial-article .trial-comparison-table thead th:nth-child(2) { width:37.5%; background:#e5efdc; }
.trial-article .trial-comparison-table thead th:last-child { border-top-right-radius:12px; }
.trial-article .trial-comparison-table tbody th { background:#fff; font-weight:650; }
.trial-article .trial-comparison-table tbody td[data-brand="Cybox"] { background:#f3f8ed; }
.trial-article .trial-comparison-table tbody tr:last-child > * { border-bottom:0; }
.trial-article .trial-comparison-table td p { margin:0; }
.trial-article .trial-comparison-table td p + p { margin-top:8px; }
.trial-article .document-body .trial-panel-source { margin:0; padding:20px 26px 23px; border-top:1px solid var(--trial-line); color:#606b58; font-size:.875rem; line-height:1.75; }

/* Comparable maximum group size: one shared zero-based scale. */
.trial-article .trial-group-chart { --chart-label:116px; --chart-gap:16px; max-width:100%; margin:28px 0; padding:29px; border:1px solid #dbe3d5; border-radius:26px; background:#fbfcf8; }
.trial-article .trial-group-chart > figcaption { margin:0 0 27px; }
.trial-article .trial-group-chart > figcaption > strong { display:block; color:#29472b; font-size:1.25rem; line-height:1.45; letter-spacing:-.025em; }
.trial-article .trial-group-chart > figcaption > span { display:block; margin-top:7px; color:#637058; font-size:.9375rem; line-height:1.6; }
.trial-article .trial-chart-plot { display:grid; gap:15px; min-width:0; }
.trial-article .trial-chart-row { display:grid; grid-template-columns:var(--chart-label) minmax(0,1fr); gap:var(--chart-gap); align-items:center; min-width:0; }
.trial-article .trial-chart-label { display:flex; align-items:center; min-height:44px; color:#44533d; font-weight:650; font-size:.9375rem; line-height:1.35; text-underline-offset:4px; }
.trial-article .trial-chart-row.is-cybox .trial-chart-label { color:#294e2e; font-weight:800; }
.trial-article .trial-chart-track { position:relative; min-width:0; height:42px; border-radius:0 12px 12px 0; background:repeating-linear-gradient(90deg,#dce4d5 0,#dce4d5 1px,transparent 1px,transparent 33.333333%),#eef2e8; }
.trial-article .trial-chart-bar { display:flex; align-items:center; justify-content:flex-end; width:var(--bar); height:100%; padding-inline:9px; border-radius:0 10px 10px 0; background:#c8d6bf; }
.trial-article .trial-chart-bar > span { flex:none; color:#31472b; font-size:.9375rem; font-weight:750; line-height:1; white-space:nowrap; font-variant-numeric:tabular-nums; }
.trial-article .trial-chart-row.is-cybox .trial-chart-bar { background:#547644; }
.trial-article .trial-chart-row.is-cybox .trial-chart-bar > span { color:#fff; }
.trial-article .trial-chart-axis { display:flex; justify-content:space-between; margin:10px 0 0 calc(var(--chart-label) + var(--chart-gap)); font-size:.875rem; color:#637058; font-variant-numeric:tabular-nums; line-height:1.5; }
.trial-article .document-body .trial-chart-note { margin:22px 0 0; color:#5d6a52; font-size:.875rem; line-height:1.75; }
.trial-article .trial-group-chart > a { display:inline-flex; align-items:center; min-height:44px; margin-top:8px; font-size:.875rem; }

.trial-article .trial-ai-flow { display:grid; grid-template-columns:1fr 18px 1fr 18px 1fr 18px 1.25fr; align-items:center; gap:9px; margin:27px 0; }
.trial-article .trial-ai-flow > span { display:flex; align-items:center; justify-content:center; min-height:78px; padding:13px 10px; border:1px solid #d7e2cd; border-radius:18px; background:#f2f6ed; color:#3d5834; font-size:.9375rem; font-weight:650; line-height:1.5; text-align:center; }
.trial-article .trial-ai-flow > span:last-child { background:#e7f0df; }
.trial-article .trial-ai-flow > b { color:#80956d; text-align:center; font-weight:400; }
.trial-article .document-body .trial-parent-questions { list-style:none; padding:0; margin:26px 0; counter-reset:parent-question; display:grid; gap:12px; }
.trial-article .trial-parent-questions > li { position:relative; margin:0; padding:23px 25px 23px 75px; border:1px solid #dce4d5; border-radius:22px; background:#fcfdf9; counter-increment:parent-question; }
.trial-article .trial-parent-questions > li::before { content:counter(parent-question,decimal-leading-zero); position:absolute; top:23px; left:23px; display:grid; place-items:center; width:35px; height:35px; border-radius:12px; background:#e7efdf; color:#49633d; font-size:.875rem; font-weight:750; }
.trial-article .trial-parent-questions strong { display:block; font-size:1.125rem; line-height:1.5; }
.trial-article .trial-parent-questions p { margin:8px 0 0; }
.trial-article .document-body .trial-conclusion { margin:32px 0; padding-left:25px; border-left:3px solid #a1b78f; color:#415735; font-size:1.125rem; line-height:1.75; }
.trial-article .trial-final { text-align:center; padding:36px 32px; margin-bottom:44px; }
.trial-article .trial-final > h2 { margin:0 0 20px; font-family:var(--font-heading); font-size:clamp(1.75rem,3.5vw,2.5rem); font-weight:500; line-height:1.2; }
.trial-article .trial-final > p { margin:0 auto; }
.trial-article .trial-final > p:last-child { max-width:45ch; margin-top:20px; color:#596850; font-size:.875rem; line-height:1.65; }
.trial-article .trial-program-link { display:table; margin:18px auto 0; padding-block:5px; font-size:.9375rem; }
.trial-article .document-body .trial-sources { padding-left:22px; font-size:.9375rem; line-height:1.8; }
.trial-article .trial-sources li { padding-left:5px; margin-block:12px; }
.trial-article .article-bottom { flex-wrap:wrap; }

@media (max-width:699px) {
 .trial-article .document-body > h2 { margin-top:36px; }
 .trial-article .trial-promise,
 .trial-article .trial-final { padding:23px 20px; border-radius:23px; margin-block:25px 32px; }
 .trial-article .document-body .trial-promise-line { font-size:1.5rem; }
 .trial-article .trial-facts { gap:12px; margin-block:20px; padding-block:18px; }
 .trial-article .trial-facts strong { font-size:1.25rem; }
 .trial-article .trial-facts span { font-size:.875rem; }
 .trial-article .trial-promise .button,
 .trial-article .trial-final .button { width:100%; min-height:52px; font-size:.9375rem; padding:14px 17px; gap:10px; }
 .trial-article .document-body .trial-route { grid-template-columns:1fr; gap:8px; margin-block:23px; }
 .trial-article .trial-route > li { display:grid; grid-template-columns:62px minmax(0,1fr); gap:4px 13px; padding:15px 17px; border-radius:17px; }
 .trial-article .trial-route > li > span { grid-column:1; grid-row:1/3; align-self:center; }
 .trial-article .trial-route > li > strong,
 .trial-article .trial-route > li > p { grid-column:2; margin:0; }
 .trial-article .trial-method { padding:19px 18px; font-size:.875rem; }
 .trial-article .trial-comparison-panel > summary { padding:20px; gap:4px 13px; }
 .trial-article .trial-comparison-panel > summary > strong { font-size:1.125rem; }
 .trial-article .trial-comparison-panel > summary > span { font-size:.875rem; }
 .trial-article .document-body .trial-panel-source { padding:17px 20px 20px; font-size:.875rem; }
 .trial-article .trial-group-chart { --chart-label:86px; --chart-gap:12px; padding:22px 18px; border-radius:22px; }
 .trial-article .trial-group-chart > figcaption { margin-bottom:21px; }
 .trial-article .trial-group-chart > figcaption > strong { font-size:1.125rem; }
 .trial-article .trial-group-chart > figcaption > span,
 .trial-article .trial-chart-label,
 .trial-article .trial-chart-bar > span { font-size:.875rem; }
 .trial-article .trial-chart-track { height:38px; }
 .trial-article .trial-chart-bar { padding-inline:7px; }
 .trial-article .trial-chart-plot { gap:9px; }
 .trial-article .trial-parent-questions > li { padding:19px 18px 19px 62px; border-radius:19px; }
 .trial-article .trial-parent-questions > li::before { top:20px; left:18px; width:31px; height:31px; border-radius:10px; }
 .trial-article .trial-parent-questions strong { font-size:1rem; }
 .trial-article .document-body .trial-conclusion { padding-left:18px; font-size:1rem; margin-block:26px; }
 .trial-article .trial-final > h2 { font-size:1.875rem; }
 .trial-article .document-body .trial-sources { font-size:.875rem; }
}
@media (max-width:600px) {
 /* Retain the native table and its heading associations; show one criterion at a time. */
 .trial-article .trial-table-wrap { padding:0 14px; }
 .trial-article .document-body .trial-comparison-table { display:block; font-size:.9375rem; }
 .trial-article .trial-comparison-table caption { display:block; width:100%; padding:17px 5px; font-size:.875rem; }
 .trial-article .trial-comparison-table thead { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
 .trial-article .trial-comparison-table tbody { display:block; }
 .trial-article .trial-comparison-table tbody tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0 0 15px; border:1px solid #dce4d5; border-radius:15px; overflow:hidden; }
 .trial-article .trial-comparison-table tbody tr > th { grid-column:1/-1; padding:12px 14px; border-bottom:1px solid #dce4d5; background:#eff3e9; font-size:.9375rem; }
 .trial-article .trial-comparison-table tbody td { min-width:0; padding:14px 12px 17px; border:0; font-size:.9375rem; line-height:1.65; }
 .trial-article .trial-comparison-table tbody td + td { border-left:1px solid #dce4d5; }
 .trial-article .trial-comparison-table tbody td::before { content:attr(data-brand); display:block; margin-bottom:8px; color:#4e6341; font-size:.875rem; font-weight:750; line-height:1.45; }
 .trial-article .trial-comparison-table tbody tr:last-child > th { border-bottom:1px solid #dce4d5; }
 .trial-article .trial-ai-flow { grid-template-columns:1fr; gap:7px; margin-block:23px; }
 .trial-article .trial-ai-flow > span { min-height:52px; padding:13px; border-radius:15px; }
 .trial-article .trial-ai-flow > b { line-height:1; transform:rotate(90deg); }
}
@media (max-width:419px) {
 .trial-article .trial-facts { grid-template-columns:1fr; gap:12px; }
 .trial-article .trial-facts > div { display:grid; grid-template-columns:95px minmax(0,1fr); gap:12px; align-items:center; }
 .trial-article .trial-facts span { margin:0; }
}
@media (max-width:379px) {
 .trial-article .trial-comparison-table tbody tr { grid-template-columns:1fr; }
 .trial-article .trial-comparison-table tbody td + td { border-left:0; border-top:1px solid #dce4d5; }
 .trial-article .trial-group-chart { --chart-label:76px; --chart-gap:9px; padding-inline:15px; }
 .trial-article .trial-chart-bar { padding-inline:5px; }
 .trial-article .trial-final > h2 { font-size:1.7rem; }
}
@media print {
 .trial-article .trial-comparison-panel,
 .trial-article .trial-group-chart,
 .trial-article .trial-parent-questions > li { break-inside:avoid; }
 .trial-article .trial-chart-bar { print-color-adjust:exact; -webkit-print-color-adjust:exact; }
 .trial-article .trial-promise,
 .trial-article .trial-final { background:#f4f7ef; }
}
