/* Kinore site header, menus, drawer, and search. Classes are prefixed kh- so
   the WordPress page styles underneath do not collide. */
/* The theme hides horizontal overflow on html and body, which makes the body
   a scroll container and stops the header sticking. Clipping keeps the same
   look without a scroll container. */
html, body { overflow-x: clip !important; }
#kinore-header, #kinore-header * { box-sizing: border-box; }
/* Reset the theme's global form-control styling inside the header. The id
   prefix on every rule keeps these ahead of the WordPress kit's selectors. */
#kinore-header button, #kinore-header input {
  all: unset; box-sizing: border-box; font-family: 'Montserrat', Arial, sans-serif; line-height: 1.4; cursor: pointer;
}
#kinore-header input { cursor: text; }
#kinore-header input::-webkit-search-decoration, #kinore-header input::-webkit-search-cancel-button { -webkit-appearance: none; }
#kinore-header button:focus-visible, #kinore-header input:focus-visible { outline: 2px solid #6205E3; outline-offset: 2px; }
#kinore-header [hidden] { display: none !important; }
#kinore-header a, #kinore-header a:hover, #kinore-header a:focus { text-decoration: none; box-shadow: none; }
#kinore-header svg { display: inline-block; vertical-align: middle; flex-shrink: 0; }
#kinore-header p, #kinore-header b, #kinore-header span, #kinore-header div, #kinore-header nav, #kinore-header header { margin: 0; }

/* The wrapper generates no box, so the sticky header's containing block is the
   page body and it stays pinned for the whole scroll. */
