/* Shared result identity for Sports and Destinations. */
.center-result-photo{position:relative}
.sports-card-media>img.center-country-flag,.center-result-photo>img.center-country-flag,.destination-card-photo>img.center-country-flag{position:absolute!important;inset:auto 7px 7px auto!important;z-index:4;display:block;width:25px!important;height:18px!important;max-width:none;object-fit:cover;border:2px solid #fff;border-radius:3px!important;box-shadow:0 1px 5px #00193744;transform:none!important}
.sports-center-card[data-flagship=true],.sports-comparison-card[data-flagship=true],.destination-card[data-flagship=true]{--center-surface:#001937;background:#001937!important;color:#fff!important;border:2px solid #001937!important;box-shadow:none!important}
.sports-center-card[data-flagship=true]>.sports-flagship-band,.sports-comparison-card[data-flagship=true]>.sports-flagship-band,.destination-card[data-flagship=true]>.destination-flagship-frame{background:#2c2c2c!important;color:#fff!important}
.sports-center-card[data-flagship=true]>span:not(.sports-flagship-band),.destination-card[data-flagship=true] .destination-card-title,.sports-comparison-card[data-flagship=true] .sports-comparison-name{color:#fff!important}
.sports-center-card[data-flagship=true]>span:not(.sports-center-name):not(.sports-card-discover):not(.sports-flagship-band),.destination-card[data-flagship=true] .destination-card-location,.destination-card[data-flagship=true] .destination-mobile-sports,.destination-card[data-flagship=true] .destination-mobile-hotel{color:#ccc!important}
.sports-center-card[data-flagship=true]>.sports-card-discover,.destination-card[data-flagship=true] .destination-discover{background:#fff;color:#001937!important;border-color:#777}
.destination-card[data-flagship=true] .destination-program-label{color:#bbb}
.destination-card[data-flagship=true] .destination-program-tags>span{background:#2c2c2c;color:#ddd}
.sports-comparison-card[data-flagship=true] .sports-compare-heading{background:#001937!important;color:#fff!important;border-color:#444!important}
.sports-comparison-card[data-flagship=true] .sports-compare-heading>span:nth-child(2)>span:last-child{color:#ccc!important}
.sports-comparison-card[data-flagship=true] .sports-compare-heading>span:last-child a{background:transparent!important;color:#fff!important;border-color:#777!important}
.sports-comparison-card[data-flagship=true] .sports-compare-heading>span:last-child a:last-child{background:#fff!important;color:#001937!important}
.sports-comparison-card[data-flagship=true] .sports-compare-labels{background:#001937!important;border-color:#444!important}
.sports-comparison-card[data-flagship=true] .sports-compare-labels>span{color:#ccc!important}
.sports-comparison-card[data-flagship=true] .sports-program-row{color:#fff!important;border-color:#444!important}
.sports-comparison-card[data-flagship=true] .sports-program-row:hover{background:#292929!important}
.sports-comparison-card[data-flagship=true] .sports-program-row>span:last-child{background:#fff!important;color:#001937!important}
@media(max-width:900px){
 .sports-center-card[data-flagship=true]>.sports-card-discover,.destination-card[data-flagship=true] .destination-discover{background:transparent!important;color:#fff!important}
 .sports-center-card[data-flagship=true]:hover,.sports-center-card[data-flagship=true]:focus-visible,.destination-card[data-flagship=true]:hover,.destination-card[data-flagship=true]:focus-visible{background:#001937!important;border-color:#001937!important}
 .sports-comparison-card[data-flagship=true] .sports-compare-heading>span:last-child a:first-child{background:#fff!important;color:#001937!important}
 .sports-comparison-card[data-flagship=true] .sports-compare-heading>span:last-child a:last-child{background:transparent!important;color:#fff!important}
}

/* Mobile stay label: a quiet badge, distinct from the card action. */
@media(max-width:900px){
 #dc-root .sports-center-card>.sports-mobile-stay,.destination-card .destination-mobile-hotel{display:inline-flex;align-items:center;justify-self:start;align-self:flex-start;width:fit-content;gap:5px;padding:4px 7px;border:1px solid #d9d7d0;border-radius:5px;background:#eaeae5;color:#565850!important;font-size:9px!important;font-weight:700;line-height:1.3!important;letter-spacing:.05em!important}
 #dc-root .sports-center-card[data-flagship=true]>.sports-mobile-stay,.destination-card[data-flagship=true] .destination-mobile-hotel{background:#2b2b2b!important;color:#e6e6e0!important;border-color:#484848}
}

@media(min-width:901px){
 .sports-center-card[data-flagship=true]>span.sports-card-discover{background:#fff!important;color:#001937!important;border-color:#fff!important}
}

/* Uniform cards; desktop flags sit beside the center name. */
.sports-center-card:not([data-flagship=true]),.sports-comparison-card:not([data-flagship=true]),.destination-card:not([data-flagship=true]){--center-surface:#fff;background:#fff!important}
.center-name-flag{display:none}
.sports-card-media>img.center-country-flag,.center-result-photo>img.center-country-flag,.destination-card-photo>img.center-country-flag{border:0!important;box-shadow:none!important;border-radius:1px!important}
@media(min-width:901px){
 .sports-card-media>img.center-country-flag,.center-result-photo>img.center-country-flag,.destination-card-photo>img.center-country-flag{display:none!important}
 .sports-center-name,.sports-comparison-name,.destination-card-title{display:flex;align-items:center;gap:10px}
 .sports-center-name>.center-name-flag,.sports-comparison-name>.center-name-flag,.destination-card-title>.center-name-flag{display:block;flex:none;width:25px;height:17px;object-fit:cover;border:0;border-radius:1px;box-shadow:none}
}

/* The flagship gets a clear, compact marker against its black card. */
.sports-center-card[data-flagship=true]>.sports-flagship-band,.sports-comparison-card[data-flagship=true]>.sports-flagship-band,.destination-card[data-flagship=true]>.destination-flagship-frame{background:#fff!important;color:#001937!important;font-size:11px;font-weight:900;letter-spacing:.18em;line-height:1.3;padding:8px 12px;border-radius:5px;width:fit-content;align-self:flex-start}
@media(min-width:901px){
 .sports-center-card[data-flagship=true]>.sports-flagship-band{top:14px;left:14px}
 .sports-center-card[data-flagship=true] .sports-card-media>.r-wrap{top:58px!important}
 .sports-comparison-card[data-flagship=true]>.sports-flagship-band{margin:14px 20px 0}
 .destination-card[data-flagship=true]>.destination-flagship-frame{margin:14px 18px 0}
}
@media(max-width:900px){
 .sports-center-card[data-flagship=true]>.sports-flagship-band,.sports-comparison-card[data-flagship=true]>.sports-flagship-band,.destination-card[data-flagship=true]>.destination-flagship-frame{font-size:9px;letter-spacing:.14em;padding:5px 8px;justify-self:start}
}

/* Desktop accommodation benefit: a compact ribbon at the foot of the image. */
@media(min-width:901px){
 .sports-card-media>.r-wrap,.sports-center-card[data-flagship=true] .sports-card-media>.r-wrap{top:auto!important;bottom:14px;left:0!important}
 .sports-card-media>.r-wrap>span,.destination-card-photo>.destination-hotel{display:inline-flex;align-items:center;background:#001937!important;color:#fff!important;border:0;border-left:3px solid #fff;border-radius:0 6px 6px 0!important;padding:10px 16px!important;font-size:12px!important;font-weight:900;letter-spacing:.12em!important;line-height:1.2;box-shadow:0 2px 8px #00193733}
 .destination-card-photo>.destination-hotel{left:0;bottom:14px}
}
@media(max-width:900px){
 .sports-card-media>img.center-country-flag,.center-result-photo>img.center-country-flag,.destination-card-photo>img.center-country-flag{border:1px solid #fff!important;border-radius:2px!important}
}

.sports-desktop-stay{display:none}
@media(min-width:901px){
 .sports-card-media>.r-wrap{display:none!important}
 .sports-card-benefits{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
 .sports-card-benefits>.sports-desktop-stay{display:inline-flex;flex:none;padding:6px 9px;border:1px solid #001937;border-radius:5px;background:#fff;color:#001937;font-size:10px;font-weight:900;letter-spacing:.07em;line-height:1.2}
 .sports-center-card[data-flagship=true] .sports-desktop-stay{background:#001937;color:#fff;border:1px solid #fff}
}

.flagship-heart{display:inline-block;margin-right:4px;font-size:1.25em;line-height:1;vertical-align:-.05em;letter-spacing:0;color:inherit}

.sports-inline-flagship{display:inline-flex;align-items:center;flex:none;gap:4px;width:fit-content;padding:6px 9px;border-radius:5px;background:#fff;color:#001937;font-size:10px;font-weight:900;letter-spacing:.12em;line-height:1.2}
.sports-inline-flagship .flagship-heart{margin:0}
@media(max-width:900px){
 .sports-compare-heading>span:nth-child(2)>.r-wrap{gap:8px!important}
 .sports-inline-flagship{font-size:9px;padding:5px 7px}
}

.destination-inline-flagship{display:none}
@media(min-width:901px){
 .destination-card[data-flagship=true]>.destination-flagship-frame{display:none}
 .destination-card[data-flagship=true] .destination-card-title{flex-wrap:wrap;gap:8px}
 .destination-inline-flagship{display:inline-flex;align-items:center;flex:none;gap:4px;padding:6px 9px;border-radius:5px;background:#fff;color:#001937;font-size:10px;font-weight:900;letter-spacing:.12em;line-height:1.2}
 .destination-inline-flagship .flagship-heart{margin:0}
}

/* Match the Sports card benefit row on desktop. */
.destination-desktop-stay{display:none}
@media(min-width:901px){
 .destination-card-photo>.destination-hotel{display:none!important}
 .destination-card .destination-mobile-sports{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:10px;font-weight:700;letter-spacing:.12em;line-height:1.4;color:#8b8880}
 .destination-mobile-sports>.destination-desktop-stay{display:inline-flex;flex:none;padding:6px 9px;border-radius:5px;background:#001937;color:#fff;font-size:10px;font-weight:900;letter-spacing:.07em;line-height:1.2}
 .destination-card[data-flagship=true] .destination-desktop-stay{background:#001937;color:#fff;border:1px solid #fff}
}
.sports-comparison-sports{display:none}
@media(max-width:900px){
 .sports-card-media>img.center-country-flag,.center-result-photo>img.center-country-flag,.destination-card-photo>img.center-country-flag{display:none!important}
 .sports-center-name,.sports-comparison-name,.destination-card-title{display:flex!important;align-items:center;gap:7px}
 .sports-center-name>.center-name-flag,.sports-comparison-name>.center-name-flag,.destination-card-title>.center-name-flag{display:block;width:22px;height:15px;flex:0 0 22px;object-fit:cover;border:0;border-radius:0}
 .sports-center-card>.sports-center-name{order:1}
 .sports-center-card>.sports-center-location{order:2}
 .sports-center-card>.sports-card-benefits{order:3}
 .sports-center-card>.sports-mobile-stay{order:4}
 .sports-comparison-card .sports-compare-heading>.sports-comparison-sports{display:block;grid-column:2;font-size:10px;font-weight:700;line-height:1.4;color:#777;text-transform:uppercase}
 .sports-comparison-card[data-flagship=true] .sports-comparison-sports{color:#ccc}
 .sports-comparison-card .sports-compare-heading>span:first-child{grid-row:1/4}
}
@media(max-width:900px){
 .sports-comparison-card .sports-compare-heading>span:last-child{display:contents!important}
 .sports-comparison-card .sports-compare-heading>span:last-child a:last-child{display:none!important}
 .sports-comparison-card .sports-compare-heading>span:first-child{grid-row:1/3}
}

/* Two standard destinations per row; keep the flagship at full width. */
@media(min-width:901px){
 .destination-results-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px!important;align-items:stretch;min-width:0}
 .destination-results-list>.destination-card[data-flagship=true]{grid-column:1/-1}
 .destination-results-list>.destination-card:not([data-flagship=true]){display:grid;grid-template-columns:minmax(115px,38%) minmax(0,1fr);min-width:0;min-height:190px}
 .destination-results-list>.destination-card:not([data-flagship=true])>.destination-card-photo{grid-column:1;grid-row:1;width:100%;height:100%;min-height:190px;align-self:stretch}
 .destination-results-list>.destination-card:not([data-flagship=true])>.destination-card-body{flex:1;min-width:0;padding:16px;gap:10px}
 .destination-results-list>.destination-card:not([data-flagship=true]) .destination-card-title{font-size:20px;line-height:1.15;overflow-wrap:anywhere}
 .destination-results-list>.destination-card:not([data-flagship=true]) .destination-card-location{font-size:11px}
 .destination-results-list>.destination-card:not([data-flagship=true]) .destination-program-tags{flex-wrap:wrap}
 .destination-results-list>.destination-card:not([data-flagship=true]) .destination-card-bottom{margin-top:auto}
 .destination-results-list>.destination-card:not([data-flagship=true]) .destination-discover{font-size:10px;padding:10px 14px}
}

/* Shared French Riviera feature card: cobalt shell, royal accent, sky-blue CTA. */
.sports-center-card[data-flagship=true],
.sports-comparison-card[data-flagship=true],
.destination-card[data-flagship=true]{background:#001937!important;border-color:#00349d!important}
.sports-center-card[data-flagship=true]>.sports-flagship-band,
.sports-comparison-card[data-flagship=true]>.sports-flagship-band,
.destination-card[data-flagship=true]>.destination-flagship-frame,
.sports-inline-flagship,
.destination-inline-flagship{background:#00349d!important;color:#fff!important;border-color:#00349d!important}
.sports-center-card[data-flagship=true]>.sports-card-discover,
.destination-card[data-flagship=true] .destination-discover,
.sports-comparison-card[data-flagship=true] .sports-compare-heading>span:last-child a:last-child{background:#1f92f0!important;border-color:#1f92f0!important;color:#fff!important}

/* Compact standard destination cards on desktop; keep the flagship unchanged. */
@media(min-width:901px){
 .destination-results-list>.destination-card:not([data-flagship=true])>.destination-card-photo{height:100%;min-height:190px}
 .destination-results-list>.destination-card:not([data-flagship=true])>.destination-card-body{padding:12px 14px;gap:7px}
 .destination-results-list>.destination-card:not([data-flagship=true]) .destination-card-bottom{min-height:0;padding:0}
 .destination-results-list>.destination-card:not([data-flagship=true]) .destination-discover{display:inline-flex;align-items:center;justify-content:center;font-size:0!important;gap:0;padding:0!important;min-width:28px;min-height:26px;background:transparent!important;color:#001937!important;border:0;box-shadow:none}
 .destination-results-list>.destination-card:not([data-flagship=true]) .destination-discover>span{font-size:24px;line-height:1}
}

/* Feature French Riviera with a full-width photo on mobile destinations. */
@media(max-width:900px){
 .destination-results-list>.destination-card[data-flagship=true]{display:flex;flex-direction:column;align-items:stretch;padding:0;gap:0;overflow:hidden}
 .destination-results-list>.destination-card[data-flagship=true]>.destination-card-photo{width:100%;height:160px;flex:none;border-radius:0;aspect-ratio:auto}
 .destination-results-list>.destination-card[data-flagship=true]>.destination-flagship-frame{position:absolute;top:12px;left:12px;z-index:1;margin:0}
 .destination-results-list>.destination-card[data-flagship=true]>.destination-card-body{padding:18px;gap:10px}
 .destination-results-list>.destination-card[data-flagship=true] .destination-card-title{order:0;font-size:26px;line-height:1.15}
 .destination-results-list>.destination-card[data-flagship=true] .destination-card-location{order:1;font-size:12px}
 .destination-results-list>.destination-card[data-flagship=true] .destination-mobile-hotel{order:2}
 .destination-results-list>.destination-card[data-flagship=true] .destination-mobile-sports{order:3;font-size:11px}
 .destination-results-list>.destination-card[data-flagship=true] .destination-card-bottom{order:4;position:static;transform:none;align-self:flex-end;min-height:24px}
}
