.c4-modern{color:#26364a}.c4-modern h1,.c4-modern h2,.c4-modern h3{color:#10233f;font-weight:700;letter-spacing:-.025em}.c4-kicker{color:#e32636;font-size:.78rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.c4-page-hero{background:linear-gradient(125deg,#09172a,#10233f 65%,#1a4777);color:#fff;padding:96px 0}.c4-page-hero h1{color:#fff;font-size:clamp(2.5rem,5vw,4.7rem);line-height:1.06;margin:16px 0 24px;max-width:900px}.c4-page-hero p{color:rgba(255,255,255,.8);font-size:1.2rem;line-height:1.75;max-width:790px}.c4-page-hero .btn{background:#e32636;border-color:#e32636;margin-top:14px}.c4-page-hero-light{background:#f3f6fa;color:#26364a}.c4-page-hero-light h1{color:#10233f}.c4-page-hero-light p{color:#526276}.c4-section{padding:88px 0}.c4-section-soft{background:#f3f6fa}.c4-heading{margin-bottom:46px;max-width:760px}.c4-heading h2{font-size:clamp(2rem,3.5vw,3rem);margin:12px 0}.c4-rounded-image{border-radius:18px;box-shadow:0 18px 48px rgba(16,35,63,.14)}.c4-text-link{color:#10233f;font-weight:700}.c4-text-link i{color:#e32636;margin-left:6px}.c4-service-card{background:#fff;border:1px solid #e4e9ef;border-radius:16px;box-shadow:0 12px 35px rgba(16,35,63,.07);height:100%;padding:30px}.c4-service-card>i{color:#e32636;font-size:1.7rem;margin-bottom:19px}.c4-service-card h3{font-size:1.25rem}.c4-service-card p{line-height:1.65}.c4-service-card ul{border-top:1px solid #edf0f3;list-style:none;margin:20px 0 0;padding:17px 0 0}.c4-service-card li{font-size:.9rem;margin:7px 0}.c4-service-card li:before{color:#e32636;content:'✓';font-weight:700;margin-right:8px}.c4-process{background:#f3f6fa;padding:78px 0}.c4-step{padding:18px}.c4-step b{color:#e32636;font-size:2rem}.c4-step h3{font-size:1.2rem;margin:12px 0 8px}.c4-step p{line-height:1.65}.c4-cta{background:#e32636;color:#fff;padding:72px 0}.c4-cta h2{color:#fff;font-size:clamp(2rem,3vw,2.8rem)}.c4-cta p{font-size:1.1rem;margin:16px auto 28px;max-width:680px}.c4-reference{background:#fff;border:1px solid #e2e8ef;border-radius:18px;box-shadow:0 16px 42px rgba(16,35,63,.09);height:100%;overflow:hidden}.c4-reference img{background:#f3f6fa;display:block;height:330px;object-fit:contain;padding:18px;width:100%}.c4-reference>div:last-child{padding:28px 30px 32px}.c4-reference span{color:#e32636;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.c4-reference h2{font-size:1.65rem;margin:8px 0 10px}.c4-reference p{line-height:1.65}.c4-reference a{color:#10233f;font-weight:700}.c4-product-visual{align-items:center;background:linear-gradient(135deg,#10233f,#1f527f);display:flex;height:330px;justify-content:center;padding:0!important}.c4-product-visual i{color:#fff;font-size:6rem}.c4-home-hero{background:linear-gradient(118deg,#09172a,#10233f 62%,#194a7f);color:#fff;padding:110px 0 96px;position:relative;overflow:hidden}.c4-home-hero:after{border:1px solid rgba(255,255,255,.08);border-radius:50%;content:'';height:650px;position:absolute;right:-230px;top:-290px;width:650px}.c4-home-hero .container{position:relative;z-index:1}.c4-home-hero h1{color:#fff;font-size:clamp(2.7rem,5.4vw,5rem);line-height:1.02;max-width:960px}.c4-home-hero p{color:rgba(255,255,255,.8);font-size:1.25rem;line-height:1.7;max-width:760px}.c4-home-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.c4-home-actions .btn-primary{background:#e32636;border-color:#e32636}.c4-home-proof{display:flex;flex-wrap:wrap;gap:24px;margin-top:38px}.c4-home-proof span{color:rgba(255,255,255,.72);font-size:.9rem}.c4-home-proof i{color:#75ca98;margin-right:7px}.c4-highlight{background:#10233f;border-radius:20px;color:rgba(255,255,255,.78);padding:42px}.c4-highlight h2{color:#fff}.c4-highlight .btn{background:#e32636;border-color:#e32636}
@media(max-width:991px){.c4-page-hero,.c4-home-hero{padding:72px 0}.c4-section{padding:64px 0}.c4-reference img,.c4-product-visual{height:270px}}

/* code4it brand refinements: blue is the primary accent outside the VSS area. */
.c4-modern h1,
.c4-modern h2,
.c4-modern h3 {
    line-height: 1.18;
}

.c4-kicker,
.c4-text-link i,
.c4-service-card > i,
.c4-service-card li::before,
.c4-step b,
.c4-reference span {
    color: #087fb8;
}

.c4-page-hero .btn,
.c4-home-actions .btn-primary {
    background: #087fb8;
    border-color: #087fb8;
}

.c4-page-hero .btn:hover,
.c4-page-hero .btn:focus,
.c4-home-actions .btn-primary:hover,
.c4-home-actions .btn-primary:focus {
    background: #066895;
    border-color: #066895;
}

.c4-heading h2 {
    line-height: 1.2;
    margin-top: 16px;
}

.c4-home-hero h1 {
    line-height: 1.09;
}

/* VSS keeps its own red product accent. */
.c4-highlight .c4-kicker {
    color: #f06470;
}

.c4-highlight .btn {
    background: #e32636;
    border-color: #e32636;
}

.c4-cta {
    background: linear-gradient(125deg, #0b6f9f, #102f52);
}

.c4-cta h2 {
    line-height: 1.18;
}

.c4-cta p {
    color: #fff;
}

.c4-cta .btn-light {
    border-color: #fff;
    color: #10233f;
}

/* The footer is light, so the remote support downloads need solid brand surfaces. */
#footer .remote-support-actions {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    margin: 18px auto 24px;
}

#footer .remote-support-download {
    background: #087fb8;
    border-color: #087fb8;
    box-shadow: 0 8px 20px rgba(16, 35, 63, .14);
    margin: 0;
    min-height: 62px;
    text-align: left;
}

