/* ==========================================================================
   Page Destinations — valeurs exactes de reference/Destinations.dc.html
   ========================================================================== */

.pc-ds-hero { position: relative; height: 100vh; height: 100svh; min-height: 640px; overflow: hidden; }
.pc-ds-hero__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.pc-ds-hero__scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(14, 13, 11, .45) 0%, rgba(14, 13, 11, 0) 35%, rgba(14, 13, 11, .2) 65%, rgba(14, 13, 11, .92) 100%); }
.pc-ds-hero__txt { position: absolute; left: clamp(16px, 3vw, 44px); right: clamp(16px, 3vw, 44px); bottom: clamp(36px, 7vh, 72px); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 28px 48px; opacity: 0; transform: translateY(40px); transition: opacity 1.4s .2s, transform 1.6s cubic-bezier(.16, 1, .3, 1) .2s; }
.pc-ds-hero__title { font-family: var(--pc-serif); margin: 0; font-weight: 300; font-size: clamp(46px, 12vw, 230px); line-height: .86; letter-spacing: -.01em; }
.pc-ds-hero__right { display: flex; flex-direction: column; gap: 18px; max-width: 380px; }
.pc-ds-hero__p { margin: 0; font-size: 18px; line-height: 1.6; }
.pc-ds-hero__cta { align-self: flex-start; display: flex; align-items: center; gap: 14px; padding: 16px 26px; border-radius: 999px; background: #F1ECE4; color: #0E0D0B; font-size: 15px; font-weight: 500; transition: gap .35s; }

.pc-ds-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 20px 40px; margin-bottom: clamp(32px, 5vh, 56px); }
.pc-ds-head--col { gap: 24px 40px; }
.pc-ds-h2 { font-family: var(--pc-serif); margin: 0; font-weight: 300; font-size: clamp(38px, 6vw, 112px); line-height: .95; letter-spacing: -.01em; }
.pc-ds-eyebrow { font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: #A39D93; font-family: var(--pc-caps); }

/* Par pays */
.pc-ds-pays { padding: clamp(90px, 14vh, 160px) clamp(16px, 3vw, 44px) clamp(40px, 6vh, 80px); }
.pc-ds-pays__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(42vw, 300px), 1fr)); gap: clamp(12px, 1.4vw, 20px); }
.pc-ds-tile { position: relative; display: block; aspect-ratio: 4 / 5; border-radius: 4px; overflow: hidden; background: #1B1A17; }
.pc-ds-tile__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.8s cubic-bezier(.16, 1, .3, 1); }
.pc-ds-tile__scrim { position: absolute; inset: 0; background: linear-gradient(to top, rgba(14, 13, 11, .85), rgba(14, 13, 11, 0) 55%); pointer-events: none; }
.pc-ds-tile__count { position: absolute; top: 18px; left: 18px; padding: 8px 12px; border-radius: 999px; border: 1px solid rgba(241, 236, 228, .4); background: rgba(14, 13, 11, .3); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); font-size: 11px; letter-spacing: .16em; text-transform: uppercase; pointer-events: none; font-family: var(--pc-caps); }
.pc-ds-tile__txt { position: absolute; left: 22px; right: 22px; bottom: 22px; display: flex; flex-direction: column; gap: 8px; pointer-events: none; }
.pc-ds-tile__name { font-family: var(--pc-serif); font-weight: 300; font-size: clamp(28px, 4.4vw, 72px); letter-spacing: -.01em; line-height: .9; }
.pc-ds-tile__cities { font-size: 14px; color: #E4DED4; }

/* La collection */
.pc-ds-col { background: #F1ECE4; color: #0E0D0B; padding: clamp(90px, 14vh, 160px) clamp(16px, 3vw, 44px); }
.pc-ds-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.pc-ds-filter { padding: 11px 18px; border-radius: 999px; border: 1px solid #0E0D0B; background: transparent; color: #0E0D0B; font: inherit; font-size: 14px; cursor: pointer; transition: background .3s, color .3s; }
.pc-ds-filter.is-active { background: #0E0D0B; color: #F1ECE4; }
.pc-ds-col__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(42vw, 300px), 1fr)); gap: clamp(28px, 3vw, 44px) clamp(16px, 2vw, 28px); }
.pc-ds-card { display: flex; flex-direction: column; gap: 14px; }
.pc-ds-card[hidden] { display: none; }
.pc-ds-card__media { position: relative; aspect-ratio: 4 / 5; border-radius: 4px; overflow: hidden; background: #E2DBD0; }
.pc-ds-card__img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 1.6s cubic-bezier(.16, 1, .3, 1); }
.pc-ds-card__badge { position: absolute; top: 16px; left: 16px; padding: 8px 12px; background: rgba(14, 13, 11, .6); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); color: #F1ECE4; font-size: 11px; letter-spacing: .2em; text-transform: uppercase; font-weight: 500; font-family: var(--pc-caps); }
.pc-ds-card__row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.pc-ds-card__name { font-family: var(--pc-serif); font-weight: 300; font-size: clamp(21px, 2.4vw, 38px); letter-spacing: -.01em; line-height: 1; }
.pc-ds-card__country { font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: #5E5850; text-align: right; font-family: var(--pc-caps); }
.pc-ds-card__hotel { margin-top: -6px; font-size: 14px; color: #5E5850; }
.pc-ds-final { display: flex; flex-direction: column; justify-content: space-between; aspect-ratio: 4 / 5; border-radius: 4px; padding: clamp(16px, 2vw, 28px); box-sizing: border-box; background: #0E0D0B; color: #F1ECE4; }
.pc-ds-final:hover { color: #F1ECE4; }
.pc-ds-final__label { font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: #A39D93; font-family: var(--pc-caps); }
.pc-ds-final__title { font-family: var(--pc-serif); font-weight: 300; font-size: clamp(20px, 2.8vw, 46px); line-height: 1.02; letter-spacing: -.01em; }
.pc-ds-final__cta { font-size: 15px; font-weight: 500; }

@media (hover: hover) {
	.pc-ds-hero__cta:hover { gap: 22px; }
	.pc-ds-tile__img:hover { transform: scale(1.07); }
	.pc-ds-card__img:hover { transform: scale(1.06); }
}
