/* Charte Georgian Gateway posée sur la structure Sejovia */
:root {
  --swatch--brand-orig: #FF5306;
  --swatch--brand-accent: #FF5306;
  --swatch--dark-900: #020202;
  --swatch--dark-800: #1c1c1c;
  --swatch--light-200: #f9f9f9;
  --_typography---font--primary-family: "DM Sans", Arial, sans-serif;
  --_typography---font--secondary-family: "DM Sans", Arial, sans-serif;
  --_typography---font--third-family: "DM Serif Text", Georgia, serif;
  --button-020-color: #020202;
}
body, [style*="Geist"] { font-family: "DM Sans", Arial, sans-serif !important; }
.u-heading-accent strong, h1 strong, h2 strong { font-family: "DM Serif Text", Georgia, serif !important; font-style: italic; font-weight: 400 !important; color: #FF5306; letter-spacing: -0.01em; }
.gg-logo { display: inline-flex; align-items: center; gap: .5rem; font-family: "DM Serif Text", serif; font-size: 1.15rem; color: #020202; white-space: nowrap; }
.gg-logo img { width: 2.2rem; height: 2.2rem; object-fit: contain; }
.gg-notif { display: flex; align-items: center; gap: .6rem; background: #fff; border-radius: .9rem; padding: .65rem .9rem; box-shadow: 0 12px 30px -12px rgba(2,2,2,.25); font-size: .8rem; line-height: 1.25; white-space: nowrap; color: #020202; }
.gg-notif strong { display: block; font-family: "DM Sans", sans-serif; font-style: normal; color: #020202; }
.gg-notif small { color: #545454; }
.gg-notif__dot { width: .7rem; height: .7rem; border-radius: 50%; background: #00c220; box-shadow: 0 0 0 4px rgba(0,194,32,.15); flex: none; }
.gg-pin { width: .7rem; height: .7rem; border-radius: 50%; background: #FF5306; flex: none; }
.gg-avatar { display: grid; place-items: center; width: 100%; height: 100%; border-radius: 50%; background: #FFEEE5; color: #FF5306; font-weight: 700; font-size: .85rem; }
.gg-neg span { opacity: .75; }
.hero_main-image { object-fit: contain; }
.card-stack__image, .clients_card-left img, .clients_card-top img, .clients_card-b-text img, .swiper-slide img { object-fit: cover; }
.cta_logo-background img { width: 100%; height: auto; opacity: .9; }
.gg-footer-word { font-family: "DM Serif Text", serif; font-style: italic; color: #fff; font-size: clamp(3rem, 11vw, 11rem); line-height: 1; white-space: nowrap; text-align: center; }
.nav_desktop_logo .logo, .nav_mobile_logo .logo { width: max-content !important; max-width: none !important; }
.nav_desktop_logo .gg-logo { font-size: .95rem; }
.u-heading, .u-heading h1, .u-heading h2, .u-heading h3 { letter-spacing: -0.02em !important; }
@media (min-width: 992px) { .nav_desktop_contain { width: min(92%, 64rem) !important; } }
.nav_desktop_logo { width: auto !important; }
.nav_mobile_logo .gg-logo { font-size: .8rem; gap: .35rem; }
.nav_mobile_logo .gg-logo img { width: 1.6rem; height: 1.6rem; }
@media (max-width: 360px) { .nav_mobile_logo .gg-logo span { display: none; } }
/* vidéo motion design 16:9 dans le hero */
.hero_main_image-wrap { width: min(92vw, 60rem) !important; max-width: none !important; }
.gg-video { position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: 1.5rem; overflow: hidden; background: #050505; box-shadow: 0 40px 80px -30px rgba(2,2,2,.45), 0 0 0 1px rgba(2,2,2,.06); }
.gg-video video { display: block; width: 100%; height: 100%; object-fit: cover; }
.gg-video__sound { white-space: nowrap; position: absolute; left: 50%; bottom: 1.25rem; transform: translateX(-50%); display: inline-flex; align-items: center; gap: .5rem; padding: .7rem 1.2rem; border-radius: 999px; background: #FF5306; color: #fff; font: 600 .95rem/1 "DM Sans", sans-serif; box-shadow: 0 10px 30px -8px rgba(255,83,6,.6); transition: transform .2s; }
.gg-video__sound:hover { transform: translateX(-50%) scale(1.04); }
.gg-video.is-sound .gg-video__sound { display: none; }
.hero_main_left.right { z-index: 3; }
@media (max-width: 767px) { .gg-video { border-radius: 1rem; } .gg-video__sound { bottom: .75rem; font-size: .85rem; padding: .6rem 1rem; } }
.gg-flag { font-size: 1.6rem; line-height: 1; font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif; }
#Client .marquee-item { opacity: 1; filter: none; }
/* rythme vertical uniforme entre sections (séparateurs Webflow neutralisés) */
main > section:not(#Hero) > .u-section-spacer,
main > section:not(#Hero) > .testimonials_padding > .u-section-spacer { display: none !important; }
.card-stack { grid-template-rows: repeat(2, var(--stack-row)) auto; grid-auto-rows: auto; }
:root { --gg-gap: clamp(80px, 8.9vw, 128px); --gg-half: calc(var(--gg-gap) / 2); }
#Hero { padding-bottom: var(--gg-gap) !important; }
#Client { padding-top: var(--gg-gap); padding-bottom: var(--gg-half); }
#Client .logo-marquee-wrapper { padding-top: 0 !important; }
#Chiffres { padding-top: var(--gg-half); padding-bottom: var(--gg-gap); }
#Produit { padding-top: var(--gg-gap); padding-bottom: var(--gg-half); }
#Tarifs { padding-top: var(--gg-half); padding-bottom: var(--gg-half); }
#Temoignages { padding-top: var(--gg-half); padding-bottom: calc(var(--gg-half) - 21px); }
#FAQ { padding-top: calc(var(--gg-half) - 9px); padding-bottom: calc(var(--gg-half) - 32px); }
#CTA { padding-top: calc(var(--gg-half) - 9px); padding-bottom: calc(var(--gg-gap) - 9px); }
@media (max-width: 767px) { #FAQ { padding-top: calc(var(--gg-half) - 32px); } #Temoignages { padding-bottom: calc(var(--gg-half) - 21px); } }
#FAQ { padding-top: var(--gg-half) !important; padding-bottom: var(--gg-half) !important; }
@media (min-width: 768px) { #FAQ { padding-top: calc(var(--gg-half) + 23px) !important; } }
#Client { padding-bottom: 0; }
#Chiffres { padding-top: calc(var(--gg-gap) - 48px); }

/* le bloc du logo (absolu, 700px) recouvrait les liens de la nav */
.nav_desktop_logo { pointer-events: none; }
.nav_desktop_logo .gg-logo { pointer-events: auto; }

/* étapes du processus : pastille numérotée + progression */
.gg-step { display: inline-flex; align-self: flex-start; justify-self: start; width: max-content !important; max-width: 100% !important; align-items: center; gap: .7rem; margin-bottom: 1.4rem; padding: .35rem 1rem .35rem .35rem; border-radius: 999px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.3); color: #fff; font-family: "DM Sans", sans-serif; font-size: .78rem; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.gg-step__num { display: grid; place-items: center; width: 2.1rem; height: 2.1rem; border-radius: 50%; background: #fff; color: #FF5306; font-size: .9rem; font-weight: 700; letter-spacing: 0; box-shadow: 0 4px 14px rgba(0,0,0,.18); }
.gg-step__bar { display: inline-flex; gap: 4px; margin-left: .2rem; }
.gg-step__bar i { width: 18px; height: 4px; border-radius: 2px; background: rgba(255,255,255,.28); }
.gg-step__bar i.on { background: #fff; }
@media (max-width: 767px) { .gg-step { font-size: .7rem; margin-bottom: 1rem; } .gg-step__num { width: 1.8rem; height: 1.8rem; font-size: .8rem; } }
