@layer reset, tokens, base, layout, components, pages, utilities;
@layer components{.stat-stack{display: grid;gap: 0;border-top: 1px solid var(--line)}.stat-stack-item{display: grid;gap: var(--s-3) var(--s-7);padding: var(--s-6) 0;border-bottom: 1px solid var(--line);align-items: center}.stat-stack-num{font-family: var(--font-display);font-weight: 600;font-size: clamp(3.5rem, 2rem + 6vw, 7rem);line-height: 0.9;letter-spacing: -0.05em;color: var(--tone-glow, var(--rose-lumiere))}.stat-stack-num span{font-size: 0.5em;margin-left: 0.05em}.stat-stack-item p{max-width: 44ch;color: var(--fg-muted);font-size: var(--t-lead);line-height: 1.5}.stat-stack-item a{color: var(--fg)}@media (min-width: 760px){.stat-stack-item{grid-template-columns: minmax(14rem, 0.8fr) 1.2fr}}.feed-disclaimer{padding-top: var(--s-5);border-top: 1px solid var(--dark-line);font-size: var(--t-sm);color: var(--dark-muted)}}
@layer pages{.hero{position: relative;isolation: isolate;overflow: hidden;display: grid;align-content: end;gap: var(--s-7);min-height: min(52rem, calc(100svh - var(--header-h) - 2.75rem));padding: var(--s-9) var(--pad-x) var(--s-6);background: var(--encre);color: var(--craie)}.hero-media{position: absolute;inset: 0;z-index: -2}.hero-media img, .hero-film{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover}.hero-film{top: 2px;height: calc(100% - 2px);opacity: 0;transition: opacity 1.2s var(--ease)}.hero-film.is-playing{opacity: 1}.hero-film-overlay{position: absolute;inset: 0;z-index: -1;background: linear-gradient(180deg, rgba(11, 15, 19, 0.55) 0%, rgba(11, 15, 19, 0.25) 35%, rgba(11, 15, 19, 0.9) 100%), linear-gradient(90deg, rgba(11, 15, 19, 0.75) 0%, rgba(11, 15, 19, 0) 70%)}.hero-inner{display: grid;gap: var(--s-5);max-width: 62rem}.hero-kicker{color: rgba(247, 247, 245, 0.8);margin-bottom: 0}@media (max-width: 519.98px){.hero-kicker-suite{display: none}}.hero-tagline{font-size: var(--t-display);line-height: 0.92;letter-spacing: -0.05em;font-weight: 700;text-wrap: balance}.hero-tagline .accent{color: var(--rose-lumiere)}.hero-lede{max-width: 38ch;font-size: var(--t-lead);line-height: 1.5;color: rgba(247, 247, 245, 0.86)}.hero .btn-ghost{color: var(--craie);border-color: rgba(247, 247, 245, 0.4)}.hero .btn-ghost:hover{border-color: var(--craie);background: rgba(247, 247, 245, 0.08)}.hero-foot{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: var(--s-4);padding-top: var(--s-5);border-top: 1px solid rgba(247, 247, 245, 0.18)}.hero-labs{display: flex;flex-wrap: wrap;gap: var(--s-2);list-style: none}.hero-labs a{display: inline-flex;align-items: center;gap: 0.5rem;min-height: 2.75rem;padding: 0 1rem;border-radius: var(--r-pill);background: rgba(247, 247, 245, 0.08);border: 1px solid rgba(247, 247, 245, 0.14);font-size: var(--t-xs);font-weight: 600;text-decoration: none;color: var(--craie);background-color: rgba(11, 15, 19, 0.45);transition: background var(--t-fast), border-color var(--t-fast)}.hero-labs a::before{content: "";width: 0.5rem;height: 0.5rem;border-radius: 50%;background: var(--tone-glow)}.hero-labs a:hover{background: rgba(247, 247, 245, 0.16);border-color: rgba(247, 247, 245, 0.36)}.hero-pause{display: none;align-items: center;gap: 0.5rem;min-height: 2.75rem;padding: 0 1rem;border-radius: var(--r-pill);color: var(--craie);font-size: var(--t-xs);font-weight: 600;border: 1px solid rgba(247, 247, 245, 0.24)}.hero-pause:hover{border-color: var(--craie)}.hero-pause svg{width: 0.85rem;height: 0.85rem}.hero.has-video .hero-pause{display: inline-flex}.hero-foot{display: none}.home-intro{display: grid;gap: var(--s-6);padding: var(--section-y) var(--pad-x) var(--s-8)}.home-intro h2{font-size: clamp(2.2rem, 1.4rem + 3.6vw, 4.75rem);max-width: 14ch}.home-intro-body{display: grid;gap: var(--s-5);align-content: end;justify-items: start}.home-intro-body p{font-size: var(--t-lead);line-height: 1.55;color: var(--fg-muted);max-width: 40ch}@media (min-width: 960px){.home-intro{grid-template-columns: 1.3fr 1fr;gap: var(--s-9)}}.impact-grid{display: grid;gap: var(--s-4);padding: 0 var(--pad-x) var(--section-y)}.impact-card--dark{background: var(--encre);color: var(--craie);border: 1px solid var(--dark-line)}.impact-card--dark p{color: var(--dark-muted)}.impact-card--red{background: var(--rouge);color: #fff}.impact-card--red p{color: rgba(255, 255, 255, 0.9)}.impact-icon{display: block;width: 4.5rem;height: 4.5rem;margin-bottom: var(--s-6)}.impact-icon .hx-pic{width: 100%;height: 100%}.impact-link{display: flex;align-items: center;justify-content: space-between;padding-top: var(--s-4);border-top: 1px solid currentColor;border-top-color: color-mix(in srgb, currentColor 22%, transparent);font-weight: 600;font-size: var(--t-sm)}.impact-link b{font-weight: 400}.impact-card--red::after{content: "";position: absolute;z-index: -1;right: -15%;top: -10%;width: 70%;height: 120%;background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.12) 0 12px, transparent 12px 22px);transform: rotate(14deg)}@media (min-width: 900px){.impact-grid{grid-template-columns: 1fr 1fr 1fr}}.topics-inner{display: grid;gap: var(--s-7)}.topics-head{display: flex;flex-wrap: wrap;align-items: end;justify-content: space-between;gap: var(--s-5)}.topics-head > a{display: inline-flex;align-items: center;gap: 0.6rem;min-height: 3rem;padding: 0 1.4rem;border: 1.5px solid var(--line-strong);border-radius: var(--r-pill);text-decoration: none;font-weight: 600;font-size: var(--t-sm)}.topics-head > a:hover{border-color: var(--fg)}.topics-grid{display: grid;gap: var(--s-4)}.topic-card{position: relative;display: flex;flex-direction: column;overflow: hidden;border-radius: var(--r-xl);background: var(--encre-2);color: var(--dark-fg);border: 1px solid var(--dark-line);transition: box-shadow var(--dur-2) var(--ease-out), outline-color var(--dur-2) var(--ease-out)}.topic-card:hover{box-shadow: var(--shadow-2);outline: 1px solid color-mix(in srgb, var(--tone-glow, var(--dark-fg)) 55%, transparent);outline-offset: -1px}.topic-card-media{aspect-ratio: 16 / 9;overflow: hidden}@media (min-width: 760px){.topic-card-media{aspect-ratio: 16 / 10}}.topic-card-media img{width: 100%;height: 100%;object-fit: cover;object-position: 50% 50%}.topic-card-body{display: grid;gap: var(--s-3);padding: var(--s-5) var(--s-6) var(--s-6);flex: 1;align-content: start}.topic-theme{font-size: var(--t-xs);font-weight: 600;letter-spacing: 0.12em;text-transform: uppercase;color: var(--tone-glow, var(--dark-muted))}.topic-title{font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem);letter-spacing: -0.03em}.topic-title a{text-decoration: none}.topic-title a::after{content: "";position: absolute;inset: 0;border-radius: inherit}.topic-title a:focus-visible{outline: none}.topic-card:focus-within{outline: 3px solid var(--focus);outline-offset: 3px}.topic-desc{color: var(--dark-muted);max-width: 40ch}.topic-link{display: inline-flex;align-items: center;gap: 0.5rem;margin-top: var(--s-3);font-weight: 600;font-size: var(--t-sm)}.topic-link{transition: color var(--dur-1) linear}.topic-link svg{width: 1rem;height: 1rem}.topic-card:hover .topic-link{color: var(--tone-glow, var(--dark-fg))}@media (min-width: 760px){.topics-grid{grid-template-columns: repeat(2, 1fr)}.topic-card:first-child{grid-column: 1 / -1}}@media (min-width: 1100px){.topics-grid{grid-template-columns: repeat(6, 1fr)}.topic-card{grid-column: span 2}.topic-card:nth-child(1), .topic-card:nth-child(2){grid-column: span 3}.topic-card:nth-child(1) .topic-card-media, .topic-card:nth-child(2) .topic-card-media{aspect-ratio: 16 / 9}}.reach-head{display: grid;gap: var(--s-4);margin-bottom: var(--s-8)}.reach-head h2{max-width: 16ch}.reach-head p{color: var(--dark-muted);max-width: 52ch}.reach-inner{display: grid;gap: 0;border-top: 1px solid var(--dark-line)}.reach-item{display: grid;gap: var(--s-3);padding: var(--s-6) 0;border-bottom: 1px solid var(--dark-line)}.reach-num{font-family: var(--font-display);font-size: clamp(3.5rem, 2rem + 6vw, 7.5rem);font-weight: 600;line-height: 0.9;letter-spacing: -0.05em;font-variant-numeric: tabular-nums}.reach-label{color: var(--dark-muted);max-width: 30ch}.reach-label strong{color: var(--dark-fg)}@media (min-width: 900px){.reach-inner{grid-template-columns: repeat(var(--cols, 3), 1fr);border-bottom: 1px solid var(--dark-line)}.reach-item{padding: var(--s-6) var(--s-6) var(--s-7) 0;border-bottom: 0}.reach-item + .reach-item{padding-left: var(--s-6);border-left: 1px solid var(--dark-line)}}.manifesto-inner p{max-width: 20ch;margin-inline: auto;text-align: center;font-family: var(--font-display);font-weight: 600;font-size: clamp(2.2rem, 1rem + 5.4vw, 6.25rem);line-height: 1;letter-spacing: -0.045em;text-wrap: balance}.mw{color: var(--fg)}.pop .mw, .mw.pop{color: var(--accent)}@supports (animation-timeline: view()){@media (prefers-reduced-motion: no-preference){.mw{animation: mot-encre linear both;animation-timeline: view();animation-range: entry 10% cover 30%}.pop .mw, .mw.pop{animation-name: mot-magenta}}}@keyframes mot-encre{from{color: color-mix(in srgb, var(--fg) 45%, var(--bg));}to{color: var(--fg);}}@keyframes mot-magenta{from{color: color-mix(in srgb, var(--fg) 45%, var(--bg));}to{color: var(--accent);}}.final-cta{position: relative;overflow: hidden;isolation: isolate;display: grid;justify-items: center;gap: var(--s-6);margin: 0 var(--pad-x) var(--section-y);padding: clamp(3.5rem, 2rem + 7vw, 8rem) var(--gutter);border-radius: var(--r-xl);background: var(--rouge);color: #fff;text-align: center}.final-cta::before, .final-cta::after{content: "";position: absolute;z-index: -1;top: -30%;bottom: -30%;width: 34%;background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.14) 0 14px, transparent 14px 26px)}.final-cta::before{left: -6%;transform: skewX(-14deg)}.final-cta::after{right: -6%;transform: skewX(-14deg);background: repeating-linear-gradient(0deg, rgba(0, 0, 0, 0.12) 0 14px, transparent 14px 26px)}.final-cta h2{font-size: clamp(2.4rem, 1.4rem + 4.6vw, 5.5rem);max-width: 14ch}.final-cta p{max-width: 44ch;color: rgba(255, 255, 255, 0.92);font-size: var(--t-lead)}.final-cta .btn-primary{background: var(--encre)}.final-cta .btn-primary:hover{background: #000}main > .terrain + .final-cta{margin-top: var(--section-y)}.terrain-head{display: grid;gap: var(--s-5) var(--s-9);margin-bottom: var(--s-7)}.terrain-head h2{max-width: 14ch}.terrain-head-suite{display: grid;gap: var(--s-5);justify-items: start;align-content: end}.terrain-intro{max-width: 44ch;font-size: var(--t-lead);line-height: 1.55;color: var(--fg-muted)}.terrain-tout{display: inline-flex;align-items: center;gap: 0.6rem;min-height: 3rem;padding: 0 1.4rem;border: 1.5px solid var(--line-strong);border-radius: var(--r-pill);text-decoration: none;font-weight: 600;font-size: var(--t-sm);transition: border-color var(--dur-1) linear}.terrain-tout:hover{border-color: var(--fg)}@media (min-width: 960px){.terrain-head{grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);align-items: end}}.terrain-liste{display: grid;gap: var(--s-4)}@media (min-width: 1000px){.terrain-liste{grid-template-columns: repeat(3, minmax(0, 1fr))}}.page-lab .section-dark .stat-stack-num{color: var(--tone-glow)}}
@layer utilities{@media (prefers-reduced-motion: no-preference){.hero-inner > :not(h1){animation: mv-entree var(--dur-4) var(--ease-out) both}.hero-inner > :nth-child(3){animation-delay: 60ms}.hero-inner > :nth-child(n+4){animation-delay: 120ms}}@keyframes mv-entree{from{opacity: 0;translate: 0 8px;}}}
@media (prefers-reduced-motion: reduce){.hero-film{display: none}}
@layer pages{.hero-weave{position: relative;z-index: 0;pointer-events: none;width: 5.5rem;margin-bottom: calc(var(--s-4) - var(--s-7));filter: drop-shadow(0 1.5rem 3rem rgba(11, 15, 19, 0.55))}.hw-mark{display: block;width: 100%;height: auto;overflow: visible}.hw-band{transition: opacity 400ms var(--ease)}@media (max-width: 63.99rem){.hero-weave{order: 1;width: clamp(4rem, 3rem + 4vw, 5.5rem);margin: 0}}@media (min-width: 64rem){.hero-weave{position: absolute;bottom: var(--s-8);right: var(--pad-x);width: clamp(9rem, 14vw, 15rem);margin: 0}.hero-inner{max-width: min(62rem, calc(100% - clamp(9rem, 14vw, 15rem) - 4rem))}}.hero:has(.hero-labs .tone-rouge:is(:hover, :focus-visible)) .hw-band:not(.b-rouge), .hero:has(.hero-labs .tone-magenta:is(:hover, :focus-visible)) .hw-band:not(.b-magenta), .hero:has(.hero-labs .tone-vert:is(:hover, :focus-visible)) .hw-band:not(.b-vert), .hero:has(.hero-labs .tone-encre:is(:hover, :focus-visible)) .hw-band:not(.b-encre){opacity: 0.16}@media (prefers-reduced-motion: no-preference){.hw-band.b-rouge{--d: 150ms}.hw-band.b-magenta{--d: 450ms}.hw-band.b-vert{--d: 750ms}.hw-band.b-encre{--d: 1050ms}.hw-thread:nth-of-type(2){--k: 60ms}.hw-thread:nth-of-type(3){--k: 120ms}.hw-thread:nth-of-type(4){--k: 180ms}.hw-thread:nth-of-type(5){--k: 240ms}.hw-base{transform-box: fill-box;transform-origin: 0 50%;animation: hw-trame 650ms var(--ease) both;animation-delay: var(--d, 0ms)}.hw-thread{stroke-dasharray: 1;stroke-dashoffset: 0;animation: hw-fil 900ms var(--ease) both;animation-delay: calc(var(--d, 0ms) + 120ms + var(--k, 0ms))}}@keyframes hw-trame{from{transform: scaleX(0);opacity: 0;}}@keyframes hw-fil{from{stroke-dashoffset: 1;}}}
@media print{.hero-weave{display: none !important}}
@layer pages{.page-home .feed .feed-grid{grid-template-columns: minmax(0, 1fr);gap: var(--s-6)}.page-home .feed .feed-card{background: none;border: 0;border-radius: 0;overflow: visible;box-shadow: none;gap: var(--s-4)}.page-home .feed .feed-card:hover{box-shadow: none}.page-home .feed .feed-card-body{padding: 0;gap: var(--s-2)}.page-home .feed .feed-arrow{display: none}.page-home .feed .feed-card-media{border-radius: var(--r-md)}.page-home .feed .feed-title a{background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat;transition: background-size var(--t-med) var(--ease)}.page-home .feed .feed-card:hover .feed-title a, .page-home .feed .feed-card:focus-within .feed-title a{background-size: 100% 1px}.page-home .feed .feed-author{margin-top: var(--s-1)}.page-home .feed .feed-card:first-child .feed-card-media{aspect-ratio: 16 / 9;border-radius: var(--r-lg)}.page-home .feed .feed-card:first-child .feed-title{font-size: clamp(1.45rem, 1.1rem + 1.1vw, 2.15rem);line-height: 1.15;max-width: 26ch}.page-home .feed .feed-card:first-child .feed-dek{display: -webkit-box;-webkit-line-clamp: 3;line-clamp: 3;-webkit-box-orient: vertical;overflow: hidden}.page-home .feed .feed-card:not(:first-child){display: grid;grid-template-columns: clamp(6.5rem, 4.5rem + 6vw, 11rem) minmax(0, 1fr);align-items: start;gap: var(--s-4)}.page-home .feed .feed-card:not(:first-child) .feed-card-media{aspect-ratio: 4 / 3}.page-home .feed .feed-card:not(:first-child) .pub-cover-label{display: none}.page-home .feed .feed-card:not(:first-child) .feed-title{font-size: clamp(1.02rem, 0.95rem + 0.3vw, 1.2rem);line-height: 1.3}@media (min-width: 1000px){.page-home .feed .feed-grid{grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);column-gap: clamp(2.5rem, 1rem + 4vw, 6rem);row-gap: var(--s-5);align-items: start}.page-home .feed .feed-card:first-child{grid-row: 1 / span 4}}}
:root .impact-card--dark .hx-pic{--hx-e0: var(--brin-clair);--hx-s1: var(--craie);--hx-jour: var(--encre)}
:root .impact-card--red .hx-pic{--hx-e0: var(--encre);--hx-s1: var(--craie);--hx-m0: #6E0C3F;--hx-jour: var(--rouge)}
@layer utilities{@media (prefers-reduced-motion: no-preference){@supports (animation-timeline: view()){.impact-icon{view-timeline: --picto block}.impact-icon :is(.a-gy, .a-gx, .a-s, .a-t){transform-box: fill-box;animation-timing-function: linear;animation-fill-mode: both;animation-timeline: --picto;animation-range: entry calc(10% + var(--i, 0) * 6%) cover calc(28% + var(--i, 0) * 4%)}.impact-icon .a-gy{animation-name: hx-gy}.impact-icon .a-gx{animation-name: hx-gx}.impact-icon .a-s{animation-name: hx-glisse}.impact-icon .a-t{animation-name: hx-trace;stroke-dasharray: 1 2}.impact-icon .ob{transform-origin: center bottom}.impact-icon .ot{transform-origin: center top}.impact-icon .ol{transform-origin: left center}.impact-icon .dl{--hx-dx: -14px}.impact-icon .dr{--hx-dx: 14px}.impact-icon .i1{--i: 1}.impact-icon .i2{--i: 2}.impact-icon .i3{--i: 3}.impact-icon .i4{--i: 4}.impact-icon .i5{--i: 5}.impact-icon .i6{--i: 6}}}}
@layer pages{.ip-chiffres .stat-stack-num{color: var(--tone-text, var(--fg));font-variant-numeric: tabular-nums}}
