
/* PANEL */

.panel {
  height: 100vh;
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 0;
  box-sizing: border-box;
}

.content-after {
    min-height: 99vh;
}

.panel {
  overflow: hidden;
}

/* BACKGROUNDS */

.panel-yellow {
  background: black;
}

.panel-red {
  background: #0A0A0A;
}

/* SPLIT LAYOUT */

.split-panel {
  display: flex;
  width: 100%;
  height: 100%;
  padding: 0 7.5%;
  gap: 80px;
  box-sizing: border-box;
}

.split-panel.reverse {
  flex-direction: row-reverse;
}

.split-left,
.split-right {
  width: 50%;
  height: 100%;
  display: flex;
}

/* IMAGE */

.split-left {
  position: relative;
  align-items: stretch;
}

.split-left img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 15px !important;
}

/* =========================
   BTN PRINCIPAL (EXISTANT)
========================= */

.btn-play {
  position: absolute;
  bottom: -2%;
  right: 8% !important;
  left: -2% !important;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: white;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 5;
  transition: 0.3s ease;
}

.btn-play:hover {
  transform: scale(1.08);
}

.icon-play-gauche {
  width: 28px;
  height: 28px;
}

.icon-play-gauche polygon {
  fill: black;
}

/* 🔥 ANIMATION EXISTANTE (IMPORTANT) */
.btn-play::after,
.btn-play-right::after,
.btn-play-left::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.4);
  animation: pulse-ring 1.8s infinite;
  animation-delay: 0.6s;
}

/* =========================
   MAGIC BUTTON (CLONE EXACT)
========================= */

.magic-videos {
  display: flex;
  gap: 65px;
  margin-top: -20px;
  align-items: center;
  justify-content: end;
}

.magic-btn-play {
  position: relative;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: white;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  z-index: 1;
  transition: 0.3s ease;
}

.magic-btn-play:hover {
  transform: scale(1.08);
}

.magic-btn-play svg {
  width: 28px;
  height: 28px;
}

.magic-btn-play svg polygon {
  fill: black;
}

/* 🔥 IMPORTANT : ON COPIE L’ANIMATION EXACTE */
.magic-btn-play::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.4);
  animation: pulse-ring 1.8s infinite;
  animation-delay: 0.6s;
}

/* TEXT */

.text-block {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.text-block h2 {
  margin-bottom: 30px;
  font-family: "Teachers", sans-serif;
  font-size: 70px;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 60px;
  color: #FFFFFF;
}

.text-block p {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 17px;
  line-height: 25px;
  color: white;
  text-align: justify;
}


/* =========================================================
   MAGIC BRANDING - CLONE EXACT DES BOUTONS EXISTANTS
========================================================= */

/* BASE IDENTIQUE À .btn-play */
.magic-btn-play {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background-color: white;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

/* ICON IDENTIQUE */
.magic-btn-play svg {
  width: 103px;
  height: 102px;
  fill: black;
}

/* HOVER IDENTIQUE */
.magic-btn-play:hover {
  background: #d4af37;
}

/* =========================
   ANIMATION PULSE - IDENTIQUE
========================= */

/* premier cercle */
.magic-btn-play::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.7);

  animation: pulse-ring 1.8s infinite;
}

/* second cercle (décalé) */
.magic-btn-play::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.4);

  animation: pulse-ring 1.8s infinite;
  animation-delay: 0.6s;
}

/* RESPONSIVE */

@media(max-width:1024px) {

  .panel {
    height: auto;
    min-height: 100vh;
  }

  .split-panel,
  .split-panel.reverse {
    flex-direction: column;
    gap: 20px;
  }

  .split-left,
  .split-right {
    width: 100%;
  }

  .split-left img {
    height: 350px;
  }

  .text-block h2 {
    font-size: 42px;
    line-height: 42px;
  }
}