body > main {background-color: #fff;}
*[class*="section-"] {padding: 80px 0;}
.icon-wrap {max-width: 120px; padding: 30px 0; margin: 0 auto; display: flex; justify-content: center}
.icon-wrap .icon {display: block; margin: 0 auto 1.5rem; width: auto; height: 96px;}
.row.intro { margin-bottom: 40px; padding-bottom: 0; }
.row.intro p { margin-top: 20px; margin-bottom: 0; }

#section-hero { display: flex; align-items: center; }
#section-hero.bg-left:before { background-image: url(/static/pl/fileadmin/res/img/pd/enterprise/pd-enterprise-hero.png); }
#section-hero h2.lead { font-size: 18px; font-weight: 400; margin-top: 25px; }
.section-logos h2 {margin-bottom: 80px;}

.section-features .intro { margin-bottom: 60px; }
.section-features h2 { margin-bottom: 0; }
.section-features .card { position: relative; margin-bottom: 0; display: flex; flex-direction: column; height: 100%; background: #000; border-radius: 12px; padding: 2.5rem 2rem 5rem; transition: transform 0.4s ease, box-shadow 0.4s ease; }
.section-features .card-item { margin-bottom: 2rem; }
.section-features a .card:hover { transform: translateY(-10px); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); }
.section-features a { color: #fff !important; text-decoration: none; }
.section-features .icon { height: 64px; width: auto; }
.section-features .arrow-link { position: absolute; right: 1.5rem; bottom: 1.5rem; height: 32px; }
.section-features a:hover svg circle { fill: #0052A3 !important; }
.section-features a:hover, .section-features a:focus, .section-features a:active { color: #000; text-decoration: none; }

@media (max-width: 991px){
    .section-features .card-item { display: block; margin-bottom: 2rem; }
    #section-features-accordion .accordion {display: block;}
    #section-features-accordion .accordion .tab-content {margin-bottom: 30px; }
}

.section-final{background: url('/static/pl/fileadmin/res/img/solutions/smb/bg-bottom.jpg') center no-repeat; background-size: cover; color: #fff}
.section-final p{max-width: 1000px; margin-left: auto; margin-right: auto}

#section-features-accordion .panel.panel-default.panel-open, #section-features-accordion .panel.panel-default:has(a[aria-expanded=true]) {border-color: #db2234;}
.dark-theme #section-features-accordion h4 a {color: #ACACAC;}
#section-features-accordion a.btn-tertiary.dark { color: #fff !important; }
#section-features-accordion a.btn-tertiary.dark:hover { color: #fff !important; }
#section-features-accordion a.btn-tertiary.dark::after {filter: grayscale(1) invert(1);}
#section-features-accordion a:hover.btn-tertiary.dark::after {filter: grayscale(1) invert(1);}

@media (max-width: 767px) {
    *[class*="section-"] { padding: 40px 0; }
}

/* Scrolling company logos */
:root {
    --marquee-width: 1440px;
    --marquee-height: 72px;
    /* --marquee-elements: 12; */ /* defined with JavaScript */
    --marquee-elements-displayed: 7;
    --marquee-element-width: calc(var(--marquee-width) / var(--marquee-elements-displayed));
    --marquee-animation-duration: calc(var(--marquee-elements) * 5s);
}

.marquee {
    width: 100%;
    height: var(--marquee-height);
    overflow: hidden;
    position: relative;
}
.marquee:before, .marquee:after {
    position: absolute;
    top: 0;
    width: 10rem;
    height: 100%;
    content: "";
    z-index: 1;
}
.marquee:before {
    left: 0;
    background: linear-gradient(to right, #f8f8f8 0%, transparent 100%);
}
.marquee:after {
    right: 0;
    background: linear-gradient(to left, #f8f8f8 0%, transparent 100%);
}
.marquee-content {
    list-style: none;
    height: 100%;
    display: flex;
    animation: scrolling var(--marquee-animation-duration) linear infinite;
}
/* .marquee-content:hover {
  animation-play-state: paused;
} */
@keyframes scrolling {
    0% { transform: translateX(0); }
    100% { transform: translateX(calc(-1 * var(--marquee-element-width) * var(--marquee-elements))); }
}
ul.marquee-content {
    margin: 0;
    padding: 0;
}
.marquee-content li {
    display: flex;
    justify-content: center;
    align-items: center;
    /* text-align: center; */
    flex-shrink: 0;
    width: auto;
    max-height: 100%;
    font-size: calc(var(--marquee-height)*3/4); /* 5rem; */
    white-space: nowrap;
}

.marquee-content li img {
    max-width: 160px;
    max-height: 72px;
    height: auto;
    width: auto;
    padding: 0 40px;
    box-sizing: content-box;
    /* height: 100%; */
}

@media (max-width: 1400px) {
    :root {
        --marquee-width: 1200px;
        --marquee-elements-displayed: 7;
    }
    .marquee:before, .marquee:after { width: 5rem; }
}