/* Cosmo Resort Series — regional sections (AW 1.3.64, preview pages only). Loaded after cosmo-badges.css. */
.cch3-seriespage { --ccr-top: 64px; --ccr-nav-h: 52px; }

/* jump-nav: sticky under the sticky site header, full-bleed paper band */
.ccr-nav { position: sticky; top: var(--ccr-top); z-index: 40; margin: 44px 0 0; background: var(--cch3-page);
	box-shadow: 0 0 0 100vmax var(--cch3-page); clip-path: inset(0 -100vmax); border-top: 1px solid rgba(29,26,23,.08); border-bottom: 1px solid rgba(29,26,23,.08); }
.ccr-nav__inner { display: flex; align-items: center; gap: 18px; min-height: var(--ccr-nav-h); }
.ccr-nav__label { flex: none; font-family: var(--cch3-sans); font-weight: 600; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; color: var(--cch3-label); padding-right: 16px; border-right: 1px solid var(--cch3-rule); line-height: 1; }
.ccr-nav__list { display: flex; gap: 22px; margin: 0 !important; padding: 0 !important; list-style: none !important; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.ccr-nav__list::-webkit-scrollbar { display: none; }
.ccr-nav__list.is-scroll { -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 36px), transparent); mask-image: linear-gradient(to right, #000 calc(100% - 36px), transparent); }
.ccr-nav__list li { list-style: none !important; margin: 0 !important; padding: 0 !important; flex: none; background: none !important; }
.ccr-nav__list li::marker { content: none; }
.ccr-nav__list a { display: inline-flex; align-items: baseline; gap: 7px; padding: 17px 0 15px; font-family: var(--cch3-sans); font-weight: 500; font-size: 10.5px; letter-spacing: .16em; text-transform: uppercase; line-height: 1; color: var(--cch3-ink); white-space: nowrap; border-bottom: 1px solid transparent; text-decoration: none; }
.ccr-nav__list a:hover, .ccr-nav__list a[aria-current] { border-bottom-color: var(--cch3-tan); color: var(--cch3-tan-dark); }
.ccr-nav__n { font-size: 9px; letter-spacing: .12em; color: var(--cch3-meta); font-weight: 500; }
.ccr-nav__list .is-soon a { color: var(--cch3-meta); }
.ccr-nav__list .is-soon .ccr-nav__n { color: var(--cch3-label); }

/* region section */
.ccr-region { margin-top: 48px; scroll-margin-top: calc(var(--ccr-top) + var(--ccr-nav-h) + 20px); }
.ccr-region + .ccr-region, .ccr-region + .ccr-soon { border-top: 1px solid var(--cch3-rule); padding-top: 44px; margin-top: 56px; }
.ccr-head__eyebrow { display: flex !important; align-items: center; gap: 12px; margin: 0 !important; }
.ccr-head__num { font-family: var(--cch3-serif); font-variation-settings: "opsz" 14; font-size: 13px; font-weight: 500; letter-spacing: .06em; color: var(--cch3-tan-dark); }
.ccr-head__rule { width: 28px; height: 1px; background: var(--cch3-tan); opacity: .7; }
.ccr-head__meta { color: var(--cch3-label); }
.ccr-head__title { font-family: var(--cch3-serif); font-weight: 350; font-variation-settings: "opsz" 72; font-size: 38px; line-height: 1.02; letter-spacing: -.012em; color: var(--cch3-ink); margin: 12px 0 0 !important; text-wrap: balance; }
.ccr-head__intro { font-family: var(--cch3-serif); font-variation-settings: "opsz" 14; font-size: 17px; line-height: 1.45; color: var(--cch3-muted); margin: 10px 0 0 !important; max-width: 36em; }

.ccr-country { display: flex; align-items: center; gap: 14px; margin: 34px 0 0 !important; font-family: var(--cch3-sans); font-weight: 600; font-size: 11px; letter-spacing: .2em; text-transform: uppercase; line-height: 1; color: var(--cch3-ink-2); scroll-margin-top: calc(var(--ccr-top) + var(--ccr-nav-h) + 20px); }
.ccr-country__rule { flex: 1; height: 1px; background: var(--cch3-rule); opacity: .8; }
.ccr-country__n { font-weight: 500; font-size: 9.5px; letter-spacing: .14em; color: var(--cch3-meta); }
.cch3-feed--series ul.cch3-feed__grid.ccr-grid { margin-top: 22px; }
.ccr-head + .ccr-grid { margin-top: 28px !important; }

/* "coming soon": compact text tiles, no cards, no images */
.ccr-soon { margin-top: 56px; }
.ccr-soon__label { font-family: var(--cch3-sans); font-weight: 600; font-size: 10.5px; letter-spacing: .22em; text-transform: uppercase; color: var(--cch3-label); line-height: 1; margin: 0 0 18px !important; }
.ccr-soon__grid { display: grid; grid-template-columns: 1fr; gap: 0; }
.ccr-region--soon { margin: 0 !important; padding: 18px 0 20px !important; border-top: 1px solid var(--cch3-rule) !important; }
.ccr-region--soon .ccr-head__title { font-size: 24px; margin-top: 8px !important; }
.ccr-region--soon .ccr-head__intro { font-size: 15px; margin-top: 6px !important; }
.ccr-region--soon .ccr-head__meta { color: var(--cch3-meta); }
.ccr-region--more .ccr-head__title { font-size: 30px; }

@media (min-width: 700px) {
	.cch3-seriespage { --ccr-top: 76px; }
	.ccr-head__title { font-size: 44px; }
	.ccr-soon__grid { grid-template-columns: repeat(2, 1fr); column-gap: 28px; }
	.ccr-region--soon:nth-child(-n+2) { border-top-color: var(--cch3-ink) !important; }
}
@media (min-width: 1100px) {
	.cch3-seriespage { --ccr-top: 84px; --ccr-nav-h: 56px; }
	.ccr-nav { margin-top: calc(30 * var(--u)); }
	.ccr-nav__inner { gap: 22px; }
	.ccr-nav__list { gap: 30px; }
	.ccr-nav__list a { font-size: max(10.5px, calc(6.5 * var(--u))); padding: 19px 0 17px; }
	.ccr-region { margin-top: calc(34 * var(--u)); }
	.ccr-region + .ccr-region, .ccr-region + .ccr-soon { padding-top: calc(30 * var(--u)); margin-top: calc(40 * var(--u)); }
	.ccr-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: calc(14 * var(--u)); align-items: end; }
	.ccr-head__eyebrow { grid-column: 1 / -1; }
	.ccr-head__title { font-size: calc(35 * var(--u)); line-height: 1.02; margin-top: calc(9 * var(--u)) !important; font-weight: 410; font-variation-settings: "opsz" 36; }
	.ccr-head__intro { font-size: calc(11 * var(--u)); line-height: 1.45; margin: 0 !important; padding-bottom: calc(2 * var(--u)); }
	.ccr-country { margin-top: calc(24 * var(--u)) !important; font-size: max(10.5px, calc(6.5 * var(--u))); }
	.cch3-feed--series ul.cch3-feed__grid.ccr-grid { margin-top: calc(14 * var(--u)); }
	.ccr-head + .ccr-grid { margin-top: calc(20 * var(--u)) !important; }
	.ccr-soon { margin-top: calc(40 * var(--u)); }
	.ccr-soon__grid { grid-template-columns: repeat(3, 1fr); column-gap: calc(14 * var(--u)); }
	.ccr-region--soon:nth-child(-n+3) { border-top-color: var(--cch3-ink) !important; }
	.ccr-region--soon { display: block; }
	.ccr-region--soon .ccr-head { display: block; }
	.ccr-region--soon .ccr-head__title { font-size: calc(17 * var(--u)); margin-top: calc(6 * var(--u)) !important; }
	.ccr-region--soon .ccr-head__intro { font-size: max(14px, calc(8.5 * var(--u))); margin-top: calc(4 * var(--u)) !important; }
}
