.campaign-positions{overflow-wrap:anywhere;min-width:0;margin:1.5rem 0 0}.campaign-positions+.campaign-positions{border-top:1px solid var(--border-strong);margin-top:3rem;padding-top:2.75rem}.campaign-positions-title{font-family:var(--serif);letter-spacing:-.005em;color:var(--text-bright);text-wrap:balance;margin:0 0 1.5rem;font-size:clamp(1.6rem,2.8vw,2rem);line-height:1.2}.position-matrix{--matrix-label:minmax(12rem, 1.4fr);width:100%;min-width:0}.position-matrix-head,.position-matrix-row{grid-template-columns:var(--matrix-label) repeat(var(--matrix-columns), minmax(0, 1fr));column-gap:1rem;display:grid}.position-matrix-head{border-bottom:1px solid var(--border-strong);align-items:end;padding-bottom:.85rem}.position-matrix-column{text-align:center;flex-direction:column;align-items:center;gap:.55rem;min-width:0;display:flex}.position-matrix-column-name{font-family:var(--serif);color:var(--text-bright);justify-content:center;align-items:baseline;gap:.45rem;font-size:1.15rem;font-weight:700;line-height:1.25;display:inline-flex}.position-matrix-key,.position-matrix-mark{background:var(--party-color);width:.7rem;height:.7rem;box-shadow:0 0 0 1px color-mix(in srgb, var(--text) 35%, transparent);border-radius:50%;flex-shrink:0;display:inline-block}.position-matrix-portrait{background:var(--bg-card);width:4.5rem;height:4.5rem;box-shadow:0 0 0 2px var(--party-color);border-radius:50%;display:block;overflow:hidden}.position-matrix-portrait img{object-fit:cover;width:100%;height:100%;display:block}.position-matrix-row{border-bottom:1px solid var(--border);align-items:center;padding:.7rem 0}.position-matrix-label{color:var(--text-bright);font-size:1rem;font-weight:500;line-height:1.45}.position-matrix-cell{flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .5rem;min-width:0;display:flex}.position-matrix-cell .party-position-sources{justify-content:center;margin:0}.position-matrix-absent{color:var(--text)}.position-matrix-group{border-bottom:1px solid var(--border-strong);padding:1.6rem 0 .5rem;display:grid}.position-matrix-group>[role=rowheader]{color:var(--text-bright);text-align:start;font-size:1rem;font-weight:700}.position-matrix-group:first-child{padding-top:1rem}@media (width<=640px){.position-matrix-head,.position-matrix-row{grid-template-columns:repeat(var(--matrix-columns), minmax(0, 1fr));column-gap:.5rem}.position-matrix-corner{position:absolute}.position-matrix-label{grid-column:1/-1;margin-bottom:.5rem}.position-matrix-portrait{width:3.25rem;height:3.25rem}.position-matrix-column-name{font-size:1rem}}.campaign-positions-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin-top:1.25rem;display:flex}.campaign-positions-button{border:1px solid var(--border-strong);min-height:2.75rem;font:inherit;color:var(--text-bright);cursor:pointer;background:0 0;border-radius:6px;padding:.5rem 1.1rem;font-weight:600}.campaign-positions-button:hover{background:color-mix(in srgb, var(--text-bright) 6%, transparent)}.campaign-positions-link{color:var(--text-bright);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--text-bright) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--text-bright) 40%, transparent);text-underline-offset:.2em;font-weight:600}.campaign-positions-link:hover{text-decoration-color:currentColor}.campaign-positions-button:focus-visible,.campaign-positions-link:focus-visible{outline:2px solid var(--text-bright);outline-offset:3px}@media (forced-colors:active){.position-matrix-key,.position-matrix-mark{background:canvastext}.position-matrix-portrait{box-shadow:0 0 0 2px canvastext}}:root[data-accessibility=true] .position-matrix-key,:root[data-accessibility=true] .position-matrix-mark{box-shadow:0 0 0 2px var(--border-strong)}:root[data-accessibility=true] .position-matrix-portrait{box-shadow:0 0 0 2px var(--party-color), 0 0 0 4px var(--border-strong)}:root[data-accessibility=true] .campaign-positions-link{text-decoration-color:currentColor}.campaign-issues{border-block-start:1px solid var(--border-strong);color:var(--text);margin-block:2.5rem 0;padding-block-start:2rem}.campaign-issues h3{font:700 1.35rem/1.3 var(--serif);color:var(--text-bright);margin:0}.campaign-issues-scope{max-inline-size:78ch;margin-block:1.5rem 0;font-size:.9rem;line-height:1.6}.campaign-issue-picker{border:0;flex-wrap:wrap;gap:.25rem 1.5rem;min-inline-size:0;margin:.65rem 0 1rem;padding:0;display:flex}.campaign-issue-picker label{min-block-size:2.75rem;max-inline-size:100%;color:var(--text);cursor:pointer;align-items:center;gap:.55rem;padding-block:.35rem;font-size:1rem;font-weight:500;display:flex}.campaign-issue-picker label[data-selected=true]{color:var(--text-bright);font-weight:700}.campaign-issue-picker input{block-size:1rem;inline-size:1rem;accent-color:var(--text-bright);flex-shrink:0;margin:0}.campaign-issue-picker label:focus-within{outline:3px solid var(--text-bright);outline-offset:3px}.campaign-issue-grid{grid-template-columns:repeat(var(--comparison-columns,3), minmax(0, 1fr));align-items:start;gap:1.5rem;display:grid}.campaign-issue-party{border-block-start:1px solid var(--border-strong);min-inline-size:0;padding-block-start:1rem}.campaign-issue-party h4,.campaign-issue-context h4{color:var(--text-bright);font:700 1.25rem/1.4 var(--serif);margin:0 0 .85rem}.campaign-issue-policies{margin:0;padding:0;list-style:none}.campaign-issue-policy+.campaign-issue-policy{border-block-start:1px solid var(--border-strong);margin-block-start:1.25rem;padding-block-start:1.25rem}.campaign-issue-policy>p,.campaign-issue-missing{margin-block:.7rem;font-size:1rem;line-height:1.65}.campaign-policy-status{color:var(--text);font-size:.85rem;font-weight:700}.campaign-issue-policy>.campaign-issue-date{color:var(--text);margin-block:.5rem 0;font-size:.85rem}.campaign-issue-context{border-block-start:1px solid var(--border-strong);margin-block-start:1.75rem;padding-block-start:1.25rem}.campaign-issue-context>ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.campaign-issue-context .campaign-issue-policy+.campaign-issue-policy{border:0;margin:0;padding:0}.campaign-positions-overview{font:700 1.35rem/1.3 var(--serif);color:var(--text-bright);margin-block:0 .5rem}.campaign-issues+.campaign-positions-overview{border-block-start:1px solid var(--border-strong);margin-block-start:2.5rem;padding-block-start:2rem}@media (width<=960px){.campaign-issue-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=600px){.campaign-issue-context>ul{grid-template-columns:minmax(0,1fr)}}.party-positions-section{scroll-margin-block-start:6rem}.party-picker{border:0;min-inline-size:0;margin:0 0 2rem;padding:0}.party-picker legend{color:var(--text-bright);padding:0;font-size:1.05rem;font-weight:700}.party-picker p,.party-positions-note{color:var(--text);margin:.35rem 0 0;font-size:1rem;line-height:1.6}.party-picker-options{grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:0 1.5rem;margin-block:.75rem 0;display:grid}.party-picker-options label{min-block-size:2.75rem;color:var(--text);cursor:pointer;align-items:center;gap:.6rem;font-size:1rem;line-height:1.4;display:flex}.party-picker-options label[data-selected=true]{color:var(--text-bright);font-weight:700}.party-picker-options label>span:last-child{overflow-wrap:anywhere;min-inline-size:0}.party-picker-options input{block-size:1.1rem;inline-size:1.1rem;accent-color:var(--text-bright);flex-shrink:0;margin:0}.party-picker-options label:focus-within{outline:2px solid var(--text-bright);outline-offset:2px;border-radius:2px}.party-color-key{background:var(--party-color);block-size:.7rem;inline-size:.7rem;box-shadow:0 0 0 1px color-mix(in srgb, var(--text) 35%, transparent);border-radius:50%;flex-shrink:0;display:inline-block}.party-positions-table{min-inline-size:0}.party-positions-empty{color:var(--text);padding:1.5rem 0}.party-positions-note{margin-block:1.25rem 0}.party-position-sources{flex-wrap:wrap;align-items:center;gap:.35rem .6rem;margin:.4rem 0 0;padding:0;list-style:none;display:flex}.party-position-citation{align-items:center;gap:.4rem;min-inline-size:0;display:inline-flex}.party-position-citation .sources-link{margin-inline-end:0}.party-position-component{color:var(--text);overflow-wrap:anywhere;font-size:.85rem;font-weight:600}@media (forced-colors:active){.party-color-key{background:canvastext}}:root[data-accessibility=true] .party-color-key{box-shadow:0 0 0 2px var(--border-strong)}
