
/* Program Modal */
.prmodal{position:fixed; inset:0; display:none; place-items:center; z-index:1003; font-family:'Montserrat',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.prmodal[aria-hidden="false"]{display:grid}
.prmodal__backdrop{position:absolute; inset:0; background:rgba(0,0,0,.55); backdrop-filter:blur(2px)}
.prmodal__dialog{position:relative; background:var(--card); color:var(--text); width:min(980px,96vw); max-height:94vh; overflow:auto; border-radius:var(--radius); box-shadow:var(--shadow); padding:clamp(16px,2.6vw,28px); border:1px solid rgba(255,255,255,.08)}
.prmodal__close{position:absolute; right:10px; top:10px; width:40px; height:40px; border-radius:999px; border:1px solid rgba(255,255,255,.12); background:transparent; color:var(--text); cursor:pointer; font-size:26px; line-height:1}
.prmodal__close:hover{background:rgba(255,255,255,.06)}
.prmodal__title{margin:0 0 10px; font-size:clamp(22px,2.3vw,30px); font-weight:800}
.prmodal__content{display:grid; gap:12px}
.prmodal__content h3{margin:16px 0 4px; font-size:clamp(16px,1.5vw,20px); font-weight:800}
.prmodal__content h4{margin:12px 0 4px; font-size:clamp(15px,1.2vw,18px); font-weight:700}
.prmodal__content p{margin:0; line-height:1.6}
.prmodal__content ul{margin:0; padding-left:18px; display:grid; gap:6px}
.prmodal__content li{line-height:1.5}
.btn-row{display:flex; gap:12px; flex-wrap:wrap; margin-top:8px}
.btn-row .btn{flex:2 2 160px; display:flex; align-items:center; justify-content:center; text-align:center}
@media (max-width: 640px){
  .prmodal__dialog{width:100vw; height:100vh; max-height:100vh; border-radius:0; display:flex; flex-direction:column}
  .prmodal__content{overflow:auto}
}
