/* Approved homepage chrome + inner page system (shared by About / Contact / Use Cases) */
:root{
  --ink:#18314e;--muted:#566b7c;--teal:#188e3d;--deep:#0868de;--line:#dce5ef;
  --paper:#fff;--tint:#f1f6fd;--warm:#f6f9f7;--red:#e22d36;--green:#13a23a;
  --shadow:0 14px 42px rgba(16,57,59,.09);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.fk-site{
  margin:0;background:#fff;color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;
  font-size:16px;line-height:1.65;overflow-x:clip;
}
body.fk-site img{max-width:100%}
body.fk-site a{color:inherit;text-decoration:none}
body.fk-site a:hover{text-decoration:underline}
body.fk-site button,body.fk-site input,body.fk-site textarea,body.fk-site select{font:inherit}
.fk-skip-link{
  position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;
}
.fk-skip-link:focus{left:12px;top:12px;width:auto;height:auto;padding:8px 12px;background:#fff;z-index:100;border-radius:8px}
.container{width:min(1140px,calc(100% - 44px));margin:auto}
.kicker{text-transform:uppercase;letter-spacing:.19em;font-size:.72rem;font-weight:800;color:var(--deep)}
.btn,body.fk-site a.btn,body.fk-site button.btn{
  display:inline-flex;gap:9px;align-items:center;justify-content:center;
  border:1px solid var(--deep);background:var(--deep);color:#fff!important;
  padding:12px 19px;border-radius:9px;font-weight:700;font-size:.92rem;
  transition:.2s;min-height:44px;cursor:pointer;text-decoration:none!important;
}
.btn:hover,body.fk-site a.btn:hover,body.fk-site button.btn:hover{
  background:#0554b3;color:#fff!important;text-decoration:none!important;transform:translateY(-1px);
}
.btn.outline,body.fk-site a.btn.outline{
  background:#fff;color:var(--deep)!important;border-color:#9fbcbb;
}
.btn.outline:hover,body.fk-site a.btn.outline:hover{
  background:var(--tint);color:var(--deep)!important;
}
.btn.text,body.fk-site a.btn.text{border:0;background:transparent;color:var(--deep)!important;padding-inline:5px}
.btn.sm{min-height:38px;padding:8px 14px;font-size:.85rem}
.icon-btn{
  display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;
  border:1px solid var(--line);background:#fff;color:var(--ink);font-size:1.25rem;cursor:pointer;
}

/* Header — match approved homepage */
.site-head{
  position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);border-bottom:2px solid #086be1;
}
.head-row{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:78px}
.brand{line-height:1;flex-shrink:0;text-decoration:none!important;min-width:0}
.official-logo{display:block;width:auto;max-width:165px;height:43px;object-fit:contain;object-position:left;background:#fff}
.brand b,.logo-fallback{font-weight:900;font-size:1.65rem;letter-spacing:-.07em;color:var(--deep)}
.brand small{display:block;font-size:.52rem;letter-spacing:.1em;margin-top:7px;color:var(--muted);font-weight:800}
.nav{display:flex;align-items:center;gap:23px}
.nav a{font-size:.85rem;font-weight:650;color:#38545a;white-space:nowrap;text-decoration:none!important}
.nav a:hover,.nav a.is-active{color:var(--teal)}
.right-head{display:flex;align-items:center;gap:10px;flex-shrink:0}
.mobile-toggle{display:none}
.mobile-nav{
  display:none;flex-direction:column;gap:12px;padding:16px 22px;
  border-top:1px solid var(--line);background:#fff;
}
.mobile-nav.show{display:flex}
.mobile-nav a{padding:8px 0;font-weight:700;text-decoration:none!important;color:var(--ink)}
.mobile-nav a:hover{color:var(--teal);text-decoration:none!important}

/* Footer — match approved homepage */
.foot{background:#103e8f;color:#e8f1f0;padding:55px 0 20px;border-top:5px solid #e32d36;margin-top:0}
.foot-grid{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:35px}
.foot .brand b,.foot .logo-fallback{color:#fff}
.foot .brand small{color:#c0d4d2}
.foot .official-logo{max-width:175px;height:49px;filter:none;background:#fff}
.foot h3{font-size:.88rem;color:#fff;margin:0 0 16px}
.foot-grid a{display:block;font-size:.83rem;color:#cadcdb;margin-bottom:9px;text-decoration:none!important}
.foot-grid a:hover{color:#fff;text-decoration:none!important}
.foot p{font-size:.86rem;color:#c5d9d7;max-width:250px;margin-top:21px}
.foot-bottom{
  border-top:1px solid #416269;padding-top:20px;margin-top:37px;
  display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:.72rem;color:#bed0d0;
}
.foot-bottom a{
  display:inline;font-size:inherit;color:#bed0d0;margin:0;text-decoration:none!important;
  white-space:nowrap;
}
.foot-bottom a:hover{color:#fff;text-decoration:underline!important}
.foot-bottom > span:last-child{white-space:normal}

/* Inner page content system aligned to homepage */
.fk-page-main{min-height:60vh}
.fk-page-hero{
  text-align:center;padding:76px 0 45px;background:linear-gradient(180deg,#fff 0%,#f1f6fd 100%);
}
.fk-page-hero h1{
  font-size:clamp(1.7rem,3.2vw,2.6rem);line-height:1.25;letter-spacing:-.03em;
  max-width:820px;margin:10px auto 16px;font-weight:800;
}
.fk-page-hero .lead{
  max-width:720px;margin:0 auto 22px;color:#455d65;font-size:1.04rem;
}
.fk-page-hero .brandline{font-weight:800;color:var(--deep);letter-spacing:.04em;font-size:.78rem}
.fk-page-hero .actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:8px}
.fk-section{padding:64px 0}
.fk-section.tint{background:var(--tint)}
.fk-section.warm{background:#f7fbf8}
.fk-section-head{max-width:720px;margin:0 auto 28px;text-align:center}
.fk-section-head.left{text-align:left;margin-left:0}
.fk-section-head h2{
  font-size:clamp(1.55rem,2.6vw,2.15rem);line-height:1.2;letter-spacing:-.02em;margin:8px 0 12px;
}
.fk-section-head p{color:var(--muted);margin:0}
.fk-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.fk-card-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.fk-card-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.fk-card{
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 18px;
  box-shadow:0 8px 24px rgba(16,57,59,.04);
}
.fk-card h3{margin:0 0 8px;font-size:1.05rem}
.fk-card p,.fk-card li{color:var(--muted);font-size:.92rem;margin:0}
.fk-card ul{margin:8px 0 0;padding-left:18px}
.fk-pillrow{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.fk-pill{
  background:#e8f2ff;color:#125bd1;border-radius:999px;padding:7px 12px;
  font-size:.82rem;font-weight:700;
}
.fk-cta-band{
  background:var(--tint);border:1px solid var(--line);border-radius:16px;
  padding:28px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;
}
.fk-cta-band h2{margin:0 0 6px;font-size:1.35rem}
.fk-cta-band p{margin:0;color:var(--muted)}
.fk-contact-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:22px;align-items:start}
.fk-site .fkp-card,.fk-site .fkp-contact-details{
  background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;
  box-shadow:0 8px 24px rgba(16,57,59,.04);
}
.fk-site .fkp-contact-details h2,.fk-site .fkp-contact-form h2{margin-top:0}
.fk-site .fk-field label{font-size:.85rem;font-weight:750;margin:0 0 5px;display:block}
.fk-site .fk-field input,.fk-site .fk-field select,.fk-site .fk-field textarea{
  width:100%;border:1px solid #b9d0cf;border-radius:9px;padding:12px 14px;background:#fff;color:var(--ink);
}
.fk-site .fkp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fk-site .fk-btn{
  display:inline-flex;gap:9px;align-items:center;justify-content:center;
  border:1px solid var(--deep);background:var(--deep);color:#fff;
  padding:12px 19px;border-radius:9px;font-weight:700;font-size:.92rem;
  transition:.2s;min-height:44px;cursor:pointer;text-decoration:none!important;
}
.fk-site .fk-btn-primary{background:var(--deep);border-color:var(--deep);color:#fff}
.fk-site .fk-btn-outline{background:#fff;color:var(--deep);border-color:#9fbcbb}
.fk-site .fk-btn:hover{background:#0554b3;transform:translateY(-1px)}
.fk-site .fk-btn-outline:hover{background:var(--tint)}
.fk-site .fk-container{width:min(1140px,calc(100% - 44px));margin:auto}
.fk-goal-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:0}
.fk-goal-list li{
  background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 12px;
  font-size:.88rem;font-weight:700;min-height:72px;
}

@media(max-width:1040px){
  .nav{display:none}
  .mobile-toggle{display:inline-grid}
  .foot-grid{grid-template-columns:repeat(2,1fr)}
  .fk-card-grid,.fk-card-grid.four{grid-template-columns:repeat(2,1fr)}
  .fk-goal-list{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .fk-contact-layout,.fk-card-grid.two,.fkp-form-row{grid-template-columns:1fr}
  .fk-site .fkp-form-row{grid-template-columns:1fr}
}
/* Homepage mobile chrome breakpoints */
@media(max-width:650px){
  .container{width:min(100% - 30px,1140px)}
  .head-row{min-height:70px;gap:10px}
  .right-head{gap:8px}
  .right-head .small-signin{display:none}
  .official-logo{max-width:125px;height:38px}
  .foot .official-logo{max-width:125px;height:38px}
  .brand small{font-size:.42rem;letter-spacing:.08em;margin-top:5px;max-width:125px;line-height:1.35}
  .foot{padding:42px 0 18px}
  .foot-grid{grid-template-columns:repeat(2,1fr);gap:24px}
  .foot-bottom{display:block}
  .fk-card-grid,.fk-card-grid.four,.fk-goal-list{grid-template-columns:1fr}
  .fk-page-hero{padding:45px 0 32px}
  .fk-page-hero .actions{flex-direction:column;align-items:stretch}
  .fk-page-hero .actions .btn{width:100%}
}
@media(max-width:390px){
  .foot-grid{grid-template-columns:1fr;gap:22px}
  .official-logo,.foot .official-logo{max-width:110px;height:34px}
  .brand small{max-width:110px}
}
