/* ============================================================
   Page « Couple » — rose et rouge passion
   Beaucoup de blanc, un rose poudré pour les sections teintées, et le
   rouge des roses pour les accents. Quelques cœurs, jamais plus.
   ============================================================ */
:root { --c-blush: #FDF0F2; --c-rose: #FBE3E8; --c-passion: #B3123E; --c-passion-fonce: #8C0E30; --c-rose-vif: #E0577A; --c-or: #D59AA6; }
body.page-couple {
  --brand: var(--c-passion); --brand-dark: var(--c-passion-fonce); --brand-deep: var(--c-passion-fonce);
  --brand-tint: var(--c-rose); --cream: var(--c-blush); --fond-teinte: var(--c-blush); --field-bg: #FBEBEE;
  --line: #F4DCE1; --line-strong: #EBC3CC;
  --shadow-img: 0 30px 70px -30px rgba(140,14,48,.32);
}
body.page-couple .btn { --btn-bg: var(--c-passion); --btn-bd: var(--c-passion); }
body.page-couple .btn:hover { --btn-bg: var(--c-passion-fonce); --btn-bd: var(--c-passion-fonce); }
body.page-couple .hero-wed .eyebrow { color: #FFD3DD; }
body.page-couple .hero-wed .eyebrow::before { background: #FFD3DD; }
body.page-couple .sec-title em { color: var(--c-passion); }
body.page-couple .trust-strip svg { color: var(--c-or); }

/* ---------- Un cœur entre deux traits au-dessus des titres ---------- */
body.page-couple .sec-head::before { content: ""; display: block; width: 120px; height: 24px;
  margin: 0 auto var(--space-3); background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 120 24%22 fill=%22none%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M6 12h42M72 12h42%22 stroke=%22%23E7A6B4%22 stroke-width=%221%22/%3E%3Cg transform=%22translate%2848 0%29%22%3E%3Cpath d=%22M12 20.5s-7.5-4.6-9.6-9.3C1 8 3 4.6 6.4 4.6c2.2 0 3.7 1.3 4.6 2.8.9-1.5 2.4-2.8 4.6-2.8 3.4 0 5.4 3.4 4 6.6-2.1 4.7-9.6 9.3-9.6 9.3z%22 stroke=%22%23B3123E%22 stroke-width=%221.3%22 stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; }

/* ---------- Cartes « Avant de venir » : un liseré d'or au coin ---------- */
body.page-couple .prep-ic { background: var(--c-rose); color: var(--c-passion); }

/* ---------- Cœurs qui montent, dans le héros seulement ---------- */
.c-coeurs { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 1; }
.c-coeur { position: absolute; bottom: -6%; width: 14px; height: 14px; opacity: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12 20.5s-7.5-4.6-9.6-9.3C1 8 3 4.6 6.4 4.6c2.2 0 3.7 1.3 4.6 2.8.9-1.5 2.4-2.8 4.6-2.8 3.4 0 5.4 3.4 4 6.6-2.1 4.7-9.6 9.3-9.6 9.3z%22 fill=%22%23F07F9C%22/%3E%3C/svg%3E") center / contain no-repeat;
  animation: c-monte var(--d, 14s) ease-in var(--t, 0s) infinite; }
.c-coeurs.en-pause .c-coeur { animation-play-state: paused; }
@keyframes c-monte {
  0%   { transform: translate3d(0, 0, 0) scale(.8); opacity: 0; }
  12%  { opacity: .75; }
  50%  { transform: translate3d(var(--x, 20px), -50vh, 0) scale(1); }
  85%  { opacity: .5; }
  100% { transform: translate3d(calc(var(--x, 20px) * -.5), -105vh, 0) scale(1.1); opacity: 0; }
}
/* petite volée de cœurs quand on choisit de réserver */
.c-envol { position: fixed; z-index: 300; width: 16px; height: 16px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12 20.5s-7.5-4.6-9.6-9.3C1 8 3 4.6 6.4 4.6c2.2 0 3.7 1.3 4.6 2.8.9-1.5 2.4-2.8 4.6-2.8 3.4 0 5.4 3.4 4 6.6-2.1 4.7-9.6 9.3-9.6 9.3z%22 fill=%22%23C2264B%22/%3E%3C/svg%3E") center / contain no-repeat;
  animation: c-envol .9s cubic-bezier(.2,.7,.3,1) forwards; }
@keyframes c-envol { from { transform: translate(-50%, -50%) scale(.4); opacity: 1; }
  to { transform: translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) scale(1); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .c-coeurs, .c-envol { display: none; } }
.c-coeur.vif { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12 20.5s-7.5-4.6-9.6-9.3C1 8 3 4.6 6.4 4.6c2.2 0 3.7 1.3 4.6 2.8.9-1.5 2.4-2.8 4.6-2.8 3.4 0 5.4 3.4 4 6.6-2.1 4.7-9.6 9.3-9.6 9.3z%22 fill=%22%23C2264B%22/%3E%3C/svg%3E"); }
/* les cœurs passent devant le flou du tirage, derrière le texte */
body.page-couple .hero-wed .c-coeurs { z-index: 2; }
body.page-couple .hero-wed .container { z-index: 3; }