#footer .remote-support-download span,
#footer .remote-support-download small {
    color: #fff;
    display: block;
}

#footer .remote-support-download:hover,
#footer .remote-support-download:focus {
    background: #066895;
    border-color: #066895;
}

#footer .remote-support-download.remote-support-setup {
    background: #ee8a24;
    border-color: #ee8a24;
}

#footer .remote-support-download.remote-support-setup:hover,
#footer .remote-support-download.remote-support-setup:focus {
    background: #ca6f12;
    border-color: #ca6f12;
}

@media (max-width: 575px) {
    #footer .remote-support-download {
        max-width: 100%;
        width: 100%;
    }
}

/* Home & product sections added for content parity with the previous site. */
.c4-logos {
    align-items: center;
    display: grid;
    gap: 28px 36px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.c4-logos img {
    display: block;
    filter: grayscale(1);
    height: auto;
    margin: 0 auto;
    max-height: 64px;
    max-width: 100%;
    object-fit: contain;
    opacity: .7;
    transition: opacity .2s ease;
}

.c4-logos img:hover {
    opacity: 1;
}

.c4-logos-label {
    color: #526276;
    font-size: .9rem;
    margin-bottom: 26px;
    text-align: center;
}

.c4-logo-band {
    border-bottom: 1px solid #e4e9ef;
    padding: 44px 0 48px;
}

.c4-product-card {
    background: #fff;
    border: 1px solid #e4e9ef;
    border-radius: 16px;
    box-shadow: 0 12px 35px rgba(16, 35, 63, .07);
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
}

.c4-product-card .c4-product-icon {
    align-items: center;
    background: #eaf4fa;
    border-radius: 14px;
    color: #087fb8;
    display: flex;
    font-size: 1.5rem;
    height: 56px;
    justify-content: center;
    margin-bottom: 20px;
    width: 56px;
}

.c4-product-card .c4-product-icon img {
    max-height: 34px;
    max-width: 34px;
}

.c4-product-card h3 {
    font-size: 1.25rem;
    margin-bottom: 4px;
}

.c4-product-card .c4-product-tag {
    color: #087fb8;
    display: block;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .1em;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.c4-product-card p {
    flex-grow: 1;
    line-height: 1.65;
}

.c4-product-card a {
    color: #10233f;
    font-weight: 700;
}

.c4-product-card a i {
    color: #087fb8;
    margin-left: 6px;
}

.c4-product-card-vss .c4-product-icon,
.c4-product-card-vss .c4-product-tag {
    color: #e32636;
}

.c4-product-card-vss .c4-product-icon {
    background: #fdecee;
}

.c4-product-card-vss a i {
    color: #e32636;
}

.c4-features {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.c4-feature {
    background: #fff;
    border: 1px solid #e4e9ef;
    border-radius: 14px;
    display: flex;
    gap: 16px;
    padding: 22px;
}

.c4-feature > i {
    color: #087fb8;
    flex: 0 0 28px;
    font-size: 1.35rem;
    margin-top: 3px;
    text-align: center;
}

.c4-feature h3 {
    font-size: 1.05rem;
    margin: 0 0 6px;
}

.c4-feature p {
    font-size: .93rem;
    line-height: 1.6;
    margin: 0;
}

.c4-values {
    display: grid;
    gap: 22px 30px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 28px;
}

.c4-values h3 {
    font-size: 1.05rem;
    margin: 0 0 6px;
}

.c4-values h3 i {
    color: #087fb8;
    margin-right: 8px;
}

.c4-values p {
    font-size: .95rem;
    line-height: 1.6;
    margin: 0;
}

.c4-region {
    background: #10233f;
    color: rgba(255, 255, 255, .8);
    padding: 88px 0;
}

.c4-region h2 {
    color: #fff;
    font-size: clamp(1.9rem, 3.2vw, 2.7rem);
    margin: 12px 0 18px;
}

.c4-region .c4-kicker {
    color: #5cc0ee;
}

.c4-region p {
    color: rgba(255, 255, 255, .8);
    font-size: 1.05rem;
    line-height: 1.75;
}

.c4-region-areas {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    margin: 22px 0 0;
    padding: 0;
}

.c4-region-areas li {
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    color: #fff;
    font-size: .85rem;
    padding: 6px 14px;
}

.c4-address-card {
    background: #fff;
    border-radius: 18px;
    color: #26364a;
    padding: 34px;
}

.c4-address-card h3 {
    color: #10233f;
    font-size: 1.3rem;
    margin-bottom: 16px;
}

.c4-address-card p {
    color: #26364a;
    font-size: 1rem;
    margin-bottom: 10px;
}

.c4-address-card i {
    color: #087fb8;
    margin-right: 10px;
    width: 18px;
}

.c4-address-card a {
    color: #10233f;
    font-weight: 600;
}

.c4-partner {
    align-items: center;
    background: #f3f6fa;
    border-radius: 18px;
    display: flex;
    gap: 36px;
    padding: 36px 40px;
}

.c4-partner img {
    flex: 0 0 auto;
    max-width: 180px;
}

.c4-partner h2 {
    font-size: 1.5rem;
    margin: 8px 0 10px;
}

.c4-partner p {
    line-height: 1.65;
    margin-bottom: 10px;
}

.c4-accordion details {
    background: #fff;
    border: 1px solid #e4e9ef;
    border-radius: 14px;
    margin-bottom: 14px;
    padding: 0 26px;
}

.c4-accordion summary {
    color: #10233f;
    cursor: pointer;
    font-size: 1.1rem;
    font-weight: 700;
    list-style: none;
    padding: 20px 0;
    position: relative;
}

.c4-accordion summary::-webkit-details-marker {
    display: none;
}

.c4-accordion summary::after {
    color: #087fb8;
    content: '+';
    font-size: 1.4rem;
    position: absolute;
    right: 0;
    top: 14px;
}

.c4-accordion details[open] summary::after {
    content: '\2212';
}

.c4-accordion details > div {
    border-top: 1px solid #edf0f3;
    line-height: 1.75;
    padding: 18px 0 22px;
}

.c4-accordion details > div p:last-child {
    margin-bottom: 0;
}

/* Footer contact details (consistent company data on every page). */
#footer .c4-footer-nap {
    color: #526276;
    font-size: .9rem;
    line-height: 1.7;
    margin: 0 auto 14px;
}

#footer .c4-footer-nap strong {
    color: #10233f;
}

#footer .c4-footer-nap a {
    color: #10233f;
}

