.text-link { color: #eee; text-decoration: none }
.text-link:hover { color: #000}
.btn-primary {background: #c21920; border: none; padding: 0 20px; line-height: 50px; min-width: 200px; font-weight: 500; font-family: 'Montserrat', "Helvetica Neue", Helvetica, sans-serif; }
.btn-primary:hover, .btn-primary:active, .btn-primary:focus, .btn-primary:focus-visible {background: #a0151a}
ul {list-style-type: none; padding: 0 }
ul li {display: flex; align-items:center; margin-bottom: 0.5rem}
ul li .bi {font-size: 1.5rem; margin-right: 1rem}
.card ul li { display: block; }
.card-title {height: 80px; display: -webkit-box;-webkit-line-clamp: 4;line-clamp: 4;-webkit-box-orient: vertical;overflow: hidden;line-height: 20px; color: #000; font-size: 14px; margin-bottom: 0.5rem}
.card-text { margin-bottom: 0 }
.card-image { padding: 10px; position: relative}
.card-news .card-title { height: 60px; -webkit-line-clamp: 3;line-clamp: 3}
.card { position: relative }
.card .badge { position: absolute; left: 0; font-size: 13px}
.card .badge.badge-pret { top: 10px; background: #009933; border-bottom-left-radius: 0 }
.card .badge.badge-stoc { bottom: 10px; background: #ffd43d; color: #000; border-top-left-radius: 0; font-size: 16px}
.card-body p { font-size: 22px}
.card-body p:last-of-type { margin-bottom: 0;}
.card-body img { max-width: 100%; object-fit: cover}
.badge.badge-campaign { background-color: #ffd43d; color: #000; bottom: 15px; }
.badge.badge-black-friday { background-color: #000; color: #fff; bottom: 15px; }
.badge.badge-quick-delivery { background-color: #009933; color: #fff; top: 15px; }

.countdown {display: flex; justify-content: flex-start; align-items: center; font-size: 1.5rem; font-weight: bold; color: #eee; margin-bottom: 1rem; margin-left: 1.5rem}
.countdown span {margin: 0 0.5rem}
.countdown .days {color: #000}
.countdown .hours {color: #000}
.countdown .minutes {color: #000}
.countdown .seconds {color: #000}
.countdown .days::after {content: 'D'}
.countdown .hours::after {content: 'H'}
.countdown .minutes::after {content: 'M'}
.countdown .seconds::after {content: 'S'}
.countdown-item { display: flex; flex-direction: column; align-items: center; margin: 0 0.5rem}
.countdown-label { font-weight: 400}

/* .hero-header: left half yellow bg, right half https://www.bosch-professional.com/ro/media/professional/specials/highlights/cordless_1/kv_cordless_1920x768.jpg */
/*.hero-header:before { background: url('https://www.bosch-professional.com/ro/media/professional/specials/highlights/cordless_1/kv_cordless_1920x768.jpg') no-repeat center center; background-size: cover; height: 100%; width: 33%; content: ''; position: absolute; top: 0; right: 0}*/
.tool-bg:before { background-image: url('img/tool-bg-pattern.svg'); content: ''; position: absolute; left:0; top: 0; right: 0; bottom: 0; opacity: 0.2; background-attachment: fixed}
.tool-bg { background-color: #033961; position: relative; }
.tool-bg > * { z-index: 1; position: relative; color: #fff }

.text-primary { color: #033961!important;}

.trainer-img { aspect-ratio: 1; border-radius: 100%; overflow: hidden; max-width: 250px; margin: auto }
.trainer-img img { max-width: 100%}
.trainer-text h4 { margin: 1rem 0 0.5rem}

/*.img-expo { position: absolute; right: 0; width: 30%; top: 150px; max-width: 350px}*/
/*.img-expo { position: absolute; right: 0; width: 30%; top: 150px; max-width: 350px}*/
.img-expo-sm { margin-bottom: 1rem }

iframe { max-width: 100% }


body { font-family: 'Open Sans', "Helvetica Neue", Helvetica, sans-serif; color: #000; }
h1, h2, h3, h4, h5, h6  { font-family: 'Montserrat', "Helvetica Neue", Helvetica, sans-serif; font-weight: 700; margin: 0 0 1rem}

#gallery-grid {
    gap: 15px;
    display: grid;
    position: relative;
    width: 100%;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    padding: 20px 0;
}
#gallery-grid a {
    display: block;
    overflow: hidden;
    position: relative;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
#gallery-grid a:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0,0,0,0.15);
}
/* Apply thumbnail styling only to images in the grid container */
#gallery-grid img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    aspect-ratio: 1;
}

.text-muted {
    color: #ccc!important;
}
/* FAQ Section Improvements */
.accordion-item {
    border: 1px solid #e0e0e0;
    border-radius: 8px !important;
    margin-bottom: 12px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    overflow: hidden;
}

.accordion-button {
    background-color: #f8f9fa;
    border: none;
    padding: 20px 24px;
    font-weight: 600;
    font-size: 16px;
    color: #033961;
    text-align: left;
    border-radius: 0 !important;
}

.accordion-button:not(.collapsed) {
    background-color: #033961;
    color: white;
    box-shadow: none;
}

.accordion-button:focus {
    box-shadow: 0 0 0 0.25rem rgba(3, 57, 97, 0.25);
    border-color: transparent;
}

.accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23033961'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    width: 1.5rem;
    height: 1.5rem;
}

.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    transform: rotate(-180deg);
}

.accordion-collapse {
    border-top: 1px solid #e0e0e0;
}

.accordion-body {
    padding: 24px;
    background-color: white;
    color: #333;
    font-size: 15px;
    line-height: 1.6;
}

.accordion-body a {
    color: #033961;
    font-weight: 500;
    text-decoration: underline;
}

.accordion-body a:hover {
    color: #c21920;
    text-decoration: none;
}

/* FAQ Section Header */
.faq-section h2 {
    color: #033961;
    font-weight: 700;
    margin-bottom: 2rem;
    text-align: center;
}

/* Add some visual hierarchy */
.accordion-item:first-child {
    border-top-left-radius: 12px !important;
    border-top-right-radius: 12px !important;
}

.accordion-item:last-child {
    border-bottom-left-radius: 12px !important;
    border-bottom-right-radius: 12px !important;
}

/* Mobile responsiveness for FAQ */
@media (max-width: 767px) {
    .navbar .header-logo { max-width: 50%}
    .navbar .header-logo img { max-width: 100%; height: auto}
    .hero-header:before { top: auto; bottom: 0; height: 33vh; width: 100%}
    .hero-header { padding-bottom: 33vh }
    .btn-primary { width: 100% }
    .countdown { justify-content: center }
    ul .bi-dash { display: none }
    #gallery-grid {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }
    .accordion-button {
        padding: 16px 20px;
        font-size: 15px;
    }

    .accordion-body {
        padding: 20px;
        font-size: 14px;
    }
}
