/* FIVS — accueil : carte « Envoyez votre film », en bas de page avant le pied.
   Fond blanc du site, carte claire à liseré rouge, étapes en pellicule, affiche 2027 inclinée. */
.envoi-b{background:#fff;padding-block:clamp(48px,7vw,110px)}
.envoi-b__in{max-inline-size:1520px;margin-inline:auto;padding-inline:var(--gout,40px)}
.envoi-b__carte{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:center;
  gap:clamp(28px,5vw,80px);padding:clamp(28px,4.5vw,68px);border-radius:32px;overflow:hidden;isolation:isolate;
  background:linear-gradient(135deg,#fff 0%,#fff 45%,#fff3f4 100%);
  box-shadow:0 0 0 1px rgba(227,6,27,.12),0 40px 90px -50px rgba(143,0,16,.45)}
/* Halo rouge et grande bande de pellicule en filigrane derrière l'affiche. */
.envoi-b__carte::before{content:"";position:absolute;inset-inline-end:-12%;inset-block:-30%;inline-size:62%;z-index:-1;
  background:radial-gradient(closest-side,rgba(255,42,61,.22),rgba(255,42,61,0));}
.envoi-b__carte::after{content:"";position:absolute;inset-inline:0;inset-block-start:0;block-size:4px;
  background:linear-gradient(90deg,#e3061b,#ff4d5e 50%,#e3061b)}
.envoi-b__sur{display:flex;align-items:center;gap:12px;margin:0;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#e3061b}
.envoi-b__sur::before{content:"";inline-size:28px;block-size:2px;background:currentColor}
.envoi-b__t{margin:14px 0 0;font-size:clamp(36px,4.8vw,72px);line-height:1;font-weight:500;letter-spacing:-.045em;color:#0b0b0d}
.envoi-b__t em{font-style:normal;font-weight:800;color:#e3061b}
.envoi-b__s{margin:18px 0 0;max-inline-size:38rem;font-size:clamp(15px,1.15vw,18px);line-height:1.65;color:#4a4a52}
[dir=rtl] .envoi-b__sur{letter-spacing:0;font-size:15px}
[dir=rtl] .envoi-b__t{font-weight:800;line-height:1.3;letter-spacing:0}

/* Étapes : trois images d'une pellicule, reliées par une piste perforée. */
.envoi-b__pas{list-style:none;margin:30px 0 0;padding:14px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;position:relative;
  counter-reset:pas}
.envoi-b__pas::before,.envoi-b__pas::after{content:"";position:absolute;inset-inline:0;block-size:6px;opacity:.55;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='6'%3E%3Crect x='3' width='9' height='6' rx='1.5' fill='%23e3061b'/%3E%3C/svg%3E") repeat-x}
.envoi-b__pas::before{inset-block-start:0}.envoi-b__pas::after{inset-block-end:0}
.envoi-b__pas li{position:relative;display:flex;flex-direction:column;gap:8px;padding:16px 16px 18px;border-radius:14px;
  background:#fff;box-shadow:0 0 0 1px rgba(11,11,13,.08),0 12px 26px -18px rgba(11,11,13,.35);
  font-weight:700;font-size:15.5px;line-height:1.3;color:#0b0b0d;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.envoi-b__pas li:hover{transform:translateY(-4px);box-shadow:0 0 0 1px rgba(227,6,27,.35),0 18px 34px -18px rgba(227,6,27,.45)}
.envoi-b__pas b{position:absolute;inset-block-start:12px;inset-inline-end:14px;font-size:13px;font-weight:800;color:rgba(11,11,13,.28);letter-spacing:.06em}
.envoi-b__ic{display:grid;place-items:center;inline-size:42px;block-size:42px;border-radius:12px;background:#e3061b;color:#fff;
  box-shadow:0 10px 20px -10px rgba(227,6,27,.8)}
.envoi-b__ic svg{inline-size:22px;block-size:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.envoi-b__btns{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px;margin-top:30px}
.envoi-b .envoi-b__go{box-shadow:0 18px 36px -16px rgba(227,6,27,.7)}
.envoi-b .envoi-b__compte{color:#0b0b0d!important;background:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(11,11,13,.18)!important;-webkit-backdrop-filter:none;backdrop-filter:none}
.envoi-b .envoi-b__compte:hover{box-shadow:inset 0 0 0 1.5px #e3061b!important}
.envoi-b .envoi-b__compte .btn__rond{background:#0b0b0d!important;color:#fff!important}
.envoi-b__guide{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding-block:6px;color:#e3061b;font-weight:700;
  text-decoration:underline;text-underline-offset:5px;text-decoration-color:rgba(227,6,27,.35)}
.envoi-b__guide:hover{text-decoration-color:#e3061b}
.envoi-b__guide svg{inline-size:16px;block-size:16px;fill:none;stroke:currentColor;stroke-width:2}
[dir=rtl] .envoi-b__guide svg{transform:scaleX(-1)}

/* Affiche 2027 : inclinée, ombre portée, légère flottaison. */
.envoi-b__affiche{margin:0;justify-self:center;inline-size:min(100%,400px);transform:rotate(3deg);
  animation:envoi-flotte 7s ease-in-out infinite}
[dir=rtl] .envoi-b__affiche{transform:rotate(-3deg);animation-name:envoi-flotte-rtl}
.envoi-b__affiche img{display:block;inline-size:100%;block-size:auto;border-radius:18px;
  box-shadow:0 0 0 6px #fff,0 0 0 7px rgba(11,11,13,.08),0 40px 70px -30px rgba(143,0,16,.55)}
@keyframes envoi-flotte{0%,100%{transform:rotate(3deg) translateY(0)}50%{transform:rotate(1.5deg) translateY(-10px)}}
@keyframes envoi-flotte-rtl{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(-1.5deg) translateY(-10px)}}
@media (prefers-reduced-motion:reduce){.envoi-b__affiche{animation:none}}

@media (max-width:980px){
  .envoi-b__carte{grid-template-columns:1fr}
  .envoi-b__affiche{order:-1;inline-size:min(62%,280px)}
}
@media (max-width:620px){
  .envoi-b__carte{border-radius:24px;padding:24px 18px 28px}
  .envoi-b__pas{grid-template-columns:1fr;gap:8px}
  .envoi-b__pas li{flex-direction:row;align-items:center;gap:14px;padding:12px 14px}
  .envoi-b__pas b{inset-block-start:50%;transform:translateY(-50%)}
  .envoi-b__ic{inline-size:38px;block-size:38px;flex:none}
  .envoi-b__btns .btn{inline-size:100%;justify-content:space-between}
  .envoi-b__btns .btn span:first-child{white-space:normal}
}
/* Bouton principal en rouge du festival. */
.envoi-b .envoi-b__go{background:#e3061b!important;color:#fff!important}
.envoi-b .envoi-b__go:hover{background:#c10517!important}
.envoi-b .envoi-b__go .btn__rond{background:#fff!important;color:#e3061b!important}
