@font-face{font-family:PontanoFallback;src:local("Arial");size-adjust:99%}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f1f0ea;color:#16201f;font-family:"Pontano Sans",PontanoFallback,sans-serif;font-size:clamp(17px,1.25vw,19px);line-height:1.62;-webkit-font-smoothing:antialiased}body::selection{background:#d8aa42;color:#101413}a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip{position:fixed;z-index:999;top:.6rem;left:.6rem;padding:.7rem 1rem;background:#fff;transform:translateY(-150%)}.skip:focus{transform:none}.header{position:absolute;z-index:30;top:0;left:0;width:100%;color:#f5f2e9}.nav{height:96px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.13)}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-size:1rem;line-height:1.1}.brand img{width:42px;height:42px;object-fit:contain;background:#050606}.brand small{display:block;margin-top:.3rem;color:#cdbd91;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase}.links{display:flex;align-items:center;gap:clamp(1rem,2.3vw,2rem)}.links a{font-size:.8rem;text-decoration:none;letter-spacing:.05em}.links a:hover{color:#e4bd5d}.links .talk{padding:.55rem 1rem;border:1px solid rgba(255,255,255,.35);border-radius:99px}.menu{display:none;border:0;background:transparent;color:inherit}.chapter{position:relative;padding:clamp(6rem,10vw,9rem) 0}.chapter-no,.kicker,.project-code{margin:0 0 1.5rem;color:#987222;font-size:.68rem;font-weight:650;letter-spacing:.18em;text-transform:uppercase}.chapter-no{display:flex;gap:1rem;align-items:center}.chapter-no::after{content:"";width:44px;height:1px;background:currentColor;order:-1}.chapter-no span{color:inherit;opacity:.7}.section-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr);gap:clamp(3rem,8vw,8rem);align-items:end;margin-bottom:clamp(3rem,6vw,5rem)}h1,h2,h3{margin-top:0;font-weight:480;letter-spacing:-.035em;text-wrap:balance}h1{font-size:clamp(3.8rem,6.2vw,4.5rem);line-height:.96}h2{font-size:clamp(2.4rem,4vw,3.1rem);line-height:1.06}h3{font-size:clamp(1.45rem,2.2vw,2rem);line-height:1.15}.lead{font-size:clamp(1.2rem,1.7vw,1.45rem);line-height:1.45;color:#4a5552}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:.72rem 1.15rem;border:1px solid #a77d24;border-radius:3px;background:transparent;color:inherit;font:inherit;font-size:.82rem;text-decoration:none;cursor:pointer}.button.primary{background:#dcb24e;border-color:#dcb24e;color:#101413}.button.outline{border-color:#777;color:#f1f0ea}.text-link{text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.2rem;font-size:.86rem}.text-link span{margin-left:.5rem}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.4rem;margin-top:2rem}
.hero{min-height:100svh;padding:130px 0 50px;overflow:hidden;background:#091211;color:#e9e9e2}.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 38%,rgba(217,172,68,.12),transparent 25%),linear-gradient(100deg,#08110f 0 55%,#131b19 55% 100%)}.hero::after{content:"";position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to right,transparent 5%,#000 80%)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;min-height:calc(100svh - 180px);gap:clamp(2rem,5vw,6rem)}.hero h1{margin:.25rem 0 1.6rem;color:#e5ba52}.hero .kicker{margin-bottom:.5rem;color:#aaa89e}.hero-lead{max-width:600px;margin:0 0 1.35rem;font-size:clamp(1.45rem,2.25vw,1.9rem);line-height:1.3}.hero-copy>p:not(.chapter-no,.kicker,.hero-lead){max-width:610px;color:#aeb5b1}.portrait-scene{position:relative;align-self:end;min-height:min(72vh,740px)}.portrait{position:absolute;z-index:2;right:-4%;bottom:0;width:min(100%,680px);aspect-ratio:1;object-fit:cover;object-position:center;border-radius:50% 50% 5px 5px;filter:saturate(.78) contrast(1.04)}.portrait-scene::after{content:"";position:absolute;z-index:3;inset:auto -5% -1px 0;height:35%;background:linear-gradient(transparent,#091211)}.portrait-halo{position:absolute;z-index:1;right:-4%;bottom:6%;width:96%;aspect-ratio:1;border:1px solid rgba(229,186,82,.24);border-radius:50%;box-shadow:0 0 100px rgba(229,186,82,.08)}.info-fragments{position:absolute;z-index:4;inset:0;pointer-events:none}.fragment{position:absolute;padding:.35rem .55rem;border:1px solid rgba(255,255,255,.18);background:rgba(7,15,14,.68);backdrop-filter:blur(8px);color:#c7cbc7;font-size:.61rem;letter-spacing:.1em;text-transform:uppercase;opacity:0;animation:fragmentIn 1s ease forwards}.f1{top:20%;left:1%;animation-delay:.5s}.f2{top:10%;right:0;animation-delay:1s}.f3{top:55%;left:-4%;animation-delay:1.5s}.f4{top:46%;right:-4%;animation-delay:2s}.info-fragments svg{position:absolute;inset:0;width:100%;height:100%}.info-fragments path{fill:none;stroke:rgba(229,186,82,.28);stroke-width:1;stroke-dasharray:5 8;animation:dash 16s linear infinite}.portrait-caption{position:absolute;z-index:5;bottom:2rem;right:0;margin:0;padding-left:1rem;border-left:1px solid #dcb24e;color:#ddd;font-size:.78rem}.portrait-caption span{display:block;color:#9b9f9c;font-size:.58rem;letter-spacing:.14em;text-transform:uppercase}.scroll-cue{position:absolute;z-index:5;left:50%;bottom:1.2rem;display:flex;align-items:center;gap:.7rem;color:#777f7b;font-size:.6rem;letter-spacing:.15em;text-decoration:none;text-transform:uppercase;transform:translateX(-50%)}.scroll-cue i{display:block;width:30px;height:1px;background:#dcb24e}@keyframes fragmentIn{to{opacity:1;transform:translateY(-8px)}}@keyframes dash{to{stroke-dashoffset:-130}}
.knowledge{overflow:hidden;background:#f3f1ea}.knowledge-stage{position:relative;height:510px;margin:0 0 5rem;border-top:1px solid #c7c5bb;border-bottom:1px solid #c7c5bb}.raw-data{position:absolute;inset:0}.raw-data span{position:absolute;left:var(--x);top:var(--y);padding:.4rem .65rem;border:1px solid #c8c2b4;border-radius:30px;background:#f3f1ea;color:#5a625f;font-size:.7rem;transition:1.2s cubic-bezier(.2,.7,.2,1)}.raw-data svg{width:100%;height:100%}.raw-data path{fill:none;stroke:#c1aa70;stroke-width:1;stroke-dasharray:2 7;opacity:.5;transition:1.2s}.knowledge-core{position:absolute;z-index:2;top:50%;left:50%;display:grid;width:240px;height:240px;place-content:center;border:1px solid rgba(199,154,47,.7);border-radius:50%;background:#15201e;color:#eee;text-align:center;transform:translate(-50%,-50%) scale(.65);opacity:.2;transition:1.4s}.knowledge-core::before{content:"";position:absolute;inset:-14px;border:1px dashed rgba(199,154,47,.45);border-radius:50%}.knowledge-core span{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}.knowledge-core strong{color:#e4b94e;font-size:1.8rem;font-weight:500}.knowledge-core small{color:#9ea6a1}.process{position:absolute;z-index:3;bottom:-1.3rem;left:50%;display:flex;gap:.5rem;margin:0;padding:0;list-style:none;transform:translateX(-50%)}.process li{min-width:116px;padding:.65rem .8rem;background:#f3f1ea;border:1px solid #c7c5bb;font-size:.7rem;text-align:center}.process b{margin-right:.5rem;color:#a57920}.knowledge-stage.is-active .knowledge-core{opacity:1;transform:translate(-50%,-50%) scale(1)}.knowledge-stage.is-active .raw-data span{left:calc(50% - 40px);top:calc(50% - 15px);opacity:.05}.knowledge-stage.is-active .raw-data path{opacity:.08}.definition{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:end;margin:0;padding:clamp(2rem,5vw,4rem);border-left:3px solid #c8982e;background:#e6e2d7;font-style:normal}.definition p{max-width:850px;margin:0;font-size:clamp(1.35rem,2.3vw,1.9rem);line-height:1.45}.definition strong{color:#916716}
.lab{overflow:hidden;background:#111817;color:#dce1dd}.lab::before{content:"LAB / 03";position:absolute;top:4%;right:-1%;color:rgba(255,255,255,.025);font-size:clamp(8rem,18vw,18rem);line-height:1;font-weight:700}.lab-intro{display:grid;grid-template-columns:1fr 1.25fr;column-gap:6rem;align-items:start;margin-bottom:5rem}.lab-intro .chapter-no{grid-column:1/-1}.lab-overline{color:#dcb24e;font-size:1.3rem}.lab-intro h2{margin-bottom:1rem}.lab-intro h2 em{color:#dcb24e;font-style:normal}.lab-intro>p:last-child{color:#a7b0ac}.experiment-table{display:grid;grid-template-columns:1.15fr .85fr .7fr;grid-template-rows:320px 280px;gap:1px;background:#404845;border:1px solid #404845}.experiment{position:relative;overflow:hidden;padding:clamp(1.3rem,2.6vw,2.2rem);background:#17201e;transition:.45s}.experiment:hover,.experiment:focus-within{background:#1e2926}.experiment h3{position:relative;margin-bottom:.5rem;color:#f1f0ea}.experiment p{position:relative;max-width:420px;margin:0;color:#9aa6a1;font-size:.85rem}.experiment a{position:absolute;right:1.5rem;bottom:1.3rem;color:#e0b752;font-size:.75rem;text-decoration:none}.project-code{position:relative;z-index:2;color:#d0a849}.exp-memory{grid-row:1/3}.exp-influence{grid-column:2/4}.exp-observatory{grid-column:2/4}.exp-visual{position:absolute;inset:0;opacity:.55}.memory-visual{background:radial-gradient(circle at 70% 50%,rgba(214,171,68,.24),transparent 32%)}.memory-visual i{position:absolute;left:22%;width:62%;height:34%;border:1px solid rgba(225,188,95,.25);transform:rotate(-4deg)}.memory-visual i:nth-child(1){top:38%}.memory-visual i:nth-child(2){top:46%;left:27%;transform:rotate(3deg)}.memory-visual i:nth-child(3){top:54%;left:19%;transform:rotate(-1deg)}.network-visual{background:radial-gradient(circle at 75% 50%,rgba(82,155,137,.35),transparent 35%)}.network-visual i{position:absolute;width:10px;height:10px;border:2px solid #d4ac4e;border-radius:50%;box-shadow:0 0 0 7px rgba(212,172,78,.08)}.network-visual i:nth-child(1){top:25%;right:15%}.network-visual i:nth-child(2){top:62%;right:32%}.network-visual i:nth-child(3){top:35%;right:42%}.network-visual i:nth-child(4){top:67%;right:9%}.signal{position:absolute;right:5%;bottom:12%;width:55%;height:45%;background:repeating-linear-gradient(90deg,transparent 0 16px,rgba(220,178,78,.15) 17px 18px);clip-path:polygon(0 72%,8% 65%,16% 70%,27% 30%,40% 48%,51% 23%,65% 58%,77% 32%,90% 40%,100% 0,100% 100%,0 100%)}
.fields{background:#ece9e0}.field-list{border-top:1px solid #b9b6ad}.field-list article{display:grid;grid-template-columns:70px minmax(240px,.7fr) 1fr auto;gap:2rem;align-items:center;padding:2.1rem 0;border-bottom:1px solid #b9b6ad;transition:.3s}.field-list article:hover{padding-left:1rem;background:rgba(255,255,255,.32)}.field-list b{color:#ad8124;font-size:.7rem}.field-list h3{margin:0}.field-list p{margin:0;color:#58615e}.field-list span{color:#988568;font-size:.7rem;text-transform:uppercase;letter-spacing:.15em}
.journey{overflow:hidden;background:#1a2220;color:#ecede8}.journey-head{display:grid;grid-template-columns:1.2fr .8fr;gap:5rem}.journey-head .chapter-no{grid-column:1/-1}.journey-head h2 strong{display:block;color:#dfb34c;font-size:clamp(3.5rem,7vw,6rem);font-weight:450}.journey-head>p:last-child{color:#a6aeaa}.timeline{position:relative;margin:6rem 0 4rem}.timeline-track{position:absolute;top:8px;left:0;width:100%;height:1px;background:linear-gradient(90deg,#5e615d,#dbaf49)}.timeline ol{display:grid;grid-template-columns:repeat(6,1fr);margin:0;padding:0;list-style:none}.timeline li{position:relative;padding:2.2rem 1rem 0 0}.timeline li::before{content:"";position:absolute;top:2px;left:0;width:13px;height:13px;border:1px solid #dbaf49;border-radius:50%;background:#1a2220}.timeline li.current::before{background:#dbaf49;box-shadow:0 0 0 8px rgba(219,175,73,.12)}.timeline time{display:block;color:#d9af4d;font-size:.7rem}.timeline b{display:block;margin:.4rem 0;font-weight:500}.timeline span{display:block;color:#929b97;font-size:.7rem;line-height:1.4}
.thoughts{background:#f3f1ea}.editorial-list{border-top:1px solid #bbb8ae}.editorial-list article{display:grid;grid-template-columns:180px 1fr 250px;gap:2rem;padding:2.2rem 0;border-bottom:1px solid #bbb8ae}.editorial-list p,.editorial-list span{margin:0;color:#8d7651;font-size:.7rem}.editorial-list h3{margin:0;font-size:clamp(1.35rem,2.2vw,1.85rem)}.final{background:#d9b04d;color:#111817}.final-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,8vw,8rem)}.personal-sign{display:flex;align-items:center;gap:1rem;margin-top:3rem}.personal-sign img{width:74px;height:74px;border-radius:50%;object-fit:cover}.personal-sign p,.personal-sign span{display:block}.personal-sign span{font-size:.75rem}.contact-form{padding:clamp(1.5rem,4vw,3rem);background:#f2f0e9}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.field{display:grid;gap:.35rem}.field.full{grid-column:1/-1}.field label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.field input,.field textarea{width:100%;border:0;border-bottom:1px solid #aaa69d;background:transparent;padding:.7rem 0;font:inherit;color:#17201e}.field textarea{min-height:110px;resize:vertical}.field small{font-size:.7rem}.form-actions{margin-top:1.5rem}.status{font-size:.7rem;color:#59615e}.footer{padding:2.5rem 0;background:#0b1110;color:#a5ada9}.footer-grid{display:grid;grid-template-columns:1fr auto auto;gap:2rem;align-items:center;font-size:.75rem}.footer button{color:inherit;background:none;border:0;text-decoration:underline}.footer a{color:#d8b151}
[data-reveal]{opacity:1;transform:none;transition:opacity .8s,transform .8s}
@media(max-width:900px){.wrap{width:min(100% - 32px,760px)}.links{display:none}.menu{display:block}.links.open{position:absolute;top:82px;right:16px;display:grid;padding:1rem;background:#17201e}.hero-grid{grid-template-columns:1fr;padding-top:3rem}.hero-copy{max-width:650px}.portrait-scene{min-height:600px}.hero::before{background:#091211}.section-head,.lab-intro,.journey-head,.final-grid{grid-template-columns:1fr;gap:2rem}.lab-intro .chapter-no,.journey-head .chapter-no{grid-column:auto}.experiment-table{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,260px)}.exp-memory{grid-row:1/3}.exp-influence{grid-column:2}.exp-observatory{grid-column:1/3}.field-list article{grid-template-columns:45px 1fr}.field-list article p{grid-column:2}.field-list article span{display:none}.timeline{overflow-x:auto;padding-bottom:1rem}.timeline-track{width:900px}.timeline ol{width:900px}.editorial-list article{grid-template-columns:130px 1fr}.editorial-list span{grid-column:2}.definition{grid-template-columns:1fr}.knowledge-stage{height:470px}.process{width:100%;overflow:auto;justify-content:flex-start}}
@media(max-width:560px){.wrap{width:calc(100% - 28px)}.chapter{padding:5rem 0}h1{font-size:clamp(3.15rem,16vw,4rem)}h2{font-size:clamp(2.05rem,10vw,2.65rem)}.header .nav{height:76px}.hero{padding-top:88px}.hero-grid{min-height:auto}.hero .chapter-no span{display:none}.hero-lead{font-size:1.3rem}.portrait-scene{min-height:430px}.portrait{right:-18%;width:118%}.f2,.f4{display:none}.scroll-cue{display:none}.section-head{margin-bottom:2.5rem}.knowledge-stage{height:500px}.raw-data span{font-size:.58rem}.knowledge-core{width:190px;height:190px}.process{bottom:-1rem}.process li{min-width:100px}.definition{padding:1.5rem}.definition p{font-size:1.2rem}.experiment-table{display:block;background:none;border:0}.experiment{min-height:270px;border-bottom:1px solid #414a47}.exp-memory{min-height:410px}.field-list article{gap:1rem}.journey-head h2 strong{font-size:3.8rem}.editorial-list article{grid-template-columns:1fr;gap:.8rem}.editorial-list span{grid-column:auto}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-grid{grid-template-columns:1fr}.chapter-no{gap:.55rem}.chapter-no::after{width:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}.knowledge-core{opacity:1;transform:translate(-50%,-50%)}}

/* Navigation fixe, lisible sur les chapitres clairs comme sombres. */
.header{position:fixed;z-index:70;top:0;left:0;width:100%;color:#f5f2e9;background:rgba(7,15,14,.76);border-bottom:1px solid rgba(255,255,255,.13);box-shadow:0 18px 48px rgba(0,0,0,.42),0 3px 12px rgba(0,0,0,.28);-webkit-backdrop-filter:blur(18px) saturate(135%);backdrop-filter:blur(18px) saturate(135%)}
.header .nav{height:82px;border-bottom:0}
@media(max-width:560px){.header .nav{height:70px}}

/* Hero carré : la ruche comme métaphore discrète de la connaissance reliée. */
.hero{min-height:100svh;padding:118px 0 46px;background:#07110f}
.hero::before{background:radial-gradient(circle at 76% 44%,rgba(218,178,76,.12),transparent 28%),linear-gradient(105deg,#06100e 0 58%,#111a17 58% 100%)}
.hero::after{inset:0;opacity:1;background-color:transparent;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M42 1 83 24v24L42 71 1 48V24Z' fill='none' stroke='%23dcb24e' stroke-opacity='.105' stroke-width='.8'/%3E%3C/svg%3E");background-size:84px 72px;mask-image:radial-gradient(circle at 72% 45%,#000 0 24%,rgba(0,0,0,.72) 42%,transparent 76%)}
.hero-grid{grid-template-columns:minmax(0,.95fr) minmax(430px,560px);min-height:calc(100svh - 164px);gap:clamp(3rem,7vw,8rem)}
.hero-copy{position:relative;z-index:6;max-width:610px}
.portrait-scene{align-self:center;width:100%;min-height:0;aspect-ratio:1;margin:0 0 0 auto}
.portrait-scene::before{content:"";position:absolute;z-index:0;inset:22px -22px -22px 22px;border:1px solid rgba(222,181,80,.34);background:rgba(217,176,76,.025)}
.portrait-scene::after{z-index:3;inset:0;height:auto;background:linear-gradient(180deg,transparent 58%,rgba(5,12,10,.62) 100%);pointer-events:none}
.portrait{inset:0;width:100%;height:100%;aspect-ratio:1;border-radius:0;object-fit:cover;object-position:center;filter:saturate(.78) contrast(1.035)}
.portrait-halo{z-index:0;inset:-10px auto auto -10px;width:92px;height:92px;aspect-ratio:auto;border:1px solid rgba(229,186,82,.52);border-right:0;border-bottom:0;border-radius:0;box-shadow:none}
.info-fragments{inset:-22px}
.info-fragments svg{opacity:.55}
.fragment{background:rgba(6,14,12,.84);border-color:rgba(221,181,80,.26);backdrop-filter:blur(10px)}
.f1{top:18%;left:-3%}.f2{top:10%;right:-2%}.f3{top:68%;left:-5%}.f4{top:55%;right:-4%}
.portrait-caption{right:1.2rem;bottom:1.2rem}
.scroll-cue{bottom:.8rem}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;min-height:auto}.portrait-scene{width:min(100%,560px);min-height:0;margin:1rem auto 0}.hero::before{background:#07110f}.hero::after{mask-image:linear-gradient(to bottom,transparent 5%,#000 45%,transparent 100%)}}
@media(max-width:560px){.hero{padding-top:96px}.portrait-scene{width:calc(100% - 16px);min-height:0}.portrait{right:auto;width:100%;height:100%}.portrait-scene::before{inset:12px -12px -12px 12px}.info-fragments{inset:-10px}.f1,.f3{display:block}.fragment{font-size:.52rem}.portrait-caption{right:.8rem;bottom:.8rem}}

/* L’Observatoire forme le socle commun de toutes les expériences. */
.experiment-table{grid-template-rows:320px 280px 190px}
.exp-observatory{grid-column:1/-1;grid-row:3;display:flex;flex-direction:column;justify-content:center;padding-right:42%}
.exp-observatory .signal{right:3%;bottom:20%;width:38%;height:58%}
@media(max-width:900px){.experiment-table{grid-template-rows:repeat(3,260px) 190px}.exp-observatory{grid-column:1/3;grid-row:4;padding-right:36%}}
@media(max-width:560px){.experiment-table{display:block}.exp-observatory{display:flex;min-height:230px;padding-right:38%}.exp-observatory .signal{width:34%}}

/* Profondeur entre les chapitres sombres et les sections qui leur succèdent. */
.hero,.lab,.journey{z-index:2;box-shadow:0 26px 46px rgba(3,10,8,.34),0 8px 18px rgba(3,10,8,.22)}
.lab-link{display:inline-flex;align-items:center;gap:.65rem;margin-top:1.4rem;color:#ddb34d;text-decoration:none;border-bottom:1px solid rgba(221,179,77,.5);font-size:.78rem;letter-spacing:.05em}.lab-link:hover{color:#f0ca6b;border-bottom-color:currentColor}.lab-link span{font-size:.9rem}
