@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--ink:#183c35;--muted:#5a7069;--paper:#f5f4ed;--line:#d9dfd5;--green:#dfe9db;--orange:#dc6338}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:15px 'DM Sans',sans-serif}header{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:24px 5vw}header span{font-size:11px;letter-spacing:2px}header button{margin-left:auto}.brand{font-weight:800;font-size:21px;text-decoration:none}main{max-width:1320px;margin:auto;padding:0 5vw}a{color:inherit;text-underline-offset:3px}button{font:inherit;cursor:pointer;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:5px;padding:10px 14px}button:hover{background:var(--green)}button:disabled{opacity:.4;cursor:default}.hero{padding:54px 0 35px;position:relative}h1{font:800 clamp(38px,5vw,64px)/1.08 'Manrope',sans-serif;letter-spacing:-2px;margin:18px 0 20px}.hero>p:not(.eyebrow){color:var(--muted);line-height:1.6;font-size:17px}.eyebrow{letter-spacing:2px;font-size:11px;font-weight:700;color:var(--orange)}#stats{display:flex;gap:30px;margin-top:30px}#stats b{font-size:28px;font-family:Manrope;display:block}#stats span{font-size:12px;color:var(--muted)}.notice{border-left:3px solid var(--orange);background:#efe9da;padding:16px 20px;line-height:1.5}.notice p{margin:6px 0 0;color:var(--muted)}.filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin:30px 0 12px}label{font-size:10px;letter-spacing:1px;font-weight:700}input[type=search],select{display:block;width:100%;font:14px 'DM Sans';border:1px solid var(--line);background:#fff;padding:14px;margin-top:8px;border-radius:4px;color:var(--ink)}.check{grid-column:1/-1;display:flex;align-items:center;font-size:12px;font-weight:400;letter-spacing:0;gap:6px}#count{color:var(--muted);font-size:12px}.partyhead{display:flex;align-items:center;gap:15px;border-top:1px solid var(--line);padding:25px 0 18px;margin-top:24px}.partyhead img{width:66px;height:45px;object-fit:contain}.partyhead h2{margin:0;font-size:22px}.partyhead p{margin:3px 0 0;font-size:12px;color:var(--muted)}.partyhead a{font-size:11px}.officehead{font-size:11px;letter-spacing:1.5px;color:var(--muted);margin:15px 0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{background:#fff;border:1px solid var(--line);padding:18px;border-radius:7px;text-align:left;display:block;width:100%}.card:hover{background:#edf2e9}.cardtop{display:flex;gap:15px;align-items:center}.photo{width:65px;height:84px;object-fit:cover;object-position:top;border-radius:3px;background:var(--green)}.card h3{font-size:16px;margin:0 0 6px}.number{font:800 27px Manrope}.status{font-size:10px;display:inline-block;padding:4px 6px;background:var(--green);margin-top:10px}.warn{background:#fae3d4}.cardfoot{font-size:11px;color:var(--muted);margin-top:13px;line-height:1.6}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin:35px}footer{border-top:1px solid var(--line);padding:25px 0 40px;color:var(--muted);font-size:12px;line-height:1.8}footer button{padding:0;border:0;text-decoration:underline}dialog{max-width:900px;width:94%;max-height:91vh;border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:35px;color:var(--ink)}dialog::backdrop{background:#0c2b27aa}.close{float:right;font-size:26px;padding:0 10px}.detailhero{display:flex;gap:20px;align-items:center;margin-bottom:25px}.detailhero .photo{width:100px;height:128px}.detailhero h2{font-size:28px;margin:6px 0}.detailhero p{margin:5px 0;color:var(--muted)}.tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:15px}.tabs button.active{background:var(--ink);color:white}.content{line-height:1.7;padding-top:18px}.content h3{margin-bottom:8px}.fact{background:#fff;border:1px solid var(--line);padding:14px 17px;margin:14px 0;border-radius:5px}.fact p{margin:0 0 8px}.source{font-size:12px;color:var(--muted)}.gap{border-left:3px solid var(--orange);padding:10px 14px;background:#eee9df}.pageText{white-space:pre-wrap;font:13px/1.6 monospace;background:#fff;padding:18px;border:1px solid var(--line);max-height:500px;overflow:auto}.planlinks{display:flex;gap:10px;flex-wrap:wrap}.planlinks a{padding:10px;border:1px solid var(--line);border-radius:5px;font-size:13px}.certs a{display:block;font-size:12px;margin:8px 0;word-break:break-word}@media(min-width:1100px){#stats{position:absolute;right:0;bottom:45px;flex-direction:column;gap:18px}}@media(max-width:800px){.grid{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:1fr 1fr}.filters label:first-child{grid-column:1/-1}header span{display:none}}@media(max-width:500px){.grid{grid-template-columns:1fr}dialog{padding:20px}.detailhero h2{font-size:22px}#stats{gap:18px}.partyhead p{font-size:10px}header{padding:18px 5vw}}

.hero{padding:24px 0 18px}h1{font-size:38px;letter-spacing:-1px;margin:12px 0}.hero>p:not(.eyebrow){font-size:14px;margin:10px 0}.notice{padding:10px 16px;font-size:12px}.filters{margin-top:20px}@media(min-width:1100px){#stats{bottom:25px;flex-direction:row;gap:35px}}

.partyhead>div{min-width:0}.partytoggle{margin-left:auto;display:flex;align-items:center;gap:10px;white-space:nowrap}.partytoggle::after{content:'+';font:700 20px/1 Manrope,sans-serif}.partytoggle[aria-expanded=true]::after{content:'−'}.partycontent[hidden]{display:none}.filters{grid-template-columns:2fr 2fr 1fr 1fr}@media(max-width:800px){.filters{grid-template-columns:1fr 1fr}.filters label:first-child,.filters label:nth-child(2){grid-column:1/-1}}@media(max-width:500px){.partyhead{align-items:flex-start;flex-wrap:wrap}.partytoggle{width:100%;margin-left:0;justify-content:space-between}}
.videoFact{border-left:3px solid var(--orange)}.videoFact>b{display:block;margin-bottom:7px}.videoKeywords{font-size:12px;color:var(--muted)}.videoKeywords span{font-weight:700;color:var(--ink)}.videoDisclaimer{font-size:12px;color:var(--muted);background:#eee9df;padding:12px 14px;border-radius:5px}
.errorPage{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.errorPage h1{margin-bottom:5px}.errorPage>p:not(.eyebrow){color:var(--muted)}.errorHome{display:inline-block;margin-top:18px;padding:12px 16px;border:1px solid var(--line);border-radius:5px;text-decoration:none}.errorHome:hover{background:var(--green)}
