html { scroll-behavior: smooth; }

.ebv-bleed { width: 100vw; position: relative; left: 50%; margin-left: -50vw; }
.ebv-noscrollbar { scrollbar-width: none; -ms-overflow-style: none; }
.ebv-noscrollbar::-webkit-scrollbar { display: none; }

.ebv-hero-overlay { background: linear-gradient(180deg, rgba(2,8,7,.50) 0%, rgba(15,36,31,.34) 40%, rgba(19,43,37,.15) 70%, rgba(26,60,52,0) 100%); }
.ebv-accent-text { color: #FA8856; }

.ebv-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    padding: 16px 40px; border-radius: 9999px;
    font-weight: 600; font-size: 18px; line-height: 28px; color: #fff;
    background: linear-gradient(176deg, #FB966C 10%, #FA6C2C 90%);
    box-shadow: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -4px rgba(0,0,0,.1);
    transition: transform .2s, filter .2s;
}
.ebv-btn:hover { filter: brightness(.97); transform: translateY(-2px); }

.ebv-usp { background: #FFFDF8; }
.ebv-usp-card { background: #F7F7F5; border: 0.8px solid rgba(0,0,0,.05);
                border-radius: 19px; color: #284E45; }
.ebv-usp-card .ebv-usp-desc { color: rgba(40,78,69,.85); }
.ebv-chip { display: inline-flex; align-items: center; justify-content: center;
            width: 48px; height: 48px; border-radius: 9999px; color: #fff;
            background: linear-gradient(135deg, #FB966C 0%, #FA6C2C 100%); }

.ebv-pitch { background: linear-gradient(270deg, #0A2721 0%, #759B91 100%); }

.ebv-products-bg { background: linear-gradient(114.25deg, #F8FCFB 4.63%, #E8F6F3 50.63%, #FAF8F3 87.73%); }

@media (max-width: 767px) {
    .ebv-slider {
        width: 100vw; position: relative; left: 50%; margin-left: -50vw;
        padding: 8px 16px 28px;
        scroll-padding-left: 16px;
    }
}
.ebv-product-card {
    display: flex; flex: none; flex-direction: column;
    width: 70%; scroll-snap-align: start;
    background: #fff; border-radius: 17px; overflow: hidden;
    box-shadow: 0 3px 17px rgba(0,0,0,.06);
    transition: transform .2s, box-shadow .2s;
}
.ebv-product-card:hover { transform: translateY(-2px); box-shadow: 0 10px 20px rgba(0,0,0,.1); }
@media (min-width: 640px) { .ebv-product-card { width: 40%; } }
@media (min-width: 768px) { .ebv-product-card { width: auto; } }
.ebv-product-imgwrap { background: #fff; padding: 16px; }
.ebv-product-imgwrap > img { margin-inline: auto; width: 100%; height: 180px; object-fit: contain; }
.ebv-product-body { display: flex; flex: 1; flex-direction: column; padding: 20px; }
.ebv-product-title { font-size: 16px; line-height: 22px; font-weight: 600; color: #1A1A1A;
                     display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
                     overflow: hidden; min-height: 44px; }
.ebv-product-label { align-self: flex-start; margin-top: 6px; padding: 4px 10px;
                     border-radius: 9999px; font-size: 12px; line-height: 12px; font-weight: 600;
                     background: rgba(45,95,74,.08); color: #2D5F4A; }
.ebv-product-specs { margin-top: 14px; display: flex; flex-direction: column; gap: 8px;
                     font-size: 12px; line-height: 12px; color: rgba(26,26,26,.7); }
.ebv-product-specs dd { margin: 0; display: flex; align-items: center; gap: 6px; }
.ebv-product-specs__icon { flex: none; width: 13px; height: 13px; color: rgba(26,26,26,.7); }
.ebv-product-foot { margin-top: 14px; padding-top: 14px;
                    border-top: 1px solid rgba(0,0,0,.05);
                    display: flex; align-items: center; justify-content: space-between; }
.ebv-product-price { font-size: 16px; line-height: 26px; font-weight: 700; color: #1A1A1A; }
.ebv-product-btn { display: inline-flex; align-items: center; justify-content: center;
                   padding: 8px 16px; border-radius: 16px;
                   font-weight: 500; font-size: 12px; line-height: 14px; color: #fff;
                   background: linear-gradient(135deg, #FA804B 0%, #F76A35 100%);
                   box-shadow: 0 3px 11px rgba(250,128,75,.25); }

.ebv-cream { background: #FFFDF8; }
.ebv-star { color: #FA6C2C; }
.ebv-review-card { background: linear-gradient(135deg, #0A2721 0%, #417065 100%);
                   border-radius: 14px; box-shadow: 0 2px 7px rgba(0,0,0,.15); color: #fff; }

.ebv-table-card { background: #fff; border-radius: 24px; overflow: hidden;
                  box-shadow: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -4px rgba(0,0,0,.1); }
.ebv-table-card th:first-child { width: 33.333%; }
@media (min-width: 768px) { .ebv-table-card th:first-child { width: 40%; } }
@media (max-width: 767px) {
    .ebv-table-card th { padding: 12px 10px; }
    .ebv-table-card td { padding: 14px 10px; }
    .ebv-table-card th:first-child, .ebv-table-card td:first-child { padding-left: 14px; padding-right: 8px; }
}
.ebv-table-head { background: linear-gradient(90deg, #284E45 0%, #2D5F4A 100%); color: #fff; }
.ebv-table-head-win { background: linear-gradient(135deg, #FB966C 0%, #FA6C2C 100%); color: #fff; }
.ebv-row-alt { background: rgba(249,250,251,.5); }
.ebv-row { border-top: 1px solid #F3F4F6; }
.ebv-val { color: rgba(26,26,26,.7); }
.ebv-val-win { color: #FA6C2C; font-weight: 600; }
.ebv-val-sub { width: fit-content; margin: 4px auto 0; padding: 2px 10px;
               border: 1px solid rgba(250,108,44,.3); border-radius: 9999px;
               background: linear-gradient(174.71deg, rgba(251,150,108,.15) 3.85%, rgba(250,108,44,.15) 96.15%);
               font-size: 11px; line-height: 16px; font-weight: 600; color: #FA6C2C; }
.ebv-garantie { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
@media (min-width: 768px) { .ebv-garantie { flex-direction: row; align-items: center; gap: 0; } }
.ebv-table-badge { display: inline-flex; align-items: center; gap: 4px; margin-left: 8px; padding: 3px 8px;
                   border-radius: 9999px; vertical-align: middle; white-space: nowrap;
                   font-size: 11px; line-height: 16px; font-weight: 600; color: #fff;
                   background: linear-gradient(174.71deg, #FB966C 10.99%, #FA6C2C 89.01%);
                   box-shadow: 0 1px 4px rgba(0,0,0,.15); }
.ebv-table-badge > span { margin-top: -1px; }
@media (max-width: 767px) {
    .ebv-table-badge { margin-left: 0; padding: 2px 5px; gap: 2.6px;
                       font-size: 8px; line-height: 11px;
                       box-shadow: 0 0.65px 2.62px rgba(0,0,0,.15); }
    .ebv-table-badge svg { width: 6.5px; height: 6.5px; }
}
.ebv-check { color: #00A63E; }

.ebv-cta-overlay { background: linear-gradient(180deg, rgba(26,48,43,.35) 0%, rgba(22,44,39,.65) 100%); }
.ebv-icon-orange { color: #FA804B; }