#kinore-header { display: contents; font-family: 'Montserrat', Arial, sans-serif; color: #1E1919; -webkit-font-smoothing: antialiased; font-size: 15px; line-height: 1.4; }
#kinore-header .kh-header, #kinore-header .kh-drawer, #kinore-header .kh-overlay, #kinore-header .kh-scrim { font-family: 'Montserrat', Arial, sans-serif; color: #1E1919; font-size: 15px; line-height: 1.4; }
#kinore-header a { color: #6205E3; text-decoration: none; }
#kinore-header a:hover { color: #4B03B0; }
#kinore-header button { font: inherit; cursor: pointer; }
#kinore-header input::placeholder { color: #807C88; }
#kinore-header .kh-header { position: sticky; top: 0; z-index: 60; background: #fff; border-bottom: 1px solid #E8E5EE; }
#kinore-header .kh-wrap { max-width: 1280px; margin: 0 auto; padding: 0 20px; }
#kinore-header .kh-topbar { background: #1E1919; color: #fff; }
#kinore-header .kh-topbar .kh-wrap { height: 36px; display: flex; align-items: center; justify-content: space-between; gap: 24px; font-size: 13px; font-weight: 600; }
#kinore-header .kh-topbar div { display: flex; gap: 20px; align-items: center; }
#kinore-header .kh-topbar a { color: #fff; display: flex; align-items: center; gap: 6px; }
#kinore-header .kh-topbar a:hover { color: #FABE19; }
#kinore-header .kh-bar { height: 72px; display: flex; align-items: center; gap: 24px; padding-top: 14px; padding-bottom: 14px; }
#kinore-header .kh-logo { display: flex; align-items: center; flex-shrink: 0; }
#kinore-header .kh-logo span { display: block; width: 96px; height: 44px; overflow: hidden; }
#kinore-header .kh-logo img { height: 44px; max-width: none; display: block; clip-path: polygon(0 0, 84.5% 0, 84.5% 83%, 24% 83%, 24% 100%, 0 100%); }
#kinore-header .kh-nav { display: flex; gap: 4px; flex: 1; min-width: 0; }
#kinore-header .kh-navbtn { display: flex; height: 44px; padding: 0 14px; display: flex; align-items: center; gap: 6px; border: none; border-radius: 999px; background: transparent; color: #1E1919; font-size: 15px; font-weight: 700; white-space: nowrap; }
#kinore-header .kh-navbtn:hover, #kinore-header .kh-navbtn[aria-expanded="true"] { background: #FABE19; color: #1E1919; }
#kinore-header .kh-navbtn svg { transition: transform 160ms; }
#kinore-header .kh-navbtn[aria-expanded="true"] svg { transform: rotate(180deg); }
#kinore-header .kh-searchbtn { display: flex; align-items: center; gap: 10px; width: 200px; flex-shrink: 0; height: 44px; padding: 0 8px 0 14px; border: 1px solid #D9D5E1; border-radius: 999px; background: #F8F7FA; color: #5E5B66; font-size: 14px; white-space: nowrap; }
#kinore-header .kh-searchbtn:hover { border-color: #6205E3; background: #fff; }
#kinore-header .kh-searchbtn span:first-of-type { flex: 1; min-width: 0; text-align: left; overflow: hidden; text-overflow: ellipsis; }
#kinore-header .kh-kbd { font-size: 12px; font-weight: 700; color: #5E5B66; border: 1px solid #D9D5E1; border-radius: 6px; padding: 2px 6px; background: #fff; }
#kinore-header .kh-cta { height: 44px; padding: 0 18px; display: flex; align-items: center; border-radius: 999px; background: #1E1919; color: #fff !important; font-size: 14px; font-weight: 700; white-space: nowrap; }
#kinore-header .kh-cta:hover { background: #000; color: #FABE19 !important; }
#kinore-header .kh-compact { display: none; flex: 1; justify-content: flex-end; gap: 10px; }
#kinore-header .kh-iconbtn { width: 44px; height: 44px; border-radius: 999px; border: 1px solid #D9D5E1; background: #F8F7FA; display: grid; place-items: center; }
#kinore-header .kh-menubtn { height: 44px; padding: 0 16px 0 14px; border-radius: 999px; border: none; background: #1E1919; color: #fff; display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 700; }
/* Header search mode */
#kinore-header .kh-hsearch { display: none; flex: 1; min-width: 0; align-items: center; gap: 12px; }
#kinore-header .kh-hsearch .kh-field { flex: 1; min-width: 0; display: flex; align-items: center; gap: 10px; height: 48px; padding: 0 8px 0 16px; border: 2px solid #6205E3; border-radius: 999px; background: #fff; }
#kinore-header .kh-field input { display: block; flex: 1; min-width: 0; height: 40px; border: none; outline: none; font: inherit; font-size: 17px; font-weight: 500; color: #1E1919; background: transparent; }
#kinore-header .kh-cancel { display: flex; align-items: center; height: 44px; padding: 0 4px; border: none; background: none; font-size: 15px; font-weight: 700; color: #6205E3; flex-shrink: 0; }
#kinore-header[data-searching="true"] .kh-hsearch { display: flex; }
#kinore-header[data-searching="true"] .kh-nav, #kinore-header[data-searching="true"] .kh-searchbtn, #kinore-header[data-searching="true"] .kh-cta, #kinore-header[data-searching="true"] .kh-compact { display: none !important; }
/* Mega menu */
#kinore-header .kh-mega { display: none; position: absolute; top: 100%; left: 0; right: 0; background: #fff; border-top: 1px solid #E8E5EE; box-shadow: 0 24px 48px rgba(30,25,25,0.12); }
#kinore-header .kh-mega[data-open="true"] { display: block; }
#kinore-header .kh-mega .kh-wrap { padding: 28px 20px 32px; }
#kinore-header .kh-panel { display: none; }
#kinore-header .kh-panel[data-active="true"] { display: block; }
#kinore-header .kh-grid-services { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(260px, 300px); gap: 32px; }
#kinore-header .kh-col { display: flex; flex-direction: column; gap: 4px; }
#kinore-header .kh-colhead { display: flex; flex-direction: column; gap: 4px; padding: 8px 10px 12px; color: #1E1919 !important; border-bottom: 1px solid #E8E5EE; margin-bottom: 6px; }
#kinore-header .kh-colhead b { font-size: 16px; font-weight: 800; }
#kinore-header .kh-colhead span { font-size: 13px; line-height: 1.45; color: #5E5B66; font-weight: 500; }
#kinore-header .kh-link { padding: 8px 10px; border-radius: 8px; font-size: 15px; font-weight: 600; color: #1E1919 !important; }
#kinore-header .kh-link:hover { background: #FEF3D2; }
#kinore-header .kh-link2 { display: flex; flex-direction: column; gap: 2px; padding: 10px; border-radius: 10px; color: #1E1919 !important; }
#kinore-header .kh-link2:hover { background: #FEF3D2; }
#kinore-header .kh-link2 b { font-size: 15px; font-weight: 700; }
#kinore-header .kh-link2 span { font-size: 13px; color: #5E5B66; font-weight: 500; line-height: 1.4; }
#kinore-header .kh-eyebrow { font-size: 12px; font-weight: 800; letter-spacing: 0.08em; color: #5E5B66; padding: 0 10px 8px; }
#kinore-header .kh-card-purple { background: #6205E3; color: #fff; border-radius: 16px; padding: 24px; display: flex; flex-direction: column; gap: 12px; align-self: start; }
#kinore-header .kh-card-purple b { font-size: 20px; font-weight: 800; line-height: 1.25; }
#kinore-header .kh-card-purple p { margin: 0; font-size: 14px; line-height: 1.55; color: #EDE4FC; }
#kinore-header .kh-card-purple .kh-cta { margin-top: 6px; justify-content: center; }
#kinore-header .kh-card-purple .kh-more { font-size: 14px; font-weight: 700; color: #fff !important; text-align: center; padding: 4px; }
#kinore-header .kh-grid-who { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(260px, 340px); gap: 32px; }
#kinore-header .kh-all { padding: 10px; font-size: 14px; font-weight: 700; }
#kinore-header .kh-card-yellow { background: #FABE19; border-radius: 16px; padding: 24px; display: flex; flex-direction: column; gap: 12px; color: #1E1919 !important; align-self: start; }
#kinore-header .kh-card-yellow .kh-eyebrow { color: #1E1919; padding: 0; }
#kinore-header .kh-card-yellow .kh-stat { font-size: 36px; font-weight: 800; letter-spacing: -0.02em; line-height: 1; }
#kinore-header .kh-card-yellow .kh-statdesc { font-size: 14px; font-weight: 600; }
#kinore-header .kh-card-yellow .kh-quote { font-size: 15px; line-height: 1.5; font-weight: 500; }
#kinore-header .kh-card-yellow .kh-more { font-size: 14px; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
#kinore-header .kh-grid-res { display: grid; grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr); gap: 32px; }
#kinore-header .kh-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
#kinore-header .kh-tile { display: flex; flex-direction: column; gap: 6px; padding: 18px; border-radius: 12px; border: 1px solid #E8E5EE; color: #1E1919 !important; }
#kinore-header .kh-tile:hover { border-color: #FABE19; background: #FEF3D2; }
#kinore-header .kh-tile b { font-size: 16px; font-weight: 800; }
#kinore-header .kh-tile span { font-size: 14px; line-height: 1.5; color: #5E5B66; font-weight: 500; }
#kinore-header .kh-card-dark { background: #1E1919; color: #fff !important; border-radius: 16px; padding: 24px; display: flex; flex-direction: column; gap: 10px; }
#kinore-header .kh-card-dark .kh-eyebrow { color: #FABE19; padding: 0; }
#kinore-header .kh-card-dark b { font-size: 20px; font-weight: 800; line-height: 1.3; }
#kinore-header .kh-card-dark span { font-size: 14px; line-height: 1.5; color: #D4D0DB; }
#kinore-header .kh-card-dark .kh-more { margin-top: auto; font-size: 14px; font-weight: 700; color: #fff; }
#kinore-header .kh-grid-about { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(260px, 320px); gap: 32px; }
#kinore-header .kh-offices { display: flex; flex-direction: column; gap: 10px; padding: 0 10px; }
#kinore-header .kh-offices .kh-eyebrow { padding: 0 0 4px; }
#kinore-header .kh-office b { display: block; font-size: 14px; font-weight: 700; }
#kinore-header .kh-office span { font-size: 13px; color: #5E5B66; font-weight: 500; line-height: 1.4; }
#kinore-header .kh-card-leader { background: #F6F4F9; border-radius: 16px; padding: 20px; display: flex; gap: 16px; align-items: center; color: #1E1919 !important; align-self: start; }
#kinore-header .kh-card-leader .kh-photo { width: 72px; height: 72px; flex-shrink: 0; border-radius: 12px; background-size: cover; background-position: center 15%; }
#kinore-header .kh-card-leader div div { display: flex; flex-direction: column; gap: 4px; }
#kinore-header .kh-card-leader b { font-size: 15px; font-weight: 800; }
#kinore-header .kh-card-leader .kh-role { font-size: 13px; color: #4A4752; font-weight: 500; }
#kinore-header .kh-card-leader .kh-more { font-size: 13px; font-weight: 700; color: #6205E3; }
#kinore-header .kh-scrim { display: none; position: fixed; inset: 0; z-index: 55; background: rgba(30,25,25,0.35); }
#kinore-header .kh-scrim[data-open="true"] { display: block; }
/* Drawer */
#kinore-header .kh-drawer { display: none; position: fixed; inset: 0; z-index: 2147483000; justify-content: flex-end; }
#kinore-header .kh-drawer[data-open="true"] { display: flex; }
#kinore-header .kh-drawer .kh-dscrim { position: absolute; inset: 0; background: rgba(30,25,25,0.5); }
#kinore-header .kh-dpanel { position: relative; width: 100%; max-width: 440px; height: 100%; background: #fff; display: flex; flex-direction: column; box-shadow: -24px 0 64px rgba(30,25,25,0.2); }
#kinore-header .kh-dhead { height: 72px; flex-shrink: 0; display: flex; align-items: center; justify-content: space-between; padding: 0 16px 0 20px; border-bottom: 1px solid #E8E5EE; }
#kinore-header .kh-dhead .kh-logo span { width: 70px; height: 32px; }
#kinore-header .kh-dhead .kh-logo img { height: 32px; }
#kinore-header .kh-close { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 999px; border: none; background: #F0EEF3; color: #1E1919; font-size: 22px; line-height: 1; }
#kinore-header .kh-dbody { flex: 1; overflow-y: auto; padding: 8px 12px; overscroll-behavior: contain; }
#kinore-header .kh-dsearch { display: flex; width: 100%; align-items: center; gap: 10px; width: 100%; height: 48px; margin: 8px 0 12px; padding: 0 14px; border: 1px solid #D9D5E1; border-radius: 999px; background: #F8F7FA; font-size: 15px; color: #5E5B66; text-align: left; }
#kinore-header .kh-dsec { border-bottom: 1px solid #E8E5EE; }
#kinore-header .kh-dtoggle { display: flex; width: 100%; min-height: 56px; padding: 0 8px; display: flex; align-items: center; justify-content: space-between; border: none; background: none; font-size: 18px; font-weight: 800; color: #1E1919; text-align: left; }
#kinore-header .kh-dtoggle svg { transition: transform 160ms; }
#kinore-header .kh-dtoggle[aria-expanded="true"] svg { transform: rotate(180deg); }
#kinore-header .kh-dlinks { display: none; flex-direction: column; padding: 0 0 12px; }
#kinore-header .kh-dtoggle[aria-expanded="true"] + .kh-dlinks { display: flex; }
#kinore-header .kh-dlinks .kh-eyebrow { padding: 12px 8px 4px; }
#kinore-header .kh-dlink { min-height: 44px; display: flex; align-items: center; padding: 0 8px; border-radius: 8px; font-size: 16px; font-weight: 600; color: #1E1919 !important; }
#kinore-header .kh-dlink:hover { background: #FEF3D2; }
#kinore-header .kh-dall { min-height: 44px; display: flex; align-items: center; padding: 0 8px; font-size: 15px; font-weight: 700; }
#kinore-header .kh-dfoot { flex-shrink: 0; padding: 16px 20px 20px; border-top: 1px solid #E8E5EE; display: flex; flex-direction: column; gap: 10px; background: #fff; }
#kinore-header .kh-dfoot .kh-cta { height: 52px; justify-content: center; font-size: 16px; }
#kinore-header .kh-dpair { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
#kinore-header .kh-dpair a { height: 48px; display: flex; align-items: center; justify-content: center; border-radius: 999px; border: 1px solid #D9D5E1; color: #1E1919 !important; font-size: 15px; font-weight: 700; }
#kinore-header .kh-dpair a:hover { background: #FABE19; border-color: #FABE19; }
#kinore-header .kh-dcontact { display: flex; justify-content: center; gap: 16px; flex-wrap: wrap; font-size: 14px; font-weight: 600; padding-top: 4px; }
/* Search overlay */
#kinore-header .kh-overlay { display: none; position: fixed; top: 108px; left: 0; right: 0; bottom: 0; z-index: 2147482000; justify-content: center; align-items: flex-start; padding: 8px 20px 20px; }
#kinore-header .kh-overlay[data-open="true"] { display: flex; }
#kinore-header .kh-oscrim { position: absolute; inset: 0; background: rgba(30,25,25,0.5); }
#kinore-header .kh-dialog { position: relative; width: 100%; max-width: 1240px; max-height: calc(100vh - 100px); background: #fff; border-radius: 16px; display: flex; flex-direction: column; overflow: hidden; box-shadow: 0 24px 64px rgba(30,25,25,0.25); }
#kinore-header .kh-mhead { display: none; align-items: center; gap: 12px; padding: 12px 16px 12px 20px; border-bottom: 1px solid #E8E5EE; }
#kinore-header .kh-mhead input { display: block; flex: 1; min-width: 0; height: 44px; border: none; outline: none; font: inherit; font-size: 18px; font-weight: 500; color: #1E1919; background: transparent; }
#kinore-header .kh-chips { display: none; gap: 8px; padding: 12px 20px; overflow-x: auto; border-bottom: 1px solid #E8E5EE; scrollbar-width: none; flex-shrink: 0; }
#kinore-header .kh-chips[data-show="true"] { display: flex; }
#kinore-header .kh-chip { display: flex; flex-shrink: 0; height: 36px; padding: 0 14px; border-radius: 999px; border: 1px solid #D9D5E1; background: #fff; color: #1E1919; font-size: 14px; font-weight: 600; display: flex; align-items: center; gap: 6px; white-space: nowrap; }
#kinore-header .kh-chip[aria-pressed="true"] { background: #FABE19; border-color: #FABE19; }
#kinore-header .kh-chip small { font-size: 12px; font-weight: 700; opacity: 0.75; }
#kinore-header .kh-list { flex: 1; overflow-y: auto; padding: 8px 12px 20px; overscroll-behavior: contain; }
#kinore-header .kh-empty { display: flex; flex-direction: column; gap: 24px; padding: 12px 8px; }
#kinore-header .kh-sechead { display: flex; justify-content: space-between; align-items: center; }
#kinore-header .kh-sechead .kh-eyebrow, #kinore-header .kh-empty .kh-eyebrow { padding: 0; }
#kinore-header .kh-textbtn { display: inline-block; background: none; font-size: 13px; font-weight: 600; color: #6205E3; padding: 4px; }
#kinore-header .kh-recent { display: flex; width: 100%; align-items: center; gap: 12px; min-height: 44px; padding: 0 10px; border: none; border-radius: 10px; background: transparent; font-size: 15px; font-weight: 500; color: #1E1919; text-align: left; width: 100%; }
#kinore-header .kh-recent:hover { background: #FEF3D2; }
#kinore-header .kh-recent span { color: #807C88; font-size: 14px; }
#kinore-header .kh-pills { display: flex; flex-wrap: wrap; gap: 8px; }
#kinore-header .kh-pill { display: inline-flex; align-items: center; height: 38px; padding: 0 14px; border-radius: 999px; border: 1px solid #D9D5E1; background: #fff; font-size: 14px; font-weight: 600; color: #1E1919; }
#kinore-header .kh-pill:hover { border-color: #FABE19; background: #FABE19; }
#kinore-header .kh-latest { display: flex; flex-direction: column; gap: 4px; padding: 12px 10px; border-radius: 10px; color: #1E1919 !important; }
#kinore-header .kh-latest:hover { background: #FEF3D2; }
#kinore-header .kh-latest b { font-size: 15px; font-weight: 700; line-height: 1.35; }
#kinore-header .kh-latest span { font-size: 13px; color: #5E5B66; font-weight: 500; }
#kinore-header .kh-summary { padding: 8px 8px 4px; font-size: 13px; font-weight: 600; color: #5E5B66; }
#kinore-header .kh-group { display: flex; flex-direction: column; gap: 4px; padding-top: 16px; }
#kinore-header .kh-ghead { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 8px 4px; }
#kinore-header .kh-ghead .kh-eyebrow { padding: 0; }
#kinore-header .kh-ghead .kh-eyebrow i { font-style: normal; color: #6205E3; }
#kinore-header .kh-more-btn { display: inline-block; background: none; font-size: 13px; font-weight: 700; color: #6205E3; padding: 6px 4px; }
#kinore-header .kh-people { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 8px; padding: 0 4px; }
#kinore-header .kh-person { display: flex; align-items: center; gap: 14px; padding: 10px; border-radius: 12px; border: 1px solid #E8E5EE; background: #fff; color: #1E1919 !important; }
#kinore-header .kh-person[data-active="true"] { background: #FEF3D2; border-color: #FABE19; }
#kinore-header .kh-avatar { width: 64px; height: 64px; flex-shrink: 0; border-radius: 12px; overflow: hidden; display: grid; place-items: center; background: #EFE6FD; background-size: cover; background-position: center 15%; font-size: 20px; font-weight: 800; color: #4B03B0; }
#kinore-header .kh-person div:last-child { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
#kinore-header .kh-person b { font-size: 15px; font-weight: 700; line-height: 1.3; }
#kinore-header .kh-person .kh-role { font-size: 13px; line-height: 1.35; color: #4A4752; font-weight: 500; }
#kinore-header .kh-person .kh-reason { font-size: 12px; color: #6205E3; font-weight: 600; }
#kinore-header .kh-result { display: flex; flex-direction: column; gap: 4px; padding: 12px; border-radius: 10px; color: #1E1919 !important; }
#kinore-header .kh-result[data-active="true"] { background: #FEF3D2; }
#kinore-header .kh-result b { font-size: 16px; font-weight: 700; line-height: 1.35; }
#kinore-header .kh-result .kh-snip { font-size: 14px; line-height: 1.5; color: #4A4752; }
#kinore-header .kh-result .kh-meta { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; font-size: 12px; font-weight: 600; color: #5E5B66; }
#kinore-header .kh-type { color: #4B03B0; background: #F2EBFE; border-radius: 4px; padding: 2px 6px; }
#kinore-header .kh-deep { color: #6205E3; }
#kinore-header mark { background: #FDE3A0; color: #1E1919; border-radius: 3px; padding: 0 1px; }
#kinore-header .kh-snip mark { font-weight: 600; }
#kinore-header .kh-none { display: flex; flex-direction: column; gap: 16px; padding: 32px 12px; align-items: flex-start; }
#kinore-header .kh-none b { font-size: 20px; font-weight: 800; }
#kinore-header .kh-none p { margin: 0; font-size: 15px; line-height: 1.55; color: #4A4752; max-width: 46ch; }
#kinore-header .kh-talk { height: 44px; padding: 0 18px; display: flex; align-items: center; border-radius: 999px; background: #FABE19; color: #1E1919 !important; font-size: 14px; font-weight: 700; }
#kinore-header .kh-talk:hover { background: #F0AE00; }
#kinore-header .kh-ofoot { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 10px 20px; border-top: 1px solid #E8E5EE; background: #F8F7FA; font-size: 12px; font-weight: 600; color: #5E5B66; }
#kinore-header .kh-ofoot div { display: flex; gap: 14px; align-items: center; }
#kinore-header .kh-ofoot b { color: #1E1919; }
#kinore-header .kh-ofoot a { font-weight: 700; }
#kinore-header .kh-loading { padding: 24px 12px; font-size: 14px; color: #5E5B66; }
html.kh-lock, body.kh-lock { overflow: hidden !important; }
@media (max-width: 1079px) {
  #kinore-header .kh-topbar, #kinore-header .kh-nav, #kinore-header .kh-searchbtn, #kinore-header .kh-cta.kh-bar-cta, #kinore-header .kh-mega { display: none !important; }
  #kinore-header .kh-compact { display: flex; }
  #kinore-header .kh-overlay { top: 72px; }
}
@media (max-width: 719px) {
  #kinore-header .kh-overlay { top: 0; padding: 0; }
  #kinore-header .kh-dialog { max-width: 100%; height: 100%; max-height: 100%; border-radius: 0; }
  #kinore-header .kh-mhead { display: flex; }
  #kinore-header .kh-ofoot { display: none; }
  #kinore-header[data-searching="true"] .kh-hsearch { display: none; }
  #kinore-header[data-searching="true"] .kh-compact { display: flex !important; }
}

