/* ── TRUSTINDEX & TRIPADVISOR LUXURY IFRAME FRAMEWORK ── */

.tss-trustindex-section {
    padding: 90px 0;
    background-color: var(--tanzanite-cream-bg, #fbfaf7);
    border-top: 1px solid var(--muted-border-color, #eae7df);
    border-bottom: 1px solid var(--muted-border-color, #eae7df);
    text-align: center;
}

.tss-trustindex-header {
    max-width: 1100px;
    margin: 0 auto 40px auto;
    padding: 0 24px;
}

.tss-trustindex-eyebrow {
    display: block;
    font-family: 'Jost', sans-serif;
    font-size: 0.72rem;
    font-weight: 500;
    letter-spacing: 0.25em;
    color: var(--tanzanite-muted-text-gray, #8a857c);
    text-transform: uppercase;
    margin-bottom: 12px;
}

.tss-trustindex-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 2.8rem;
    font-weight: 300;
    line-height: 1.15;
    color: var(--dark-earth, #1b1916);
    margin: 0;
}

.tss-trustindex-title em {
    font-style: italic;
}

/* Framing the dynamic Trustindex iframe/container wrapper */
.tss-trustindex-frame {
    background: #ffffff;
    border: 1px solid var(--muted-border-color, #eae7df);
    border-radius: 4px;
    padding: 24px;
    box-shadow: 0 8px 30px rgba(27, 25, 22, 0.03);
    max-width: 1100px;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
}

/* Beautiful luxury gold boundary indicator */
.tss-trustindex-frame::before {
    content: '';
    position: absolute;
    top: 6px;
    left: 6px;
    right: 6px;
    bottom: 6px;
    border: 1px solid rgba(197, 168, 128, 0.25); /* Gold outline */
    pointer-events: none;
    border-radius: 2px;
    z-index: 5;
}

/* 2. Bespoke Native Rating Badge (Spot A - Intro Row) */
.tss-native-rating-badge {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border: 1px solid var(--muted-border-color, #eae7df);
    border-radius: 4px;
    padding: 12px 20px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
    text-decoration: none;
    transition: transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1), border-color 0.3s;
}

.tss-native-rating-badge:hover {
    transform: translateY(-2px);
    border-color: var(--gold-light, #c5a880);
    box-shadow: 0 8px 25px rgba(27, 25, 22, 0.05);
}

.tss-native-rating-stars {
    display: flex;
    gap: 3px;
    margin-bottom: 6px;
}

/* Custom TripAdvisor Bubble Styling */
.ta-bubble {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 1.5px solid #00aa6c; /* Official TripAdvisor Green */
    background: transparent;
}

.ta-bubble.filled {
    background: #00aa6c;
}

.tss-native-rating-info {
    display: flex;
    align-items: center;
    gap: 6px;
}

.tss-native-rating-info .badge-num {
    font-family: 'Jost', sans-serif;
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--dark-earth, #1b1916);
}

.tss-native-rating-info .badge-txt {
    font-family: 'Jost', sans-serif;
    font-size: 0.72rem;
    color: var(--tanzanite-muted-text-gray, #8a857c);
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

/* ── RESPONSIVE ADAPTATIONS ── */
@media (max-width: 768px) {
    .tss-trustindex-title {
        font-size: 2.2rem;
    }
    .tss-trustindex-frame {
        padding: 16px 12px;
    }
    .tss-trustindex-section {
        padding: 60px 0;
    }
}
