body {   color: #000000; } body.s_layout_fixed {   background-color: #ffffff;   background-image: url('https://bkfietsonderdelen.nl/catalog/view/theme/tsb_theme/images/texture_2.png');   background-repeat: repeat;   background-position: top left;   background-attachment: scroll; } .s_main_color, #twitter li span a, .s_button_add_to_cart, .checkout-heading a, .s_plain .s_price, .s_plain .s_price * {   color: #71b013; } #welcome_message, #welcome_message a, #welcome_message .fa {   color: #000000; } #footer_categories h2 a:hover {   color: #65a800 !important; }   .s_main_color_bgr, .s_main_color_bgr input, #cart .s_icon, #shop_contacts .s_icon, .s_list_1 li:before, .s_button_add_to_cart .s_icon, #intro .s_button_prev, #intro .s_button_next, .buttons .button, .noty_message button.s_main_color_bgr, .s_notify .s_success_24, .s_button_wishlist .s_icon, .s_button_compare .s_icon, .s_product_row .s_row_number, .jcarousel-prev, .jcarousel-next, #listing_options .display input[type="submit"] {   background-color: #71b013; }  .fa, .cart_menu .s_icon, #menu_home .fa:hover, .categories ul li li a:hover, .site_search .fa-magnifying-glass, .wishlist-icon {   color: #71b013; }  .site_search .fa-magnifying-glass, #search_bar_mobile .fa-magnifying-glass {   background-color: #71b013; }   .buttons input[type=submit].button, .buttons input[type=button].button, .noty_message button.s_main_color_bgr {   border: 3px solid #71b013; } .s_secondary_color, a:hover, .categories > ul > li > a, .pagination a, #view_mode .s_selected a, #welcome_message a:hover {   color: #65a800; } #footer_categories h2, #footer_categories h2 a, #footer_nav .noneSEO_H2, #footer_nav .noneSEO_H2 .fa {   color: #000000; } #content a:hover, #shop_info a:hover, #footer a:hover, #intro h1 a:hover, #intro h2 a:hover, #content a:hover, #shop_info a:hover, #footer a:hover, #breadcrumbs a:hover {   color: #65a800; } .s_secondary_color_bgr, #view_mode .s_selected .s_icon, #view_mode a:hover .s_icon, .pagination a:hover, .s_button_add_to_cart:hover .s_icon, .s_notify .s_failure_24, #product_share .s_review_write:hover .s_icon, .s_button_wishlist:hover .s_icon, .s_button_compare:hover .s_icon, .noty_message button.s_secondary_color_bgr {   background-color: #65a800; } .noty_message button.s_secondary_color_bgr {   border: 3px solid #65a800; } #intro {   background-color: #71b013; } #intro, #breadcrumbs a {   color: #385217; } #intro h1, #intro h1 *, #intro h2, #intro h2 * {   color: #111c05; } #intro .s_rating {   ~background-color: #71b013; }   h1, h2, h3, .s_box h2, .box .box-heading {   color: #000000; }  .s_label .s_price, .s_label .s_price *, .s_plain .s_price, .s_plain .s_price *, .s_price_holder .s_price, .s_price_holder .s_price * {   color: #679916; }  *::-moz-selection {   color: #fff;   background-color: #71b013; } *::-webkit-selection {   color: #fff;   background-color: #71b013; } *::selection {   color: #fff;   background-color: #71b013; }  .scroll_top{ 	color: #111c05; 	background: #71b013; } body #wrapper {   background-color: #ffffff; } .categories .s_submenu, .categories .s_submenu ul ul, .cart_menu .s_submenu, .s_switcher .s_options, .wishlist-icon {   background-color: #ffffff; } .main_navigation.desktop.is-sticky, .main_navigation.desktop.force-sticky, .main_navigation.mobile {   background-color: #ffffff; } :root {   --border-color: #f2f2f2;   --color-main: #71b013;   --color-secondary: #65a800;   --color-background: #ffffff;   --color-wrapper-bg: #ffffff;   --color-header-bg: #ffffff;   --color-text: #000000;   --color-title: #000000;   --color-intro: #71b013;   --color-intro-text: #385217;   --color-intro-title: #111c05;   --color-price: #679916;   --color-price-text: #ffffff;   --color-promo-price: #f12b63;   --color-promo-price-text: #ffffff; }   .product_discounts_table {
    border: 3px solid var(--border-color);
}

.right #shipping-method .checkout-content {
display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 20px;
}

@media only screen and (min-width: 1000px) { 
#product_images {
   width: 40%;
}

#product_image_preview img {
    padding: 100px;
}
}

#noStockMessage,
.notifyme {
    font-size: 13px;
}

.s_item_info {
        align-items: center;
}

.s_item_info div.s_actions {
    justify-content: center;
}

.s_item_info h3,
#blog_wrapper .entry {
    text-align: center;
}

.s_item_info .post_description h3 {
    text-align: left !important;
}

.s_listing_subcategory {
margin-bottom: 50px;
}

#s_listing_subcategory .s_thumb {
    height: 230px;
    display: flex;
    align-content: center;
    align-items: center;
    overflow: hidden;
}

#product_description {
display: block; }

#footer_inner .simple_link {
border: none !important; }

@media only screen and (min-width: 768px) {
#productfilm {
width: 500px !important;
height: 300px !important;
}
}

.s_category_thumb, #payments_types img {
    width: auto;
    height: auto;
}

