/* ──────────────────────────────────────────────────────────────────────
 * Tourwill — Shared Testimonials Slider Component
 * File: assets/css/components/component-about-testimonials.css
 *
 * Originally lived inside assets/css/pages/template-about.css. Extracted
 * here so it can also be used on the Tailor-Made page (and any future
 * page) without dragging the rest of the About page CSS along.
 *
 * IMPORTANT: All design tokens (--tw-teal, --tw-cream, etc.) used by
 * the testimonial styles were previously scoped to `.about-page`. They
 * are re-declared directly on `.about-testimonials` here, so the
 * component renders identically on any page regardless of the parent
 * page class.
 *
 * Compatible with the existing markup in:
 *   template-parts/about/about-testimonials.php
 *
 * Selectors are unchanged — no PHP or template edits required.
 * ──────────────────────────────────────────────────────────────────── */

/* Local design tokens — match the values previously defined on .about-page
   so the styling is byte-identical to the About page. */
.about-testimonials {
    --tw-teal:        #134e4a;
    --tw-teal-deep:   #0d3a35;
    --tw-teal-hover:  #0a2e2a;
    --tw-gold:        #eab308;
    --tw-gold-hover:  #ca9a07;
    --tw-cream:       #fbf8f1;
    --tw-card-bg:     #ffffff;
    --tw-text:        #1f2937;
    --tw-text-muted:  #6b7280;
    --tw-border:      #e7e5e0;
    --tw-radius:      20px;
    --tw-radius-sm:   12px;
    --tw-radius-lg:   28px;
    --tw-shadow-sm:   0 1px 2px rgba(15, 42, 38, .04), 0 2px 6px rgba(15, 42, 38, .04);
    --tw-shadow-md:   0 6px 18px rgba(15, 42, 38, .08), 0 2px 4px rgba(15, 42, 38, .04);
    --tw-shadow-lg:   0 18px 40px rgba(15, 42, 38, .10), 0 6px 12px rgba(15, 42, 38, .05);
    --tw-section-pad: 60px;

    background: var(--tw-cream);
    padding-block: var(--tw-section-pad);
}
@media (min-width: 768px) {
    .about-testimonials { --tw-section-pad: 90px; }
}

/* Section title — previously inherited from `.about-page .section-title`.
   Re-declared here scoped to `.about-testimonials` so it works on any page. */
.about-testimonials .section-title {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: clamp(1.625rem, 3vw + .5rem, 2.5rem);
    line-height: 1.15;
    font-weight: 700;
    color: var(--tw-teal);
    margin: 0 0 24px;
    letter-spacing: -.01em;
}
.about-testimonials .section-title--center {
    text-align: center;
    margin-inline: auto;
}

.about-testimonials__head {
    text-align: center;
    margin-bottom: 36px;
}

.about-testimonials__sub {
    color: var(--tw-text-muted);
    margin: 0;
    font-size: .98rem;
}

.about-testimonials__slider-wrap {
    position: relative;
    padding-inline: 0;
}
@media (min-width: 1024px) {
    .about-testimonials__slider-wrap { padding-inline: 50px; }
}

.about-testimonials__slider {
    overflow: hidden;
    padding-bottom: 44px;
}
.about-testimonials__slider .swiper-wrapper {
    list-style: none;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    align-items: stretch;
}
.about-testimonial {
    height: auto !important;
    display: flex;
    box-sizing: border-box;
}

.about-testimonial__card {
    background: #fff;
    border: 1px solid var(--tw-border);
    border-radius: var(--tw-radius);
    padding: 22px 20px 20px;
    width: 100%;
    box-shadow: var(--tw-shadow-sm);
    display: flex;
    flex-direction: column;
    gap: 14px;
    box-sizing: border-box;
}

.about-testimonial__rating {
    display: flex;
    gap: 2px;
    color: var(--tw-gold);
}
.about-testimonial__star.is-filled { color: var(--tw-gold); }
.about-testimonial__star:not(.is-filled) { color: rgba(234,179,8,.35); }

.about-testimonial__text {
    color: var(--tw-text);
    font-size: .92rem;
    line-height: 1.65;
    margin: 0;
    flex: 1;
}

.about-testimonial__person {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 6px;
    padding-top: 12px;
    border-top: 1px solid var(--tw-border);
}

.about-testimonial__avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
    background: var(--tw-teal);
}
.about-testimonial__avatar--initial {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 700;
    font-size: 1.1rem;
    text-transform: uppercase;
}

.about-testimonial__meta {
    display: flex;
    flex-direction: column;
    line-height: 1.3;
    min-width: 0;
}

.about-testimonial__name {
    font-weight: 700;
    color: var(--tw-teal);
    font-size: .95rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.about-testimonial__country {
    font-size: .8rem;
    color: var(--tw-text-muted);
}

/* Slider navigation buttons */
.about-testimonials__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid var(--tw-border);
    color: var(--tw-teal);
    cursor: pointer;
    display: none;
    align-items: center;
    justify-content: center;
    box-shadow: var(--tw-shadow-md);
    transition: background .2s, color .2s, transform .2s;
    z-index: 5;
}
.about-testimonials__nav:hover {
    background: var(--tw-teal);
    color: #fff;
    transform: translateY(-50%) scale(1.05);
}
.about-testimonials__nav--prev { left: 0; }
.about-testimonials__nav--next { right: 0; }

@media (min-width: 1024px) {
    .about-testimonials__nav { display: inline-flex; }
}

.about-testimonials__nav.swiper-button-disabled {
    opacity: .35;
    cursor: not-allowed;
}

/* Swiper pagination dots */
.about-testimonials__pagination {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 20px;
    position: absolute;
    bottom: 8px;
    left: 0;
    right: 0;
}
.about-testimonials__pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(19,78,74,.25);
    opacity: 1;
    transition: background .2s, transform .2s;
    cursor: pointer;
    margin: 0;
}
.about-testimonials__pagination .swiper-pagination-bullet-active {
    background: var(--tw-teal);
    transform: scale(1.2);
}

/* Print */
@media print {
    .about-testimonials__nav,
    .about-testimonials__pagination { display: none !important; }
}