#footer .c4-footer-links a {
    color: #526276;
    margin: 0 8px;
}

@media (max-width: 991px) {
    .c4-logos {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .c4-features {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .c4-region {
        padding: 64px 0;
    }
}

@media (max-width: 767px) {
    .c4-features,
    .c4-values {
        grid-template-columns: 1fr;
    }

    .c4-partner {
        align-items: flex-start;
        flex-direction: column;
        gap: 18px;
        padding: 28px 24px;
    }

    .c4-logos {
        gap: 22px 24px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.c4-checklist {
    list-style: none;
    margin: 18px 0 0;
    padding: 0;
}

.c4-checklist li {
    font-weight: 600;
    margin: 8px 0;
}

.c4-checklist li::before {
    color: #087fb8;
    content: '\2713';
    font-weight: 700;
    margin-right: 10px;
}

.c4-address-card .btn,
.c4-address-card .btn:hover,
.c4-address-card .btn:focus {
    color: #fff;
}

.c4-partner img {
    border-radius: 10px;
}

.c4-page-hero .btn,
.c4-page-hero .btn:hover,
.c4-page-hero .btn:focus {
    color: #fff;
}

/* Partner block (PantaRhei) */
.c4-partner-section{padding-bottom:40px}
.c4-partner{border:1px solid #e4e9ef}
.c4-partner-logo{flex:0 0 auto}
.c4-partner-points{list-style:none;margin:6px 0 16px;padding:0}
.c4-partner-points li{font-size:.95rem;padding:5px 0}
.c4-partner-points i{color:#087fb8;margin-right:10px;text-align:center;width:18px}

/* Compact page hero for news, posts and simple content pages */
.c4-page-hero-sm{padding:64px 0 56px}
.c4-page-hero-sm h1{font-size:clamp(2rem,3.6vw,3.1rem);margin-bottom:12px}
.c4-page-hero-sm p{margin-bottom:0}
.c4-page-hero .c4-back-link{color:#5cc0ee;display:inline-block;text-decoration:none}
.c4-page-hero .c4-back-link:hover{color:#fff}
.c4-page-hero .c4-back-link i{margin-right:6px}
@media(max-width:991px){.c4-page-hero-sm{padding:48px 0 40px}}

/* Footer text links: the theme turns hovered footer links white, which is unreadable on the light footer. */
#footer .footer-copyright p a:hover,
#footer .footer-copyright p a:focus {
    color: #087fb8;
    text-decoration: underline;
}
