/* Jenko jenko6 (from v16 «Schéma») — base. Brand: the wordmark's heavy extended grotesque (Roboto Flex, Latin, width up
   to 151), grey wordmark, Jenko yellow wedge #FFCF2B. French only: the Latin face alone. */
@font-face { font-family: "RF"; src: url("../../concepts/fonts/roboto-flex-latin-full.woff2") format("woff2"); font-weight: 100 1000; font-stretch: 25% 151%; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root { --jaune: #ffcf2b; --jaune-2: #f2bd0c; --grey: #6b6f73; --ease: cubic-bezier(.16, 1, .3, 1); --m: clamp(18px, 4vw, 64px); --g: clamp(12px, 1.6vw, 24px); }
* { box-sizing: border-box; margin: 0; }
html { -webkit-text-size-adjust: 100%; }
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-stopped { overflow: hidden; }
body { font: 400 clamp(16px, 1.2vw, 19px)/1.5 "RF", "Roboto Flex", system-ui, sans-serif; font-optical-sizing: auto; overflow-x: clip; }
img, video, canvas, svg { display: block; max-width: 100%; }
a { color: inherit; }
button, input { font: inherit; color: inherit; }
.vh { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.wide { font-stretch: 151%; font-weight: 900; text-transform: uppercase; letter-spacing: -.01em; line-height: .9; }
.nw { white-space: nowrap; }

/* word reveal: words sit in masks, the unsplit text stays the accessible name */
.w-mask { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .06em; margin-bottom: -.06em; }
.w-word { display: inline-block; }

/* the brand wedge: a yellow tapered stroke with a notched tail, like the one through the wordmark */
.wedge { display: block; width: 100%; height: auto; color: var(--jaune); }

/* request form (name + phone, the only fields) */
.rq { display: grid; gap: 14px; }
.rq label { display: grid; gap: 6px; font-size: 14px; font-weight: 600; letter-spacing: .02em; }
.rq input { height: 56px; padding: 0 16px; border-radius: 2px; border: 1px solid currentColor; background: transparent; outline: none; font-size: 17px; }
.rq input:focus-visible { box-shadow: 0 0 0 3px var(--jaune); }
.rq .err { min-height: 1.3em; font-size: 14px; }
.rq [aria-invalid="true"] { border-color: #ff6b57; }
.rq__fields { display: grid; gap: 12px; }
.rq__done { display: none; }
.rq.is-sent .rq__fields { display: none; }
.rq.is-sent .rq__done { display: grid; gap: 10px; }
.rq__crm { font: 500 13px/1.5 ui-monospace, "SFMono-Regular", Menlo, monospace; opacity: .8; white-space: pre-wrap; }

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: 1ms !important; animation-delay: 0s !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; transition-delay: 0s !important; scroll-behavior: auto !important; } }
