/* JSC Public Complaint/Petition Form v20.2
   Presentation only: uses the Form Builder's persisted 12-column field spans. */
:root{--jsc-p-green:#006b4f;--jsc-p-green-dark:#00533e;--jsc-p-gold:#c99b17;--jsc-p-ink:#102746;--jsc-p-muted:#6b8290;--jsc-p-line:#dbe7e4;--jsc-p-bg:#f2f7f8;--jsc-p-soft:#f8fbfb}
html{scroll-behavior:smooth}
body.jsc-public-form-page{margin:0;background:var(--jsc-p-bg);color:var(--jsc-p-ink);font-family:Arial,Helvetica,sans-serif}
.jsc-public-wrap{width:min(100%,1580px);margin:0 auto;padding:28px 30px 42px;box-sizing:border-box}
.jsc-public-heading-v202{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:16px}
.jsc-public-heading-v202 h1{margin:0;color:#102746;font-size:30px;line-height:1.12;font-weight:800;letter-spacing:-.3px}
.jsc-public-heading-v202 p{margin:7px 0 0;color:#5c7685;font-size:13px;line-height:1.55}
.jsc-public-heading-v202 .secure{flex:0 0 auto;max-width:320px;border:1px solid #cbe5dc;background:#eaf7f2;color:#176854;border-radius:8px;padding:11px 14px;font-size:11px;line-height:1.4;box-shadow:none}
.jsc-public-heading-v202 .secure span{font-weight:900;margin-right:5px}
.jsc-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 18px}
.jsc-steps span{position:relative;text-align:center;color:#7b8c96;border-bottom:3px solid #d8e2df;padding:0 8px 12px;font-size:11px;font-weight:800}
.jsc-steps span i{display:grid;place-items:center;width:24px;height:24px;margin:0 auto 7px;border-radius:50%;background:#93a3ad;color:#fff;font-style:normal;font-weight:900;font-size:11px}
.jsc-steps span.active{color:#173f50;border-bottom-color:var(--jsc-p-gold)}
.jsc-steps span.active i{background:var(--jsc-p-green)}
.jsc-steps span:nth-child(2).active i{background:#bd8704}
.jsc-steps span b{display:block}
.jsc-public-shell{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}
.jsc-public-main-column{min-width:0}
.jsc-public-form{max-width:none;margin:0}
.jsc-form-sections-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.jsc-form-sections-grid>.jsc-section-half{grid-column:span 1}
.jsc-form-sections-grid>.jsc-section-full{grid-column:1/-1}
.jsc-form-card{margin:0;background:#fff;border:1px solid var(--jsc-p-line);border-radius:10px;padding:14px;box-shadow:0 4px 14px rgba(20,60,50,.045)}
.jsc-form-card+.jsc-form-card{margin-top:0}
.jsc-card-title{display:flex;align-items:flex-start;gap:10px;margin:0 0 13px}
.jsc-card-title>span{flex:0 0 29px;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:var(--jsc-p-green);color:#fff;font-size:15px;font-weight:900}
.jsc-card-title h2{margin:0;color:#102746;font-size:16px;line-height:1.25;font-weight:800}
.jsc-card-title small{display:block;margin-top:4px;color:#77909c;font-size:10px;line-height:1.4}
.jsc-builder-section .jsc-engine-grid{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr));gap:11px 12px;align-items:start}
.jsc-builder-section .jsc-engine-field,.jsc-builder-section .jsc-hesk-attachment-upload{grid-column:span var(--jsc-field-span,12)!important;width:auto!important;max-width:none!important;min-width:0;flex:none!important;box-sizing:border-box}
.jsc-engine-field label,.jsc-form-card .label{display:block;margin-bottom:5px;color:#27475a;font-size:11px;font-weight:800}
.jsc-field-help{display:block;margin:-1px 0 5px;color:#78909a;font-size:10px;line-height:1.35}
.jsc-engine-field .jsc-fe-input,.jsc-engine-field input[type=text],.jsc-engine-field input[type=email],.jsc-engine-field input[type=tel],.jsc-engine-field input[type=date],.jsc-engine-field select,.jsc-engine-field textarea{width:100%;min-height:36px;box-sizing:border-box;border:1px solid #cbdad7;border-radius:6px;background:#fff;color:#173447;padding:8px 9px;font-size:12px;outline:none;transition:border-color .14s ease,box-shadow .14s ease}
.jsc-engine-field .jsc-fe-input:focus,.jsc-engine-field input:focus,.jsc-engine-field select:focus,.jsc-engine-field textarea:focus{border-color:#64a895;box-shadow:0 0 0 3px rgba(0,107,79,.08)}
.jsc-engine-field textarea.jsc-fe-input{min-height:98px;resize:vertical}
.jsc-choice{display:inline-flex!important;align-items:center;gap:6px;margin:5px 14px 5px 0!important;font-weight:600!important;font-size:11px!important;color:#29495b}
.jsc-public-form .required:after{content:' *';color:#d43c3c}
.word-count{text-align:right;color:#587181;font-size:10px;font-weight:700;margin-top:4px}
.jsc-upload{grid-column:1/-1!important;display:grid!important;grid-template-columns:minmax(190px,.85fr) minmax(320px,1.35fr)!important;gap:18px;align-items:center;border-top:1px solid #edf2f0;padding-top:12px}
.jsc-upload h3{margin:0;color:#12604c;font-size:13px}
.jsc-upload h3 small{font-weight:500;color:#758991}
.jsc-upload p{margin:5px 0 0;color:#78909a;font-size:10px;line-height:1.4}
.jsc-hesk-attachment-upload .dropzone{min-height:96px;border:1px dashed #8fb6aa!important;border-radius:7px;background:#f9fcfb;padding:12px;box-sizing:border-box}
.jsc-hesk-attachment-upload .fileinput-button{display:inline-flex!important;align-items:center;justify-content:center;margin-top:8px;min-width:130px;background:var(--jsc-p-green)!important;border-color:var(--jsc-p-green)!important;color:#fff!important;border-radius:6px;padding:8px 14px;font-weight:800;cursor:pointer}
.jsc-bottom-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.jsc-bottom-grid .jsc-form-card{min-height:128px}
.jsc-bottom-grid h2{font-size:16px;margin:0 0 10px;color:#102746}
.jsc-bottom-grid p{margin:0 0 10px;color:#304d5d;font-size:12px;line-height:1.45}
.jsc-form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.jsc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid #c7d7d3;border-radius:6px;background:#fff;color:#173b4e;padding:9px 15px;text-decoration:none;font-size:12px;font-weight:800;cursor:pointer}
.jsc-primary{min-width:230px;background:var(--jsc-p-green)!important;border-color:var(--jsc-p-green)!important;color:#fff!important}
.security-ok{padding:10px;border-radius:6px;background:#eaf7f2;color:#176854}
.jsc-public-sidebar{display:flex;flex-direction:column;gap:13px;position:sticky;top:16px}
.jsc-side-hero,.jsc-side-card{overflow:hidden;border:1px solid var(--jsc-p-line);border-radius:9px;background:#fff;box-shadow:0 4px 14px rgba(20,60,50,.045)}
.jsc-side-hero img{display:block;width:100%;height:180px;object-fit:cover;object-position:center 30%}
.jsc-side-hero__caption{background:linear-gradient(135deg,#006143,#007554);border-top:3px solid var(--jsc-p-gold);padding:15px 18px;color:#fff;display:flex;flex-direction:column;gap:5px;font-family:Georgia,"Times New Roman",serif;font-size:17px;line-height:1.05}
.jsc-side-card{padding:14px 16px}
.jsc-side-card h3{display:flex;align-items:center;gap:8px;margin:0 0 9px;color:#173247;font-size:14px;font-weight:900}
.jsc-side-card h3 span{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:50%;background:var(--jsc-p-green);color:#fff;font-size:12px}
.jsc-side-card p{margin:5px 0;color:#38586a;font-size:11px;line-height:1.4}
.jsc-side-card a{color:#075fa8;text-decoration:none}
.jsc-side-card ul{margin:3px 0 0;padding-left:18px;color:#345363;font-size:10.5px;line-height:1.45}
.jsc-side-card li{margin:4px 0}
.jsc-side-info{background:#fff8e9;border-color:#efd9a1}
.jsc-side-info h3 span{background:#c18704}
.jsc-side-after li::marker{color:var(--jsc-p-green)}
/* Legitimate HESK license footer remains visible; integrate it visually instead of hiding it. */
body.jsc-public-form-page>.footer,body.jsc-public-form-page .footer{display:block!important;background:#fff!important;color:#778891!important;border-top:1px solid #e4ebe8!important;padding:10px 15px!important;font-size:10px!important;text-align:center!important}
body.jsc-public-form-page .footer p{margin:0!important}
body.jsc-public-form-page .footer a{color:#006b4f!important}
@media(max-width:1180px){.jsc-public-shell{grid-template-columns:minmax(0,1fr) 280px}.jsc-side-hero img{height:155px}.jsc-form-sections-grid{grid-template-columns:1fr}.jsc-form-sections-grid>.jsc-section-half,.jsc-form-sections-grid>.jsc-section-full{grid-column:1}}
@media(max-width:920px){.jsc-public-wrap{padding:20px 16px 30px}.jsc-public-heading-v202{display:block}.jsc-public-heading-v202 .secure{margin-top:12px;max-width:none}.jsc-public-shell{grid-template-columns:1fr}.jsc-public-sidebar{position:static;display:grid;grid-template-columns:1fr 1fr}.jsc-side-hero{grid-column:1/-1}.jsc-bottom-grid{grid-template-columns:1fr!important}.jsc-builder-section .jsc-engine-grid{grid-template-columns:1fr!important}.jsc-builder-section .jsc-engine-field,.jsc-builder-section .jsc-hesk-attachment-upload{grid-column:1!important}.jsc-upload{grid-template-columns:1fr!important}.jsc-form-actions{flex-wrap:wrap}.jsc-primary{min-width:180px;flex:1}}
@media(max-width:620px){.jsc-public-heading-v202 h1{font-size:25px}.jsc-steps{grid-template-columns:repeat(2,1fr)}.jsc-public-sidebar{grid-template-columns:1fr}.jsc-side-hero{grid-column:1}.jsc-form-card{padding:12px}.jsc-form-actions{display:grid;grid-template-columns:1fr}.jsc-primary{width:100%}}
