:root{--brand:#CD5C5C;--brand-dark:#B94D4D;--brand-light:#FFF0F0;--text:#202124;--muted:#777B84;--background:#F7F7F9;--border:#E5E5E9;--white:#FFF;--radius:16px;--shadow:0 8px 24px rgba(20,20,30,.045)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:var(--background);font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:1.65}button,input,select{font:inherit}button,select{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e6aaaa;outline-offset:2px}.site-header{background:#fff;border-bottom:1px solid var(--border);padding:24px 6%}.header-inner{max-width:1500px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:18px;color:inherit;text-decoration:none}.brand-logo{width:46px;height:54px;object-fit:contain}.brand strong{display:block;font-size:clamp(22px,2.5vw,34px);font-weight:800;letter-spacing:-.7px;line-height:1.25}.brand small{display:block;margin-top:6px;color:var(--muted);font-size:12px}.header-badge{padding:10px 15px;border-radius:30px;background:var(--brand-light);color:var(--brand);font-size:12px;font-weight:600;white-space:nowrap}.main-nav{display:flex;gap:10px;flex-wrap:wrap;max-width:1500px;margin:0 auto;padding:18px 6% 0}.nav-button{padding:13px 19px;border:1px solid var(--border);border-radius:11px 11px 0 0;background:#fff;color:var(--text);font-size:13px;font-weight:700}.nav-button.active{border-color:var(--brand);background:var(--brand-light);color:var(--brand)}.page-view{max-width:1500px;margin:0 auto;padding:32px 6% 60px;min-height:55vh}.hidden{display:none!important}.page-heading{margin:4px 0 28px}.eyebrow{display:block;color:var(--brand);font-size:10px;font-weight:800;letter-spacing:.12em}.page-heading h1,.procedure-hero h1{margin:8px 0 12px;font-size:clamp(28px,3.5vw,40px);line-height:1.25;letter-spacing:-.9px;font-weight:800}.page-heading p,.procedure-hero p{max-width:850px;margin:0;color:var(--muted);line-height:1.8}.filter-panel{padding:23px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:13px}.filters label{display:block;min-width:0}.filters label>span:not(.sr-only){display:block;margin-bottom:7px;font-size:12px;font-weight:700}.filters input,.filters select{width:100%;min-width:0;height:50px;padding:0 14px;border:1px solid var(--border);border-radius:11px;background:#fff;color:var(--text);font-size:13px;outline:none}.filters input:focus,.filters select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #cd5c5c1c}.stats-row{display:flex;flex-wrap:wrap;gap:13px;margin:22px 0 0}.stat-card{min-width:170px;padding:15px 19px;border:1px solid var(--border);border-radius:13px;background:#fff}.stat-card strong{display:block;font-size:26px;font-weight:800;line-height:1.3}.stat-card span{display:block;margin-top:5px;color:var(--muted);font-size:11px}.status{margin:13px 0 0;color:var(--muted);font-size:12px;line-height:1.7}.status.error{color:#a83232}.results-area{margin-top:30px}.results-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}.results-heading h2{margin:5px 0 0;font-size:25px;font-weight:800;letter-spacing:-.5px}.program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.program-card{display:flex;flex-direction:column;min-width:0;padding:22px;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:0 3px 12px #14141e08;transition:transform .18s,box-shadow .18s}.program-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #14141e0f}.card-label{align-self:flex-start;padding:6px 10px;border-radius:20px;background:var(--brand-light);color:var(--brand);font-size:10px;font-weight:700}.program-card h3{margin:15px 0 7px;font-size:18px;line-height:1.5;overflow-wrap:anywhere}.program-name{margin-bottom:12px;color:var(--muted);font-size:13px;line-height:1.7}.card-info{margin:6px 0;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.card-info strong{font-weight:700}.card-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:auto;padding-top:19px}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 13px;border:1px solid var(--brand);border-radius:9px;background:var(--brand);color:#fff;font-size:11px;font-weight:700;text-decoration:none;cursor:pointer}.button.secondary{background:#fff;color:var(--brand)}.button:hover{filter:brightness(.97)}.empty-state{grid-column:1/-1;padding:35px;border:1px dashed var(--border);border-radius:14px;background:#fff;color:var(--muted);text-align:center;line-height:1.8}.procedure-hero{padding:29px 31px;margin:4px 0 23px;border:1px solid #eadede;border-radius:19px;background:linear-gradient(115deg,#fff 0%,#fff3f3 100%)}.procedure-hero h1{font-size:clamp(27px,3vw,36px)}.procedure-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.procedure-results{display:grid;gap:16px}.procedure-card{border:1px solid var(--border);border-radius:15px;background:#fff;overflow:hidden}.procedure-card>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:19px 22px;cursor:pointer;list-style:none;font-weight:800;font-size:15px}.procedure-card>summary::-webkit-details-marker{display:none}.procedure-card>summary:after{content:'+';color:var(--brand);font-size:23px;font-weight:400}.procedure-card[open]>summary{background:var(--brand-light);color:var(--brand)}.procedure-card[open]>summary:after{content:'−'}.procedure-meta{padding:0 22px 15px;color:var(--muted);font-size:12px}.procedure-body{padding:0 22px 22px;border-top:1px solid var(--border)}.procedure-row{padding:16px 0;border-bottom:1px solid #eeeef1;overflow-wrap:anywhere}.procedure-row:last-child{border-bottom:0}.procedure-row>strong{display:block;margin-bottom:8px;font-size:13px}.procedure-cell{margin:7px 0;font-size:12px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.link-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.link-list a{display:inline-flex;align-items:center;padding:8px 10px;border:1px solid #f0d2d2;border-radius:8px;background:var(--brand-light);color:var(--brand-dark);font-size:11px;font-weight:700;text-decoration:none;overflow-wrap:anywhere}.link-list a:hover{background:#ffe4e4}.notice{padding:15px 17px;border-radius:11px;background:#fff8e8;color:#76551b;font-size:12px;line-height:1.8}.site-footer{display:flex;flex-direction:column;align-items:center;gap:5px;padding:25px 6%;border-top:1px solid var(--border);background:#fff;color:var(--muted);font-size:11px;text-align:center}.site-footer strong{color:var(--text);font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-badge{display:none}}@media(max-width:680px){.site-header{padding:18px 5%}.brand{gap:11px}.brand-logo{width:36px;height:43px}.brand strong{font-size:21px}.brand small{font-size:10px}.main-nav{padding:13px 5% 0;gap:7px}.nav-button{flex:1;padding:12px 9px;font-size:11px}.page-view{padding:25px 5% 42px}.filters,.procedure-filter-grid,.program-grid{grid-template-columns:1fr}.filter-panel{padding:16px}.stats-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stat-card{min-width:0;padding:12px 10px}.stat-card strong{font-size:21px}.stat-card span{font-size:10px}.procedure-hero{padding:22px 18px}.procedure-card>summary{padding:16px}.procedure-body{padding:0 16px 16px}.results-heading h2{font-size:22px}}
.modal-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:rgba(24,24,32,.48);overflow:auto}.detail-modal{width:min(850px,100%);max-height:88vh;overflow:auto;padding:26px;border-radius:18px;background:#fff;box-shadow:0 20px 70px #0003}.modal-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.modal-close{width:38px;height:38px;border:1px solid var(--border);border-radius:50%;background:#fff;font-size:24px}.modal-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.modal-links a{padding:9px 12px;border:1px solid #f0d2d2;border-radius:9px;background:var(--brand-light);color:var(--brand-dark);font-size:12px;font-weight:700;text-decoration:none;overflow-wrap:anywhere}