/* ========================================================
   GROUPES — séminaire / séjour collectif
   ======================================================== */
/* --- Intro : mosaïque visuelle comme la page Domaine --- */
.hub-gites-intro .media.domaine-intro__mosaic {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.6rem);
  align-items: center;
  border-radius: 0;
  overflow: visible;
  box-shadow: none;
  background: transparent;
}
.hub-gites-intro .domaine-intro__column {display: grid;gap: clamp(1rem, 2vw, 1.6rem)}
.hub-gites-intro .domaine-intro__column--right {padding-top: 0}
.hub-gites-intro .domaine-intro__tile {margin: 0;overflow: hidden;border-radius: var(--border-radius-sm);background: #f7f4ed;box-shadow: 0 26px 70px rgba(15, 22, 15, .14);line-height: 0;clip-path: inset(0 round var(--border-radius-sm));isolation: isolate}
.hub-gites-intro .domaine-gallery__trigger {appearance: none;display: block;width: 100%;height: 100%;margin: 0;padding: 0;border: 0;border-radius: inherit;background: transparent;cursor: zoom-in;overflow: hidden;line-height: 0;clip-path: inherit}
.hub-gites-intro .domaine-gallery__trigger:focus-visible {outline: 3px solid rgba(150, 153, 22, .55);outline-offset: 4px}
.hub-gites-intro .domaine-intro__tile img {width: 100%;height: 100%;display: block;object-fit: cover;border-radius: 0;filter: saturate(1.02) contrast(1.03);transition: filter .25s ease}
.hub-gites-intro .domaine-intro__tile:hover img,
.hub-gites-intro .domaine-intro__tile:focus-within img {filter: saturate(1.1) contrast(.9) brightness(1.1)}

/* --- 1. Univers groupe (cards visuelles) --- */
.priv-universes {background: linear-gradient(180deg, #fff 0%, #f9f7ee 100%)}
.priv-universes .title.center {max-width: 820px;margin: 0 auto 46px}
.priv-universes .title.center .before {margin-inline: auto}
.priv-universes-grid {display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: clamp(1.4rem, 2.4vw, 2rem)}
.priv-universe-card {position: relative;min-height: 512px;border-radius: var(--border-radius-xl);overflow: hidden;background: #172018;box-shadow: 0 22px 60px rgba(31,41,30,.14)}
.priv-universe-card a,
.priv-universe-card__trigger {position: relative;display: grid;align-items: end;width: 100%;height: 100%;min-height: inherit;color: #fff;text-decoration: none;cursor: pointer;border: 0;background: transparent;padding: 0;font: inherit;text-align: left;-webkit-appearance: none;appearance: none}
.priv-universe-card__trigger:focus {outline: none}
.priv-universe-card__trigger:focus-visible {outline: 3px solid #dcebb3;outline-offset: 4px}
.priv-universe-card img {position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;transition: transform .7s ease, filter .7s ease;filter: saturate(1.03) contrast(1.02)}
.priv-universe-card__overlay {position: absolute;inset: 0;background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(13,17,13,.35) 55%, rgba(13,17,13,.9) 100%)}
.priv-universe-card__content {position: relative;z-index: 1;display: grid;gap: 10px;padding: clamp(1.5rem, 2.4vw, 2rem)}
.priv-universe-card__eyebrow {width: fit-content;color: #dcebb3;font-size: .72rem;font-weight: 700;letter-spacing: .14em;text-transform: uppercase;transition: color .25s ease}
.priv-universe-card h3 {margin: 0;color: #fff;font-size: clamp(1.4rem, 1.9vw, 1.85rem);line-height: 1.15}
.priv-universe-card p {margin: 0;color: rgba(255,255,255,.88);}
.priv-universe-card strong {display: inline-flex;align-items: center;gap: 8px;margin-top: 8px;color: #fff;font-size: .92rem;font-weight: 700;transition: color .25s ease, gap .25s ease}
.priv-universe-card:hover img {transform: scale(1.05);filter: saturate(1.08) contrast(1.05) brightness(.8)}
.priv-universe-card:hover .priv-universe-card__eyebrow {color: rgba(255,255,255,.85)}
.priv-universe-card:hover strong {gap: 14px;color: #dcebb3}

/* --- 2. Tarifs séminaire --- */
.priv-pricing {background: #fff}
.priv-pricing .title.center {max-width: 820px;margin: 0 auto 46px}
.priv-pricing .title.center .before {margin-inline: auto}
.priv-pricing-grid {display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: clamp(1.4rem, 2.4vw, 2rem)}
.priv-pricing-card {position: relative;display: grid;gap: 14px;padding: clamp(1.8rem, 2.6vw, 2.4rem);border-radius: var(--border-radius-xl);background: #fff;border: 1px solid rgba(157,174,70,.16);box-shadow: 0 18px 50px rgba(31,41,30,.08);transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease}
.priv-pricing-card:hover {transform: translateY(-4px);box-shadow: 0 28px 70px rgba(31,41,30,.14);border-color: rgba(157,174,70,.4)}
.priv-pricing-card--highlight {border-color: var(--main-color);box-shadow: 0 22px 60px rgba(150,153,22,.18)}
.priv-pricing-card--highlight:hover {border-color: var(--main-color);box-shadow: 0 30px 80px rgba(150,153,22,.24)}
.priv-pricing-card__flag {position: absolute;top: -14px;left: 50%;transform: translateX(-50%);padding: 6px 16px;border-radius: 999px;background: linear-gradient(135deg, var(--main-color), var(--second-color));color: #fff;font-size: .7rem;font-weight: 700;letter-spacing: .14em;text-transform: uppercase;white-space: nowrap;box-shadow: 0 8px 22px rgba(150,153,22,.3)}
.priv-pricing-card__label {margin: 0;color: var(--main-color);font-size: .82rem;font-weight: 700;letter-spacing: .12em;text-transform: uppercase}
.priv-pricing-card__price {display: grid;justify-items: start;gap: 2px;margin: 0;line-height: 1}
.priv-pricing-card__from {color: var(--grey-color);font-size: .8rem}
.priv-pricing-card__price strong {color: #172018;font-size: clamp(2rem, 2.4vw + .5rem, 2.8rem);font-weight: 700;line-height: 1;letter-spacing: -.01em}
.priv-pricing-card__unit {color: var(--grey-color);font-size: .85rem}
.priv-pricing-card__desc {margin: 0;color: var(--grey-color);font-size: .94rem;line-height: 1.6}
.priv-pricing__cta {display: flex;justify-content: center;margin-top: clamp(2rem, 3.5vw, 3rem)}

@media (max-width: 1024px) {
  .hub-gites-intro .media.domaine-intro__mosaic {order: -1;max-width: 520px;margin-inline: auto}
  .priv-universes-grid,
  .priv-pricing-grid {grid-template-columns: repeat(2, minmax(0, 1fr))}
  .priv-universe-card {min-height: 420px}
}
@media (max-width: 768px) {
  .hub-gites-intro .media.domaine-intro__mosaic {grid-template-columns: 1fr}
  .hub-gites-intro .domaine-intro__column,
  .hub-gites-intro .domaine-intro__column--right {padding-top: 0}
}
@media (max-width: 640px) {
  .priv-universes-grid,
  .priv-pricing-grid {grid-template-columns: 1fr}
  .priv-universe-card {min-height: 360px}
}
/* --- /PRIVATISATION --------------------------------------- */

