/* Site footer (all pages) */
.kg-footer{--f-blue:#1A73E8;--f-navy:#0D47A1;--f-gold:#FFC107;--f-ink:#1f2937;--f-muted:#64748b;--f-line:#e3eaf6;
  font-family:"Poppins","Inter",system-ui,sans-serif;color:var(--f-ink);background:linear-gradient(180deg,#f7f9fd 0%,#eef3fc 100%);border-top:1px solid var(--f-line);position:relative;margin-top:0}
.kg-footer:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--f-blue),var(--f-gold),var(--f-blue))}
.kg-footer *{box-sizing:border-box}
.kg-footer .kgf-wrap{width:min(1320px,calc(100% - 48px));margin:0 auto}
@media(min-width:1700px){.kg-footer .kgf-wrap{width:min(1500px,calc(100% - 96px))}}
.kg-footer a{text-decoration:none;color:inherit}
.kg-footer ul{list-style:none;margin:0;padding:0}
.kg-footer li{list-style:none}

/* call-to-action strip */
.kgf-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;margin:56px 0 0;padding:34px 40px;border-radius:20px;color:#fff;
  background:radial-gradient(500px 220px at 90% 0%,rgba(255,193,7,.25),transparent 70%),linear-gradient(120deg,#0a3d8f,#1a73e8);box-shadow:0 20px 44px rgba(13,71,161,.25)}
.kgf-cta h3{margin:0 0 6px;font-family:"Playfair Display",Georgia,serif;font-weight:600;font-size:clamp(22px,2.4vw,30px);color:#fff}
.kgf-cta p{margin:0;font-size:16px;color:rgba(255,255,255,.88)}
.kgf-cta-btns{display:flex;gap:12px;flex-wrap:wrap}
.kgf-btn{display:inline-flex;align-items:center;gap:9px;padding:13px 24px;border-radius:999px;font-weight:600;font-size:15px;transition:transform .2s,background .2s,color .2s}
.kgf-btn:hover{transform:translateY(-2px)}
.kgf-btn-gold{background:var(--f-gold);color:#1f2937!important}
.kgf-btn-gold:hover{background:#fff}
.kgf-btn-line{border:1.5px solid rgba(255,255,255,.7);color:#fff!important}
.kgf-btn-line:hover{background:#fff;color:var(--f-navy)!important}

/* main grid */
.kgf-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr 1fr;gap:44px;padding:72px 0 50px}
.kgf-brand img{display:block;height:84px;width:auto;margin:0 0 18px}
.kgf-blurb{margin:0 0 22px;max-width:360px;font-size:15px;line-height:1.75;color:var(--f-muted)}
.kgf-blurb b{color:var(--f-navy)}
.kgf-contact{display:grid;gap:10px;margin:0 0 22px}
.kgf-contact a{display:flex;align-items:flex-start;gap:12px;padding:11px 14px;border:1px solid var(--f-line);border-radius:14px;background:#fff;font-size:14.5px;line-height:1.5;color:var(--f-ink);transition:border-color .2s,box-shadow .2s,transform .2s}
.kgf-contact a:hover{border-color:#bcd0f3;box-shadow:0 10px 22px rgba(13,71,161,.1);transform:translateY(-2px)}
.kgf-contact i{flex:0 0 34px;height:34px;display:grid;place-items:center;border-radius:10px;font-size:14px}
.kgf-contact a:nth-child(1) i{background:#e8f0fe;color:var(--f-blue)}
.kgf-contact a:nth-child(2) i{background:#e6f6ec;color:#198754}
.kgf-contact a:nth-child(3) i{background:#fff4cc;color:#b78103}
.kgf-contact span{word-break:break-word;align-self:center}
.kgf-social{display:flex;flex-wrap:wrap;gap:10px}
.kgf-social a i{display:block;line-height:1;width:1em;text-align:center}
.kgf-social a{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--f-line);border-radius:12px;background:#fff;color:var(--f-navy);font-size:17px;transition:all .2s}
.kgf-social a:hover{background:var(--f-blue);border-color:var(--f-blue);color:#fff;box-shadow:0 8px 16px rgba(13,71,161,.22)}
.kgf-social a.wa:hover{background:#25d366;border-color:#25d366}

.kgf-col h4{margin:0 0 20px;font-size:15px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--f-navy);position:relative;padding-bottom:12px}
.kgf-col h4:after{content:"";position:absolute;left:0;bottom:0;width:34px;height:3px;border-radius:3px;background:var(--f-gold)}
.kgf-col ul{display:grid;gap:12px}
.kgf-col a{position:relative;display:inline-block;font-size:15px;color:#475569;transition:color .2s,padding-left .2s}
.kgf-col a:hover{color:var(--f-blue);padding-left:8px}
.kgf-col a:before{content:"";position:absolute;left:0;top:50%;width:0;height:2px;border-radius:2px;background:var(--f-gold);transform:translateY(-50%);transition:width .2s}
.kgf-col a:hover:before{width:5px}
.kgf-new{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;background:var(--f-blue);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.04em;vertical-align:middle}

/* bottom bar */
.kgf-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px 28px;flex-wrap:wrap;padding:22px 0 26px;border-top:1px solid var(--f-line);font-size:14px;color:var(--f-muted)}
.kgf-bottom b{color:var(--f-ink)}
.kgf-bottom .kgf-tag{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border:1px solid #cfe0fb;border-radius:999px;background:#fff;color:var(--f-navy);font-weight:600;font-size:13px}
.kgf-bottom .kgf-tag i{color:#e0a31a}
.kgf-top{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--f-navy)}
.kgf-top:hover{color:var(--f-blue)}

@media(max-width:1200px){.kgf-grid{grid-template-columns:1.3fr 1fr 1fr;gap:40px 36px}.kgf-brand{grid-column:1/-1}.kgf-brand .kgf-contact{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.kgf-grid{grid-template-columns:1fr 1fr;padding:44px 0 36px}.kgf-brand .kgf-contact{grid-template-columns:1fr}.kgf-cta{padding:26px 24px}}
@media(max-width:520px){.kgf-grid{grid-template-columns:1fr 1fr;gap:34px 18px}.kgf-bottom{flex-direction:column;align-items:flex-start}.kg-footer .kgf-wrap{width:calc(100% - 32px)}}

/* centred logo, blurb, social icons and copyright */
.kgf-brand{text-align:center}
.kgf-brand > a{display:block}
.kgf-brand img{margin-left:auto;margin-right:auto}
.kgf-blurb{margin-left:auto;margin-right:auto}
.kgf-social{justify-content:center}
.kgf-bottom{justify-content:center;text-align:center}
.kgf-contact{text-align:left}

/* link columns */
.kgf-col ul{gap:14px}
.kgf-col a{font-size:15.5px;line-height:1.35}
.kgf-ext{margin-left:6px;font-size:11px;color:var(--f-muted);transition:color .2s}
.kgf-col a:hover .kgf-ext{color:var(--f-blue)}

/* policy links in the bottom bar */
.kgf-bottom{flex-direction:column;gap:14px}
.kgf-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px}
.kgf-legal a{font-size:14.5px;font-weight:500;color:#475569;transition:color .2s}
.kgf-legal a:hover{color:var(--f-blue)}

/* six columns: brand + five link columns */
.kgf-grid{grid-template-columns:1.4fr 1fr 1fr 1fr 1.1fr 1fr;gap:36px}
@media(max-width:1200px){.kgf-grid{grid-template-columns:1.3fr 1fr 1fr;gap:40px 36px}}
@media(max-width:820px){.kgf-grid{grid-template-columns:1fr 1fr}}
.kgf-bottom{flex-direction:row}
.kgf-bottom{flex-direction:column;align-items:center;gap:12px}
