/* Talenys — styles communs (générés) */
@font-face { font-family: Fredoka; font-style: normal; font-weight: 400; font-stretch: 100%; font-display: swap; src: url("fonts/fredoka-400-9dca45.woff2") format("woff2"); unicode-range: U+307-308, U+590-5FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F; }
@font-face { font-family: Fredoka; font-style: normal; font-weight: 400; font-stretch: 100%; font-display: swap; src: url("fonts/fredoka-400-de9121.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Fredoka; font-style: normal; font-weight: 400; font-stretch: 100%; font-display: swap; src: url("fonts/fredoka-400-6438e7.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Fredoka; font-style: normal; font-weight: 500; font-stretch: 100%; font-display: swap; src: url("fonts/fredoka-400-9dca45.woff2") format("woff2"); unicode-range: U+307-308, U+590-5FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F; }
@font-face { font-family: Fredoka; font-style: normal; font-weight: 500; font-stretch: 100%; font-display: swap; src: url("fonts/fredoka-400-de9121.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Fredoka; font-style: normal; font-weight: 500; font-stretch: 100%; font-display: swap; src: url("fonts/fredoka-400-6438e7.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Fredoka; font-style: normal; font-weight: 600; font-stretch: 100%; font-display: swap; src: url("fonts/fredoka-400-9dca45.woff2") format("woff2"); unicode-range: U+307-308, U+590-5FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F; }
@font-face { font-family: Fredoka; font-style: normal; font-weight: 600; font-stretch: 100%; font-display: swap; src: url("fonts/fredoka-400-de9121.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Fredoka; font-style: normal; font-weight: 600; font-stretch: 100%; font-display: swap; src: url("fonts/fredoka-400-6438e7.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Jost; font-style: normal; font-weight: 300; font-display: swap; src: url("fonts/jost-300-e31eaf.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Jost; font-style: normal; font-weight: 300; font-display: swap; src: url("fonts/jost-300-2b2ae7.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Jost; font-style: normal; font-weight: 300; font-display: swap; src: url("fonts/jost-300-d3fc5b.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Jost; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/jost-300-e31eaf.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Jost; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/jost-300-2b2ae7.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Jost; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/jost-300-d3fc5b.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Jost; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/jost-300-e31eaf.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Jost; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/jost-300-2b2ae7.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Jost; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/jost-300-d3fc5b.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Jost; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/jost-300-e31eaf.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Jost; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/jost-300-2b2ae7.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Jost; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/jost-300-d3fc5b.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Omnium; src: url("fonts/omnium-500.woff2") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: Omnium; src: url("fonts/omnium-600.woff2") format("woff2"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: Omnium; src: url("fonts/omnium-700.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Futura LT"; src: url("fonts/futura-lt-300.woff2") format("woff2"); font-weight: 300; font-style: normal; font-display: swap; }
@font-face { font-family: "Futura LT"; src: url("fonts/futura-lt-400.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Futura LT"; src: url("fonts/futura-lt-400-italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: "Futura LT"; src: url("fonts/futura-lt-600.woff2") format("woff2"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "Futura LT"; src: url("fonts/futura-lt-700.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }
* { box-sizing: border-box; }
body { margin: 0px; background: rgb(250, 246, 240); font-family: "Futura LT", "Futura LT Pro", Futura, Jost, system-ui, sans-serif; color: rgb(42, 37, 65); -webkit-font-smoothing: antialiased; }
a { color: rgb(238, 115, 33); }
a:hover { color: rgb(42, 37, 65); }
:focus-visible { outline: rgb(105, 93, 165) solid 2px; outline-offset: 3px; border-radius: 2px; }
::selection { background: rgb(254, 234, 211); }
h1, h2, h3, h4 { font-family: Omnium, Fredoka, sans-serif; font-weight: 600; line-height: 1.06; letter-spacing: -0.02em; margin: 0px; }
p { text-wrap: pretty; }
@keyframes t-rise { 
  0% { opacity: 0; transform: translateY(20px); }
  100% { opacity: 1; transform: none; }
}
@keyframes t-fade { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes t-pan { 
  0% { transform: scale(1.03); }
  100% { transform: scale(1.12); }
}
@keyframes t-grow { 
  0% { transform: scaleX(0); }
  100% { transform: scaleX(1); }
}
.js [data-rv]:not(.in) { opacity: 0; }
.js [data-rv].in { animation: 0.7s cubic-bezier(0.22, 0.7, 0.24, 1) 0s 1 normal both running t-rise; }
.js [data-rv-f].in { animation: 1s ease 0s 1 normal both running t-fade; }
.js [data-rule] { transform: scaleX(0); transform-origin: left center; }
.js [data-rule].in { animation: 0.8s cubic-bezier(0.22, 0.7, 0.24, 1) 0s 1 normal both running t-grow; }
@media (prefers-reduced-motion: reduce) {
  .js [data-rv]:not(.in), .js [data-rule] { opacity: 1; transform: none; }
  .js [data-rv].in, .js [data-rv-f].in, .js [data-rule].in { animation: auto ease 0s 1 normal none running none !important; }
}
@media (max-width: 980px) {
  [data-stepnav] { gap: 12px !important; }
  [data-step] { border: 1px solid rgb(233, 231, 239); border-radius: 12px; padding: 14px 16px; flex-direction: column; justify-content: space-between; display: flex !important; }
  [data-step] span:last-child { font-size: 17px !important; line-height: 1.25; }
  [data-foot] { grid-template-columns: 1fr 1fr !important; gap: 36px 24px !important; padding-top: 48px !important; }
  [data-foot-brand] { grid-column: 1 / -1; display: flex; flex-direction: column; align-items: center; text-align: center; padding-bottom: 30px; border-bottom: 1px solid rgb(233, 231, 239); }
  [data-foot-logo] { height: 104px !important; margin: 0px 0px 16px !important; }
  [data-foot-res] { grid-column: 1 / -1; grid-template-columns: 1fr 1fr; column-gap: 24px; display: grid !important; }
  [data-foot-res] p { grid-column: 1 / -1; }
  [data-foot-bar] { flex-direction: column; text-align: center; align-items: center !important; }
  [data-foot-bar] > div { align-items: center; justify-content: center; }
  [data-stack] { grid-template-columns: 1fr !important; }
  [data-sticky] { position: static !important; }
  [data-desk] { display: none !important; }
  [data-mob] { display: flex !important; }
  [data-pad] { padding-left: 20px !important; padding-right: 20px !important; }
  [data-cellrule] { border-left: 0px !important; border-top: 1px solid rgba(42, 37, 65, 0.22) !important; }
}
[hidden] { display: none !important; }

/* Effets de survol (générés depuis la maquette) */
.h-131c02:hover { border-color: rgb(246, 159, 15) !important; }
.h-1d4a7f:hover { background: rgb(105, 93, 165) !important; color: rgb(255, 255, 255) !important; }
.h-2461b6:hover { border-color: rgb(238, 115, 33) !important; }
.h-2597ab:hover { background: rgb(42, 37, 65) !important; color: rgb(255, 255, 255) !important; }
.h-2b9914:hover { background: rgb(254, 234, 211) !important; color: rgb(246, 159, 15) !important; }
.h-320684:hover { border-color: rgb(231, 75, 148) !important; color: rgb(231, 75, 148) !important; }
.h-43146c:hover { background: rgba(255, 255, 255, 0.12) !important; color: rgb(255, 255, 255) !important; }
.h-5b0d19:hover { background: rgb(254, 234, 211) !important; }
.h-5e6a04:hover { border-color: rgb(105, 93, 165) !important; }
.h-657804:hover { background: rgb(231, 75, 148) !important; color: rgb(42, 37, 65) !important; }
.h-6ed354:hover { border-color: rgb(105, 93, 165) !important; color: rgb(42, 37, 65) !important; }
.h-7e159d:hover { background: rgb(254, 234, 211) !important; color: rgb(42, 37, 65) !important; }
.h-7e536a:hover { border-color: rgb(105, 93, 165) !important; color: rgb(105, 93, 165) !important; }
.h-8115c6:hover { color: rgb(105, 93, 165) !important; }
.h-882f65:hover { color: rgb(255, 255, 255) !important; }
.h-892b57:focus { left: 16px !important; }
.h-9191a7:hover { color: rgb(42, 37, 65) !important; border-color: rgb(42, 37, 65) !important; }
.h-98fc4a:hover { background: rgb(254, 234, 211) !important; color: rgb(238, 115, 33) !important; }
.h-9914cc:hover { background: rgb(255, 255, 255) !important; color: rgb(42, 37, 65) !important; }
.h-acf505:hover { border-color: rgb(238, 115, 33) !important; color: rgb(238, 115, 33) !important; }
.h-cc948b:hover { color: rgb(42, 37, 65) !important; }
.h-d718e1:hover { background: rgb(254, 234, 211) !important; color: rgb(231, 75, 148) !important; }
.h-d7d75c:hover { background: rgb(105, 93, 165) !important; }
.h-e144de:hover { border-color: rgb(246, 159, 15) !important; color: rgb(246, 159, 15) !important; }
.h-f271e3:hover { background: transparent !important; color: rgb(238, 115, 33) !important; }
.h-f8320b:hover { background: rgb(238, 115, 33) !important; color: rgb(255, 255, 255) !important; }
.h-fbf958:hover { color: rgb(238, 115, 33) !important; border-color: rgb(238, 115, 33) !important; }