.wishlist-icon {
    background: transparent; 
}
.banner {
  width: 100%;
  height: auto;        /* laat deze staan */
  max-height: 15%;    /* ???? VERLAAG DIT */
  display: block;
}

/* Desktop */
@media (min-width: 1000px) {
  .banner {
    max-width: 85%;
  }
}

/* Mobiel */
@media (max-width: 600px) {
  .banner {
    max-width: 90%;
  }
}

/* Container voor alle producten – CSS Grid */
.products-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); /* flexibel aantal kolommen */
    gap: 20px;
}

/* Elke productkaart – flex column */
.product-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* knop onderaan */
    background: #fff;
    padding: 10px;
    box-sizing: border-box;
    height: 100%; /* zorgt dat flex items gelijk uitlijnen in grid */
}

/* Afbeelding container – alle afbeeldingen exact even groot */
.image-container {
    width: 100%;
    height: 200px; /* vaste hoogte */
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
}

.product-image {
    width: 100%;
    height: 100%;
    object-fit: cover; /* vult container volledig, geen vervorming */
}

/* Titel en beoordelingen */
.product-title {
    font-weight: 600;
    font-size: 14px;
    margin: 0 0 5px 0;
    min-height: 40px; /* reserveert ruimte voor korte titels */
}

.product-rating {
    font-size: 12px;
    color: #888;
    margin-bottom: 5px;
    min-height: 20px; /* reserveert ruimte als sommige geen rating hebben */
}

/* Knoppen – flex */
.s_button_add_to_cart {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-image: linear-gradient(135deg, #c0d56e, #419bd6);
    background-size: 200% 200%;
    padding: 10px 25px;
    border-radius: 30px;
    color: #fff;
    letter-spacing: 1px;
    font-weight: 700;
    font-size: clamp(12px, 2vw, 16px);
    text-decoration: none;
    cursor: pointer;
    transition: all 0.5s ease;
    box-shadow: 0px 4px 10px rgba(0,0,0,0.15);
    width: 100%; /* knop vult kaartbreedte */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-sizing: border-box;
    margin-top: auto; /* zorgt dat knop altijd onderaan staat */
}

/* Hover effect in-stock */
.s_button_add_to_cart.in-stock:hover {
    transform: scale(1.05);
    background-image: linear-gradient(135deg, #a8c65a, #3580c1);
    animation: gradientShift 3s ease infinite, glowPulse 2s ease-in-out infinite;
}

/* Hover tekstkleur */
.s_button_add_to_cart.in-stock:hover span.s_icon_16 {
    color: #222222 !important;
}

/* Gradient animatie keyframes */
@keyframes gradientShift { 
    0% { background-position: 0% 50%; } 
    50% { background-position: 100% 50%; } 
    100% { background-position: 0% 50%; } 
}

/* Glow pulse keyframes */
@keyframes glowPulse { 
    0% { box-shadow:0px 6px 20px rgba(0,0,0,0.25),0 0 10px rgba(255,255,255,0.2);} 
    50% { box-shadow:0px 6px 25px rgba(0,0,0,0.25),0 0 25px rgba(255,255,255,0.35);} 
    100% { box-shadow:0px 6px 20px rgba(0,0,0,0.25),0 0 10px rgba(255,255,255,0.2);} 
}

/* Focus / active */
.s_button_add_to_cart:focus, .s_button_add_to_cart:active { 
    outline: none; 
    box-shadow: 0px 6px 12px rgba(0,0,0,0.25); 
}

/* Kleur in-stock / out-of-stock */
.s_button_add_to_cart.in-stock { color: #00ff00; }
.s_button_add_to_cart.out-of-stock { color: #ff0000; background: #cccccc; cursor: not-allowed; }
.s_button_add_to_cart.out-of-stock:hover { transform: none; box-shadow: 0px 4px 10px rgba(0,0,0,0.15); background: #cccccc; }

/* Responsive */
@media (max-width: 480px) {
    .image-container { height: 150px; }
    .s_button_add_to_cart { font-size: clamp(10px, 3vw, 14px); padding: 8px 20px; }
}

.s_item_info h3 a {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;      /* maximaal 3 regels */
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 36ch;             /* breedte limiet ~36 karakters */
    line-height: 19px;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    margin-bottom: 5px;
}

.product-title,
.s_item_info h3 a {
    min-height: 57px;      /* exact 3 regels van 19px */
    line-height: 19px;
}

.s_item_info h3 a {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

/* Sterren verwijderen in productlijsten / categorieën */
.listitempage .s_actions.s_rating {
    display: none !important;
}

/* Sterren ALTIJD verbergen (desktop + mobiel) */
.s_actions.s_rating {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 768px) {
    .s_rating {
        display: block;
    }
}

.post_description h3 a {
text-align: left !important; 
}
/* ======================================= */
/* ???????? ALLE PRODUCTKNOPPEN GELIJKE HOOGTE */
/* ======================================= */
.s_button_add_to_cart {
    height: 48px;                 /* vaste knophoogte */
    padding: 0 20px;              /* geen verticale padding */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

/* Niet op voorraad – alleen tekst aanpassen, GEEN hoogte */
.s_button_add_to_cart.out-of-stock {
    font-size: 12px;
    letter-spacing: 0.5px;
}

/* Mobiel */
@media (max-width: 480px) {
    .s_button_add_to_cart {
        height: 44px;
    }

    .s_button_add_to_cart.out-of-stock {
        font-size: 11px;
    }
}


.banner-container {
    text-align: center;
}

.banner {
    display: inline-block;
    max-width: 100%;
    height: auto;
}
