/* Module 50 v1.0.438 — variante Accueil avec trois vidéos 9/16. */
.kp438-home{
  width:min(1180px,calc(100% - 44px));
  margin:0 auto;
  min-height:calc(100vh - 104px);
  padding:52px 0 68px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:28px;
}
.kp438-home-videos{
  width:min(930px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(12px,2.4vw,30px);
  align-items:end;
}
.kp438-home-video-card{
  position:relative;
  width:100%;
  aspect-ratio:9/16;
  overflow:hidden;
  border-radius:clamp(18px,2vw,30px);
  background:#0f1512;
  box-shadow:0 22px 54px rgba(0,0,0,.20);
}
.kp438-home-video-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.20);
  border-radius:inherit;
}
.kp438-home-video{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  background:#0f1512;
}
.kp438-home-video-placeholder{
  width:100%;height:100%;display:grid;place-items:center;
  background:linear-gradient(155deg,#163f2e,#071b13);
}
.kp438-home-video-placeholder span{
  font-family:Montserrat,Inter,sans-serif;
  font-size:clamp(70px,12vw,150px);
  font-weight:900;
  color:rgba(255,255,255,.14);
}
.kp438-home-copy{
  width:min(980px,100%);
  margin:0 auto;
  text-align:center;
}
.kp438-home-title{
  margin:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:baseline;
  column-gap:clamp(18px,5vw,70px);
  font-family:Montserrat,Inter,sans-serif;
  font-size:clamp(36px,5.25vw,78px);
  line-height:.98;
  font-weight:900;
  letter-spacing:-.055em;
  color:#111b16;
}
.kp438-home-title span{
  display:block;
  min-width:0;
  white-space:nowrap;
}
.kp438-home-slogan{
  margin:18px 0 0;
  font-family:"DM Sans",Inter,sans-serif;
  font-size:clamp(18px,2vw,27px);
  line-height:1.35;
  font-weight:600;
  color:#66706a;
}
@media(max-width:720px){
  .kp438-home{width:min(100% - 24px,680px);padding:34px 0 48px;gap:20px;min-height:auto}
  .kp438-home-videos{gap:8px}
  .kp438-home-video-card{border-radius:14px;box-shadow:0 12px 28px rgba(0,0,0,.16)}
  .kp438-home-title{column-gap:8px;font-size:clamp(23px,8vw,38px);letter-spacing:-.06em}
  .kp438-home-slogan{margin-top:12px;font-size:clamp(15px,4.6vw,20px)}
}
@media(max-width:420px){
  .kp438-home{width:calc(100% - 18px)}
  .kp438-home-videos{gap:6px}
  .kp438-home-video-card{border-radius:11px}
  .kp438-home-title{font-size:clamp(20px,7.4vw,31px);column-gap:5px}
}


/* Module 50 v1.0.445 — Accueil Version 3 : classeur 6 positions piloté par Slides du site. */
.kp442-home{
  overflow:visible;
  /* Version 3 : rapproche nettement le texte de la vidéo sans modifier les Versions 1/2. */
  column-gap:clamp(10px,1.35vw,22px)!important;
  gap:clamp(10px,1.35vw,22px)!important;
}
.kp442-home-copy{
  min-width:0;
}
.kp442-hero-media{
  overflow:visible!important;
  position:relative;
  isolation:isolate;
  transform:translateX(clamp(-42px,-2.4vw,-20px));
}
.kp442-deck-stage{
  position:relative!important;
  overflow:visible!important;
  isolation:isolate;
}
.kp442-deck-card{
  --kp442-rank:0;
  --kp442-step:clamp(13px,1.45vw,22px);
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:inherit;
  background:#0d1511;
  box-shadow:0 20px 48px rgba(0,0,0,.18);
  transform:translateX(calc(var(--kp442-rank) * var(--kp442-step)));
  transform-origin:center left;
  opacity:calc(1 - (var(--kp442-rank) * .075));
  z-index:calc(30 - var(--kp442-rank));
  cursor:pointer;
  transition:transform .52s cubic-bezier(.2,.78,.2,1),opacity .36s ease,filter .36s ease,box-shadow .36s ease;
  filter:brightness(calc(1 - (var(--kp442-rank) * .045)));
  outline:none;
}
.kp442-deck-card::after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(255,255,255,.22);
  border-radius:inherit;
  pointer-events:none;
}
.kp442-deck-card.is-active{
  transform:translateX(0);
  opacity:1;
  filter:none;
  z-index:40;
  cursor:default;
  box-shadow:0 28px 64px rgba(0,0,0,.23);
}
.kp442-video,
.kp442-video-placeholder{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  background:#0d1511;
}
.kp442-video-placeholder{
  display:grid;
  place-items:center;
  background:linear-gradient(155deg,#163f2e,#071b13);
}
.kp442-deck-card:focus-visible{
  box-shadow:0 0 0 4px rgba(15,107,63,.24),0 20px 48px rgba(0,0,0,.18);
}
.kp442-slider-controls{
  position:relative;
  z-index:60;
}
@media(max-width:1050px){
  .kp442-deck-card{--kp442-step:clamp(11px,1.8vw,17px)}
}
@media(max-width:720px){
  .kp442-home{gap:12px!important;column-gap:12px!important}
  .kp442-hero-media{transform:none}
  .kp442-deck-card{--kp442-step:9px}
}
@media(prefers-reduced-motion:reduce){
  .kp442-deck-card{transition:none}
}


/* v1.0.445 — slides Version 3 : liens + placeholders Kerdudal Park Media pour les positions non alimentées. */
.kp444-card-link{
  position:absolute;
  inset:0;
  z-index:45;
  display:none;
}
.kp442-deck-card.is-active .kp444-card-link{display:block}
.kp442-deck-card.is-coming-soon{background:#10271d}
.kp444-coming-soon{
  position:relative;
  overflow:hidden;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:clamp(5px,.7vw,10px);
  text-align:center;
  padding:clamp(18px,3vw,44px);
  background:
    radial-gradient(circle at 50% 35%,rgba(32,137,82,.22),transparent 34%),
    linear-gradient(145deg,#173d2d 0%,#0c261b 52%,#06150f 100%);
}
.kp444-coming-soon::before{
  content:"";
  position:absolute;
  inset:clamp(12px,2vw,24px);
  border:1px solid rgba(255,255,255,.16);
  border-radius:clamp(14px,1.6vw,24px);
  box-shadow:inset 0 0 42px rgba(255,255,255,.025);
}
.kp445-media-brand,
.kp445-media-label,
.kp444-coming-soon strong{
  position:relative;
  z-index:2;
  display:block;
  font-family:Montserrat,Inter,sans-serif;
  text-transform:uppercase;
}
.kp445-media-brand{
  color:#fff;
  font-weight:800;
  font-size:clamp(13px,1.15vw,18px);
  letter-spacing:.24em;
}
.kp445-media-label{
  color:#78d69e;
  font-weight:700;
  font-size:clamp(10px,.78vw,13px);
  letter-spacing:.52em;
  margin-right:-.52em;
}
.kp444-coming-soon strong{
  margin-top:clamp(12px,1.4vw,22px);
  color:#fff;
  font-weight:900;
  font-size:clamp(28px,4vw,64px);
  line-height:.98;
  letter-spacing:.035em;
  text-shadow:0 8px 26px rgba(0,0,0,.28);
}
.kp442-slider-controls .kp20-slider-dots button.is-coming-soon{opacity:.42}

/* Module 50 v1.0.470 — Accueil Version 4 : grand média + vignettes rectangulaires 16/9 coulissantes. */
.kp446-home{
  align-items:center;
  column-gap:clamp(28px,4vw,76px);
}
.kp446-home-copy{align-self:center}
.kp446-gallery{
  width:100%;
  min-width:0;
  display:grid;
  gap:clamp(10px,1vw,16px);
}
.kp446-hero-frame{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:clamp(18px,1.8vw,28px);
  background:#0b1711;
  box-shadow:0 22px 58px rgba(0,0,0,.18);
}
.kp446-hero-video,
.kp446-hero-image,
.kp446-hero-placeholder{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  background:#0b1711;
}
.kp446-hero-video[hidden],
.kp446-hero-image[hidden],
.kp446-hero-placeholder[hidden],
.kp446-hero-link[hidden]{display:none!important}
.kp446-hero-link{
  position:absolute;
  inset:0;
  z-index:4;
}
.kp446-card-row{
  --kp446-card-gap:clamp(8px,.9vw,14px);
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:calc((100% - (4 * var(--kp446-card-gap))) / 5);
  grid-template-columns:none;
  gap:var(--kp446-card-gap);
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  scroll-snap-type:x proximity;
  scroll-behavior:smooth;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y;
  cursor:grab;
}
.kp446-card-row::-webkit-scrollbar{display:none}
.kp446-card-row.is-dragging{cursor:grabbing;scroll-behavior:auto;scroll-snap-type:none;user-select:none}
.kp446-card-row.is-dragging .kp446-card{pointer-events:none}
.kp446-card{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:16/9;
  min-height:0;
  scroll-snap-align:start;
  overflow:hidden;
  padding:0;
  border:0;
  border-radius:clamp(13px,1.15vw,19px);
  background:#10271d;
  cursor:pointer;
  box-shadow:0 10px 25px rgba(0,0,0,.13);
  transition:transform .22s ease,box-shadow .22s ease,opacity .22s ease;
}
.kp446-card:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(0,0,0,.18)}
.kp446-card:focus-visible{outline:3px solid rgba(15,107,63,.38);outline-offset:3px}
.kp446-card.is-placeholder{cursor:default;opacity:.82}
.kp446-card.is-placeholder:hover{transform:none}
.kp446-card-preview,
.kp446-card-image,
.kp446-card-placeholder{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.kp446-card-preview[hidden],.kp446-card-image[hidden],.kp446-card-placeholder[hidden]{display:none!important}
.kp446-card-preview,.kp446-card-image{pointer-events:none;background:#0b1711;object-fit:contain}
.kp446-card-image{object-fit:contain}
.kp446-card-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:10px;
  color:#fff;
  background:radial-gradient(circle at 50% 30%,rgba(37,144,88,.22),transparent 40%),linear-gradient(145deg,#173d2d,#071a12);
  text-align:center;
}
.kp446-card-placeholder span{font:800 clamp(7px,.6vw,10px)/1.2 Montserrat,Inter,sans-serif;letter-spacing:.08em}
.kp446-card-placeholder strong{font:900 clamp(10px,.9vw,15px)/1.08 Montserrat,Inter,sans-serif;letter-spacing:.03em}
@media(max-width:900px){
  .kp446-home{row-gap:20px}
  .kp446-gallery{width:min(100%,820px);margin-inline:auto}
}
@media(max-width:620px){
  .kp446-card-row{gap:6px}
  .kp446-card{border-radius:10px}
  .kp446-hero-frame{border-radius:15px}
}
@media(prefers-reduced-motion:reduce){.kp446-card{transition:none}}


/* v1.0.471 — Popup produit Version 4 : image plein panneau + 2 cases d’information translucides. */
.kp446-hero-frame{cursor:pointer}
.kp446-hero-frame:focus-visible{outline:4px solid rgba(15,107,63,.42);outline-offset:4px}

/* Géométrie et animation héritées exactement du popup membre / Connecte-toi. */
.kp454-product-shell{position:relative;overflow:hidden!important;background:#08130e!important}
.kp454-product-head{position:relative;z-index:30;background:transparent!important;pointer-events:none;border:0!important;box-shadow:none!important}
.kp454-product-head::before,.kp454-product-head::after{display:none!important;content:none!important}
.kp454-product-head .kp363-popup-head-spacer{display:none!important}
.kp454-product-head .kp454-product-close{margin-left:auto}
.kp454-product-head .kp454-product-close{pointer-events:auto}
.kp454-product-stage{position:absolute;inset:0;overflow:hidden;background:#08130e}
.kp454-product-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.kp454-product-image[hidden],.kp454-product-empty[hidden]{display:none!important}
.kp454-product-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(145deg,#173d2d,#071a12);text-align:center;padding:28px}
.kp454-product-empty span,.kp454-product-empty strong{display:none}

/* Deux carrés blancs volontairement translucides pour conserver l’image visible derrière. */
.kp454-product-panel{--kp456-popup-square-size:74%;}
.kp456-product-info-grid{
  position:absolute;
  z-index:14;
  left:50%;
  top:clamp(42px,6vh,68px);
  bottom:clamp(28px,4.5vh,52px);
  transform:translateX(-50%);
  width:min(calc(100% - 56px),1080px);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:center;
  justify-items:center;
  gap:clamp(18px,2.4vw,34px);
  pointer-events:none;
}
.kp456-product-info-box{
  width:min(var(--kp456-popup-square-size, 74%),56vh);
  max-width:100%;
  aspect-ratio:1/1;
  min-width:0;
  min-height:0;
  box-sizing:border-box;
  overflow:auto;
  padding:clamp(24px,2.6vw,40px);
  border:1px solid rgba(255,255,255,.52);
  border-radius:clamp(22px,2.2vw,32px);
  background:rgba(255,255,255,.58);
  color:#122019;
  box-shadow:0 18px 48px rgba(0,0,0,.20);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font:700 clamp(16px,1.22vw,21px)/1.5 Inter,Arial,sans-serif;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  pointer-events:auto;
}
.kp456-product-info-box.is-empty{color:transparent}

@media(max-width:900px){
  .kp456-product-info-grid{
    width:min(calc(100% - 32px),880px);
    top:30px;
    bottom:24px;
    gap:14px;
  }
  .kp456-product-info-box{
    width:min(var(--kp456-popup-square-size, 74%),48vh);
    padding:20px;
    font-size:15px;
    border-radius:20px;
  }
}
@media(max-width:620px){
  .kp456-product-info-grid{
    width:calc(100% - 24px);
    top:22px;
    bottom:18px;
    gap:10px;
  }
  .kp456-product-info-box{
    width:min(var(--kp456-popup-square-size, 74%),42vh);
    padding:14px;
    font-size:12px;
    line-height:1.4;
    border-radius:16px;
  }
}

/* v1.0.474 — soulignement dans les carrés d’information produit. */
.kp456-product-info-box u{text-decoration-thickness:2px;text-underline-offset:3px}
