.wpcf7 .screen-reader-response {
position: absolute;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
width: 1px;
margin: -1px;
padding: 0;
border: 0;
word-wrap: normal !important;
word-break: normal !important;
}
.wpcf7 .hidden-fields-container {
display: none;
}
.wpcf7 form .wpcf7-response-output {
margin: 2em 0.5em 1em;
padding: 0.2em 1em;
border: 2px solid #00a0d2; }
.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
border-color: #46b450; }
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
border-color: #dc3232; }
.wpcf7 form.spam .wpcf7-response-output {
border-color: #f56e28; }
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
border-color: #ffb900; }
.wpcf7-form-control-wrap {
position: relative;
}
.wpcf7-not-valid-tip {
color: #dc3232; font-size: 1em;
font-weight: normal;
display: block;
}
.use-floating-validation-tip .wpcf7-not-valid-tip {
position: relative;
top: -2ex;
left: 1em;
z-index: 100;
border: 1px solid #dc3232;
background: #fff;
padding: .2em .8em;
width: 24em;
}
.wpcf7-list-item {
display: inline-block;
margin: 0 0 0 1em;
}
.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
content: " ";
}
.wpcf7-spinner {
visibility: hidden;
display: inline-block;
background-color: #23282d; opacity: 0.75;
width: 24px;
height: 24px;
border: none;
border-radius: 100%;
padding: 0;
margin: 0 24px;
position: relative;
}
form.submitting .wpcf7-spinner {
visibility: visible;
}
.wpcf7-spinner::before {
content: '';
position: absolute;
background-color: #fbfbfc; top: 4px;
left: 4px;
width: 6px;
height: 6px;
border: none;
border-radius: 100%;
transform-origin: 8px 8px;
animation-name: spin;
animation-duration: 1000ms;
animation-timing-function: linear;
animation-iteration-count: infinite;
}
@media (prefers-reduced-motion: reduce) {
.wpcf7-spinner::before {
animation-name: blink;
animation-duration: 2000ms;
}
}
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@keyframes blink {
from {
opacity: 0;
}
50% {
opacity: 1;
}
to {
opacity: 0;
}
}
.wpcf7 [inert] {
opacity: 0.5;
}
.wpcf7 input[type="file"] {
cursor: pointer;
}
.wpcf7 input[type="file"]:disabled {
cursor: default;
}
.wpcf7 .wpcf7-submit:disabled {
cursor: not-allowed;
}
.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
direction: ltr;
}
.wpcf7-reflection > output {
display: list-item;
list-style: none;
}
.wpcf7-reflection > output[hidden] {
display: none;
}@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap");:root { --k-navy:        #002c4a; --k-navy-2:      #003a5f;
--k-blue:        #1863dc; --k-blue-2:      #0056a7; --k-blue-light:  #4a90d9;
--k-text:        #212121;
--k-muted:       #4e4b66;
--k-bg:          #ffffff;
--k-bg-alt:      #eef4fa; --k-bg-grey:     #f4f4f4;
--k-card-bg:     #ffffff;
--k-border:      #e3e8ee;
--k-white:       #ffffff;
--k-content-max: 1180px;
--k-content-pad: 24px;
--k-header-height: 88px;
--k-topbar-height: 40px;
--k-radius:      14px;
--k-radius-lg:   26px;
--k-shadow:      0 10px 30px rgba(0,44,74,.10);
--k-shadow-sm:   0 4px 14px rgba(0,44,74,.08);
--k-font: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
} *, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
margin: 0;
font-family: var(--k-font);
color: var(--k-text);
background: var(--k-bg);
font-size: 17px;
line-height: 1.65;
-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--k-blue-2); text-decoration: none; }
a:hover { color: var(--k-blue); }
h1, h2, h3, h4 { font-family: var(--k-font); color: var(--k-navy); line-height: 1.2; font-weight: 700; margin: 0 0 .5em; }
h1 { font-size: clamp(2rem, 4vw, 3rem); }
h2 { font-size: clamp(1.6rem, 3vw, 2.3rem); }
h3 { font-size: clamp(1.15rem, 2vw, 1.4rem); }
p { margin: 0 0 1em; }
p:last-child { margin-bottom: 0; } .k-container { max-width: var(--k-content-max); margin-inline: auto; padding-inline: var(--k-content-pad); }
.k-section { padding-block: clamp(48px, 7vw, 92px); }
.k-section--alt { background: var(--k-bg-alt); }
.k-section--grey { background: var(--k-bg-grey); }
.k-eyebrow { color: var(--k-blue-2); font-weight: 700; letter-spacing: .04em; text-transform: uppercase; font-size: .82rem; margin: 0 0 .6em; display: block; }
.k-lead { font-size: 1.08rem; color: var(--k-muted); } .k-btn {
display: inline-flex; align-items: center; gap: .5em;
padding: 13px 26px; border-radius: 999px;
font-weight: 700; font-size: .95rem; line-height: 1;
border: 2px solid transparent; cursor: pointer;
transition: transform .15s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
}
.k-btn:hover { transform: translateY(-2px); }
.k-btn--navy  { background: var(--k-navy); color: #fff; }
.k-btn--navy:hover  { background: var(--k-navy-2); color: #fff; }
.k-btn--blue  { background: var(--k-blue-light); color: #fff; }
.k-btn--blue:hover  { background: var(--k-blue-2); color: #fff; }
.k-btn--outline { background: transparent; color: var(--k-navy); border-color: var(--k-navy); }
.k-btn--outline:hover { background: var(--k-navy); color: #fff; }
.k-btn-row { display: flex; flex-wrap: wrap; gap: 14px; } .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); white-space: nowrap; }.k-topbar {
background: var(--k-navy);
color: #dbe6f0;
font-size: .82rem;
min-height: var(--k-topbar-height);
}
.k-topbar__inner {
display: flex; align-items: center; justify-content: flex-end;
gap: 26px; min-height: var(--k-topbar-height);
}
.k-topbar__item { display: inline-flex; align-items: center; gap: 7px; color: #dbe6f0; }
.k-topbar__item strong { color: #fff; font-weight: 700; }
.k-topbar__item svg { opacity: .85; }
a.k-topbar__item:hover { color: #fff; } .k-header {
position: sticky; top: 0; z-index: 100;
background: #fff;
box-shadow: 0 2px 18px rgba(0,44,74,.07);
transition: transform .3s ease;
}
.k-header__inner {
display: flex; align-items: center; gap: 24px;
min-height: var(--k-header-height);
}
.k-header__logo { flex: 0 0 auto; }
.k-header__logo img { max-height: 60px; width: auto; }
.k-logo-text { font-weight: 800; font-size: 1.4rem; color: var(--k-navy); }
.custom-logo-link { display: block; } .k-nav { margin-left: auto; }
.k-nav__list { list-style: none; display: flex; align-items: center; gap: 4px; margin: 0; padding: 0; }
.k-nav__item { position: relative; }
.k-nav__item > a {
display: inline-flex; align-items: center; gap: 5px;
padding: 10px 14px; font-weight: 600; font-size: .95rem;
color: var(--k-navy); border-radius: 8px;
}
.k-nav__item > a:hover,
.k-nav__item.current-menu-item > a,
.k-nav__item.current-menu-ancestor > a { color: var(--k-blue-2); }
.k-nav__caret { transition: transform .2s ease; }
.k-nav__item--has-children:hover .k-nav__caret { transform: rotate(180deg); } .k-subnav {
list-style: none; margin: 0; padding: 8px;
position: absolute; top: 100%; left: 0; min-width: 240px;
background: #fff; border-radius: 12px; box-shadow: var(--k-shadow);
opacity: 0; visibility: hidden; transform: translateY(8px);
transition: opacity .18s ease, transform .18s ease, visibility .18s;
z-index: 20;
}
.k-nav__item--has-children:hover > .k-subnav,
.k-nav__item--has-children:focus-within > .k-subnav {
opacity: 1; visibility: visible; transform: translateY(0);
}
.k-subnav li a {
display: block; padding: 9px 12px; border-radius: 8px;
font-weight: 500; font-size: .92rem; color: var(--k-text);
}
.k-subnav li a:hover { background: var(--k-bg-alt); color: var(--k-navy); } .k-burger { display: none; flex-direction: column; gap: 5px; background: none; border: 0; cursor: pointer; padding: 8px; margin-left: auto; }
.k-burger span { width: 26px; height: 2.5px; background: var(--k-navy); border-radius: 2px; transition: .25s; }
.k-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(7.5px) rotate(45deg); }
.k-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.k-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7.5px) rotate(-45deg); }
.k-drawer {
position: fixed; inset: 0; z-index: 200;
background: rgba(0,44,74,.45); backdrop-filter: blur(2px);
opacity: 0; visibility: hidden; transition: opacity .3s ease, visibility .3s;
}
.k-drawer.is-open { opacity: 1; visibility: visible; }
.k-drawer__panel {
position: absolute; top: 0; right: 0; height: 100%; width: min(360px, 86vw);
background: #fff; padding: 28px 24px; overflow-y: auto;
transform: translateX(100%); transition: transform .3s ease;
display: flex; flex-direction: column; gap: 6px;
}
.k-drawer.is-open .k-drawer__panel { transform: translateX(0); }
.k-drawer__close { align-self: flex-end; background: none; border: 0; font-size: 2rem; line-height: 1; color: var(--k-navy); cursor: pointer; }
.k-drawer__list, .k-drawer__list ul { list-style: none; margin: 0; padding: 0; }
.k-drawer__list a { display: block; padding: 12px 4px; font-weight: 600; color: var(--k-navy); border-bottom: 1px solid var(--k-border); }
.k-drawer__list .sub-menu a { padding-left: 18px; font-weight: 500; font-size: .95rem; }
.k-drawer__cta { justify-content: center; margin-top: 18px; } .k-pagehead {
background: linear-gradient(120deg, var(--k-navy), var(--k-blue-2));
color: #fff; padding: clamp(40px, 6vw, 72px) 0;
}
.k-pagehead h1 { color: #fff; margin: 0; }
.k-breadcrumb { margin-top: 10px; font-size: .9rem; color: #cfe0f0; }
.k-breadcrumb a { color: #fff; }
.k-pagehead--team .k-breadcrumb { margin: 0 0 12px; }
.k-pagehead__role { margin: 8px 0 0; color: #cfe0f0; font-weight: 600; font-size: 1.05rem; } .k-member { display: grid; grid-template-columns: 320px 1fr; gap: clamp(28px, 4vw, 56px); align-items: start; }
.k-member__aside { position: sticky; top: calc(var(--k-header-height) + 20px); display: grid; gap: 18px; }
.k-member__photo img { width: 100%; border-radius: var(--k-radius-lg); box-shadow: var(--k-shadow); object-fit: cover; }
.k-member__card { background: var(--k-bg-alt); border-radius: var(--k-radius); padding: 22px; }
.k-member__name { margin: 0 0 4px; font-size: 1.3rem; }
.k-member__role { margin: 0 0 16px; color: var(--k-blue-2); font-weight: 600; font-size: .95rem; }
.k-member__back { width: 100%; justify-content: center; }
.k-member__bio { max-width: none; margin: 0; }
.k-member__bio p { margin-bottom: 1.1em; color: var(--k-text); }
@media (max-width: 780px) {
.k-member { grid-template-columns: 1fr; }
.k-member__aside { position: static; }
.k-member__photo { max-width: 320px; }
} .k-prose { max-width: 820px; margin-inline: auto; }
.k-prose h2 { margin-top: 1.6em; }
.k-prose ul, .k-prose ol { padding-left: 1.3em; }
.k-prose a { color: var(--k-blue-2); text-decoration: underline; } @media (max-width: 992px) {
.k-nav { display: none; }
.k-burger { display: flex; }
:root { --k-header-height: 72px; }
}
@media (max-width: 640px) {
.k-topbar__inner { justify-content: center; gap: 14px; font-size: .76rem; flex-wrap: wrap; }
}
@media (max-width: 480px) { .k-topbar__inner { justify-content: center; }
.k-topbar__item + .k-topbar__item { display: none; }
}.k-git {
background: var(--k-navy);
background-size: cover; background-position: center;
color: #eaf1f8; padding: clamp(48px, 7vw, 84px) 0;
}
.k-git__inner { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 64px); align-items: start; }
.k-git__intro h2 { color: #fff; }
.k-git__intro p { color: #cddcea; max-width: 40ch; }
.k-git__contacts { list-style: none; margin: 22px 0 0; padding: 0; display: grid; gap: 14px; }
.k-git__contacts li a, .k-git__contacts li span { display: inline-flex; align-items: flex-start; gap: 11px; color: #eaf1f8; line-height: 1.4; }
.k-git__contacts li a:hover { color: #fff; }
.k-git__contacts svg { flex: 0 0 auto; margin-top: 2px; opacity: .9; }
.k-git__form .wpcf7-form { display: grid; gap: 14px; }
.k-git__form input[type=text],
.k-git__form input[type=email],
.k-git__form input[type=tel],
.k-git__form textarea {
width: 100%; padding: 14px 16px; border: 0; border-radius: 10px;
background: rgba(255,255,255,.96); font-family: inherit; font-size: 1rem; color: var(--k-text);
}
.k-git__form textarea { min-height: 120px; resize: vertical; }
.k-git__form label { display: grid; gap: 6px; font-size: .9rem; color: #cddcea; font-weight: 600; }
.k-git__form .wpcf7-submit,
.k-git__form input[type=submit] {
background: var(--k-blue-light); color: #fff; border: 0; border-radius: 999px;
padding: 14px 34px; font-weight: 700; font-family: inherit; cursor: pointer; font-size: 1rem;
transition: background .2s ease, transform .15s ease; justify-self: start;
}
.k-git__form input[type=submit]:hover { background: var(--k-blue-2); transform: translateY(-2px); }
.k-git__placeholder { background: rgba(255,255,255,.1); padding: 24px; border-radius: 12px; }
.k-git__form .wpcf7-response-output { border-radius: 8px; margin: 8px 0 0; } .k-footer { background: #06263c; color: #b9c9d8; padding-top: clamp(44px, 5vw, 68px); font-size: .95rem; }
.k-footer__cols { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 32px; padding-bottom: 40px; }
.k-footer__brand img { max-height: 54px; width: auto; background: #fff; padding: 8px 12px; border-radius: 10px; margin-bottom: 14px; }
.k-footer__col h3 { color: #fff; font-size: 1.05rem; margin-bottom: 14px; }
.k-footer__menu { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.k-footer__menu a { color: #b9c9d8; }
.k-footer__menu a:hover { color: #fff; }
.k-footer__bar { border-top: 1px solid rgba(255,255,255,.1); padding: 18px 0; }
.k-footer__bar p { margin: 0; font-size: .85rem; color: #8ba3b8; text-align: center; }
@media (max-width: 900px) {
.k-git__inner { grid-template-columns: 1fr; }
.k-footer__cols { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 520px) {
.k-footer__cols { grid-template-columns: 1fr; }
}.k-fade-up { opacity: 0; transform: translateY(28px); transition: opacity .6s ease, transform .6s ease; }
.k-fade-up.is-visible { opacity: 1; transform: none; }
.k-fade-up-stagger .k-fade-up-item { opacity: 0; transform: translateY(24px); transition: opacity .5s ease, transform .5s ease; }
.k-fade-up-stagger.is-visible .k-fade-up-item { opacity: 1; transform: none; }
.k-fade-up-stagger.is-visible .k-fade-up-item:nth-child(2) { transition-delay: .1s; }
.k-fade-up-stagger.is-visible .k-fade-up-item:nth-child(3) { transition-delay: .2s; }
.k-fade-up-stagger.is-visible .k-fade-up-item:nth-child(4) { transition-delay: .3s; }
@media (prefers-reduced-motion: reduce) {
.k-fade-up, .k-fade-up-stagger .k-fade-up-item { opacity: 1 !important; transform: none !important; transition: none !important; }
}