/* The old WordPress cache plugin marks some sections data-wpr-lazyrender, which
   sets content-visibility: auto. That clips anything overflowing the section,
   such as the closing "Accountancy support solutions" card that overlaps the
   footer on most pages. Render those sections normally. */
[data-wpr-lazyrender] { content-visibility: visible !important; contain: none !important; }

/* The sticky "Get Started" bar at the bottom of the screen: above all page
   content (it was on layer 1, so cards and images covered it), below the
   header and its menus (50+). The closing purple "Accountancy support
   solutions" card (Elementor loop template 842) sits one layer higher, so
   the bar tucks behind it when you scroll down to it. */
.elementor-location-footer .sticky-contact { z-index: 45 !important; }
/* The old homepage hid the bar until visitors scrolled to a section that no
   longer exists, so it never appeared. Show it from the start, as on other pages. */
html body.home .elementor-location-footer .sticky-contact { display: flex !important; }
.e-parent:has(> .e-con-inner > .elementor-widget-loop-grid[data-settings*='template_id":"842"']),
.e-parent:has(> .elementor-widget-loop-grid[data-settings*='template_id":"842"']) { position: relative; z-index: 46; }
/* The footer itself also sits above the sticky bar, so the bar tucks behind it. */
.elementor-location-footer > .e-parent:not(.sticky-contact) { position: relative; z-index: 46; }
/* Layer order at the bottom of the page: sticky bar (45) < footer (46) <
   closing purple card (47), so the card always overlaps the footer. */
.e-parent:has(> .e-con-inner > .elementor-widget-loop-grid[data-settings*='template_id":"842"']),
.e-parent:has(> .elementor-widget-loop-grid[data-settings*='template_id":"842"']) { z-index: 47 !important; }
