.cc-stage-notice,.cc-form-notice{padding:12px 18px;background:#fff4cf;color:#463500;font:500 14px/1.5 system-ui}
.cc-utility{max-width:1050px;margin:36px auto 64px;padding:0 20px;font:18px/1.65 system-ui;color:#263238}
.cc-utility h1{font-size:clamp(28px,5vw,42px);margin-bottom:24px}.cc-utility dl{display:grid;grid-template-columns:180px 1fr;gap:16px}.cc-utility dd{margin:0}.cc-utility a{color:#175d9e}
.cc-pending{padding:24px;border:1px solid #cfaa4a;border-radius:12px;background:#fffbef}
.cc-dialog{width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;border:0;border-radius:16px;padding:32px 24px;color:#263238;background:#fff}
.cc-dialog::backdrop{background:rgb(0 0 0 / .55)}.cc-dialog-close{float:right;border:0;background:transparent;font-size:32px;cursor:pointer;line-height:1}.cc-dialog h2{font-size:25px;padding-right:25px}
.wpcf7 label{display:block}.cc-field-label{display:block;margin-bottom:6px;font-weight:600}
.oxblock__page>.oxblock__content{width:100%;max-width:none;margin:0}.oxblock__page{display:block}
@media(max-width:600px){.cc-utility dl{grid-template-columns:1fr;gap:5px}.cc-utility dd{margin-bottom:12px}.cc-dialog{padding:24px 16px}}
@media(max-width:767px){.cs-prose table td,.cs-prose table th{box-sizing:border-box}.cs-prose table{max-width:100%}}

/* Preserve column labels inside the existing keyboard-accessible scroll regions. */
@media(max-width:640px){
 body.kpk-site .kpk-table-scroll table{display:table!important;width:100%!important;min-width:520px!important;border-collapse:collapse!important}
 body.kpk-site .kpk-table-scroll thead{display:table-header-group!important}
 body.kpk-site .kpk-table-scroll tbody{display:table-row-group!important;width:auto!important}
 body.kpk-site .kpk-table-scroll tfoot{display:table-footer-group!important}
 body.kpk-site .kpk-table-scroll tr{display:table-row!important;width:auto!important;margin:0!important;border-radius:0!important}
 body.kpk-site .kpk-table-scroll th,body.kpk-site .kpk-table-scroll td{display:table-cell!important;width:auto!important;vertical-align:top!important;white-space:normal!important}
 body.kpk-site .kpk-table-scroll td::before{content:none!important;display:none!important}
 body.kpk-site .kpk-table-scroll thead th{background:#e8f5f5!important;color:#06283d!important}
}
body.kpk-site .kpk-table-scroll:focus-visible{outline:3px solid #007f89;outline-offset:2px}

/* Accessible footer controls, retaining the existing footer palette. */
.site-footer button.cc-footer-toggle{width:100%;padding:8px 0;min-height:44px;border:0;border-radius:4px;background:transparent;color:inherit;font:inherit;text-align:left;}
.site-footer button.cc-footer-toggle:disabled{opacity:1;cursor:default;}
.site-footer button.cc-footer-toggle:focus-visible{outline:3px solid #5eead4;outline-offset:4px;}

/* Callback dialog: native trigger and contained scrolling. */
#openModal{font:inherit;cursor:pointer;}
#openModal:focus-visible{outline:3px solid #0f766e;outline-offset:4px;}
#callbackModal{overscroll-behavior:contain;}

/* Keep the shared layout centered when theme resets override Bootstrap. */
body.kpk-site .container-xxl{margin-left:auto;margin-right:auto;}

/* Keep the city prompt close control within the mobile viewport. */
@media (max-width: 767px){
  body.kpk-site #cityConfirm .popup-window-close-icon{right:4px;}
}
