/* All classes prefixed .hsj-ft- to avoid collisions */
.hsj-ft {
    background: #ffffff;
    color: #3a4a5c;
    font-family: 'Poppins', system-ui, sans-serif;
    font-size: 13.5px;
    line-height: 1.6;
}
/* CTA strip */
.hsj-ft-nl {
    background: #1A4B89;
    padding: 22px 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
}
.hsj-ft-nl-copy .hsj-ft-nl-head {
    font-family: 'Cormorant Garamond', 'Georgia', serif;
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 3px;
    letter-spacing: .01em;
}
.hsj-ft-nl-copy .hsj-ft-nl-sub {
    font-size: 12.5px;
    color: rgba(255,255,255,.72);
}
.hsj-ft-nl-actions {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}
.hsj-ft-nl-btn-primary {
    background: #FBA504;
    color: #0C1E38;
    border: none;
    padding: 11px 24px;
    font-size: 13.5px;
    font-weight: 700;
    cursor: pointer;
    font-family: inherit;
    white-space: nowrap;
    border-radius: 6px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    transition: background .2s;
}
.hsj-ft-nl-btn-primary:hover { background: #e09400; color: #0C1E38; }
.hsj-ft-nl-btn-secondary {
    background: rgba(255,255,255,.12);
    color: #fff;
    border: 1px solid rgba(255,255,255,.2);
    padding: 11px 20px;
    font-size: 13.5px;
    font-weight: 600;
    cursor: pointer;
    font-family: inherit;
    white-space: nowrap;
    border-radius: 6px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: background .2s;
}
.hsj-ft-nl-btn-secondary:hover { background: rgba(255,255,255,.2); color: #fff; }
/* Main body */
.hsj-ft-body {
    padding: 36px 40px 28px;
    display: grid;
    grid-template-columns: 2fr 1.2fr 1.2fr 1.2fr 1.4fr;
    gap: 28px;
    max-width: 1400px;
    margin: 0 auto;
}
/* Brand col */
.hsj-ft-logo { margin-bottom: 16px; }
.hsj-ft-logo img { height: 48px; width: auto; }
.hsj-ft-tagline { font-size: 12.5px; color: #64748b; margin-bottom: 14px; line-height: 1.6; }
.hsj-ft-contact-row {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-bottom: 10px;
    font-size: 13px;
    color: #475569;
}
.hsj-ft-contact-row svg { flex-shrink: 0; margin-top: 2px; color: #FBA504; }
.hsj-ft-contact-row a { color: #475569; text-decoration: none; }
.hsj-ft-contact-row a:hover { color: #FBA504; }
.hsj-ft-social {
    display: flex;
    gap: 8px;
    margin-top: 14px;
}
.hsj-ft-social a {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: 1px solid #e2e8f0;
    display: grid;
    place-items: center;
    color: #64748b;
    text-decoration: none;
    transition: all .2s;
    font-size: 13px;
}
.hsj-ft-social a:hover { background: #FBA504; border-color: #FBA504; color: #fff; }
/* Link columns */
.hsj-ft-col-head {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #FBA504;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e2e8f0;
}
.hsj-ft-col-head-2 {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #FBA504;
    margin-top: 24px;
    margin-bottom: 10px;
}
.hsj-ft-links { list-style: none; margin: 0; padding: 0; }
.hsj-ft-links li { margin-bottom: 5px; }
.hsj-ft-links a {
    color: #475569;
    text-decoration: none;
    font-size: 13px;
    transition: color .15s;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.hsj-ft-links a:hover { color: #FBA504; }
/* Get in touch col */
.hsj-ft-cta-wa {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #25D366;
    color: #fff;
    padding: 10px 16px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 10px;
    transition: opacity .2s;
}
.hsj-ft-cta-wa:hover { opacity: .9; color: #fff; }
.hsj-ft-cta-phone {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #f1f5f9;
    color: #334155;
    padding: 10px 16px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 16px;
    border: 1px solid #e2e8f0;
    transition: background .2s;
}
.hsj-ft-cta-phone:hover { background: #e2e8f0; color: #1e293b; }
.hsj-ft-ta-box {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 8px 10px;
    margin-bottom: 10px;
    display: inline-flex;
    align-items: center;
}
.hsj-ft-ta-box .TA_certificateOfExcellence { display:block; }
.hsj-ft-ta-box .TA_links { list-style:none; margin:0; padding:0; }
.hsj-ft-ta-box .widCOEImg { width: 110px; height: auto; display: block; max-width: 110px; }
.hsj-ft-pay-head { font-size: 10px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: #94a3b8; margin-bottom: 8px; }
.hsj-ft-pay-img { max-width: 100%; height: auto; display: block; }
/* Bottom bar */
.hsj-ft-bottom {
    border-top: 1px solid #e2e8f0;
    padding: 18px 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    max-width: 1400px;
    margin: 0 auto;
    font-size: 12px;
    color: #94a3b8;
}
.hsj-ft-bottom-links { display: flex; gap: 20px; flex-wrap: wrap; }
.hsj-ft-bottom-links a { color: #94a3b8; text-decoration: none; }
.hsj-ft-bottom-links a:hover { color: #475569; }
@media (max-width: 1100px) {
    .hsj-ft-body { grid-template-columns: 1fr 1fr 1fr; }
}
@media (max-width: 768px) {
    .hsj-ft-body { grid-template-columns: 1fr 1fr; padding: 36px 20px 28px; gap: 28px; }
    .hsj-ft-nl { padding: 18px 20px; flex-direction: column; align-items: flex-start; }
    .hsj-ft-nl-actions { width: 100%; }
    .hsj-ft-nl-btn-primary, .hsj-ft-nl-btn-secondary { flex: 1; justify-content: center; }
    .hsj-ft-bottom { padding: 16px 20px; flex-direction: column; align-items: flex-start; gap: 8px; }
}
@media (max-width: 480px) {
    .hsj-ft-body { grid-template-columns: 1fr; }
}