/* Formulaire de contact en fenêtre (assets/popup-contact.js) : même rendu que la fenêtre du paquet de design (filet or, en-tête noir). */
.ge-pop { position: fixed; inset: 0; z-index: 99990; display: grid; place-items: center; padding: 12px; overflow: auto; background: rgba(11, 10, 9, .72); backdrop-filter: blur(3px); }
.ge-pop[hidden] { display: none; }
.ge-pop-box { width: min(640px, 100%); max-height: calc(100vh - 24px); overflow: auto; background: #fff; color: #0b0a09; border: 1px solid #c9a965; box-shadow: 0 40px 90px -30px rgba(0, 0, 0, .7); animation: ge-pop-in .35s ease both; }
.ge-pop-h { position: sticky; top: 0; z-index: 2; display: flex; gap: 16px; justify-content: space-between; align-items: flex-start; padding: 22px 24px 16px; background: #0b0a09; color: #fff; }
.ge-pop-k { margin: 0 0 4px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #dcc387; }
.ge-pop-h h2 { margin: 0; color: #fff; font-size: clamp(22px, 3vw, 28px); }
.ge-pop-s { margin: 8px 0 0; font-size: 14px; color: #cfc9bf; }
.ge-pop-s a { color: #dcc387; white-space: nowrap; }
.ge-pop-x { flex: none; width: 44px; height: 44px; border: 1px solid #3a352e; background: none; color: #fff; font-size: 26px; line-height: 1; cursor: pointer; }
.ge-pop-x:hover { border-color: #c9a965; }
.ge-pop .ac-c-form, .ge-pop .c-form { margin: 0; padding: 22px 24px 26px; max-width: none; border: 0; box-shadow: none; background: transparent; }
html.ge-pop-on { overflow: hidden; }
.select2-container--open, .select2-dropdown { z-index: 100000; }
@keyframes ge-pop-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@media (max-width: 600px) { .ge-pop { padding: 0; } .ge-pop-box { width: 100vw; height: 100dvh; max-height: 100dvh; border: 0; } .ge-pop-h { padding: 16px 16px 12px; } .ge-pop .ac-c-form, .ge-pop .c-form { padding: 16px; } }
@media (prefers-reduced-motion: reduce) { .ge-pop-box { animation: none; } }

/* Agenda Calendly en fenêtre */
.ge-rdv-box { width: min(900px, 100%); }
.ge-rdv-cadre iframe { display: block; width: 100%; height: min(78vh, 720px); border: 0; }
.ge-pop-box .ge-pop-h h2:only-child { margin: 0; }
@media (max-width: 600px) { .ge-rdv-cadre iframe { height: calc(100dvh - 90px); } }
