.kp{--ink:#1f1530;--violet:#4a3668;--gold:#c99a1e;--stone:#cfc8b8;--ivory:#f6f2ea;--muted:#4f4860;max-width:960px;margin:0 auto;padding:clamp(28px,5vw,56px) 0;color:var(--ink);font-family:"DM Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;line-height:1.6}
.kp h2{font-family:"Bodoni Moda","Bodoni 72",Didot,Georgia,serif;font-weight:400;font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.15;margin:.2em 0 .4em}
.kp h3{font-family:"Bodoni Moda","Bodoni 72",Didot,Georgia,serif;font-weight:400;font-size:1.6rem;margin:1.6em 0 .5em;padding-top:1.2em;border-top:1px solid var(--stone)}
.kp h4{font-size:1.05rem;margin:0 0 .2em}
.kp a{color:var(--violet)}
.kp-help{color:var(--muted);font-size:.9rem;margin:.2em 0}
.kp-note{background:var(--ivory);border-left:3px solid var(--gold);padding:10px 14px;margin:0 0 18px}
.kp-emerg{background:var(--ivory);border:1px solid var(--stone);border-left:3px solid var(--gold);padding:12px 16px;margin:12px 0}
.kp-nav ul{list-style:none;margin:22px 0 28px;padding:0;display:flex;flex-wrap:wrap;gap:6px 4px;border-bottom:1px solid var(--stone)}
.kp-nav li{margin:0}
.kp-nav a{display:block;padding:10px 16px;text-decoration:none;color:var(--ink);border-bottom:2px solid transparent;margin-bottom:-1px}
.kp-nav a:hover{color:var(--violet)}
.kp-nav a[aria-current=page]{border-bottom-color:var(--gold);color:var(--violet);font-weight:600}
.kp-news,.kp-event{background:var(--ivory);border:1px solid var(--stone);padding:16px 20px;margin:0 0 12px}
.kp-news p:last-child,.kp-event p:last-child{margin-bottom:0}
.kp label{display:block;font-weight:600;margin:16px 0 6px}
.kp input:not([type=checkbox]):not([type=radio]),.kp select,.kp textarea{width:100%;max-width:520px;padding:11px 12px;border:1px solid var(--stone);background:#fff;color:var(--ink);font:inherit;border-radius:0}
.kp input:focus,.kp select:focus,.kp textarea:focus{outline:2px solid var(--violet);outline-offset:1px}
.kp button,.kp input[type=submit],.kp .button{background:var(--violet);color:#fff;border:0;padding:12px 22px;font:inherit;font-weight:600;cursor:pointer;margin-top:16px;border-radius:0}
.kp button:hover,.kp input[type=submit]:hover{background:var(--ink)}
.kp button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.kp .kp-link{background:none;color:var(--violet);padding:0;text-decoration:underline;font-weight:400}
.kp .kp-link:hover{background:none;color:var(--ink)}
.kp-reqs,.kp-docs{list-style:none;margin:10px 0;padding:0}
.kp-reqs li,.kp-docs li{padding:12px 0;border-bottom:1px solid var(--stone)}
.kp-acct{display:grid;grid-template-columns:max-content 1fr;gap:8px 28px;margin:12px 0 18px}
.kp-acct dt{font-weight:600}.kp-acct dd{margin:0}
.kp #loginform p{margin:0 0 4px}
.kp #loginform .login-remember{display:none}
.kp-town .kp-town__w{background:#241838;align-items:stretch}
.kp-town .kt-pn button,.kt-modal__in button{background:#e3bd5a;color:#1f1530;border:0;padding:11px 18px;font-weight:600;margin-top:10px;cursor:pointer}
.kp-town .kt-pn button:hover{background:#fff}
.kt-list{list-style:none;padding:0;margin:16px 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}
.kt-list li{margin:0;border:1px solid var(--stone);background:var(--ivory);padding:10px 12px;font-size:.92rem}
.kt-list li button{display:block;background:none;color:var(--ink);padding:0;margin:0 0 2px;font-weight:600;text-align:left;border:0}
.kt-list li button:hover{background:none;color:var(--violet);text-decoration:underline}
.kt-modal__in{border-top:3px solid var(--gold)}
@media(max-width:600px){.kp-acct{grid-template-columns:1fr;gap:2px}.kp-nav a{padding:9px 11px}.kt-list{grid-template-columns:1fr}}
.kp{padding-top:0}
.kp ul,.kp ol{list-style:none}
.kp li{list-style:none}
.kp li::marker{content:""}
.kp li::before,.kp li::after{content:none!important}
.kp-nav li,.kp-reqs li,.kp-docs li,.kt-list li{list-style:none}
.kp form button,.kp form input[type=submit]{display:block}
.kp .kp-link{display:inline-block}
.kp h4{margin-top:1.4em}
.kp input[type=submit],.kp #wp-submit{width:auto;max-width:none;background:var(--violet);color:#fff;border:0;padding:12px 26px;cursor:pointer}
.kp input[type=submit]:hover,.kp #wp-submit:hover{background:var(--ink)}
