.hfc-wrap{--hfc-navy:#00005a;--hfc-ink:#161a37;--hfc-muted:#59617a;--hfc-border:#e1e4ed;--hfc-soft:#f6f7fb;--hfc-teal:#0aa7a4;--hfc-radius:16px;font-family:Poppins,Inter,Arial,sans-serif;color:var(--hfc-ink);font-size:15px;line-height:1.6;max-width:990px;margin:24px auto 55px;background:#fff;border:1px solid #e6e8f0;border-radius:19px;overflow:hidden;box-shadow:0 18px 55px rgba(0,0,60,.07)}
.hfc-wrap *{box-sizing:border-box}.hfc-wrap [hidden]{display:none!important}.hfc-wrap a{color:var(--hfc-navy);text-decoration:underline;text-underline-offset:3px}.hfc-wrap button,.hfc-wrap input,.hfc-wrap select,.hfc-wrap textarea{font:inherit}.hfc-logo{display:block;height:auto;max-width:165px;width:auto;flex:0 0 auto}.hfc-topline{padding:18px 5.5%;border-bottom:1px solid var(--hfc-border);display:flex;align-items:center;gap:16px;justify-content:space-between}.hfc-topline-right{margin-left:auto;font-size:12px;letter-spacing:.05em;color:var(--hfc-muted);font-weight:500;text-transform:uppercase;text-align:right}.hfc-hero{background:linear-gradient(120deg,#00005a 0%,#080777 70%,#181c8f 100%);color:white;padding:47px 6% 49px}.hfc-eyebrow{font-size:11px;font-weight:600;letter-spacing:.17em;color:#bcd6ff}.hfc-hero h2{color:white!important;font-size:clamp(29px,4.2vw,43px);line-height:1.17;margin:13px 0 13px!important;font-weight:700;letter-spacing:-1.5px}.hfc-hero p{margin:0;max-width:660px;color:#e0e6fa;font-size:15px;line-height:1.8}.hfc-tip{display:flex;gap:14px;background:#f2f5fb;margin:29px 5.5% 20px;padding:20px 23px;border-radius:13px;color:#1d2956;font-size:13px}.hfc-tip>span{font-size:23px;line-height:1.2}.hfc-tip strong{font-size:14px;color:var(--hfc-navy)}.hfc-tip p{margin:3px 0 5px;line-height:1.65}.hfc-tip a{font-weight:600}.hfc-progress{margin:33px 5.5% 8px}.hfc-progress-copy{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#68708a;margin-bottom:11px}.hfc-step-label{color:var(--hfc-navy);font-weight:700}.hfc-track{height:5px;background:#e8eaf3;border-radius:50px;overflow:hidden}.hfc-progress-fill{height:100%;width:25%;background:var(--hfc-navy);border-radius:99px;transition:width .25s ease}.hfc-form{padding:5px 5.5% 31px}.hfc-panel{min-height:270px}.hfc-section-head{padding:21px 0 25px}.hfc-step-index{font-size:12px;color:#9299ad;font-weight:700;letter-spacing:.12em}.hfc-section-head h3{font-size:clamp(21px,3vw,28px);color:var(--hfc-navy);margin:7px 0!important;font-weight:700;letter-spacing:-.65px}.hfc-section-head p{margin:0;color:var(--hfc-muted);font-size:14px}.hfc-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 22px}.hfc-full{grid-column:1/-1}.hfc-field{display:flex;flex-direction:column;gap:7px;font-size:13px;color:#262d48;font-weight:600;margin-bottom:17px}.hfc-field>span:first-child{font-weight:600}.hfc-field em,.hfc-confirm em{font-style:normal;color:#ae263c}.hfc-field small{font-size:12px;color:#6b7289;font-weight:400;line-height:1.6;margin-top:-2px}.hfc-field input:not([type=file]),.hfc-field textarea,.hfc-field select{border:1px solid #ced4e0!important;border-radius:9px!important;background:#fff!important;width:100%;padding:13px 14px!important;min-height:49px;outline:none;box-shadow:none!important;color:#161a37!important;font-weight:400;transition:border .2s,box-shadow .2s}.hfc-field textarea{resize:vertical;min-height:115px;line-height:1.7}.hfc-field input:focus,.hfc-field textarea:focus,.hfc-field select:focus{border-color:#1818a0!important;box-shadow:0 0 0 3px rgba(0,0,90,.09)!important}.hfc-field input[type=file]{border:1px dashed #bbc2d6;border-radius:9px;padding:18px;width:100%;background:#f8f9fd;font-size:12px;cursor:pointer;font-weight:400}.hfc-helper{display:flex;align-items:center;gap:10px;justify-content:space-between;color:#6c7690;font-size:11px;font-weight:400}.hfc-nopaste-label{background:#f0f1f8;border-radius:5px;padding:4px 9px;color:#515982}.hfc-nopaste-label.hfc-warn{color:#a22638;background:#fff1f2}.hfc-counter{white-space:nowrap}.hfc-actions{display:flex;justify-content:flex-end;gap:11px;align-items:center;border-top:1px solid var(--hfc-border);margin-top:22px;padding-top:25px}.hfc-button{border:0!important;border-radius:9px!important;cursor:pointer;min-height:49px;padding:11px 23px!important;font-weight:600!important;display:inline-flex;align-items:center;justify-content:center;gap:16px;font-size:13px!important;transition:transform .15s,background .15s}.hfc-button:hover{transform:translateY(-1px)}.hfc-primary{background:var(--hfc-navy)!important;color:white!important}.hfc-primary:hover{background:#12128a!important}.hfc-primary:disabled{opacity:.7;cursor:wait}.hfc-secondary{background:#f0f2f8!important;color:var(--hfc-navy)!important}.hfc-prev{margin-right:auto}.hfc-errors{padding:13px 15px;background:#fff3f4;color:#9c1a34;border:1px solid #f5b5c0;border-radius:8px;font-size:13px}.hfc-review{border:1px solid #e0e3ef;border-radius:12px;overflow:hidden}.hfc-review-row{padding:16px 19px;border-bottom:1px solid #e5e8f1}.hfc-review-row:last-child{border-bottom:0}.hfc-review-row strong{color:#505878;font-size:12px}.hfc-review-row p{white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 0;font-size:13px;max-height:130px;overflow:auto}.hfc-confirm{display:flex;align-items:flex-start;gap:11px;margin-top:22px;color:#3b425f;font-size:13px;cursor:pointer}.hfc-confirm input{width:18px;height:18px;flex:0 0 auto;margin-top:2px;accent-color:var(--hfc-navy)}.hfc-smallprint{font-size:12px;color:#6a7189;line-height:1.7}.hfc-footer-help{border-top:1px solid #e3e6ef;background:#fafbfe;padding:26px 5.5% 30px;font-size:13px;color:#565e76}.hfc-footer-help strong{color:var(--hfc-navy);font-size:14px}.hfc-footer-help p{margin:7px 0 0}.hfc-not-ready{margin:25px 5.5%;padding:22px;border-radius:12px;background:#fff7e8;border:1px solid #e6c283;font-size:14px}.hfc-success{margin:25px 5.5%;padding:29px;border-radius:12px;background:#f2f7f5;border:1px solid #c8e0d9}.hfc-success h3{color:var(--hfc-navy);font-size:24px}.hfc-reference{background:white;font-weight:700;border:1px solid #d7e6e0;padding:15px;border-radius:8px;letter-spacing:.02em}.hfc-file-msg{color:#595f80;font-weight:400;font-size:12px}.hfc-honeypot{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}
@media(max-width:660px){.hfc-wrap{border:0;border-radius:0;margin:0;box-shadow:none}.hfc-topline{padding:15px 5%;align-items:flex-start;flex-direction:column}.hfc-logo{max-width:140px}.hfc-topline-right{font-size:10px;text-align:left;margin-left:0}.hfc-hero{padding:38px 5% 40px}.hfc-tip{margin:20px 5% 15px;padding:15px}.hfc-progress{margin:25px 5% 8px}.hfc-form{padding:0 5% 25px}.hfc-grid{grid-template-columns:1fr;gap:0}.hfc-full{grid-column:1}.hfc-section-head{padding:23px 0 19px}.hfc-footer-help{padding:24px 5%}.hfc-helper{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.hfc-wrap *{transition:none!important;scroll-behavior:auto!important}}
/* v1.3.0: the St Mary’s-only pilot has a fixed school rather than a selector and uses the HFCMAT logo in the header. */
.hfc-wrap .hfc-school-fixed{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:13px 16px;background:#f4f6fc;border:1px solid #d5daeb;border-radius:9px;color:var(--hfc-navy)}
.hfc-wrap .hfc-school-fixed strong{font-weight:700;font-size:14px}
.hfc-wrap .hfc-school-fixed small{font-size:12px;color:#525c79;white-space:nowrap;margin:0}
@media(max-width:480px){.hfc-wrap .hfc-school-fixed{flex-direction:column;align-items:flex-start;gap:3px}}

/* v1.5: Lock the header logo to its original text-mark footprint, even in themes with global img rules. */
#hfc-complaints .hfc-topline{min-height:67px!important;align-items:center!important;gap:15px!important}
#hfc-complaints .hfc-topline .hfc-logo-slot{width:150px!important;min-width:150px!important;max-width:150px!important;flex:0 0 150px!important;overflow:hidden!important;line-height:0!important}
#hfc-complaints .hfc-topline .hfc-logo-slot img.hfc-logo{display:block!important;width:150px!important;min-width:150px!important;max-width:150px!important;height:23px!important;min-height:23px!important;max-height:23px!important;object-fit:contain!important;object-position:left center!important;margin:0!important;padding:0!important;border:0!important;position:static!important;transform:none!important}
@media(max-width:660px){#hfc-complaints .hfc-topline{flex-direction:row!important;align-items:center!important}#hfc-complaints .hfc-topline .hfc-topline-right{font-size:10px!important;text-align:right!important;margin-left:auto!important}}
