/* ==========================================================================
   ATA – Specialists Card
   Own namespace (.ata-spec-*) so nothing here can touch tour / destination cards.
   Every value below is a CSS variable; the page-builder Style tab overrides
   them per instance via an inline style attribute.
   ========================================================================== */

.ata-spec-card-widget { width:100%; }

.ata-spec-card {
    /* defaults (overridden inline by the element) */
    --ata-spec-bg:#fff;
    --ata-spec-border:#e8ebe4;
    --ata-spec-radius:12px;
    --ata-spec-shadow:0 4px 20px rgba(0,0,0,.09);
    --ata-spec-padding:32px 28px;
    --ata-spec-align:center;
    --ata-spec-title-color:#1a2e14;
    --ata-spec-title-size:1.5rem;
    --ata-spec-title-weight:800;
    --ata-spec-sub-color:#666;
    --ata-spec-sub-size:.9rem;
    --ata-spec-divider:#e8ebe4;
    --ata-spec-img-size:120px;
    --ata-spec-img-radius:50%;
    --ata-spec-img-ring:#eaf3e6;
    --ata-spec-name-color:#1a2e14;
    --ata-spec-name-size:.82rem;
    --ata-spec-btn-bg:#2d7a1e;
    --ata-spec-btn-hover:#1f5915;
    --ata-spec-btn-color:#fff;
    --ata-spec-btn-radius:4px;
    --ata-spec-btn-size:.78rem;

    box-sizing:border-box;
    width:100%;
    background:var(--ata-spec-bg);
    border:1px solid var(--ata-spec-border);
    border-radius:var(--ata-spec-radius);
    box-shadow:var(--ata-spec-shadow);
    padding:var(--ata-spec-padding);
}
.ata-spec-card *, .ata-spec-card *::before, .ata-spec-card *::after { box-sizing:border-box; }

/* Title + subtitle */
.ata-spec-card .ata-spec-card__title {
    margin:0 0 10px !important; padding:0;
    text-align:var(--ata-spec-align);
    color:var(--ata-spec-title-color);
    font-size:var(--ata-spec-title-size);
    font-weight:var(--ata-spec-title-weight);
    line-height:1.3;
}
.ata-spec-card .ata-spec-card__subtitle {
    margin:0 !important; padding:0;
    text-align:var(--ata-spec-align);
    color:var(--ata-spec-sub-color);
    font-size:var(--ata-spec-sub-size);
    line-height:1.6;
}

/* Divider */
.ata-spec-card .ata-spec-card__divider {
    height:1px; width:100%;
    background:var(--ata-spec-divider);
    margin:22px 0;
}

/* Specialists row — always 3 across */
.ata-spec-card .ata-spec-card__team {
    list-style:none; margin:0 !important; padding:0;
    display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px;
}
.ata-spec-card .ata-spec-card__member {
    display:flex; flex-direction:column; align-items:center; gap:10px;
    margin:0; padding:0; text-align:center;
}
.ata-spec-card .ata-spec-card__member::before { content:none; }

.ata-spec-card .ata-spec-card__photo {
    display:block;
    width:var(--ata-spec-img-size); max-width:100%;
    height:auto; aspect-ratio:1/1;
    object-fit:cover;
    border:3px solid var(--ata-spec-img-ring);
    border-radius:var(--ata-spec-img-radius);
    overflow:hidden; background:#eef1ea;
}
.ata-spec-card .ata-spec-card__photo--placeholder svg { width:100%; height:100%; display:block; }

.ata-spec-card .ata-spec-card__name {
    color:var(--ata-spec-name-color);
    font-size:var(--ata-spec-name-size);
    font-weight:700; line-height:1.3;
}

/* Buttons row — 3 across, wraps on narrow columns */
.ata-spec-card .ata-spec-card__actions { display:flex; flex-wrap:wrap; gap:10px; }
.ata-spec-card a.ata-spec-card__btn {
    flex:1 1 130px;
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    padding:11px 14px;
    background:var(--ata-spec-btn-bg);
    color:var(--ata-spec-btn-color);
    font-size:var(--ata-spec-btn-size);
    font-weight:700; letter-spacing:.06em; text-transform:uppercase;
    line-height:1.2; text-decoration:none; white-space:nowrap;
    border:0; border-radius:var(--ata-spec-btn-radius);
    transition:background-color .25s ease, transform .25s ease;
}
.ata-spec-card a.ata-spec-card__btn:hover,
.ata-spec-card a.ata-spec-card__btn:focus-visible {
    background:var(--ata-spec-btn-hover);
    color:var(--ata-spec-btn-color);
    text-decoration:none;
    transform:translateY(-2px);
}
.ata-spec-card a.ata-spec-card__btn:focus-visible { outline:2px solid var(--ata-spec-btn-bg); outline-offset:3px; }
.ata-spec-card .ata-spec-card__btn i { font-size:1.15em; line-height:1; flex-shrink:0; }

@media (max-width:480px) {
    .ata-spec-card .ata-spec-card__team { gap:10px; }
    .ata-spec-card a.ata-spec-card__btn { flex-basis:100%; }
}
