/* ========================================================================== */
/* Safari Connect Hub — Homepage v1.10.394                                */
/* Homepage Tour cards: match Tours landing-page compact card rhythm.         */
/* Keep 3-column desktop grid while preserving canonical tour-card markup.    */
/* ========================================================================== */

/* Three-column homepage grid remains the layout baseline. */
body.home .tmc-home-tours__grid,
body.home .tmc-home-tours__grid[class*="tmc-home-tours__grid--count-"]{
    align-items:stretch!important;
    display:grid!important;
    gap:25px 20px!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    max-width:none!important;
    width:100%!important;
}
body.home .tmc-home-tours__grid--count-1{
    grid-template-columns:minmax(0,390px)!important;
    max-width:390px!important;
}
body.home .tmc-home-tours__grid--count-2{
    grid-template-columns:repeat(2,minmax(0,390px))!important;
    max-width:800px!important;
}
body.home .tmc-home-tours__grid--count-3{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    max-width:none!important;
}
body.home .tmc-home-tours__item{
    align-items:stretch!important;
    display:flex!important;
    min-width:0!important;
}

/* Mirror the compact Tours landing-page card proportions. */
body.home .tmc-home-tours__item>.tmc-tour-card--homepage{
    display:flex!important;
    flex-direction:column!important;
    height:436px!important;
    max-height:436px!important;
    min-height:436px!important;
    min-width:0!important;
    width:100%!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__media,
body.home .tmc-tour-card--homepage.tmc-tour-card--destination .tmc-tour-card__media{
    flex:0 0 186px!important;
    height:186px!important;
    min-height:186px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__body,
body.home .tmc-tour-card--homepage.tmc-tour-card--destination .tmc-tour-card__body{
    flex:1 1 auto!important;
    gap:7px!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:12px 14px 10px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__title,
body.home .tmc-tour-card--homepage.tmc-tour-card--destination .tmc-tour-card__title{
    display:-webkit-box!important;
    font-size:18px!important;
    line-height:1.2!important;
    margin:0!important;
    min-height:43px!important;
    overflow:hidden!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__location{
    font-size:12.5px!important;
    gap:6px!important;
    line-height:1.3!important;
    margin:0!important;
    min-height:17px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__location .tmc-icon{
    height:13px!important;
    margin-top:0!important;
    width:13px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__location span{
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__classification{
    flex-wrap:nowrap!important;
    gap:5px!important;
    margin-top:0!important;
    min-height:24px!important;
    overflow:hidden!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__classification span,
body.home .tmc-tour-card--homepage .tmc-tour-card__classification-item{
    font-size:10.5px!important;
    min-height:23px!important;
    max-width:50%!important;
    overflow:hidden!important;
    padding:0 8px!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__meta,
body.home .tmc-tour-card--homepage .tmc-tour-card__meta--summary{
    flex-wrap:nowrap!important;
    min-height:18px!important;
    overflow:hidden!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__meta-item{
    font-size:11px!important;
    gap:4px!important;
    min-width:0!important;
    padding:0 7px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__meta-item .tmc-icon{
    height:11px!important;
    width:11px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__meta-rating strong{font-size:11.5px!important}
body.home .tmc-tour-card--homepage .tmc-tour-card__meta-rating span{font-size:10.5px!important}
body.home .tmc-tour-card--homepage .tmc-tour-card__footer{
    flex:0 0 auto!important;
    margin-top:auto!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__operator,
body.home .tmc-tour-card--homepage.tmc-tour-card--destination .tmc-tour-card__operator{
    flex:0 0 45px!important;
    gap:8px!important;
    min-height:45px!important;
    padding:7px 14px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__operator-avatar{
    flex-basis:30px!important;
    height:30px!important;
    width:30px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__operator-avatar img,
body.home .tmc-tour-card--homepage .tmc-tour-card__operator-avatar .tmc-operator-avatar-image{
    height:30px!important;
    width:30px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__operator-copy{gap:1px!important}
body.home .tmc-tour-card--homepage .tmc-tour-card__operator-copy a,
body.home .tmc-tour-card--homepage .tmc-tour-card__operator-copy strong{
    font-size:12.5px!important;
    line-height:1.2!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__operator-copy small{
    font-size:10px!important;
    line-height:1.2!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__footer-actions,
body.home .tmc-tour-card--homepage.tmc-tour-card--destination .tmc-tour-card__footer-actions{
    align-items:center!important;
    flex:0 0 57px!important;
    gap:8px!important;
    min-height:57px!important;
    padding:8px 14px 9px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__price-label{font-size:9.5px!important}
body.home .tmc-tour-card--homepage .tmc-tour-card__price-value{
    font-size:18px!important;
    line-height:1.08!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__price small{font-size:9.5px!important}
body.home .tmc-tour-card--homepage .tmc-tour-card__cta,
body.home .tmc-tour-card--homepage.tmc-tour-card--destination .tmc-tour-card__cta{
    border-radius:7px!important;
    font-size:11.5px!important;
    gap:6px!important;
    min-height:38px!important;
    min-width:108px!important;
    padding:0 12px!important;
}
body.home .tmc-tour-card--homepage .tmc-tour-card__cta .tmc-icon{
    height:12px!important;
    width:12px!important;
}

/* Keep the card compact but allow the normal two-column tablet layout. */
@media(max-width:1100px) and (min-width:768px){
    body.home .tmc-home-tours__grid,
    body.home .tmc-home-tours__grid[class*="tmc-home-tours__grid--count-"]{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        max-width:none!important;
    }
    body.home .tmc-home-tours__item>.tmc-tour-card--homepage{
        height:446px!important;
        max-height:446px!important;
        min-height:446px!important;
    }
}

/* Mobile follows the Tours landing-page behavior: full width and natural height. */
@media(max-width:767px){
    body.home .tmc-home-tours__grid,
    body.home .tmc-home-tours__grid[class*="tmc-home-tours__grid--count-"]{
        gap:22px!important;
        grid-template-columns:1fr!important;
        max-width:none!important;
    }
    body.home .tmc-home-tours__item>.tmc-tour-card--homepage{
        height:auto!important;
        max-height:none!important;
        min-height:0!important;
    }
    body.home .tmc-tour-card--homepage .tmc-tour-card__media,
    body.home .tmc-tour-card--homepage.tmc-tour-card--destination .tmc-tour-card__media{
        flex-basis:205px!important;
        height:205px!important;
        min-height:205px!important;
    }
    body.home .tmc-tour-card--homepage .tmc-tour-card__body,
    body.home .tmc-tour-card--homepage.tmc-tour-card--destination .tmc-tour-card__body{
        overflow:visible!important;
    }
    body.home .tmc-tour-card--homepage .tmc-tour-card__title,
    body.home .tmc-tour-card--homepage.tmc-tour-card--destination .tmc-tour-card__title{
        font-size:19px!important;
        min-height:auto!important;
    }
    body.home .tmc-tour-card--homepage .tmc-tour-card__classification,
    body.home .tmc-tour-card--homepage .tmc-tour-card__meta,
    body.home .tmc-tour-card--homepage .tmc-tour-card__meta--summary{
        flex-wrap:wrap!important;
        min-height:0!important;
        overflow:visible!important;
    }
    body.home .tmc-tour-card--homepage .tmc-tour-card__classification span,
    body.home .tmc-tour-card--homepage .tmc-tour-card__classification-item{
        max-width:100%!important;
    }
}
