/* ================= Team Carousel ================= */
.team-carousel{
    --tc-gap: 24px;
    --tc-pv: 4;
    position: relative;
}
.team-carousel .tc-viewport{
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
}
.team-carousel .tc-track{
    display: flex;
    gap: var(--tc-gap);
    padding: 2px; /* scroll-shadow kırpılmasın diye min padding */
}
.team-carousel .tc-slide{
    flex: 0 0 calc((100% - var(--tc-gap) * (var(--tc-pv) - 1)) / var(--tc-pv));
    scroll-snap-align: start;
}

/* arrows */
.team-carousel .tc-arrow{
    position: absolute; top: -64px; right: 0;
    width: 44px; height: 44px; border-radius: 50%;
    border: 2px solid #2E7D32; background: #fff; color:#2E7D32;
    display:flex; align-items:center; justify-content:center;
    cursor: pointer; transition: .2s ease;
}
.team-carousel .tc-prev{ right: 56px; }
.team-carousel .tc-arrow:hover{ transform: translateY(-1px); }
.team-carousel .tc-arrow.disabled{ opacity:.4; pointer-events:none; }

/* dots */
.team-carousel .tc-dots{
    display:flex; gap:8px; justify-content:center; margin-top:12px;
}
.team-carousel .tc-dots button{
    width:8px; height:8px; border-radius:50%; background:#f5b9a6; border:0; cursor:pointer;
}
.team-carousel .tc-dots button.active{ background:#ea7a48; }

/* ================= Team Cards ================= */
.team-grid{
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 340px));
    gap:24px; 
    justify-content:space-between;
}

/* Kart ana yapısı - tüm kartlar eşit yükseklikte */
.team-card{
    background:#fff; 
    border-radius:18px; 
    box-shadow:0 6px 20px rgba(0,0,0,.08);
    overflow:visible; /* Info box'ın shadow'u gözüksün */
    display:flex; 
    flex-direction:column;
}

/* Görsel kısmı - sabit yükseklik, kenarlara oturmalı */
.team-card__thumb{ 
    height: 320px; /* Daha kısa görsel yüksekliği */
    background:#f3f3f3;
    flex-shrink: 0; /* Görselin küçülmesini engelle */
    overflow: hidden;
    border-radius:18px 18px 0 0; /* Üst köşeler yuvarla */
    margin: 0; /* Margin sıfır */
    width: 100%; /* Tam genişlik */
}
.team-card__thumb img{ 
    width:100%; 
    height:100%; 
    object-fit:cover; 
    object-position: center top; /* Yüzü üstte konumlandır */
    display:block; 
}

/* Info kutusu - kalan alanı kapla */
.team-card__info{
    background:#fff; 
    margin:-24px 16px 16px; /* Görselin üstüne binsin */
    border-radius:16px;
    box-shadow:0 8px 18px rgba(0,0,0,.08);
    padding:16px 16px 14px; 
    display:flex;
    flex-direction:column;
    flex:1; /* Kalan alanı kapla */
    min-height: 180px; /* Daha kompakt */
    position: relative; /* Shadow için */
    z-index: 1;
}

/* Başlık - tek satır */
.team-card__name{ 
    font-family:"Copernicus", Georgia, serif;
    font-weight:600;
    font-size:22px;
    line-height:30px;
    margin:4px 0 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Açıklama - iki satır sabit */
.team-card__desc{
    font-family:"Centra", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    font-weight:400;
    font-size:18px;
    line-height:26px;
    color:#222;
    margin:0 0 8px;
    height: 52px; /* 2 satır = 26px * 2 */
    display:-webkit-box; 
    -webkit-line-clamp:2; 
    -webkit-box-orient:vertical; 
    overflow:hidden;
}

/* CTA butonu - her zaman en alta */
.team-card__cta{ 
    margin-top:auto; 
}
.team-card__cta .btn-more{
    background:#EA7A48; 
    color:#fff; 
    text-decoration:none;
    border:0; 
    border-radius:84px; 
    padding:9px 20px; /* Daha kompakt buton */
    font-weight:600; 
    font-size:15px;
    cursor:pointer;
    white-space: nowrap;
    display:inline-block;
}
.team-card__cta .btn-more:hover{ 
    filter:brightness(.95); 
}

/* ================= Modal ================= */
.team-modal{ position:fixed; inset:0; display:none; z-index:9999; }
.team-modal.is-open{ display:block; }
.team-modal__overlay{ position:absolute; inset:0; background:rgba(0,0,0,.5); }
.team-modal__dialog{
    position:relative; margin:6vh auto; max-width:860px; background:#fff;
    border-radius:20px; box-shadow:0 12px 40px rgba(0,0,0,.2); overflow:hidden; z-index:1;
    padding:28px 28px 22px;
}
.team-modal__close{
    position:absolute; right:16px; top:12px; width:36px; height:36px; border-radius:50%;
    border:0; background:#fff; cursor:pointer; box-shadow:0 2px 8px rgba(0,0,0,.15);
    font-size:22px; line-height:36px;
}

/* note pill */
.note-pill{
    display:inline-flex; align-items:center; gap:10px;
    background:#F5DAD4; color:#8B5B4A; padding:10px 16px; border-radius:999px; margin-bottom:16px;
}
.note-pill .note-icon{ display:inline-flex; }

/* content */
.team-modal__content h2{ margin:0 0 12px; font-size:40px; line-height:1.1; }
.team-modal__content .desc{ color:#222; line-height:1.65; }

/* footer buttons */
.team-modal__footer{ 
    display:flex; 
    gap:12px; 
    padding-top:18px; 
}

.btn-book{
    background:#2E7D32; 
    color:#fff; 
    display:inline-flex; 
    align-items:center; 
    gap:10px; 
    text-decoration:none;
    border-radius:84px;
    padding:10px 24px;
    font-size:16px;
    font-weight:600;
}
.btn-book .ico svg{ 
    display:block; 
}

.btn-secondary{
    background:#fff; 
    color:#1f1f1f; 
    border:1.5px solid #e6e6e6; 
    text-decoration:none;
    border-radius:84px;
    padding:10px 24px;
    font-size:16px;
    font-weight:600;
}

/* Carousel ek ayarlar */
.team-carousel .tc-slide{ 
    scroll-snap-align:start; 
    height:100%; /* Carousel içinde de eşit yükseklik */
}

/* Responsive */
@media (max-width: 720px){
    .team-grid{ 
        grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); 
    }
    .team-card__thumb{ 
        height: 280px; /* Mobilde daha kısa */
    }
    .team-card__info{
        min-height: 160px; /* Mobilde daha kompakt */
        padding:12px 12px 10px;
    }
    .team-card__name{
        font-size:20px;
        line-height:28px;
    }
    .team-card__desc{
        font-size:16px;
        line-height:24px;
        height: 48px; /* 2 satır = 24px * 2 */
    }
    .team-modal__dialog{ 
        margin:3vh 12px; 
        padding:22px 18px; 
    }
    .team-modal__content h2{ 
        font-size:30px; 
    }
}
