/* =========================================================================
   TRUST & COMPLIANCE BADGES COMPONENT
   ========================================================================= */
:root { 
    --reservation-red: #cc0e0e; 
}

.trust-badges-banner { 
    background-color: #f8fafc; 
    padding: 24px 0; 
    width: 100% !important; 
    box-sizing: border-box; 
    border-top: 1px solid #e2e8f0; 
    border-bottom: 1px solid #e2e8f0; 
    position: relative; 
    z-index: 2; 
    overflow: visible; 
}

.trust-badges-container { 
    max-width: 1020px; 
    margin: 0 auto; 
    padding: 0 24px; 
    box-sizing: border-box; 
}

.trust-badges-grid { 
    display: grid; 
    grid-template-columns: repeat(3, 1fr); 
    gap: 24px; 
    align-items: center; 
    width: 100%; 
}

.badge-item { 
    display: flex; 
    justify-content: center; 
    align-items: center; 
}

.badge-wrapper { 
    display: flex; 
    align-items: center; 
    gap: 12px; 
    background-color: #ffffff; 
    border: 1px solid #e2e8f0; 
    padding: 12px 20px; 
    border-radius: 8px; 
    width: 100%; 
    max-width: 240px; 
    box-sizing: border-box; 
    text-decoration: none !important; 
    box-shadow: 0 4px 6px -1px rgba(15, 23, 42, 0.04); 
    transition: all 0.25s cubic-bezier(0.25, 1, 0.5, 1); 
}

a.badge-wrapper:hover { 
    transform: translateY(-2px); 
    box-shadow: 0 10px 15px -3px rgba(15, 23, 42, 0.08); 
    border-color: #cbd5e1; 
}

.badge-icon-holder { 
    width: 36px; 
    height: 36px; 
    border-radius: 6px; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    flex-shrink: 0; 
    transition: background-color 0.25s ease; 
}

.badge-svg { 
    width: 20px; 
    height: 20px; 
    transition: fill 0.25s ease; 
}

.badge-meta { 
    display: flex; 
    flex-direction: column; 
    text-align: left; 
}

.badge-title { 
    font-size: 12px; 
    font-weight: 800; 
    color: #0f172a; 
    letter-spacing: 0.3px; 
}

.badge-subtitle { 
    font-size: 10px; 
    font-weight: 600; 
    color: #64748b; 
}

/* THEME SPECIFIC ACCENTS */
.tursab-theme .badge-icon-holder { background-color: #fef2f2; }
.tursab-theme .badge-svg { fill: #ef4444; }
a.tursab-theme:hover .badge-icon-holder { background-color: #ef4444; }
a.tursab-theme:hover .badge-svg { fill: #ffffff; }

.d2-theme .badge-icon-holder { background-color: #eff6ff; }
.d2-theme .badge-svg { fill: #3b82f6; }
a.d2-theme:hover .badge-icon-holder { background-color: #3b82f6; }
a.d2-theme:hover .badge-svg { fill: #ffffff; }

.ssl-theme .badge-icon-holder { background-color: #fef2f2; }
.ssl-theme .badge-svg { fill: var(--reservation-red); }
a.ssl-theme:hover .badge-icon-holder { background-color: var(--reservation-red); }
a.ssl-theme:hover .badge-svg { fill: #ffffff; }

.trust-badges-decor-shape { 
    display: none; 
    position: absolute; 
    right: 0; 
    bottom: -75px; 
    width: 65px; 
    height: auto; 
    pointer-events: none; 
}

@media (min-width: 576px) { 
    .trust-badges-decor-shape { display: block; } 
}

@media (max-width: 768px) {
    .trust-badges-banner { padding: 20px 0; }
    .trust-badges-grid { grid-template-columns: repeat(3, 1fr); gap: 8px; }
    .badge-wrapper { flex-direction: column; justify-content: center; align-items: center; text-align: center; gap: 8px; padding: 10px 6px; max-width: 100%; min-height: 85px; }
    .badge-icon-holder { width: 28px; height: 28px; border-radius: 5px; }
    .badge-svg { width: 15px; height: 15px; }
    .badge-meta { text-align: center; }
    .badge-title { font-size: 10px; line-height: 1.2; font-weight: 800; }
    .badge-subtitle { display: none !important; }
}