:root{--bg:#14110f;--panel:#1d1916;--line:#3a322b;--text:#f3ead9;--muted:#a39682;--amber:#f5a524;--serif:Fraunces, Georgia, serif;--gutter:clamp(16px, 4vw, 40px)}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:radial-gradient(ellipse 80% 50% at 75% -10%, #f5a5241a, transparent 70%), var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,sans-serif;line-height:1.5}a{color:inherit}:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:6px}.top,main,.foot{max-width:1180px;padding-left:var(--gutter);padding-right:var(--gutter);margin:0 auto}.top{justify-content:space-between;align-items:center;height:76px;display:flex}.brand{font-family:var(--serif);letter-spacing:-.02em;color:var(--amber);font-size:1.6rem;font-weight:700;text-decoration:none}.top nav{align-items:center;gap:28px;display:flex}.nav-link{color:var(--muted);font-size:.92rem;text-decoration:none;transition:color .2s}.nav-link:hover{color:var(--text)}.btn{background:var(--amber);min-height:50px;color:var(--bg);border:1px solid var(--amber);border-radius:12px;align-items:center;gap:10px;padding:0 24px;font-size:.98rem;font-weight:600;text-decoration:none;transition:transform .2s cubic-bezier(.2,0,0,1),background-color .2s,border-color .2s;display:inline-flex}.btn:hover{background:#ffb840;border-color:#ffb840;transform:translateY(-1px)}.btn:active{transform:translateY(0)scale(.98)}.btn span{transition:transform .2s cubic-bezier(.2,0,0,1)}.btn:hover span{transform:translate(3px)}.btn.ghost{color:var(--text);border-color:var(--line);background:0 0}.btn.ghost:hover{border-color:var(--muted)}.btn-sm{border-radius:10px;min-height:40px;padding:0 16px;font-size:.9rem}.hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(32px,5vw,72px);min-height:calc(100svh - 76px);padding:32px 0 72px;display:grid}.eyebrow{color:var(--amber);letter-spacing:.16em;text-transform:uppercase;margin:0 0 18px;font-size:.74rem;font-weight:600}h1,h2{font-family:var(--serif);letter-spacing:-.03em;text-wrap:balance;margin:0;font-weight:700}h1{font-size:clamp(2.6rem,5.2vw,4.5rem);line-height:1.02}h1 em{color:var(--amber);font-style:italic;font-weight:500;display:block}h2{font-size:clamp(2rem,3.4vw,2.9rem);line-height:1.08}.lede{max-width:34rem;color:var(--muted);margin:24px 0 0;font-size:1.12rem;line-height:1.65}.ctas{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.facts{border-top:1px solid var(--line);grid-template-columns:repeat(3,auto);justify-content:start;gap:40px;margin:52px 0 0;padding-top:24px;display:grid}.facts dt{font-family:var(--serif);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.85rem;font-weight:500}.facts dd{color:var(--muted);margin:2px 0 0;font-size:.86rem}.hero-map{aspect-ratio:1;background:radial-gradient(circle at 50% 45%, #241e1a, var(--panel) 70%);border:1px solid var(--line);border-radius:28px;margin:0;position:relative;overflow:hidden;box-shadow:0 40px 80px -30px #000000b3,inset 0 1px #f3ead90a}.hero-map svg{width:100%;height:100%;color:var(--line);display:block}.chip{border:1px solid var(--line);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;background:#14110fb3;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:.7rem;font-weight:600;display:inline-flex;position:absolute;top:16px;left:16px}.chip:before{content:"";background:var(--amber);width:6px;height:6px;box-shadow:0 0 8px var(--amber);border-radius:50%}.hud{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);background:#14110fc7;border-radius:14px;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 16px;font-size:.88rem;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.hud-stage{color:var(--text);font-weight:500}.hud-km{font-family:var(--serif);color:var(--amber);font-variant-numeric:tabular-nums;font-size:1.1rem}.grid{opacity:.45}.lv-france,.lv-rennes{transform-box:view-box;transition:transform 1.5s cubic-bezier(.65,0,.35,1),opacity 1.5s}.lv-france{transform-origin:var(--fr-origin)}.lv-rennes{transform-origin:var(--rn-origin);transform:var(--rn-from);opacity:0}.zoom .lv-france{transform:var(--fr-zoom);opacity:0;transition-timing-function:cubic-bezier(.65,0,.35,1),cubic-bezier(.7,0,1,1)}.zoom .lv-rennes{opacity:1;transition-timing-function:cubic-bezier(.65,0,.35,1),cubic-bezier(0,0,.3,1);transform:none}.fr-outline{fill:#f5a52400;stroke:var(--text);stroke-width:1.4px;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset 1.6s cubic-bezier(.45,0,.2,1),fill .8s 1.2s}.start .fr-outline{stroke-dashoffset:0;fill:#f5a52412}.zoom .fr-outline{vector-effect:non-scaling-stroke;stroke-dasharray:none}.fr-pin{fill:var(--amber)}.fr-ping{fill:none;stroke:var(--amber);stroke-width:1.5px;transform-box:fill-box;transform-origin:50%}.fr-label{fill:var(--text);font:600 15px Inter,system-ui,sans-serif}.fr-pin,.fr-ping,.fr-label{opacity:0;transition:opacity .4s}.pin .fr-pin,.pin .fr-label{opacity:1}.pin .fr-ping{opacity:1;animation:1.4s cubic-bezier(0,0,.2,1) infinite ping}.zoom .fr-pin,.zoom .fr-ping,.zoom .fr-label{opacity:0;transition-duration:.25s}@keyframes ping{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(4)}}.rn-outline{fill:#f5a5240d;stroke:var(--muted);stroke-width:1px;stroke-dasharray:4 5;stroke-opacity:.6;vector-effect:non-scaling-stroke}.rn-bars circle{fill:#8a6a3a;transform-box:fill-box;transform-origin:50%;transition:transform .45s cubic-bezier(.34,1.56,.64,1),fill .3s;transition-delay:calc(var(--i) * 7ms);transform:scale(0)}.bars .rn-bars circle{transform:scale(1)}.rn-bars circle.on{fill:var(--amber);transition-delay:0s;transform:scale(1.25)}.rn-route{fill:none;stroke:var(--amber);stroke-width:1.4px;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px}.rn-start{fill:var(--text);stroke:var(--bg);stroke-width:2.5px;opacity:0;transition:opacity .4s}.bars .rn-start{opacity:1}.rn-head{fill:var(--text)}.rn-head,.rn-glow{opacity:0;transition:opacity .3s}.route .rn-head,.route .rn-glow{opacity:1}.fade .lv-rennes{opacity:0;transition:opacity .9s}.snap,.snap *{transition:none!important}.steps,.engine{border-top:1px solid var(--line);padding:clamp(72px,10vw,128px) 0}.section-head h2{max-width:20ch}.step-list{grid-template-columns:repeat(3,1fr);gap:32px;margin:56px 0 0;padding:0;list-style:none;display:grid}.step-list li{border-top:1px solid var(--line);padding-top:24px}.step-n{font-family:var(--serif);color:var(--amber);font-variant-numeric:tabular-nums;font-size:.95rem}.step-list h3{font-family:var(--serif);letter-spacing:-.02em;margin:14px 0 10px;font-size:1.5rem;font-weight:500}.step-list p{color:var(--muted);max-width:32ch;margin:0}.engine{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(40px,6vw,88px);display:grid}.engine-text>p:not(.eyebrow){color:var(--muted);max-width:36rem;margin:24px 0 0;font-size:1.05rem;line-height:1.7}.specs{margin:32px 0 0;padding:0;list-style:none}.specs li{border-bottom:1px solid var(--line);color:var(--muted);padding:14px 0;font-size:.95rem}.specs li:first-child{border-top:1px solid var(--line)}.specs strong{color:var(--text);font-weight:600}.uncross{background:var(--panel);border:1px solid var(--line);border-radius:28px;margin:0;padding:clamp(24px,4vw,44px)}.uncross svg{width:100%;height:auto;display:block}.u-before{fill:none;stroke:var(--muted);stroke-width:2px;stroke-dasharray:6 7;opacity:.55}.u-after{fill:none;stroke:var(--amber);stroke-width:3px;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:410;animation:5s cubic-bezier(.45,0,.2,1) infinite draw}.u-dots circle{fill:var(--text);stroke:var(--panel);stroke-width:3px}@keyframes draw{0%{stroke-dashoffset:410px}45%,85%{stroke-dashoffset:0}to{stroke-dashoffset:-410px}}@media (prefers-reduced-motion:reduce){.u-after{animation:none}}.uncross figcaption{color:var(--muted);gap:24px;margin-top:20px;font-size:.85rem;display:flex}.lg{align-items:center;gap:8px;display:inline-flex}.lg:before{content:"";border-top:2px dashed var(--muted);width:22px}.lg-after:before{border-top:3px solid var(--amber)}.final{text-align:center;background:radial-gradient(ellipse 70% 80% at 50% 120%, #f5a52429, transparent 70%), var(--panel);border:1px solid var(--line);border-radius:28px;justify-items:center;gap:32px;margin-bottom:clamp(56px,8vw,96px);padding:clamp(56px,8vw,96px) 24px;display:grid}.final h2{max-width:16ch}.foot{padding-top:28px;padding-bottom:calc(40px + env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:.86rem;display:flex}.foot strong{color:var(--text);font-weight:600}.foot a{text-underline-offset:3px}.foot a:hover{color:var(--text)}@media (width<=900px){.hero{grid-template-columns:1fr;min-height:0;padding-top:24px}.hero-map{justify-self:center;width:100%;max-width:560px}.step-list,.engine{grid-template-columns:1fr}}@media (width<=600px){.nav-link{display:none}.top{height:64px}.facts{gap:24px}.facts dt{font-size:1.5rem}.hero-map{border-radius:20px}.ctas .btn{flex:auto;justify-content:center}}
