.ql-page { padding:112px 0 64px; background:#f5f7fb; color:#34465f; }
.ql-page * { box-sizing:border-box; }
.ql-page .ql-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; font-size:14px; margin-bottom:22px; }
.ql-page a { color:#2358ad; text-underline-offset:3px; }
.ql-page a:hover { text-decoration:underline; }
.ql-page a:focus-visible { outline:3px solid #b98025; outline-offset:4px; border-radius:3px; }
.ql-page .ql-hero { padding:38px 42px; border-radius:20px; background:#071f49; color:#d7e4f5; margin-bottom:30px; }
.ql-page .ql-eyebrow { text-transform:uppercase; color:#f4c66c; letter-spacing:.14em; font-size:12px; font-weight:800; margin:0 0 12px; }
.ql-page h1 { color:#fff; font-size:clamp(32px,4vw,48px); line-height:1.15; margin-bottom:16px; }
.ql-page .ql-lead { font-size:18px; line-height:1.7; margin-bottom:24px; }
.ql-page .ql-meta { display:flex; flex-wrap:wrap; gap:14px 26px; font-size:14px; }
.ql-page .ql-meta i { color:#f4c66c; margin-right:7px; }
.ql-page .ql-grid { display:grid; grid-template-columns:270px minmax(0,1fr); align-items:start; gap:28px; }
.ql-page .ql-sidebar { position:sticky; top:100px; max-height:calc(100vh - 120px); overflow:auto; padding:4px; }
.ql-page .ql-toc,.ql-page .ql-help { border:1px solid #dce4ef; background:#fff; border-radius:14px; padding:22px; }
.ql-page .ql-toc h2,.ql-page .ql-help h2 { color:#102c54; font-size:18px; margin:0 0 14px; }
.ql-page .ql-toc ol { padding-left:22px; margin:0; }
.ql-page .ql-toc li { padding-left:3px; font-size:14px; color:#72829a; }
.ql-page .ql-toc a { display:block; padding:8px 0; line-height:1.5; }
.ql-page .ql-help { margin-top:16px; background:#edf2f9; }
.ql-page .ql-help a { display:block; font-size:14px; padding:8px 0; line-height:1.6; }
.ql-page .ql-document { min-width:0; background:#fff; border:1px solid #dce4ef; border-radius:18px; padding:34px 40px; box-shadow:0 5px 22px #142e4f05; }
.ql-page .ql-document p { font-size:16px; line-height:1.9; margin:0 0 20px; overflow-wrap:anywhere; }
.ql-page .ql-introduction { padding-bottom:10px; }
.ql-page .ql-clause { padding:28px 0 8px; border-top:1px solid #e3e9f2; overflow:visible; }
.ql-page .ql-clause h2 { display:flex; gap:13px; align-items:baseline; color:#102c54; font-size:23px; line-height:1.4; margin:0 0 18px; scroll-margin-top:110px; }
.ql-page .ql-number { flex-shrink:0; color:#54779f; font-size:14px; font-weight:700; }
.ql-page .ql-document h3 { color:#193c66; font-size:20px; line-height:1.5; margin:28px 0 14px; }
.ql-page .ql-document h4 { color:#294966; font-size:17px; line-height:1.5; margin:22px 0 12px; }
.ql-page .ql-document ul { padding-left:22px; margin:0 0 24px; font-size:16px; line-height:1.9; overflow-wrap:anywhere; }
.ql-page .ql-document li { padding-left:4px; margin-bottom:12px; }
.ql-page .ql-document li p { margin-bottom:10px; }
.ql-page .ql-end { display:flex; flex-wrap:wrap; justify-content:space-between; gap:16px; border-top:1px solid #e3e9f2; padding-top:20px; }
.ql-page .ql-end a { padding:10px 0; }
@media(max-width:991px) { .ql-page .ql-grid { grid-template-columns:minmax(0,1fr); } .ql-page .ql-sidebar { position:static; max-height:none; overflow:visible; padding:0; } .ql-page .ql-toc ol { columns:2; column-gap:32px; } .ql-page .ql-toc li { break-inside:avoid; } }
@media(max-width:575px) { .ql-page { padding-top:100px; } .ql-page .ql-hero { padding:26px 22px; } .ql-page .ql-document { padding:24px 20px; } .ql-page .ql-toc ol { columns:1; } .ql-page .ql-toc a { min-height:44px; } .ql-page .ql-clause h2 { font-size:21px; } .ql-page .ql-document p { line-height:1.8; } }
@media print { .ql-page { padding:0; background:#fff; color:#000; } .ql-page .ql-sidebar,.ql-page .ql-breadcrumb,.ql-page .ql-end { display:none; } .ql-page .ql-grid { display:block; } .ql-page .ql-hero { padding:0 0 20px; background:none; color:#000; } .ql-page h1,.ql-page .ql-eyebrow { color:#000; } .ql-page .ql-document { border:0; box-shadow:none; padding:0; } .ql-page .ql-clause h2 { break-after:avoid; } }
