/* ========================================================================== */
/* Safari Connect Hub — Homepage Countries / v1.10.390                    */
/* Popularity-first 12-country editorial mosaic with regional filtering.     */
/* ========================================================================== */
.tmc-home-destinations{
    --tmc-country-green:#0a4b3a;
    --tmc-country-green-deep:#07392d;
    --tmc-country-ink:#10211b;
    --tmc-country-muted:#66706b;
    background:#fffdf9;
    color:var(--tmc-country-ink);
    padding:64px 0 68px;
    position:relative;
}
.tmc-home-destinations__inner{margin:0 auto;max-width:1280px;padding:0 34px}
.tmc-home-destinations__head{align-items:flex-end;display:flex;gap:36px;justify-content:space-between;margin-bottom:18px}
.tmc-home-destinations__heading{max-width:860px}
.tmc-home-destinations__eyebrow{align-items:center;color:var(--tmc-country-green);display:inline-flex;font-size:11px;font-weight:800;gap:12px;letter-spacing:.18em;margin-bottom:9px;text-transform:uppercase}
.tmc-home-destinations__eyebrow>span{background:#33463e;display:block;height:1px;opacity:.65;width:54px}
html body.home .tmc-home-destinations h2{color:#0a1713;font-family:var(--asc-font-heading,"Barlow Condensed","Arial Narrow",Arial,sans-serif)!important;font-size:var(--asc-type-section,40px)!important;font-weight:700!important;letter-spacing:-.025em!important;line-height:1.05!important;margin:0 0 8px!important}
html body.home .tmc-home-destinations__heading p{color:#636a67;font-size:14.5px!important;line-height:1.55!important;margin:0;max-width:800px}
.tmc-home-destinations__aside{display:none}
.tmc-home-destinations__filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.tmc-home-destinations__filter{appearance:none;background:#fff;border:1px solid #e1e5e2;border-radius:999px;color:#33413a;cursor:pointer;font-family:var(--asc-font-body,Poppins,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif)!important;font-size:11px;font-weight:700;line-height:1;min-height:34px;padding:0 16px;transition:.2s ease}
.tmc-home-destinations__filter:hover{border-color:#b8c8c0;transform:translateY(-1px)}
.tmc-home-destinations__filter.is-active{background:var(--tmc-country-green);border-color:var(--tmc-country-green);color:#fff}
.tmc-home-destinations__filter:focus-visible{outline:3px solid rgba(10,75,58,.2);outline-offset:2px}

/* 12 visible countries: the first is the editorial anchor, the next 11 make a dense mosaic. */
.tmc-home-destinations__grid{display:grid;gap:11px;grid-auto-flow:dense;grid-auto-rows:142px;grid-template-columns:repeat(5,minmax(0,1fr))}
.tmc-home-destination-card{background:#17382c;border:1px solid rgba(8,58,43,.08);border-radius:10px;box-shadow:0 7px 22px rgba(18,53,39,.055);color:#fff!important;display:block;min-height:0;overflow:hidden;position:relative;text-decoration:none!important;transform:translateZ(0);transition:box-shadow .22s ease,transform .22s ease}
.tmc-home-destination-card--featured{grid-column:span 2;grid-row:span 2}
.tmc-home-destination-card[hidden]{display:none!important}
.tmc-home-destination-card:focus-visible{outline:3px solid rgba(10,75,58,.38);outline-offset:3px}
.tmc-home-destination-card__image{background:linear-gradient(145deg,#315b49,#0b2f22);inset:0;overflow:hidden;position:absolute}
.tmc-home-destination-card__image img{display:block;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.65,.25,1);width:100%}
.tmc-home-destination-card__shade{background:linear-gradient(0deg,rgba(0,12,9,.88) 0%,rgba(0,12,9,.5) 33%,rgba(0,12,9,.05) 72%,rgba(0,12,9,.01) 100%);inset:0;position:absolute;transition:background .22s ease}
.tmc-home-destination-card__content{bottom:0;left:0;padding:13px 42px 12px 13px;position:absolute;right:0;z-index:2}
html body.home .tmc-home-destination-card__title{color:#fff;display:block;font-family:var(--asc-font-heading,"Barlow Condensed","Arial Narrow",Arial,sans-serif)!important;font-size:19px!important;font-weight:700!important;letter-spacing:-.02em;line-height:1.04!important;margin:0 0 3px;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.tmc-home-destination-card__subtitle{color:rgba(255,255,255,.92);display:block;font-size:9.7px;font-weight:500;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tmc-home-destination-card--featured .tmc-home-destination-card__content{padding:22px 68px 21px 21px}
html body.home .tmc-home-destination-card--featured .tmc-home-destination-card__title{font-size:32px!important;margin-bottom:5px}
.tmc-home-destination-card--featured .tmc-home-destination-card__subtitle{font-size:12px}
.tmc-home-destination-card__arrow{align-items:center;background:rgba(255,255,255,.94);border-radius:50%;bottom:11px;color:var(--tmc-country-green);display:flex;height:28px;justify-content:center;position:absolute;right:11px;transition:.2s ease;width:28px;z-index:3}
.tmc-home-destination-card--featured .tmc-home-destination-card__arrow{bottom:19px;height:36px;right:18px;width:36px}
.tmc-home-destination-card__arrow i{font-size:10px}
.tmc-home-destination-card:hover{box-shadow:0 13px 28px rgba(18,53,39,.11);transform:translateY(-2px)}
.tmc-home-destination-card:hover .tmc-home-destination-card__image img{transform:scale(1.045)}
.tmc-home-destination-card:hover .tmc-home-destination-card__shade{background:linear-gradient(0deg,rgba(0,12,9,.94) 0%,rgba(0,12,9,.6) 35%,rgba(0,12,9,.07) 72%,rgba(0,12,9,.02) 100%)}
.tmc-home-destination-card:hover .tmc-home-destination-card__arrow{background:var(--tmc-country-green);color:#fff;transform:translateX(2px)}

.tmc-home-destinations__footer{display:flex;justify-content:center;margin-top:22px}
.tmc-home-destinations__view-all{align-items:center;background:transparent;border:1px solid #ccd7d1;border-radius:8px;color:var(--tmc-country-green)!important;display:inline-flex;font-size:12px!important;font-weight:800;gap:12px;justify-content:center;min-height:43px;padding:0 22px;text-decoration:none!important;transition:.2s ease}
.tmc-home-destinations__view-all:hover{background:var(--tmc-country-green);border-color:var(--tmc-country-green);color:#fff!important;transform:translateY(-1px)}
.tmc-home-destinations__view-all i{font-size:10px;transition:transform .2s ease}.tmc-home-destinations__view-all:hover i{transform:translateX(3px)}

@media(max-width:1100px){
    .tmc-home-destinations__grid{grid-auto-rows:138px;grid-template-columns:repeat(4,minmax(0,1fr))}
    .tmc-home-destination-card--featured{grid-column:span 2;grid-row:span 2}
}
@media(max-width:820px){
    .tmc-home-destinations{padding:56px 0 60px}
    .tmc-home-destinations__inner{padding:0 24px}
    .tmc-home-destinations__head{display:block;margin-bottom:16px}
    .tmc-home-destinations__grid{grid-auto-rows:132px;grid-template-columns:repeat(3,minmax(0,1fr))}
    html body.home .tmc-home-destination-card__title{font-size:18px!important}
}
@media(max-width:620px){
    .tmc-home-destinations{padding:46px 0 50px}
    .tmc-home-destinations__inner{padding:0 18px}
    html body.home .tmc-home-destinations h2{font-size:30px!important}
    html body.home .tmc-home-destinations__heading p{font-size:13px!important}
    .tmc-home-destinations__eyebrow{font-size:9.5px;margin-bottom:7px}
    .tmc-home-destinations__filters{flex-wrap:nowrap;margin-left:-18px;margin-right:-18px;overflow-x:auto;padding:0 18px 4px;scrollbar-width:none}
    .tmc-home-destinations__filters::-webkit-scrollbar{display:none}
    .tmc-home-destinations__filter{flex:0 0 auto;min-height:34px;padding:0 14px}
    .tmc-home-destinations__grid{grid-auto-rows:118px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
    .tmc-home-destination-card--featured{grid-column:1/-1;grid-row:span 2}
    .tmc-home-destination-card__content{padding:10px 34px 9px 10px}
    html body.home .tmc-home-destination-card__title{font-size:16px!important}
    .tmc-home-destination-card__subtitle{font-size:8.7px}
    .tmc-home-destination-card--featured .tmc-home-destination-card__content{padding:17px 55px 16px 16px}
    html body.home .tmc-home-destination-card--featured .tmc-home-destination-card__title{font-size:25px!important}
    .tmc-home-destination-card--featured .tmc-home-destination-card__subtitle{font-size:10.5px}
    .tmc-home-destination-card__arrow{bottom:8px;height:25px;right:8px;width:25px}
    .tmc-home-destination-card--featured .tmc-home-destination-card__arrow{bottom:14px;height:32px;right:13px;width:32px}
    .tmc-home-destinations__view-all{width:100%}
}
@media(max-width:350px){
    .tmc-home-destinations__grid{grid-template-columns:1fr}
    .tmc-home-destination-card--featured{grid-column:auto;grid-row:span 2}
}
