.ci-text * { box-sizing: border-box; }
.ci-text { box-sizing: border-box; color: #202224; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; margin: 0 auto; max-width: calc(1200px + 56px); padding: 20px 28px 0; }
@media (max-width: 1199.98px) { .ci-text { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-text { padding-left: 20px; padding-right: 20px; } }
.ci-text p { font-size: 16px; line-height: 1.5; margin: 0 0 20px; }
/* The body itself, for a value that arrives as bare text (a plain TEXT field
   mapped onto this rich leaf): the same type as a paragraph, not the browser's. */
.ci-text-body { font-size: 16px; line-height: 1.5; }
.ci-text-body > :first-child { margin-top: 0; }
.ci-text-body > :last-child { margin-bottom: 0; }
.ci-text a { color: #5749dd; text-decoration: none; }
.ci-text a:hover { text-decoration: underline; }
.ci-text ul, .ci-text ol { margin: 0 0 20px; padding-left: 24px; }
.ci-text li { margin-bottom: 6px; }
.ci-text strong { font-weight: 700; }
/* Rich-text subheadings (e.g. the about-page mission copy). */
.ci-text h3 { font-size: 22px; letter-spacing: -.02em; margin: 26px 0 14px; }
.ci-text h4 { font-size: 18px; margin: 22px 0 12px; }
/* link/inline Focus: the 2px ring 3px out, r8 round the ring. */
.ci-text a:focus-visible { border-radius: 5px; outline: 2px solid #5749dd; outline-offset: 3px; }
/* text-row: the decor/dot-6 at the column edge on the first line's caps, the words 18px in, rows 44 apart. The
   native marker stays, unpainted, so WebKit keeps the list a list (the callout's way). */
.ci-text-body ul { padding-left: 18px; }
.ci-text-body ul > li { position: relative; }
.ci-text-body ul > li::marker { color: transparent; }
.ci-text-body ul > li::before { -webkit-print-color-adjust: exact; background: linear-gradient(217.12deg, #ffbe04 42.21%, #e03327 230.55%); border-radius: 50%; content: ''; height: 6px; left: -18px; position: absolute; print-color-adjust: exact; top: 8px; width: 6px; }
/* Forced colours repaint the marker whatever its colour: there it is the bullet and the dot goes. */
@media (forced-colors: active) { .ci-text-body ul > li::before { content: none; } }
.ci-text-body li { margin-bottom: 20px; }
.ci-text-body li:last-child { margin-bottom: 0; }
/* Rich-text subheadings: v5's Section Title, 700 24/28. */
.ci-text-body h3 { font-size: 24px; letter-spacing: normal; line-height: 28px; }
/* The format bar's Quote is the NL content/quote: the inside frame takes no room, both
   21px marks sit 20px in from the top corners, the closing one turned round. */
.ci-text blockquote { font-size: 16px; font-style: italic; font-weight: 500; line-height: 1.5; margin: 0 0 20px; overflow-wrap: anywhere; }
/* One frame: a quote nested in it (imported, pasted) reads as quote text in its column. */
.ci-text-body > blockquote { background: #fff; border-radius: 12px; box-shadow: inset 0 0 0 1px #0c866a; padding: 20px 49px; position: relative; }
.ci-text-body > blockquote::before, .ci-text-body > blockquote::after { -webkit-print-color-adjust: exact; background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021%2021%22%3E%3Cpath%20d%3D%22M11.812%2010.4995L15.7495%2010.4995C16.4714%2010.4995%2017.062%2011.0901%2017.062%2011.812L17.062%2015.7495C17.062%2016.4714%2016.4714%2017.062%2015.7495%2017.062L11.812%2017.062C11.0901%2017.062%2010.4995%2016.4714%2010.4995%2015.7495L10.4995%2011.812C10.4995%2011.0901%2011.0901%2010.4995%2011.812%2010.4995ZM3.937%2010.4995L7.8745%2010.4995C8.5964%2010.4995%209.187%2011.0901%209.187%2011.812L9.187%2015.7495C9.187%2016.4714%208.5964%2017.062%207.8745%2017.062L3.937%2017.062C3.2151%2017.062%202.6245%2016.4714%202.6245%2015.7495L2.6245%2011.812C2.6245%2011.0901%203.2151%2010.4995%203.937%2010.4995Z%20M13.1256%2010.4995L13.1256%2013.1245C13.1256%2013.8494%2012.538%2014.437%2011.8131%2014.437C11.0882%2014.437%2010.5006%2013.8494%2010.5006%2013.1245L10.5006%2010.4995C10.5006%208.2703%2011.2395%205.9359%2012.8539%204.3215C13.3664%203.809%2014.1973%203.809%2014.7098%204.3215C15.2224%204.8341%2015.2224%205.6649%2014.7098%206.1775C13.6992%207.1882%2013.1256%208.7913%2013.1256%2010.4995ZM5.2506%2010.4995L5.2506%2013.1245C5.2506%2013.8494%204.663%2014.437%203.9381%2014.437C3.2132%2014.437%202.6256%2013.8494%202.6256%2013.1245L2.6256%2010.4995C2.6256%208.2703%203.3645%205.9359%204.9789%204.3215C5.4914%203.809%206.3223%203.809%206.8348%204.3215C7.3474%204.8341%207.3474%205.6649%206.8348%206.1775C5.8242%207.1882%205.2506%208.7913%205.2506%2010.4995Z%22%20fill%3D%22%230C866A%22%2F%3E%3C%2Fsvg%3E") center / 21px 21px no-repeat; content: ''; height: 21px; position: absolute; print-color-adjust: exact; top: 20px; width: 21px; }
.ci-text-body > blockquote::before { left: 20px; }
.ci-text-body > blockquote::after { right: 20px; transform: rotate(180deg); }
/* Its blocks keep the 20px rhythm; the last one, at any depth, leaves the padding alone. */
.ci-text blockquote > * { margin: 0 0 20px; }
.ci-text blockquote :last-child { margin-bottom: 0; }
/* Forced colours and print drop box-shadows: an inset outline keeps the frame in place. */
@media print, (forced-colors: active) { .ci-text-body > blockquote { box-shadow: none; outline: 1px solid #0c866a; outline-offset: -1px; } }
.ci-gpq * { box-sizing: border-box; }
.ci-gpq { box-sizing: border-box; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color: #202224; margin: 0 auto; max-width: calc(1200px + 56px); padding: 20px 28px; width: 100%; }
@media (max-width: 1199.98px) { .ci-gpq { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-gpq { padding-left: 20px; padding-right: 20px; } }
/* The frame is an inset shadow: Figma's inside stroke takes no room (COMPONENT_GENERATION.md). */
.ci-gpq-panel { align-items: flex-start; background: #fff; border-radius: 12px; box-shadow: inset 0 0 0 1px #0c866a; display: flex; gap: 8px; padding: 20px; }
.ci-gpq-mark { display: block; flex: none; height: 21px; object-fit: contain; width: 21px; }
/* One uploaded glyph serves both ends: the closing mark IS the opening one
   turned around, top-aligned like it, exactly as content/quote draws it. */
.ci-gpq-mark-close { transform: rotate(180deg); }
.ci-gpq-text { flex: 1; font-size: 16px; font-style: italic; font-weight: 500; line-height: 1.5; min-width: 0; overflow-wrap: anywhere; }
/* Every rich-text block, nested ones too (p in a blockquote or li), keeps the 20px rhythm and the marks' top line. */
.ci-gpq-text > * { margin: 0 0 20px; }
.ci-gpq-text p { margin: 0 0 20px; }
.ci-gpq-text :last-child { margin-bottom: 0; }
/* Forced colours and print drop box-shadows: a real border (inside the same 20px) keeps the frame. */
@media print, (forced-colors: active) { .ci-gpq-panel { border: 1px solid #0c866a; box-shadow: none; padding: 19px; } }
/* v5 tablet and phone frames: 500 italic 14/24 (DREAM-831). */
@media (max-width: 1199.98px) { .ci-gpq-text { font-size: 14px; line-height: 24px; } }
.ci-gpq a[href] { color: #5749dd; text-decoration: none; }
.ci-gpq a[href]:hover { text-decoration: underline; }
.ci-gpq a[href]:focus-visible { border-radius: 5px; outline: 2px solid #5749dd; outline-offset: 3px; }
.ci-guides-cards * { box-sizing: border-box; }
.ci-guides-cards { box-sizing: border-box; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color: #202224; margin: 0 auto; max-width: calc(1200px + 56px); padding: 20px 28px; }
@media (max-width: 1199.98px) { .ci-guides-cards { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-guides-cards { padding-left: 20px; padding-right: 20px; } }
/* Container-driven, tracks filling the row 20 apart: 4 x 285 in the 1200 column, 3 x 270 in the 850 one
   beside a rail. The 240 floor sits between the two (5 would fit at 1200 under 224); min() keeps a phone. */
.ci-guides-cards-list { align-items: start; display: grid; gap: 20px; grid-template-columns: repeat(auto-fill, minmax(min(240px, 100%), 1fr)); }
.ci-ggslide { min-width: 0; }
/* Under the desktop a shelf is v5's swipe row: 328px cards (306 on phones), 20 apart, the next one in view.
   The track's 5px pads hold the focus ring; a mouse keeps the scrollbar, the grid has no drag or arrows. */
@media (max-width: 1199.98px) {
  .ci-guides-cards-list:not(:has(> .ci-ctoolbar)):not(:has(> .ci-cpager)) { display: flex; margin: -5px -5px 0; overflow-x: auto; padding: 5px 5px 10px; scroll-padding-inline: 5px; scroll-snap-type: x mandatory; scrollbar-width: thin; }
  .ci-guides-cards-list:not(:has(> .ci-ctoolbar)):not(:has(> .ci-cpager)) > .ci-ggslide { flex: 0 0 328px; scroll-snap-align: start; }
}
@media (max-width: 1199.98px) and (hover: none) {
  .ci-guides-cards-list:not(:has(> .ci-ctoolbar)):not(:has(> .ci-cpager)) { scrollbar-width: none; }
  .ci-guides-cards-list:not(:has(> .ci-ctoolbar)):not(:has(> .ci-cpager))::-webkit-scrollbar { display: none; }
}
@media (max-width: 560px) { .ci-guides-cards-list:not(:has(> .ci-ctoolbar)):not(:has(> .ci-cpager)) > .ci-ggslide { flex-basis: min(306px, 100% - 44px); } }
.ci-guide-card { background: #1c1c1c; border-radius: 12px; display: flex; flex-direction: column; height: 410px; justify-content: flex-end; position: relative; }
.ci-guide-thumb { background: linear-gradient(160deg, #2b2b33, #17171c) top / 100% 77.28% no-repeat; border-radius: 12px; display: block; inset: 0; overflow: hidden; position: absolute; }
.ci-guide-image { display: block; height: 77.28%; left: 0; object-fit: cover; position: absolute; top: 0; width: 100%; }
.ci-guide-image[src=""], .ci-guide-image:not([src]) { opacity: 0; }
/* Stacked over the photo by z-index, not position: the card, not the body, places the title link's ring (0459). */
.ci-guide-body { background: linear-gradient(180deg, rgba(28, 28, 28, 0), #1c1c1c 75.49px); border-radius: 0 0 12px 12px; color: #fff; display: flex; flex-direction: column; gap: 12px; margin-top: -45.47px; padding: 61.47px 16px 16px; z-index: 0; }
.ci-guide-title { display: block; font-size: 24px; font-weight: 700; line-height: 28px; margin: 0; z-index: 1; }
/* Only the title is the link, out of flow; its ring goes round the card (Focus). v5 hover and press draw a 2px bar,
   the link's own background, the content's width and 21px under the title's box (@16,265, DREAM-812): its foot pad. */
.ci-guide-link { color: inherit; display: block; margin: -9px 0 -23px; padding: 9px 0 23px; text-decoration: none; }
.ci-guide-link:focus-visible { outline: none; }
.ci-guide-link:focus-visible::after { border-radius: 5px; content: ''; inset: 0; outline: 2px solid #5749dd; outline-offset: 3px; pointer-events: none; position: absolute; }
@media (hover: hover) { .ci-guide-link:hover { background: linear-gradient(#0c866a, #0c866a) left bottom / 100% 2px no-repeat; } }
.ci-guide-link:active { background: linear-gradient(#1b5547, #1b5547) left bottom / 100% 2px no-repeat; }
@media (forced-colors: active) { .ci-guide-link:hover .ci-guide-title-text, .ci-guide-link:active .ci-guide-title-text { text-decoration: underline; } }
.ci-guide-card:not(:has(.ci-guide-link[href]:not([href=""]))) { opacity: .4; }
/* Every row after the title stacks over its link's foot pad (z-index 2, flex items): the link's hit area ends at the
   next row, 44px at least (49 with no excerpt), and the bar still shows through (DREAM-812). */
.ci-guide-text { -webkit-box-orient: vertical; display: -webkit-box; font-size: 14px; font-weight: 400; -webkit-line-clamp: 4; line-clamp: 4; line-height: 20px; margin: -4.73px 0 -5.4px; overflow: hidden; z-index: 2; }
.ci-guide-text:empty { display: none; }
.ci-guide-meta { align-items: center; display: flex; margin: 0; z-index: 2; }
.ci-guide-byline { align-items: center; display: flex; gap: 12px; max-width: 100%; min-width: 0; }
.ci-guide-avatar { border-radius: 50%; flex: none; height: 32px; object-fit: cover; width: 32px; }
.ci-guide-avatar[src=""], .ci-guide-avatar:not([src]) { display: none; }
.ci-guide-author { font-size: 16px; font-weight: 700; line-height: 22px; margin: -4.98px 0 -5.74px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* No author (DREAM-708): both name leaves drop, and the byline row with them. */
.ci-guide-meta:not(:has(.ci-guide-author-first)):not(:has(.ci-guide-author-last)) { display: none; }
/* v5 footer row: date | topic on the left, Lees verder (where the block has it) on the right. */
.ci-guide-foot { align-items: center; display: flex; gap: 12px; min-height: 12px; z-index: 2; }
.ci-guide-facts { align-items: center; display: flex; gap: 8px; margin: 0; min-height: 12px; }
.ci-guide-date { flex: none; font-size: 12px; font-weight: 700; line-height: 24px; margin: -8px 0 -8px; white-space: nowrap; }
.ci-guide-category { font-size: 12px; font-weight: 700; line-height: 24px; margin: -8px 0 -8px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ci-guide-sep { background: #fff; flex: none; height: 12px; width: 1px; }
.ci-guide-sep:first-child, .ci-guide-sep:last-child { display: none; }
.ci-guide-facts:has(> .ci-guide-sep:only-child) { display: none; }
.ci-guide-facts { min-width: 0; }
@media (forced-colors: active) { .ci-guide-sep { background: CanvasText; } }
.ci-guide-foot:not(:has(.ci-guide-date)):not(:has(.ci-guide-category)):not(:has(.ci-guide-more)) { display: none; }
/* The row carries the link's look, so an unwrapped Lees verder (no URL, 0459) keeps it in the Disabled card. */
.ci-guide-more { color: #0c866a; display: flex; flex: none; font-size: 16px; font-weight: 700; gap: 8px; height: 11px; line-height: 22px; margin-left: auto; }
.ci-guide-more-link { align-items: center; border-radius: 5px; color: inherit; display: flex; gap: 8px; position: relative; text-decoration: none; }
.ci-guide-more-link::before { content: ''; inset: calc(50% - 22px) 0; position: absolute; }
.ci-guide-more-link:hover { color: #0d9070; }
.ci-guide-more-link:active { color: #1b5547; }
.ci-guide-more-link:focus-visible { outline: 2px solid #5749dd; outline-offset: 3px; }
.ci-guide-more-label { text-box: trim-both cap alphabetic; white-space: nowrap; }
.ci-guide-more-icon { display: block; flex: none; height: 12px; width: 12px; }
/* v5 tablet and phone frames (DREAM-830): the card keeps its box and draws smaller type, its trims recomputed. */
@media (max-width: 1199.98px) {
  .ci-guide-title { font-size: 22px; }
  .ci-guide-text { line-height: 18px; margin: -3.734375px 0 -4.265625px; }
  .ci-guide-author { font-size: 14px; margin: -5.734375px 0 -6.265625px; }
  .ci-guide-date, .ci-guide-category { line-height: 22px; margin: -7px 0 -7px; }
  .ci-guide-more { font-size: 14px; height: 10px; }
}
/* Asked of SCRIPTING, not undone by a <noscript> rule: `display` has no
   un-hiding half — `revert` rolls back to the UA origin and strips the card's
   own `display` (`.ci-bgd-main` is flex, `.ci-vcard` grid). Where the pager
   cannot run, the cut is never made — the lead, PR #169. */
@media (scripting: enabled) {
  .ci-guides-cards-list:not([data-pager-ready]) > [data-past-batch] { display: none; }
}
/* The panel marks a non-matching card `hidden`; this states what that means
   loudly enough to survive a baked `Page.css` rule setting display on the
   card (render KNOWLEDGE.md, "Stale baked page CSS"). */
.ci-guides-cards-list > *[hidden] { display: none !important; }
/* Hidden until the script takes over: without JavaScript the button would
   promise a batch it cannot reveal. Stated here, NOT in the <noscript> below —
   the editor parses that block as markup and bakes its rules into Page.css,
   where they apply with scripting ON (render KNOWLEDGE.md, "Stale baked CSS"). */
.ci-cpager { display: none; }
.ci-guides-cards-list[data-pager-ready] > .ci-cpager { display: flex; flex-direction: column; gap: 12px; align-items: center; grid-column: 1 / -1; padding-top: 20px; }
.ci-cpager[hidden] { display: none; }
.ci-cpager .ci-cpager-count { color: #545658; font-size: 14px; font-variant-numeric: tabular-nums; line-height: 20px; }
/* NL button/secondary without its arrow: 23px + the 1px border make the design's 24px sides.
   Under `.ci-cpager` so a pre-0410 version's flat rules on the page lose (PR #496 R1.5). */
.ci-cpager .ci-cpager-btn { -webkit-appearance: none; align-items: center; appearance: none; background: none; border: 1px solid #5749dd; border-radius: 4px; color: #5749dd; cursor: pointer; display: inline-flex; font-family: inherit; font-size: 18px; font-weight: 700; height: 48px; justify-content: center; line-height: 24px; margin: 0; max-width: 100%; padding: 0 23px; position: relative; }
.ci-cpager .ci-cpager-btn:hover { background: #f3f2ff; }
.ci-cpager .ci-cpager-btn:active { background: none; border-color: #3d31b8; color: #3d31b8; }
.ci-cpager .ci-cpager-btn:focus-visible { outline: none; }
/* The drawn ring, 3px out at radius 8/10 (an outline would round to 9): 6px off the padding box. */
.ci-cpager .ci-cpager-btn:focus-visible::after { border: 2px solid #5749dd; border-radius: 10px; content: ''; inset: -6px; pointer-events: none; position: absolute; }
.ci-cpager .ci-cpager-btn[hidden] { display: none; }
.ci-ctoolbar * { box-sizing: border-box; }
/* A part of the list it controls, never a section of its own: it spans the
   list's layout and leaves the section's padding to the section. */
.ci-ctoolbar { box-sizing: border-box; color: #202224; grid-column: 1 / -1; margin: 0; width: 100%; }
/* form/search, Light: 40px, the glyph first; Figma's 8/12 pads sit inside the 1px border. */
.ci-ctoolbar label.ci-ctoolbar-search { align-items: center; background: #fff; border: 1px solid #d9d9d9; border-radius: 4px; cursor: text; display: flex; gap: 8px; height: 40px; margin: 0; padding: 8px 12px; position: relative; }
.ci-ctoolbar label.ci-ctoolbar-search::before { content: ''; inset: -3px -1px; position: absolute; }
.ci-ctoolbar label.ci-ctoolbar-search:focus-within::after { border: 2px solid #5749dd; border-radius: 14px; content: ''; inset: -6px; pointer-events: none; position: absolute; }
/* `inset` and `transform` undo a pre-0410 sheet's right-hand absolute glyph. */
.ci-ctoolbar label > .ci-ctoolbar-icon { color: #545658; display: block; flex: none; height: 16px; inset: auto; position: relative; transform: none; width: 16px; }
.ci-ctoolbar label > .ci-ctoolbar-input { -webkit-appearance: none; appearance: none; background: none; border: 0; border-radius: 0; color: #202224; flex: 1; font-family: inherit; font-size: 14px; font-weight: 400; height: 20px; letter-spacing: 0; line-height: 20px; margin: 0; min-width: 0; outline: none; padding: 0; position: relative; top: 1px; }
.ci-ctoolbar label > .ci-ctoolbar-input:focus-visible { outline: none; }
.ci-ctoolbar label > .ci-ctoolbar-input::placeholder { color: #545658; opacity: 1; }
.ci-ctoolbar label > .ci-ctoolbar-input::-webkit-search-cancel-button { -webkit-appearance: none; display: none; }
.ci-ctoolbar label > .ci-ctoolbar-input::-webkit-search-decoration { -webkit-appearance: none; }
@media (hover: hover) {
  .ci-ctoolbar label.ci-ctoolbar-search:hover { border-color: #545658; }
  .ci-ctoolbar .ci-ctoolbar-reset:hover { text-decoration: underline; }
}
.ci-ctoolbar label.ci-ctoolbar-search:active { background: #ededed; border-color: #545658; }
.ci-ctoolbar .ci-ctoolbar-chips { display: flex; flex-wrap: wrap; gap: 12px 8px; margin-top: 12px; }
.ci-ctoolbar .ci-ctoolbar-chips:empty { display: none; }
/* filter/chip, an applied filter with its close glyph (0438): 32px pill, 44px hit area (rows 12 apart,
   so two rows' areas never overlap). Hover and pressed draw the 1px line inset, so the pill keeps
   its width (user call, DREAM-718). */
.ci-ctoolbar .ci-ctoolbar-chip { align-items: center; background: #f3f3f3; border: 0; border-radius: 999px; color: #202224; cursor: pointer; display: inline-flex; font-family: inherit; font-size: 12px; font-style: normal; font-weight: 400; gap: 6px; letter-spacing: 0; line-height: 20px; margin: 0; max-width: 100%; min-height: 32px; overflow-wrap: anywhere; padding: 6px 8px 6px 12px; position: relative; text-align: left; }
.ci-ctoolbar .ci-ctoolbar-chip::before { content: ''; inset: -6px 0; position: absolute; }
.ci-ctoolbar .ci-ctoolbar-chip-icon { display: block; flex: none; height: 12px; width: 12px; }
/* Unguarded, so a pre-0438 sheet's green :hover cannot win on a touch screen. */
.ci-ctoolbar .ci-ctoolbar-chip:hover { background: #f3f3f3; }
@media (hover: hover) {
  .ci-ctoolbar .ci-ctoolbar-chip:hover { background: #ededed; box-shadow: inset 0 0 0 1px #545658; }
}
.ci-ctoolbar .ci-ctoolbar-chip:active { background: #ededed; box-shadow: inset 0 0 0 1px #545658; color: #545658; }
.ci-ctoolbar .ci-ctoolbar-chip:focus-visible { outline: none; }
/* Figma's ring: 2px #5749DD, 3px out, radius 8 inside (a rounded rect round the pill). */
.ci-ctoolbar .ci-ctoolbar-chip:focus-visible::after { border: 2px solid #5749dd; border-radius: 10px; content: ''; inset: -5px; pointer-events: none; position: absolute; }
@media (forced-colors: active) { .ci-ctoolbar .ci-ctoolbar-chip, .ci-ctoolbar .ci-ctoolbar-chip:focus-visible { outline: 1px solid ButtonText; outline-offset: -1px; } }
.ci-ctoolbar .ci-ctoolbar-meta { color: #545658; font-size: 14px; font-variant-numeric: tabular-nums; line-height: 20px; margin: 12px 0 0; }
/* The link carries its own 12px: a hidden link leaves the row 0 high, so no gap (R1.6). */
.ci-ctoolbar .ci-ctoolbar-meta-row { display: flex; margin: 0; }
/* link/text: 700 16/22 #0C866A; hover underlines, pressed #0D9070; a 44px hit area. */
.ci-ctoolbar .ci-ctoolbar-reset { background: none; border: 0; border-radius: 5px; color: #0c866a; cursor: pointer; font-family: inherit; font-size: 16px; font-weight: 700; line-height: 22px; margin: 12px 0 0; padding: 0; position: relative; }
.ci-ctoolbar .ci-ctoolbar-reset::before { content: ''; inset: -11px 0; position: absolute; }
.ci-ctoolbar .ci-ctoolbar-reset:active { color: #0d9070; text-decoration: underline; }
.ci-ctoolbar .ci-ctoolbar-reset:focus-visible { outline: 2px solid #5749dd; outline-offset: 3px; }
.ci-ctoolbar .ci-ctoolbar-reset[hidden] { display: none; }
/* feedback/empty-state: NoResults by default, Empty (`data-empty="none"`) on a list with no rows.
   Figma's pad 48 plus its 1px stroke inside the layout: 49 on every side, and the height hugs
   the words (the default copy measures 49+116+49 = 214), with no minimum (0425). */
.ci-ctoolbar div.ci-ctoolbar-empty { align-items: center; background: #ededed; border: 0; border-radius: 12px; display: flex; flex-direction: column; gap: 12px; margin: 16px 0 0; padding: 49px; text-align: center; }
.ci-ctoolbar div.ci-ctoolbar-empty[hidden] { display: none; }
.ci-ctoolbar .ci-ctoolbar-empty-title { color: #202224; font-size: 20px; font-weight: 700; line-height: 28px; margin: -6px 0 -8px; }
.ci-ctoolbar .ci-ctoolbar-none-title { color: #202224; display: none; font-size: 20px; font-weight: 700; line-height: 28px; margin: -6px 0 -8px; }
.ci-ctoolbar .ci-ctoolbar-empty-text { color: #545658; font-size: 14px; line-height: 20px; margin: -4px 0 -6px; max-width: 420px; }
.ci-ctoolbar .ci-ctoolbar-none-text { color: #545658; display: none; font-size: 14px; line-height: 20px; margin: -4px 0 -6px; max-width: 420px; }
.ci-ctoolbar-empty[data-empty="none"] > .ci-ctoolbar-empty-title { display: none; }
.ci-ctoolbar-empty[data-empty="none"] > .ci-ctoolbar-empty-text { display: none; }
.ci-ctoolbar-empty[data-empty="none"] > .ci-ctoolbar-none-title { display: block; }
.ci-ctoolbar-empty[data-empty="none"] > .ci-ctoolbar-none-text { display: block; }
.ci-ctoolbar-empty[data-empty="none"] > .ci-ctoolbar-clear { display: none; }
/* Empty's own button/primary (0479): the hub link, shown only on a list with no rows, and only where it has an address. */
.ci-ctoolbar .ci-ctoolbar-hub { display: none; }
.ci-ctoolbar .ci-ctoolbar-empty[data-empty="none"] > .ci-ctoolbar-hub[href]:not([href=""]) { display: inline-flex; }
/* button/primary with its arrow; the white ring sits 1px off the grey panel, the purple 5px out. */
.ci-ctoolbar .ci-ctoolbar-clear, .ci-ctoolbar .ci-ctoolbar-empty > .ci-ctoolbar-hub { align-items: center; background: #0c866a; border: 0; border-radius: 4px; color: #fff; cursor: pointer; flex: none; font-family: inherit; font-size: 18px; font-weight: 700; gap: 4px; height: 48px; justify-content: center; line-height: 24px; margin: 0; max-width: 100%; padding: 0 24px; text-decoration: none; }
.ci-ctoolbar .ci-ctoolbar-clear { display: inline-flex; }
.ci-ctoolbar .ci-ctoolbar-clear:hover, .ci-ctoolbar .ci-ctoolbar-hub:hover { background: #0d9070; }
.ci-ctoolbar .ci-ctoolbar-clear:active, .ci-ctoolbar .ci-ctoolbar-hub:active { background: #1b5547; }
.ci-ctoolbar .ci-ctoolbar-clear:focus-visible, .ci-ctoolbar .ci-ctoolbar-hub:focus-visible { box-shadow: 0 0 0 1px #ededed, 0 0 0 3px #fff; outline: 2px solid #5749dd; outline-offset: 5px; }
.ci-ctoolbar .ci-ctoolbar-clear-label, .ci-ctoolbar .ci-ctoolbar-hub-label { margin: -5px 0 -6px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ci-ctoolbar .ci-ctoolbar-clear-icon { display: block; flex: none; height: 12px; width: 12px; }
/* Its own rule: 0410 finds its version by the clear icon's rule text (PR #578 R1.8). */
.ci-ctoolbar .ci-ctoolbar-hub-icon { display: block; flex: none; height: 12px; width: 12px; }
.ci-ptoc * { box-sizing: border-box; }
.ci-ptoc { box-sizing: border-box; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color: #202224; margin: 0 auto; max-width: calc(1200px + 40px); padding: 20px; width: 100%; }
@media (max-width: 1199.98px) { .ci-ptoc { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-ptoc { padding-left: 20px; padding-right: 20px; } }
.ci-ptoc-box { border: 1px solid #d9d9d9; border-radius: 12px; display: flex; flex-direction: column; gap: 20px; padding: 19px; }
.ci-ptoc-title { color: #202224; display: block; font-size: 20px; font-weight: 700; line-height: 28px; margin: -6px 0 -8px; }
.ci-ptoc-list { list-style: none; margin: 0; padding: 0; }
.ci-ptoc-item { max-width: 100%; min-width: 0; }
.ci-ptoc-link { border-radius: 5px; color: #202224; display: block; font-size: 16px; font-weight: 400; line-height: 24px; min-height: 24px; overflow-wrap: anywhere; position: relative; text-decoration-line: none; text-decoration-skip-ink: none; text-decoration-thickness: 1px; text-underline-offset: 1.5px; }
@media (hover: hover) { .ci-ptoc-link:hover { color: #0c866a; text-decoration-line: underline; } }
.ci-ptoc-link:active { color: #0d9070; text-decoration-line: underline; }
.ci-ptoc-link:focus-visible { outline: 2px solid #5749dd; outline-offset: 3px; }
/* Box: 20 in (its 1px rule inside), the caption's caps 20 over a wrapping row of link/tag: the 16px chevron 8px
   before the label, a 40px target (the rows' pitch, so two never overlap). */
.ci-ptoc-box:not([data-look="plain"]) .ci-ptoc-list { display: flex; flex-wrap: wrap; gap: 16px 32px; }
.ci-ptoc-box:not([data-look="plain"]) .ci-ptoc-link { padding-left: 24px; }
.ci-ptoc-box:not([data-look="plain"]) .ci-ptoc-link::before { -webkit-print-color-adjust: exact; background-color: currentColor; content: ''; height: 16px; left: 0; -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M13.6724%204.22781C13.9761%203.92406%2014.4684%203.92406%2014.7722%204.22781C15.0759%204.53155%2015.0759%205.0239%2014.7722%205.32764L8.54992%2011.5499C8.24617%2011.8537%207.75383%2011.8537%207.45008%2011.5499L1.22781%205.32764C0.924064%205.0239%200.924064%204.53155%201.22781%204.22781C1.53155%203.92406%202.0239%203.92406%202.32764%204.22781L8%209.90016L13.6724%204.22781Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E") center / 16px 16px no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M13.6724%204.22781C13.9761%203.92406%2014.4684%203.92406%2014.7722%204.22781C15.0759%204.53155%2015.0759%205.0239%2014.7722%205.32764L8.54992%2011.5499C8.24617%2011.8537%207.75383%2011.8537%207.45008%2011.5499L1.22781%205.32764C0.924064%205.0239%200.924064%204.53155%201.22781%204.22781C1.53155%203.92406%202.0239%203.92406%202.32764%204.22781L8%209.90016L13.6724%204.22781Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E") center / 16px 16px no-repeat; position: absolute; print-color-adjust: exact; top: 4px; width: 16px; }
html:not([data-editor-canvas]) .ci-ptoc-box:not([data-look="plain"]) .ci-ptoc-link::after { content: ''; inset: -8px 0; position: absolute; }
@media (forced-colors: active) { .ci-ptoc-box:not([data-look="plain"]) .ci-ptoc-link::before { background-color: LinkText; forced-color-adjust: none; } }
/* Below the desktop the Box caption is 18/24 and a label 14/22 in its 24px row. */
@media (max-width: 1199.98px) {
  .ci-ptoc-title { font-size: 18px; line-height: 24px; margin: -5px 0 -6px; }
  .ci-ptoc-link { font-size: 14px; line-height: 22px; padding-bottom: 1px; padding-top: 1px; }
}
/* Plain reads down balanced columns; count-derived positions keep wrapped labels in their own track. */
.ci-ptoc-box[data-look="plain"] .ci-ptoc-list { display: grid; gap: 16px 32px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ci-ptoc-box[data-look="plain"] .ci-ptoc-item { grid-column: var(--ci-column-3, 1); grid-row: var(--ci-row-3, auto); }
.ci-ptoc-box[data-look="plain"] .ci-ptoc-link { padding-left: 24px; }
.ci-ptoc-box[data-look="plain"] .ci-ptoc-link::before { -webkit-print-color-adjust: exact; background-color: currentColor; content: ''; height: 16px; left: 0; -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M13.6724%204.22781C13.9761%203.92406%2014.4684%203.92406%2014.7722%204.22781C15.0759%204.53155%2015.0759%205.0239%2014.7722%205.32764L8.54992%2011.5499C8.24617%2011.8537%207.75383%2011.8537%207.45008%2011.5499L1.22781%205.32764C0.924064%205.0239%200.924064%204.53155%201.22781%204.22781C1.53155%203.92406%202.0239%203.92406%202.32764%204.22781L8%209.90016L13.6724%204.22781Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E") center / 16px 16px no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M13.6724%204.22781C13.9761%203.92406%2014.4684%203.92406%2014.7722%204.22781C15.0759%204.53155%2015.0759%205.0239%2014.7722%205.32764L8.54992%2011.5499C8.24617%2011.8537%207.75383%2011.8537%207.45008%2011.5499L1.22781%205.32764C0.924064%205.0239%200.924064%204.53155%201.22781%204.22781C1.53155%203.92406%202.0239%203.92406%202.32764%204.22781L8%209.90016L13.6724%204.22781Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E") center / 16px 16px no-repeat; position: absolute; print-color-adjust: exact; top: 4px; width: 16px; }
@media (forced-colors: active) { .ci-ptoc-box[data-look="plain"] .ci-ptoc-link::before { background-color: LinkText; forced-color-adjust: none; } }
@media (max-width: 1199.98px) {
  .ci-ptoc-box[data-look="plain"] .ci-ptoc-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ci-ptoc-box[data-look="plain"] .ci-ptoc-item { grid-column: var(--ci-column-2, 1); grid-row: var(--ci-row-2, auto); }
}
@media (max-width: 720px) {
  .ci-ptoc-box[data-look="plain"] .ci-ptoc-list { display: flex; flex-direction: column; }
}
.ci-alist * { box-sizing: border-box; }
.ci-alist { box-sizing: border-box; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color: #202224; margin: 0 auto; max-width: calc(1200px + 56px); padding: 20px 28px 0; width: 100%; }
@media (max-width: 1199.98px) { .ci-alist { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-alist { padding-left: 20px; padding-right: 20px; } }
.ci-alist-body ul, .ci-alist-body ol { font-size: 15px; line-height: 1.5; margin: 0; padding-left: 24px; }
.ci-alist-body ul[data-marker="none"] { list-style: none; padding-left: 0; }
.ci-alist-body li { margin: 0 0 8px; }
.ci-alist-body li:last-child { margin-bottom: 0; }
.ci-alist-body li p { margin: 0; }
/* An item's own picture (unit 0360): under its text, the column's width at most. */
.ci-alist-body .ci-list-figure { margin: 8px 0 0; }
.ci-alist-body .ci-list-figure picture { display: block; }
.ci-alist-body .ci-list-img { border-radius: 8px; display: block; height: auto; max-width: 100%; }
/* The writer's column count (settings.list.columns, unit 0366): down, then across.
   column-width makes the count a maximum, so a rail or a phone gets fewer. The
   indent moves onto each item so its marker stays inside its own column box. */
.ci-alist-body [data-columns] { column-gap: 32px; column-width: 14rem; padding-left: 0; }
.ci-alist-body [data-columns="2"] { column-count: 2; }
.ci-alist-body [data-columns="3"] { column-count: 3; }
.ci-alist-body [data-columns] > li { break-inside: avoid; overflow-wrap: anywhere; }
.ci-alist-body [data-columns]:not([data-marker="none"]) > li { margin-left: 24px; }
@media (max-width: 560px) {
  .ci-alist-body [data-columns] { column-count: 1; }
}
.ci-alist a[href] { color: #5749dd; text-decoration: none; }
.ci-alist a[href]:hover { text-decoration: underline; }
.ci-alist a[href]:focus-visible { border-radius: 5px; outline: 2px solid #5749dd; outline-offset: 3px; }
.ci-atable * { box-sizing: border-box; }
.ci-atable { box-sizing: border-box; color: #202224; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; margin: 0 auto; max-width: calc(1200px + 56px); padding: 20px 28px 0; }
.ci-atable-body { overflow-x: auto; }
.ci-atable table { border-collapse: collapse; width: 100%; }
.ci-atable td { border: 1px solid #d9d9d9; font-size: 15px; line-height: 1.5; padding: 10px 14px; text-align: left; vertical-align: top; }
.ci-atable th { background: #f3f2ff; border: 1px solid #d9d9d9; font-size: 15px; font-weight: 800; line-height: 1.5; padding: 10px 14px; text-align: left; vertical-align: top; }
.ci-atable th p, .ci-atable td p { margin: 0; }
.ci-atable th p + p, .ci-atable td p + p { margin-top: 8px; }
@media (max-width: 560px) { .ci-atable th, .ci-atable td { font-size: 14px; padding: 8px 10px; } }
@media (max-width: 1199.98px) { .ci-atable { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-atable { padding-left: 20px; padding-right: 20px; } }
.ci-atable a[href] { color: #5749dd; text-decoration: none; }
.ci-atable a[href]:hover { text-decoration: underline; }
.ci-atable a[href]:focus-visible { border-radius: 5px; outline: 2px solid #5749dd; outline-offset: 3px; }
.ci-aimg * { box-sizing: border-box; }
.ci-aimg { box-sizing: border-box; color: #202224; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; margin: 0 auto; max-width: calc(1200px + 56px); padding: 20px 28px 0; }
@media (max-width: 1199.98px) { .ci-aimg { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-aimg { padding-left: 20px; padding-right: 20px; } }
.ci-aimg-figure { margin: 0; }
.ci-aimg-img { border-radius: 12px; display: block; height: auto; margin: 0 auto; max-width: 100%; }
.ci-aimg-img[src=""], .ci-aimg-img:not([src]) { display: none; }
.ci-aimg-caption { color: #545658; font-size: 14px; line-height: 1.4; margin-top: 10px; }
/* Full width, v5 (DREAM-831): 850:350 at r12 on desktop, a 120px band below it, the photo cropped.
   :where() keeps it at (0,1,0), so a corner drag's scoped rule wins. */
.ci-aimg-figure[data-width="full"] { padding-bottom: 20px; }
.ci-aimg-figure[data-width="full"] picture { display: block; }
:where(.ci-aimg-figure[data-width="full"]) .ci-aimg-img { aspect-ratio: 850 / 350; border-radius: 12px; max-width: none; object-fit: cover; width: 100%; }
@media (max-width: 1199.98px) { :where(.ci-aimg-figure[data-width="full"]) .ci-aimg-img { aspect-ratio: auto; height: 120px; } }
.ci-gquote * { box-sizing: border-box; }
.ci-gquote { box-sizing: border-box; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color: #202224; margin: 0 auto; max-width: calc(1200px + 56px); padding: 20px 28px; width: 100%; container: gquote / inline-size; }
@media (max-width: 1199.98px) { .ci-gquote { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-gquote { padding-left: 20px; padding-right: 20px; } }
/* The design's 20px padding holds its inside 1px border. */
.ci-gquote-panel { align-items: center; background: #fff; border: 1px solid #d9d9d9; border-radius: 12px; display: flex; gap: 20px; padding: 19px; }
/* Avatar and name/role share one row at every breakpoint; the row hugs the
   name as drawn, capped so a long one cannot squeeze the quote out. */
.ci-gquote-person-row { align-items: center; display: flex; flex: none; gap: 8px; max-width: 50%; }
/* A block, not display: contents: the published <source>s would each take a gap. */
.ci-gquote-person-row picture { display: block; flex: none; }
.ci-gquote-avatar { border-radius: 50%; display: block; flex: none; height: 96px; object-fit: cover; width: 96px; }
/* Not the canvas's empty upload placeholder, whose yellow outline it would grey. */
.ci-gquote-avatar:not(.gjs-plh-image) { filter: grayscale(1); }
.ci-gquote-person { display: flex; flex-direction: column; gap: 8px; min-width: 0; overflow-wrap: break-word; }
.ci-gquote-name { color: #202224; font-size: 20px; font-weight: 700; line-height: 28px; margin: -6px 0 -8px; }
.ci-gquote-role { color: #202224; font-size: 12px; font-weight: 700; line-height: 24px; margin: -8px 0 -8px; }
.ci-gquote-text { flex: 1; font-size: 16px; font-style: italic; font-weight: 500; line-height: 24px; min-width: 0; }
.ci-gquote-text p { margin: 0 0 20px; }
.ci-gquote-text > :last-child { margin-bottom: 0; }
/* Layout=Mobile on tablets and phones (the v5 page frames); a narrow block (a side rail, 664px of
   section and under) gets the column at any screen width, not a crushed row. */
@container gquote (max-width: 664px) {
  .ci-gquote-panel { align-items: stretch; flex-direction: column; }
  /* The name drops under the photo only when under 100px would be left beside it. */
  .ci-gquote-person-row { flex-wrap: wrap; max-width: none; }
  .ci-gquote-person { flex: 1 1 100px; }
  /* The rule parts person from quote: an unresolved author ships no row (0400). */
  .ci-gquote-person-row + .ci-gquote-text { border-top: 1px solid #d9d9d9; padding-top: 20px; }
  /* No-break spaces: a mark never ends or opens a line on its own. */
  .ci-gquote-text > p:first-child::before { content: '\201C\00A0'; }
  .ci-gquote-text > p:last-child::after { content: '\00A0\201D'; }
}
@media (max-width: 1199.98px) {
  .ci-gquote-panel { align-items: stretch; flex-direction: column; }
  /* The name drops under the photo only when under 100px would be left beside it. */
  .ci-gquote-person-row { flex-wrap: wrap; max-width: none; }
  .ci-gquote-person { flex: 1 1 100px; }
  /* The rule parts person from quote: an unresolved author ships no row (0400). */
  .ci-gquote-person-row + .ci-gquote-text { border-top: 1px solid #d9d9d9; padding-top: 20px; }
  /* No-break spaces: a mark never ends or opens a line on its own. */
  .ci-gquote-text > p:first-child::before { content: '\201C\00A0'; }
  .ci-gquote-text > p:last-child::after { content: '\00A0\201D'; }

  /* The page frames' type (DREAM-831): heading/h4-trim 18/24, label/sm-bold 12/22, 500 italic 14/24. */
  .ci-gquote-name { font-size: 18px; line-height: 24px; margin: -5px 0 -6px; }
  .ci-gquote-role { line-height: 22px; margin: -7px 0 -7px; }
  .ci-gquote-text { font-size: 14px; }
}
.ci-gquote a[href] { color: #5749dd; text-decoration: none; }
.ci-gquote a[href]:hover { text-decoration: underline; }
.ci-gquote a[href]:focus-visible { border-radius: 5px; outline: 2px solid #5749dd; outline-offset: 3px; }
.ci-faq-section * { box-sizing: border-box; }
.ci-faq-section { box-sizing: border-box; color: #202224; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; margin: 0 auto; max-width: calc(1200px + 56px); padding: 20px 28px; }
@media (max-width: 1199.98px) { .ci-faq-section { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-faq-section { padding-left: 20px; padding-right: 20px; } }

.ci-faq-head { align-items: center; display: flex; gap: 16px; margin: 0 0 24px; }
.ci-faq-head:empty { display: none; }
.ci-faq-head::before { align-self: stretch; background: #0c866a; content: ""; flex: none; min-height: 45px; width: 5px; }
.ci-faq-head h2 { font-size: 28px; letter-spacing: -.035em; margin: 0; }
.ci-faq-head-link { color: #202224; font-weight: 800; margin-left: auto; text-decoration: none; white-space: nowrap; }
.ci-faq-head-link::after { color: #0c866a; content: " →"; font-weight: 800; margin-left: 10px; }
/* The title is a flex item: without min-width 0 a long word in it widens the page too (0448). */
.ci-faq-head h2 { min-width: 0; overflow-wrap: break-word; }
/* minmax(0, ...): an auto track grows to a question's longest word and the page scrolls sideways (0448). */
.ci-faq-list { display: grid; grid-template-columns: minmax(0, 1fr); }
/* The ring goes 3px round the row and its divider (an absolute box stands on the padding box, inside that border). */
.ci-faq-item { border-bottom: 1px solid #d9d9d9; position: relative; }
/* The 20px above the divider belongs to the summary when closed, to the answer when open: all of a row toggles. */
.ci-faq-question { align-items: center; cursor: pointer; display: flex; gap: 20px; list-style: none; padding: 16px 20px 36px; }
.ci-faq-item[open] > .ci-faq-question { padding-bottom: 20px; }
.ci-faq-question::-webkit-details-marker { display: none; }
/* Only where the ring can draw: without :has() the browser keeps its own outline. */
@supports selector(:has(*)) { .ci-faq-question:focus-visible { outline: none; } }
.ci-faq-item:has(> .ci-faq-question:focus-visible)::after { border-radius: 8px; content: ''; inset: -3px -3px -4px; outline: 2px solid #5749dd; pointer-events: none; position: absolute; }
/* heading/h4-trim on the design's h3 (and h4, the same 20px) at every width; another level keeps its own size, untrimmed. */
.ci-faq-question-text { color: #202224; flex: 1; font-size: 20px; font-weight: 700; line-height: 28px; margin: -6px 0 -8px; min-width: 0; overflow-wrap: break-word; text-decoration-skip-ink: none; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.ci-faq-question-text:not(h3):not(h4) { line-height: 1.25; margin: 0; }
h1.ci-faq-question-text { font-size: 32px; line-height: 36px; }
h2.ci-faq-question-text { font-size: 28px; }
h4.ci-faq-question-text { font-size: 20px; }
h5.ci-faq-question-text, h6.ci-faq-question-text { font-size: 18px; }
@media (hover: hover) { .ci-faq-question:hover .ci-faq-question-text { text-decoration-line: underline; } }
.ci-faq-question:active .ci-faq-question-text { text-decoration-line: underline; }
.ci-faq-chevron { color: #545658; display: block; flex: none; height: 24px; width: 24px; }
.ci-faq-chevron-glyph { display: block; height: 100%; width: 100%; }
.ci-faq-item[open] .ci-faq-chevron { transform: rotate(180deg); }
@media (prefers-reduced-motion: no-preference) { .ci-faq-chevron { transition: transform .15s ease; } }
/* body/md-trim: the trim sits on the container, so any number of paragraphs keeps it. */
.ci-faq-answer { color: #202224; font-size: 16px; font-weight: 400; line-height: 24px; margin: -6px 0 -7px; overflow-wrap: break-word; padding: 0 20px 36px; }
.ci-faq-answer > * { margin: 0 0 20px; }
.ci-faq-answer > :last-child { margin-bottom: 0; }
/* h4 is left to the step below: the canvas draws a 560 query after a 1199.98 one, whatever the source order. */
@media (max-width: 560px) { h1.ci-faq-question-text { font-size: 28px; line-height: 32px; } h2.ci-faq-question-text { font-size: 24px; } h5.ci-faq-question-text, h6.ci-faq-question-text { font-size: 17px; } }
/* Below the desktop v5 steps the row down (DREAM-820): the question 18/24, the answer 14/22, both trimmed to their caps. */
@media (max-width: 1199.98px) {
  h3.ci-faq-question-text, h4.ci-faq-question-text { font-size: 18px; line-height: 24px; margin: -5px 0 -6px; }
  .ci-faq-answer { font-size: 14px; line-height: 22px; margin: -5px 0 -7px; }
}
.ci-faq-answer a[href] { color: #5749dd; text-decoration: none; }
.ci-faq-answer a[href]:hover { text-decoration: underline; }
.ci-faq-answer a[href]:focus-visible { border-radius: 5px; outline: 2px solid #5749dd; outline-offset: 3px; }
.ci-abio * { box-sizing: border-box; }
.ci-abio { box-sizing: border-box; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color: #202224; margin: 0 auto; max-width: calc(1200px + 40px); padding: 20px; width: 100%; }
@media (max-width: 1199.98px) { .ci-abio { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-abio { padding-left: 20px; padding-right: 20px; } }
.ci-abio-card { align-items: center; background: #f3f3f3; border-radius: 12px; display: flex; gap: 20px; padding: 16px; }
.ci-abio-photo { background: #d9d9d9; border-radius: 50%; display: flex; flex: none; overflow: hidden; }
.ci-abio-photo-img { display: block; height: 96px; object-fit: cover; width: 96px; }
.ci-abio-photo-img[src=""], .ci-abio-photo-img:not([src]) { opacity: 0; }
.ci-abio-body { display: flex; flex: 1; flex-direction: column; gap: 12px; justify-content: center; min-width: 0; overflow-wrap: break-word; padding: 0; }
/* The name, title and bio trim on Chromium's whole pixels (capTrimCuts) at every width; the separator 8 under the name's baseline (PR #590 R2.3). */
.ci-abio-name { align-self: flex-start; border: 0; color: #202224; font-size: 16px; font-weight: 700; line-height: 22px; margin: -5px 0 0; max-width: 100%; padding: 0; }
.ci-abio-name::after { background: #0c866a; content: ''; display: block; height: 1.5px; margin-top: 2px; }
.ci-abio-name-link { border-radius: 4px; color: inherit; text-decoration: none; }
.ci-abio-name-link:hover { color: #1b5547; }
.ci-abio-name-link:focus-visible { outline: 2px solid #5749dd; outline-offset: 0; }
.ci-abio-title, .ci-abio-text { font-size: 14px; line-height: 20px; margin: -4px 0 -6px; }
.ci-abio-title { color: #545658; }
.ci-abio-text { color: #202224; }
.ci-abio-text > * { margin: 0; }
.ci-abio-text > * + * { margin-top: 15px; }
/* Every v5 tablet and phone frame draws the byline's Compact layout (0498): the separator purple, the name 700 14/22,
   the title and bio 14/18 (PR #590 R1.5). */
@media (max-width: 1199.98px) {
  .ci-abio-name { font-size: 14px; margin: -5px 0 0; }
  .ci-abio-name::after { background: #5749dd; margin-top: 1px; }
  .ci-abio-title, .ci-abio-text { line-height: 18px; margin: -3px 0 -5px; }
}
.ci-spn * { box-sizing: border-box; }
.ci-spn { box-sizing: border-box; color: #202224; font-family: 'Nunito Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; margin: 0 auto; max-width: calc(1200px + 56px); width: 100%; }
/* No specificity: a rail's own inset (page-columns) wins in whichever order the two load. */
/* 32 under the crumbs as drawn; 4 below, the next block's own 20px top and line box making the drawn 32 to the H1. */
:where(.ci-spn) { padding: 32px 28px 4px; }
@media (max-width: 1199.98px) { .ci-spn { padding-left: 24px; padding-right: 24px; } }
@media (max-width: 560px) { .ci-spn { padding-left: 20px; padding-right: 20px; } }
.ci-spn-box { background: #fff; border: 1px solid #d9d9d9; border-radius: 12px; display: block; overflow: clip; }
.ci-spn-box:has(> .ci-spn-head:focus-visible) { outline: 2px solid #5749dd; outline-offset: 1px; }
/* The 49px row: the box's 1px border is part of it, so 47 inside and 15 to the label. */
.ci-spn-head { align-items: center; cursor: pointer; display: flex; gap: 16px; justify-content: space-between; list-style: none; min-height: 47px; padding: 0 15px; }
.ci-spn-head::-webkit-details-marker { display: none; }
.ci-spn-head:focus-visible { outline: none; }
@media (hover: hover) { .ci-spn-head:hover { background: #ededed; } }
.ci-spn-head:active { background: #ededed; }
.ci-spn-box:has(> .ci-spn-head:active) { border-color: #0c866a; }
.ci-spn-label { color: #202224; font-size: 20px; font-weight: 700; line-height: 28px; margin: -6px 0 -8px; min-width: 0; overflow-wrap: anywhere; }
.ci-spn-title { color: #202224; font-size: 20px; font-weight: 700; line-height: 28px; margin: -6px 0 -8px; min-width: 0; overflow-wrap: anywhere; display: none; }
.ci-spn-chevron { color: #202224; display: block; flex: none; height: 20px; width: 20px; }
.ci-spn-chevron-glyph { display: block; height: 100%; width: 100%; }
.ci-spn-box[open] .ci-spn-chevron { transform: rotate(180deg); }
.ci-spn-list { align-items: flex-start; display: flex; flex-direction: column; gap: 12px; list-style: none; margin: 0; padding: 0 15px 15px; }
.ci-spn-item { margin: 0; max-width: 100%; padding: 0; }
.ci-spn-link { border-radius: 5px; color: #0c866a; display: inline-block; font-size: 16px; font-weight: 400; line-height: 24px; max-width: 100%; overflow-wrap: anywhere; padding-left: 20px; position: relative; text-decoration: none; vertical-align: top; }
.ci-spn-link::before { background-color: #0c866a; content: ''; height: 12px; left: 0; -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M4.22781%201.22781C4.53155%200.924064%205.0239%200.924064%205.32764%201.22781L11.5499%207.45008C11.8537%207.75383%2011.8537%208.24617%2011.5499%208.54992L5.32764%2014.7722C5.0239%2015.0759%204.53155%2015.0759%204.22781%2014.7722C3.92406%2014.4684%203.92406%2013.9761%204.22781%2013.6724L9.90016%208L4.22781%202.32764C3.92406%202.0239%203.92406%201.53155%204.22781%201.22781Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E") center / 12px 12px no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M4.22781%201.22781C4.53155%200.924064%205.0239%200.924064%205.32764%201.22781L11.5499%207.45008C11.8537%207.75383%2011.8537%208.24617%2011.5499%208.54992L5.32764%2014.7722C5.0239%2015.0759%204.53155%2015.0759%204.22781%2014.7722C3.92406%2014.4684%203.92406%2013.9761%204.22781%2013.6724L9.90016%208L4.22781%202.32764C3.92406%202.0239%203.92406%201.53155%204.22781%201.22781Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E") center / 12px 12px no-repeat; position: absolute; top: 6px; width: 12px; }
html:not([data-editor-canvas]) .ci-spn-link::after { content: ''; inset: -10px 0; position: absolute; }
@media (hover: hover) { .ci-spn-link:hover { color: #000; } }
.ci-spn-link:active { color: #0c866a; }
.ci-spn-link:focus-visible { outline: 2px solid #5749dd; outline-offset: 3px; }
html:not([data-editor-canvas]) .ci-spn-link[aria-current="page"] { color: #202224; cursor: default; font-weight: 700; padding-left: 14px; }
html:not([data-editor-canvas]) .ci-spn-link[aria-current="page"]::before { border-radius: 2px; height: 16px; -webkit-mask: none; mask: none; top: 4px; width: 3px; }
@media (forced-colors: active) { .ci-spn-link::before { background-color: LinkText; forced-color-adjust: none; } html:not([data-editor-canvas]) .ci-spn-link[aria-current="page"]::before { background-color: CanvasText; } }
/* link/quick Type=Current as TEXT, not a link: a 3x16 bar 11px before 700 16/22, the bar the text's full height. */
.ci-spn-current { color: #202224; display: inline-block; font-size: 16px; font-weight: 700; line-height: 22px; max-width: 100%; overflow-wrap: anywhere; padding: 1px 0 1px 14px; position: relative; vertical-align: top; }
.ci-spn-current::before { background: #0c866a; border-radius: 2px; bottom: 4px; content: ''; left: 0; position: absolute; top: 4px; width: 3px; }
.ci-spn-empty { color: #545658; font-size: 14px; line-height: 20px; }
@media (forced-colors: active) { .ci-spn-current::before { background: CanvasText; forced-color-adjust: none; } }
/* v5 tablet and phone frames, folded and open (DREAM-832): heading/h4-trim 18/24, links 14/24, Current 700 14/22. */
@media (max-width: 1199.98px) {
  .ci-spn-label { font-size: 18px; line-height: 24px; margin: -5px 0 -6px; }
  .ci-spn-link, .ci-spn-current { font-size: 14px; }
}
/* Beside the body: the rail's inset on the page side, none on the far side; the open box only where the
   browser can force <details> open (seeds README, 0481): elsewhere the row stays, and still opens. */
@media (min-width: 1281px) {
  :where(.ci-page-columns:not(.ci-page-columns-both) > .ci-page-aside) > .ci-spn { max-width: none; padding-bottom: 0; }
  :where(.ci-page-columns:not(.ci-page-columns-both) > .ci-page-aside-left) > .ci-spn { padding-right: 0; }
  :where(.ci-page-columns:not(.ci-page-columns-both) > .ci-page-aside-right) > .ci-spn { padding-left: 0; }
}
@media (min-width: 1281px) {
  @supports selector(::details-content) {
    :where(.ci-page-columns:not(.ci-page-columns-both) > .ci-page-aside) > .ci-spn .ci-spn-box { background: none; display: flex; flex-direction: column; gap: 16px; padding: 19px 15px; }
    :where(.ci-page-columns:not(.ci-page-columns-both) > .ci-page-aside) > .ci-spn .ci-spn-box::details-content { content-visibility: visible; display: contents; }
    :where(.ci-page-columns:not(.ci-page-columns-both) > .ci-page-aside) > .ci-spn .ci-spn-head { display: none; }
    :where(.ci-page-columns:not(.ci-page-columns-both) > .ci-page-aside) > .ci-spn .ci-spn-title { display: block; }
    :where(.ci-page-columns:not(.ci-page-columns-both) > .ci-page-aside) > .ci-spn .ci-spn-list { padding: 0; }
  }
}
@media (min-width: 1437px) {
  :where(.ci-page-columns-both > .ci-page-aside) > .ci-spn { max-width: none; padding-bottom: 0; }
  :where(.ci-page-columns-both > .ci-page-aside-left) > .ci-spn { padding-right: 0; }
  :where(.ci-page-columns-both > .ci-page-aside-right) > .ci-spn { padding-left: 0; }
}
@media (min-width: 1437px) {
  @supports selector(::details-content) {
    :where(.ci-page-columns-both > .ci-page-aside) > .ci-spn .ci-spn-box { background: none; display: flex; flex-direction: column; gap: 16px; padding: 19px 15px; }
    :where(.ci-page-columns-both > .ci-page-aside) > .ci-spn .ci-spn-box::details-content { content-visibility: visible; display: contents; }
    :where(.ci-page-columns-both > .ci-page-aside) > .ci-spn .ci-spn-head { display: none; }
    :where(.ci-page-columns-both > .ci-page-aside) > .ci-spn .ci-spn-title { display: block; }
    :where(.ci-page-columns-both > .ci-page-aside) > .ci-spn .ci-spn-list { padding: 0; }
  }
}
.ci-page-columns { align-items: flex-start; display: flex; margin: 0 auto; max-width: calc(1200px + 56px); }
.ci-page-main { flex: 1 1 auto; min-width: 0; }
.ci-page-aside { box-sizing: border-box; flex: 0 0 358px; min-width: 0; }
.ci-page-columns-both .ci-page-aside { flex-basis: 236px; }
/* The pair switches where the page's OWN layout stacks, so neither copy is the
   one on screen while the body is stacked: one shared 1181 threshold left a band
   showing the rail's desktop copy full-width above the body — the lead, PR #169.
   Each rule carries its layout in the selector: a "display: none !important" has
   no un-hiding half. */
@media (min-width: 1281px) {
  .ci-page-columns:not(.ci-page-columns-both) .ci-mobile-only { display: none !important; }
}
@media (min-width: 1437px) {
  .ci-page-columns-both .ci-mobile-only { display: none !important; }
}
@media (min-width: 1281px) {
  .ci-page-aside > * { padding-top: 20px; }
  .ci-page-aside-left > * { padding-left: 28px; }
  .ci-page-aside-right > * { padding-right: 28px; }
  /* Beside ONE rail the column sets its blocks' rail-side gutter to the design's gap, as the rail insets its own
     child (KNOWLEDGE.md, "Side rails"): a right rail follows the main, a left one leads it. */
  .ci-page-columns:not(.ci-page-columns-both) > .ci-page-main:not(:last-child) > .ci-page-article > * { padding-right: 20px; }
  .ci-page-columns:not(.ci-page-columns-both) > .ci-page-main:not(:first-child) > .ci-page-article > * { padding-left: 20px; }
}
@media (max-width: 1436px) {
  .ci-page-columns-both { flex-direction: column; }
  .ci-page-columns-both .ci-page-main { width: 100%; }
  .ci-page-columns-both .ci-page-aside { flex: 0 0 auto; order: -1; width: 100%; }
}
@media (max-width: 1280px) {
  .ci-page-columns { flex-direction: column; }
  .ci-page-main { width: 100%; }
  .ci-page-aside { flex: 0 0 auto; order: -1; width: 100%; }
}
@media (max-width: 1280px) {
  .ci-page-columns:not(.ci-page-columns-both) .ci-desktop-only { display: none !important; }
}
@media (max-width: 1436px) {
  .ci-page-columns-both .ci-desktop-only { display: none !important; }
}
@media (min-width: 1200px) {
  .ci-page-columns:not(.ci-page-columns-both):has(> .ci-page-aside .ci-facets) { flex-direction: row; }
  .ci-page-columns:not(.ci-page-columns-both):has(> .ci-page-aside .ci-facets) > .ci-page-aside { flex: 0 0 328px; order: 0; width: auto; }
  .ci-page-columns:not(.ci-page-columns-both):has(> .ci-page-aside .ci-facets) > .ci-page-aside > * { padding-top: 20px; }
  .ci-page-columns:not(.ci-page-columns-both):has(> .ci-page-aside .ci-facets) > .ci-page-aside-left > * { padding-left: 28px; }
  .ci-page-columns:not(.ci-page-columns-both):has(> .ci-page-aside .ci-facets) > .ci-page-aside-right > * { padding-right: 28px; }
}
.pb-03d10e7d-7ba1-41b5-9c6b-b44bc0c4e5ef .ci-aimg-img{width:720px;}