:root {
    --sb-blue: #008bc8;
    --sb-blue-dark: #006f9f;
    --sb-green: #29a94b;
    --sb-green-dark: #22763a;
    --sb-navy: #071531;
    --sb-ink: #20313d;
    --sb-copy: #526674;
    --main-color-one: var(--sb-blue);
    --secondary-color: var(--sb-green);
    --primary-color-dark: var(--sb-green);
    --primary-color-light: var(--sb-blue);
    --kor-blue: var(--sb-blue);
    --kor-blue-bright: #43b2df;
    --kor-blue-deep: var(--sb-blue-dark);
    --kor-red: var(--sb-green);
    --fh-green: var(--sb-green);
    --fh-green-dark: var(--sb-green-dark);
    --fh-blue: var(--sb-blue);
    --fh-red: var(--sb-green);
}

body:not(.kor-admin) {
    color: var(--sb-copy);
    font-size: 16px;
    line-height: 1.65;
}

body:not(.kor-admin) p {
    font-size: 16px;
    line-height: 1.75;
}

body:not(.kor-admin) :where(input, select, textarea, button) {
    font-size: 15px;
}

body:not(.kor-admin) :where(a, button, input, select, textarea):focus-visible {
    outline-color: var(--sb-blue);
}

.fh-page-hero {
    background: linear-gradient(125deg, #071531 0%, #0a3b58 62%, #006f9f 100%);
}

.fh-page-hero::after {
    background: linear-gradient(90deg, var(--sb-blue) 0%, var(--sb-green) 45%, transparent 85%);
}

.fh-page-hero-title {
    font-size: clamp(30px, 3.2vw, 42px);
}

.fh-page-hero-breadcrumb {
    color: #d3e2e9;
    font-size: 14px;
}

.fh-page-hero-breadcrumb a {
    color: #63c4e7;
}

.fh-inner-page {
    --fh-green: var(--sb-green);
    --fh-green-dark: var(--sb-green-dark);
    --fh-blue: var(--sb-blue);
    --fh-red: var(--sb-green);
}

.fh-inner-page .fh-section-label {
    color: #00749f;
    background: #e8f5fa;
    border-color: #b7deeb;
    font-size: 13px;
}

.fh-inner-page .fh-section-title {
    font-size: clamp(30px, 3.4vw, 44px);
}

.fh-inner-page .fh-section-sub {
    font-size: 17px;
}

.fh-inner-page .fh-card:hover {
    border-color: rgba(0, 139, 200, .55);
}

.fh-inner-page .fh-accent-line {
    background: var(--sb-green);
}

.fh-inner-page .fh-btn {
    font-size: 15px;
}

.fh-inner-page .fh-btn-primary {
    background: var(--sb-blue);
    color: #fff;
}

.fh-inner-page .fh-btn-primary:hover {
    background: var(--sb-blue-dark);
}

.fh-inner-page .fh-btn-outline {
    color: var(--sb-blue-dark);
    border-color: var(--sb-blue);
}

.fh-inner-page .fh-field:focus {
    border-color: var(--sb-blue);
    box-shadow: 0 0 0 3px rgba(0, 139, 200, .16);
}

.fh-inner-page .fh-info-icon {
    color: var(--sb-blue-dark);
    background: rgba(0, 139, 200, .12);
}

.fh-inner-page .fh-info-label,
.fh-inner-page .fh-blog-meta,
.fh-inner-page .fh-section-sub {
    color: #526674;
}

.fh-inner-page .fh-blog-cat,
.fh-inner-page .fh-blog-read,
.fh-inner-page .fh-blog-title a:hover {
    color: var(--sb-blue-dark);
}

.fh-inner-page .fh-blog-title {
    font-size: 18px;
}

.kor-resources-page {
    background:
        radial-gradient(circle at 88% 8%, rgba(0, 139, 200, .10), transparent 28%),
        #f5f8fc;
    color: var(--sb-copy);
}

.kor-resources-page .fh-section-label {
    color: var(--sb-blue-dark);
    background: #e8f5fa;
    border-color: #b7deeb;
}

.kor-resources-page .fh-section-title span {
    color: var(--sb-blue-dark);
}

.kor-resources-page .fh-section-sub {
    color: var(--sb-copy);
}

.kor-resources-page .fh-res-card {
    border-color: #dce5eb;
}

.kor-resources-page .fh-res-card:hover {
    border-color: rgba(0, 139, 200, .55);
    box-shadow: 0 22px 48px rgba(0, 111, 159, .13);
}

.kor-resources-page .fh-res-icon {
    background: linear-gradient(135deg, #e5f4fa, #f3f9fc);
    border-color: #c8e5ef;
    color: var(--sb-blue-dark);
}

.kor-resources-page .fh-res-title {
    color: var(--sb-ink);
    font-size: 19px;
}

.kor-resources-page .fh-res-desc {
    color: var(--sb-copy);
    font-size: 16px;
    line-height: 1.7;
}

.kor-about {
    --ka-accent: #43b2df;
}

.kor-about-intro {
    background: radial-gradient(ellipse at 90% 15%, rgba(0, 139, 200, .12), transparent 62%);
}

.kor-about-intro h2 span,
.kor-about-proof > div,
.kor-about-leadership blockquote {
    border-color: var(--sb-blue);
}

.kor-about-intro h2 span,
.kor-about-audiences p span {
    color: #43b2df;
}

.kor-about-dot { background: var(--sb-green); }

.kor-about-button {
    background: var(--sb-blue-dark);
    border-color: var(--sb-blue);
    font-size: 15px;
}

.kor-about-button:hover {
    background: #005b83;
}

.kor-about-proof > div,
.kor-about-leadership blockquote {
    border-left-color: var(--sb-blue);
}

.kor-about-service-icon,
.kor-about-gallery figcaption span {
    color: #58bde1;
}

.kor-about-service-icon {
    background: rgba(0, 139, 200, .12);
    border-color: rgba(67, 178, 223, .25);
}

.kor-about-eyebrow,
.kor-about-number,
.kor-about-proof dd,
.kor-about-image-label,
.kor-about-gallery figcaption,
.kor-about-clients li {
    font-size: 14px;
}

.kor-about-text-link { font-size: 15px; }
.kor-about-text-link span { color: #b6c6d6; font-size: 13px; }
.kor-about-hero-image figcaption,
.kor-about-proof dd,
.kor-about-panel p,
.kor-about-section-heading > p,
.kor-about-service p,
.kor-about-clients li,
.kor-about-leader p,
.kor-about-values p,
.kor-about-leadership > div > p,
.kor-about-audiences p { font-size: 16px; }
.kor-about-service-index,
.kor-about-gallery figcaption span { font-size: 13px; }
.kor-about a:focus-visible { outline-color: #58bde1; }

.kor-team-eyebrow,
.kor-team .kor-team-role { color: #58bde1; }
.kor-team .kor-team-notice,
.kor-team-badge,
.kor-team-contact a {
    border-color: var(--sb-blue);
}
.kor-team .kor-team-notice { font-size: 15px; }
.kor-team-badge { color: #d9f3fb; font-size: 13px; }
.kor-team .kor-team-role,
.kor-team summary,
.kor-team-bio,
.kor-team-contact a { font-size: 15px; }
.kor-team-contact a { background: var(--sb-blue-dark); }
.kor-team-contact a:hover { background: #005b83; }
.kor-team a:focus-visible,
.kor-team summary:focus-visible { outline-color: #58bde1; }

.kor-solutions .ks-eyebrow,
.kor-solutions .ks-intro h2 > span,
.kor-solutions .ks-tab > i,
.kor-solutions .ks-body li::before,
.kor-solutions .ks-body a { color: #43b2df; }
.kor-solutions .ks-text-link:hover { border-color: var(--sb-green); }
.kor-solutions .ks-tab.is-active,
.kor-solutions .ks-button {
    background: var(--sb-blue);
    border-color: var(--sb-blue);
    color: #fff !important;
}
.kor-solutions .ks-tab.is-active > i,
.kor-solutions .ks-tab.is-active .ks-tab-number { color: #fff; }
.kor-solutions .ks-button:hover { background: var(--sb-blue-dark); }
.kor-solutions a:focus-visible,
.kor-solutions .ks-panel:focus-visible { outline-color: #58bde1; }
.kor-solutions .ks-intro > p,
.kor-solutions .ks-summary,
.kor-solutions .ks-body,
.kor-solutions .ks-cta p { font-size: 16px; }
.kor-solutions .ks-tab { font-size: 16px; }
.kor-solutions .ks-button { font-size: 16px; }
.kor-solutions .ks-tab-number,
.kor-solutions .ks-detail > .ks-eyebrow,
.kor-solutions .ks-photo figcaption { font-size: 13px; }
.kor-solutions .ks-eyebrow,
.kor-solutions .ks-detail > .ks-eyebrow { font-size: 14px; }

.kor-footer {
    border-top-color: var(--sb-blue);
}

.kor-footer .kor-footer-bottom {
    font-size: 14px;
}

.kor-footer .widget.footer-widget p,
.kor-footer .contact_info_list .details {
    font-size: 16px;
}

.kor-footer .contact_info_list .icon,
.kor-footer .kor-footer-bottom a {
    color: #58bde1;
}

.kor-footer .kor-footer-bottom a {
    text-decoration-color: var(--sb-green);
}

.kor-footer .kor-footer-bottom a:hover,
.kor-footer a:focus-visible {
    color: #82d69a;
}

.kor-assistant__quick-actions button,
.kor-assistant__form textarea { font-size: 14px; }
.kor-assistant__message { font-size: 15px; }
.kor-assistant__source { font-size: 13px; }

.kor-about,
.kor-team,
.kor-solutions,
.fh-inner-page.kor-contact-page,
.fh-inner-page.kor-resources-page,
.fh-inner-page.kor-blog-page,
.fh-inner-page.kor-legal-page {
    background: linear-gradient(145deg, #05080f 0%, #091323 52%, #071531 100%);
    color: #d3deeb;
}

.kor-about .kor-about-surface {
    background: linear-gradient(135deg, rgba(13, 23, 39, .82), rgba(7, 21, 49, .62));
    border-color: rgba(212, 230, 255, .12);
}

.kor-team-contact,
.kor-team .kor-team-notice {
    background: linear-gradient(135deg, rgba(20, 32, 54, .92), rgba(9, 24, 45, .92));
}

.kor-solutions .ks-intro h2,
.kor-solutions .ks-detail h2,
.kor-solutions .ks-cta h2,
.kor-solutions .ks-empty h2 {
    color: #f4f7fd;
}

.kor-solutions .ks-intro p,
.kor-solutions .ks-cta p,
.kor-solutions .ks-empty p {
    color: #c1ccda !important;
}

.kor-solutions .ks-eyebrow,
.kor-solutions .ks-intro h2 > span,
.kor-solutions .ks-tab > i,
.kor-solutions .ks-body li::before,
.kor-solutions .ks-body a {
    color: #58bde1;
}

.kor-solutions .ks-text-link {
    color: #e2edf7 !important;
    border-color: rgba(212, 230, 255, .3);
}

.kor-solutions .ks-text-link:hover {
    color: #fff !important;
    border-color: var(--sb-green);
}

.kor-solutions .ks-tab {
    background: linear-gradient(135deg, rgba(20, 32, 54, .96), rgba(11, 21, 38, .96));
    border-color: rgba(212, 230, 255, .14);
    color: #d6e0ed !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, .18);
}

.kor-solutions .ks-tab-number {
    color: #9aacc1;
}

.kor-solutions .ks-tab:hover {
    background: linear-gradient(135deg, #152b43, #10243a);
    border-color: rgba(0, 139, 200, .55);
}

.kor-solutions .ks-tab.is-active {
    background: var(--sb-blue);
    border-color: var(--sb-blue);
    color: #fff !important;
}

.kor-solutions .ks-tab.is-active > i,
.kor-solutions .ks-tab.is-active .ks-tab-number {
    color: #fff;
}

.kor-solutions .ks-panel {
    background: linear-gradient(145deg, #101c2d, #0a1424);
    border-color: rgba(212, 230, 255, .14);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .24);
}

.kor-solutions .ks-photo:after {
    background: linear-gradient(transparent, rgba(5, 8, 15, .84));
}

.kor-solutions .ks-summary {
    color: #d3deeb !important;
    border-color: rgba(212, 230, 255, .16);
}

.kor-solutions .ks-body,
.kor-solutions .ks-body p,
.kor-solutions .ks-body li,
.kor-solutions .ks-body span {
    color: #c1ccda !important;
}

.kor-solutions .ks-body h3,
.kor-solutions .ks-body h4 {
    color: #f4f7fd;
}

.kor-solutions .ks-cta {
    border-color: rgba(212, 230, 255, .16);
}

.kor-contact-page .fh-info-card,
.kor-contact-page .fh-card.mt-3 {
    background: linear-gradient(145deg, rgba(20, 32, 54, .96), rgba(11, 21, 38, .96));
    border-color: rgba(212, 230, 255, .14);
    box-shadow: 0 16px 38px rgba(0, 0, 0, .2);
}

.kor-contact-page .fh-info-label,
.kor-contact-page .fh-info-value,
.kor-contact-page .fh-card.mt-3 p {
    color: #c1ccda !important;
}

.kor-contact-page .fh-info-label {
    color: #72c9e8 !important;
}

.kor-contact-page .fh-info-icon {
    background: linear-gradient(135deg, rgba(0, 139, 200, .24), rgba(41, 169, 75, .12));
    border-color: rgba(88, 189, 225, .26);
    color: #72c9e8;
}

.kor-resources-page .fh-section-title {
    color: #f4f7fd;
}

.kor-resources-page .fh-section-label {
    color: #72c9e8;
    background: rgba(0, 139, 200, .15);
    border-color: rgba(88, 189, 225, .28);
}

.kor-resources-page .fh-section-sub {
    color: #c1ccda;
}

.kor-resources-page .fh-res-card {
    background: linear-gradient(145deg, rgba(20, 32, 54, .96), rgba(11, 21, 38, .96));
    border-color: rgba(212, 230, 255, .14);
    box-shadow: 0 16px 38px rgba(0, 0, 0, .2);
}

.kor-resources-page .fh-res-card::after {
    background: rgba(0, 139, 200, .12);
}

.kor-resources-page .fh-res-icon {
    background: linear-gradient(135deg, rgba(0, 139, 200, .24), rgba(41, 169, 75, .12));
    border-color: rgba(88, 189, 225, .26);
    color: #72c9e8;
}

.kor-resources-page .fh-res-title {
    color: #f4f7fd;
}

.kor-resources-page .fh-res-desc,
.kor-resources-page .text-center[style] {
    color: #c1ccda !important;
}

.kor-resources-page .fh-btn-primary {
    background: var(--sb-blue);
    box-shadow: 0 8px 18px rgba(0, 111, 159, .25);
}

.kor-resources-page .fh-btn-primary:hover {
    background: var(--sb-blue-dark);
}

.kor-blog-page .fh-blog-card,
.kor-blog-page .fh-sidebar {
    background: linear-gradient(145deg, rgba(20, 32, 54, .96), rgba(11, 21, 38, .96));
    border-color: rgba(212, 230, 255, .14);
    box-shadow: 0 16px 38px rgba(0, 0, 0, .2);
}

.kor-blog-page .fh-blog-title a,
.kor-blog-page .fh-sidebar {
    color: #f4f7fd;
}

.kor-blog-page .fh-blog-meta {
    color: #aebed0;
    border-color: rgba(212, 230, 255, .14);
}

.kor-blog-page .fh-sidebar a {
    color: #72c9e8;
}

.kor-blog-page .fh-pagination .page-link {
    color: #dce6f2;
    background: rgba(20, 32, 54, .92);
    border-color: rgba(212, 230, 255, .16);
}

.kor-blog-page .fh-pagination .page-item.active .page-link {
    color: #fff;
    background: var(--sb-blue);
    border-color: var(--sb-blue);
}

.kor-legal-page .kor-legal-card {
    background: linear-gradient(145deg, rgba(13, 23, 39, .8), rgba(7, 21, 49, .58));
    border-color: rgba(212, 230, 255, .14);
}

.fh-logo-wrapper img.custom-logo-img {
    height: 82px;
    max-height: 82px;
    max-width: min(250px, 58vw);
}

.fh-dn-logo img.fh-dn-logo-img,
.fh-hp-logo-wrapper img.fh-hp-logo-img {
    height: 84px;
    max-height: 84px;
    max-width: 250px;
    width: auto;
    object-fit: contain;
}

#fhDesktopNav.fh-dn-scrolled .fh-dn-logo img.fh-dn-logo-img {
    height: 68px;
    max-height: 68px;
}

.fh-mobile-drawer img.fh-drawer-logo-img {
    height: 84px;
    max-height: 84px;
    max-width: 100%;
    width: auto;
    object-fit: contain;
}

.fh-sidebar-logo img.fh-sidebar-logo-img {
    width: 148px;
    max-width: 148px;
    max-height: 112px;
}

.kor-footer .about_us_widget .footer-logo {
    width: 340px;
    max-width: min(100%, 340px);
    max-height: 120px;
}

@media (min-width: 992px) {
    .fh-logo-wrapper img.custom-logo-img {
        height: 78px;
        max-height: 78px;
        max-width: 240px;
    }

    .fh-hp-logo-wrapper img.fh-hp-logo-img {
        height: 82px;
        max-height: 82px;
    }
}

@media (max-width: 768px) {
    body:not(.kor-admin) p { font-size: 16px; }
    .fh-page-hero-title { font-size: clamp(28px, 7vw, 34px); }
    .fh-inner-page .fh-section-title { font-size: clamp(28px, 7vw, 36px); }
    .kor-about-eyebrow,
    .kor-about-image-label,
    .kor-about-gallery figcaption span { font-size: 13px; }
    .fh-logo-wrapper img.custom-logo-img {
        height: 72px;
        max-height: 72px;
        max-width: min(220px, 58vw);
    }

    .fh-hp-logo-wrapper img.fh-hp-logo-img {
        height: 72px;
        max-height: 72px;
        max-width: min(230px, 58vw);
    }
}

@media (max-width: 991px) {
    #fhMainNav img.fh-hp-logo-img {
        height: 58px;
        max-height: 58px;
        max-width: min(230px, 58vw);
    }
}
