/* A guided reading surface. The unenhanced document remains fully readable. */
.interactive-guide .intro{padding:28px 0 24px;gap:24px}.interactive-guide .intro h1{font-size:clamp(38px,4.5vw,62px);letter-spacing:-1px;line-height:1.08;margin:0 0 10px}.interactive-guide .intro .eyebrow,.interactive-guide .intro-aside{display:none}.interactive-guide .lede{font-size:17px}.interactive-guide .guide-switch{padding-top:20px}.interactive-guide .site-header{height:76px}.interactive-guide .site-header nav a{font-size:14px}.interactive-guide .definition-hint{font-size:14px;margin-block:10px 0}.journey-nav{display:flex;gap:6px;padding:6px;background:#e9eee5;border-radius:14px;margin-bottom:14px}.journey-tab{flex:1;text-align:center;padding:12px 15px;text-decoration:none;border-radius:9px;font-size:15px;font-weight:800}.journey-tab[aria-current]{background:var(--green);color:var(--acid);box-shadow:0 3px 7px #173f3914}.journey-tab:hover{background:#dce5d2}.journey-tab[aria-current]:hover{background:var(--green)}.interactive-guide .journey-panel{padding-top:24px}.interactive-guide .section-heading{margin-bottom:20px}.interactive-guide .section-heading h2{font-size:30px}.interactive-guide .section-heading .eyebrow,.interactive-guide .section-note{display:none}.interactive-guide .step{width:38px;height:38px;font-size:18px}.interactive-guide .flow-board{display:block;max-width:850px;margin-inline:auto}.interactive-guide .flow-input{padding:28px 34px}.flow-progress{font-size:14px;font-weight:800;color:var(--green);margin-bottom:18px}.flow-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.journey-button,.journey-next{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border:1px solid var(--green);background:var(--green);color:var(--acid);font-weight:800;font-size:16px;border-radius:9px;cursor:pointer;text-decoration:none}.journey-button:hover,.journey-next:hover{background:#265b51}.journey-button.secondary{background:transparent;color:var(--green)}.journey-button:disabled{opacity:.4;cursor:default}.journey-next{margin-top:28px}.text-button{padding:12px 0;background:none;border:0;text-decoration:underline;text-underline-offset:4px;font-size:15px;color:var(--green);cursor:pointer}.journey-note{font-size:14px;color:var(--muted);margin-bottom:16px}.inference-question h3{font-family:var(--serif);font-weight:400;font-size:32px;line-height:1.2;margin-bottom:14px}.inference-question>p{font-size:18px;max-width:630px}.interactive-guide .route-result{min-height:0;padding:28px 34px}.route-result>.secondary{align-self:flex-start;border-color:#8ba39b;color:var(--acid);font-size:14px;padding:8px 13px;min-height:40px;margin-bottom:20px}.interactive-guide .route-result h3{margin:20px 0;font-size:42px}.interactive-guide .route-symbol{display:none}.reading-detail{border-bottom:1px solid var(--line);padding:0}.reading-detail summary{cursor:pointer;font-weight:800;list-style:none;display:flex;align-items:center;gap:15px;padding:18px 0;font-size:17px}.reading-detail summary::after{content:'+';margin-left:auto;font-size:24px;font-weight:500;line-height:1}.reading-detail[open]>summary::after{content:'−'}.reading-detail>article{border:0!important;padding:0 0 20px!important;display:block!important;background:transparent!important}.reading-detail>article p{font-size:16px}.scope-detail{border-top:1px solid var(--line)}.scope-detail summary{font-size:14px;padding:11px 0;color:var(--muted)}.scope-detail .scope{width:100%;margin-bottom:14px}.interactive-guide .standards{border-top:1px solid var(--line)}.interactive-guide .standards article>div{width:100%}.interactive-guide .ask-layout{gap:40px}.interactive-guide .lifecycle{display:block;border:0;border-top:1px solid var(--line);border-radius:0}.interactive-guide .lifecycle .reading-detail{padding-inline:20px;background:#fffefa}.interactive-guide .lifecycle .reading-detail[open]{background:var(--peach)}.interactive-guide .source-grid{display:block}.interactive-guide .source-grid .reading-detail article>span{display:none}.interactive-guide .sources-heading{padding-top:0;border-top:0}.interactive-guide .sources-heading>p{display:none}.interactive-guide .sources-heading h2{font-size:30px}.interactive-guide .sources-heading .eyebrow{display:none}.interactive-guide .site-footer{margin-top:40px}.interactive-guide .flow-footnotes{padding:0 0 15px}.interactive-guide .pattern-gallery{gap:20px}.pattern-picker{display:flex;gap:8px;flex-wrap:wrap}.pattern-pick{border:1px solid var(--line);border-radius:24px;background:transparent;padding:9px 15px;font-size:14px;color:var(--muted);cursor:pointer;text-transform:capitalize}.pattern-pick[aria-pressed=true]{background:var(--purple);color:white;border-color:var(--purple)}.interactive-guide .pattern-heading{padding:20px 28px}.interactive-guide .pattern-heading h2{font-size:28px}.interactive-guide .pattern-heading .eyebrow{font-size:12px}.interactive-guide .pattern-pair{grid-template-columns:1fr}.interactive-guide .pattern-pair.revealed{grid-template-columns:1fr 1fr}.interactive-guide .pattern-half{padding:24px 28px}.interactive-guide .pattern-pair:not(.revealed) .mock-screen{max-width:580px;margin:auto;min-height:0}.interactive-guide .mock-screen{min-height:240px}.pattern-reveal-controls{padding:20px 28px;display:flex;gap:22px;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}.pattern-reveal-controls p{margin:0;font-size:16px}.pattern-reveal-controls button{flex-shrink:0}.pattern-card>.reading-detail{padding:0 28px}.pattern-card>.reading-detail .pattern-authority{padding:0 0 22px;font-size:15px}.pattern-pager{display:flex;gap:16px;justify-content:space-between;align-items:center}.pattern-progress{margin:0;font-size:14px;color:var(--muted)}.interactive-guide .pattern-card{box-shadow:0 6px 0 #e6eadf}.interactive-guide .pattern-half>p:last-child{margin-bottom:0}.interactive-guide .comparison-label{font-size:12px}.interactive-guide .pattern-authority strong{font-size:12px}.interactive-guide .pattern-gallery>.journey-next{justify-self:start}.interactive-guide .source-links{flex-wrap:wrap}
@media(max-width:700px){.journey-nav{display:grid;grid-template-columns:1fr 1fr;gap:4px}.journey-tab{font-size:14px;padding:10px 8px}.interactive-guide .intro{padding-block:23px 20px}.interactive-guide .intro h1{font-size:40px}.interactive-guide .guide-switch a{font-size:14px;padding:8px 10px}.interactive-guide .guide-switch a span{display:none}.interactive-guide .section-heading h2{font-size:26px}.interactive-guide .flow-input,.interactive-guide .route-result{padding:23px}.interactive-guide .route-result h3{font-size:36px}.interactive-guide .ask-layout{gap:25px}.pattern-reveal-controls{display:block;padding:22px}.pattern-reveal-controls p{margin-bottom:14px}.interactive-guide .pattern-pair.revealed{grid-template-columns:1fr}.interactive-guide .pattern-heading{padding:22px;gap:12px}.interactive-guide .pattern-heading h2{font-size:26px}.interactive-guide .pattern-half{padding:22px}.pattern-picker{gap:6px}.pattern-pick{font-size:14px;padding:8px 11px}.pattern-pager{flex-wrap:wrap}.pattern-pager button{font-size:14px;padding:10px 12px}.pattern-progress{order:3;width:100%;text-align:center}.interactive-guide .site-header nav a{display:none}.interactive-guide .site-header nav a:last-child{display:block}.interactive-guide .lifecycle .reading-detail{padding-inline:16px}.scope-detail .scope p{font-size:15px}}
@media print{.interactive-guide .journey-panel[hidden],.interactive-guide .pattern-card[hidden],.interactive-guide .pattern-half[hidden],.interactive-guide .flow-input[hidden],.interactive-guide .route-result[hidden],.interactive-guide .pattern-authority,.interactive-guide .pattern-half>p[hidden]{display:block!important}.journey-nav,.journey-next,.flow-actions,.flow-progress,.pattern-picker,.pattern-pager,.pattern-reveal-controls,.journey-button,.text-button{display:none!important}.reading-detail>article,.reading-detail>div{display:block!important}.interactive-guide .intro h1{font-size:36pt}.interactive-guide .pattern-pair{display:block}.interactive-guide .intro{padding:0}.interactive-guide .journey-panel{break-before:page}}
/* Put the decision itself in the first viewport. */
.interactive-guide .site-header{height:64px}.interactive-guide .site-header nav{display:none}.interactive-guide .intro{padding:18px 0}.interactive-guide .intro h1{font-size:42px;margin-bottom:6px}.interactive-guide .guide-switch{padding-top:14px}.interactive-guide #flow>.section-heading{display:none}.interactive-guide .journey-panel{padding-top:8px}.interactive-guide .flow-input{padding:22px 28px}.interactive-guide .flow-progress{margin-bottom:12px}.interactive-guide .type-option{padding:14px}.interactive-guide .data-types legend{margin-bottom:14px}.interactive-guide .flow-input>.inline-source{margin-top:14px}.interactive-guide .journey-note{margin-top:18px;margin-bottom:0}.interactive-guide .scope-detail{margin-top:26px}.scope-detail .definition-hint{width:100%;margin-bottom:18px}.interactive-guide .flow-board{margin-inline:0;max-width:100%}.interactive-guide .data-types{max-width:800px}.interactive-guide .flow-input>.inline-source{max-width:800px}.interactive-guide .inference-question{max-width:800px}
@media(min-width:900px){.interactive-guide .data-types{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:none}.interactive-guide .data-types legend{float:left;grid-column:1/-1;width:100%}.interactive-guide .type-option{margin-bottom:0}.interactive-guide .data-types:has(input[name=ct-kind]){grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.interactive-guide .intro h1{font-size:36px}.interactive-guide .flow-input{padding:22px}.interactive-guide .type-option{padding:12px}.interactive-guide .guide-switch a{font-size:13px}.interactive-guide .journey-note{font-size:13px}}

/* Activity choices remain readable on narrow screens and at larger text sizes. */
.site-view{display:flow-root}.navigation-status{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:1000;max-width:calc(100% - 32px);padding:12px 18px;background:var(--green);color:white;border-radius:10px;box-shadow:0 4px 18px #0002;font-size:16px}.interactive-guide .flow-progress{display:none}.interactive-guide .flow-input:has(.inference-question) .flow-progress{display:block}.interactive-guide .data-types legend{font-size:20px}.interactive-guide .type-option small{font-size:14px;line-height:1.5}.interactive-guide .type-option strong{font-size:16px}.interactive-guide .lede{max-width:700px}.interactive-guide .journey-tab{line-height:1.4}
@media(min-width:900px){.interactive-guide .data-types,.interactive-guide .data-types:has(input[name=ct-kind]){grid-template-columns:repeat(2,minmax(0,1fr))}.interactive-guide .type-option:last-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Activity → context → one answer. Each state keeps its own selections. */
.activity-step>.journey-button{margin-top:22px}.interactive-guide .data-types .type-option:last-child{grid-column:auto}.context-step{background:var(--paper,#fffefa)}.step-caption{font-size:12px;font-weight:800;letter-spacing:1px;color:var(--muted);margin-bottom:8px}.context-title{font-family:var(--serif);font-size:30px;font-weight:400;margin:0 0 24px}.context-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 26px}.context-field>label{display:block;font-weight:800;font-size:16px;margin-bottom:8px}.context-field select{font:inherit;font-size:16px;width:100%;min-height:48px;padding:10px;border:1px solid #718a80;border-radius:8px;color:var(--green);background:white}.field-help{font-size:13px;color:var(--muted);margin:7px 0 0;line-height:1.45}.data-explainer{margin-top:22px;max-width:780px;font-size:15px}.data-explainer summary,.result-detail summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.data-explainer p{margin-top:12px}.inference-checks{border:0;padding:0;margin:24px 0 0;max-width:760px}.inference-checks legend{font-weight:800;margin-bottom:12px}.inference-checks label{display:flex;gap:12px;align-items:start;margin-bottom:14px;font-size:16px}.inference-checks input{width:20px;height:20px;flex-shrink:0;margin-top:3px;accent-color:var(--green)}.result-detail{margin:16px 0;font-size:16px;max-width:820px}.result-detail p{font-size:16px;line-height:1.6}.route-result .scenario-summary{font-size:13px;margin:18px 0 0;opacity:.8;max-width:820px}.route-result[data-outcome=prohibited]{background:#60372f}.route-result[data-outcome=optout]{background:#404366}.route-result[data-outcome=ordinary],.route-result[data-outcome=exception]{background:#244e46}.interactive-guide .route-result h3{max-width:880px}.context-step :focus-visible,.activity-step :focus-visible{outline:3px solid #7954a0;outline-offset:3px}
@media(max-width:700px){.context-fields{grid-template-columns:1fr;gap:18px}.context-title{font-size:27px}.data-explainer{font-size:14px}.interactive-guide .route-result h3{font-size:32px}}
.more-activities{grid-column:1/-1;border-top:1px solid var(--line);padding-top:15px;margin-top:5px}.more-activities>summary{font-size:15px;font-weight:800;cursor:pointer;padding:4px 0}.more-activities[open]>summary{margin-bottom:14px}.more-activities .type-option{margin-bottom:10px!important}.interactive-guide .route-result>.result-copy{max-width:780px}
.consent-overview{border:1px solid var(--line);border-radius:12px;padding:14px 20px;margin-bottom:18px;background:#f0f2e9}.consent-overview>summary{font-weight:800;font-size:15px;cursor:pointer}.consent-overview ol{padding-left:22px;margin:18px 0 12px;max-width:840px}.consent-overview li{padding:0 0 12px 5px;line-height:1.6}.consent-overview p{max-width:840px;font-size:15px}.route-result>.result-scope{font-size:14px;line-height:1.55;max-width:780px;margin:14px 0 22px;color:#f1f2e6}
@media print{.context-step,.activity-step,.navigation-status{display:none!important}.route-result:empty{display:none!important}.consent-overview{break-inside:avoid}.consent-overview li{padding-bottom:6px}.consent-overview a{color:inherit}.reading-detail summary::after{content:none}.site-view .route-result{break-inside:avoid}.site-view .route-result .result-scope{color:#173f39}}
/* Flag-inspired tints distinguish jurisdictions without relying on color alone. */
body[data-jurisdiction=CO]{--paper:#fffaf0;--ink:#263247;--muted:#665d49;--green:#223b62;--acid:#fff;--mint:#faf4e6;--line:#e7deca;--orange:#a62e3d}
body[data-jurisdiction=CT]{--paper:#e7effa;--ink:#20314e;--muted:#4d607c;--green:#17396f;--acid:#fff;--mint:#e9f0fa;--line:#bccde3;--orange:#2c60a4;--peach:#edf2fa}
body[data-jurisdiction=CO] .journey-nav{background:#f1ead8}body[data-jurisdiction=CT] .journey-nav{background:#cad9ef}
body[data-jurisdiction=CO] .journey-tab:hover{background:#e9dec6}body[data-jurisdiction=CT] .journey-tab:hover{background:#b8cde9}
body[data-jurisdiction] .journey-tab[aria-current]{background:var(--green);color:var(--acid)}
body[data-jurisdiction=CO] .flow-board,body[data-jurisdiction=CO] .context-step{background:#fffdf5}body[data-jurisdiction=CT] .flow-board,body[data-jurisdiction=CT] .context-step{background:#fbfdff}
body[data-jurisdiction=CO] .consent-overview{background:#faf4e6}body[data-jurisdiction=CT] .consent-overview{background:#dce7f7}
body[data-jurisdiction=CO] .journey-button:hover,body[data-jurisdiction=CO] .journey-next:hover{background:#304e7a}body[data-jurisdiction=CT] .journey-button:hover,body[data-jurisdiction=CT] .journey-next:hover{background:#245091}
body[data-jurisdiction] .journey-button.secondary:hover{background:var(--mint);color:var(--green)}
body[data-jurisdiction] .flow-board{box-shadow:0 6px 0 var(--line)}
@media print{body[data-jurisdiction]{--paper:#fff}}

/* Preserve a navigable heading while keeping the compact questionnaire layout. */
.interactive-guide #flow>.section-heading{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#main:focus{outline:none}

/* The founder story has its own entrance, separate from the statutory guide. */
.interactive-guide .intro>div:first-child{min-width:0;flex:1}
.story-launch{position:relative;display:flex;flex-direction:column;justify-content:center;align-self:center;gap:3px;flex-shrink:0;max-width:100%;padding:13px 44px 13px 18px;border:1px solid var(--green);border-radius:12px;color:var(--green);background:transparent;text-decoration:none}
.story-launch-label{font-size:10px;line-height:1.4;font-weight:800;letter-spacing:1.2px}
.story-launch-title{font-family:var(--serif);font-size:23px;line-height:1.2;font-weight:400}
.story-launch-arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:22px}
.story-launch:hover{background:var(--mint)}
.story-launch[aria-current]{box-shadow:inset 0 -3px 0 var(--green)}
@media(max-width:700px){.story-launch{width:fit-content;margin-top:16px;padding-block:10px}.story-launch-title{font-size:21px}}
@media print{.story-launch{display:none!important}}

.statutory-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.statutory-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
