/* Ghost Form · L’ombre prend forme. Sculpture, architecture et contraste. */
.experience { background:#08090b; --papier:#08090b; --encre:#f1efe9; --encre-douce:#b9b8b3; --ocre:#d1c3b2; --filet:#303034; --filet-fort:#48484e; }
.experience .entete { position:absolute; inset:0 0 auto; z-index:8; padding:1.5rem 4.5vw; border:0; }
.marque__mot { letter-spacing:-.065em; }
.experience .marque__mot { font-size:1.35rem; }
.marque__mot > span { font-weight:400; }
.experience .entete__nav { gap:2rem; font-size:.72rem; }
.experience .entete__espace { border:1px solid #646469; border-radius:100px; padding:.65rem 1.2rem; color:#f1efe9!important; }
.hero-ghost { position:relative; isolation:isolate; min-height:900px; min-height:max(820px,100svh); padding:8.5rem 4.5vw 3rem; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; }
.hero-ghost__fond { position:absolute; inset:0; z-index:-3; overflow:hidden; background:radial-gradient(ellipse at 70% 40%,#303035 0%,#111216 33%,#08090b 70%); }
.hero-ghost__fond::after { content:''; position:absolute; inset:0; background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#b3b3bb0a calc(25% - 1px),#b3b3bb0a 25%); }
.orbite { position:absolute; right:2%; top:17%; width:58%; aspect-ratio:1; border:1px solid #85848e22; border-radius:50%; transform:rotate(-25deg) scaleY(.63); }
.orbite--b { transform:rotate(55deg) scaleY(.68); }
.ligne-horizon { position:absolute; top:53%; left:0; right:0; border-top:1px solid #85848e17; }
.hero-ghost__haut { display:flex; justify-content:space-between; align-items:start; position:relative; z-index:2; }
.hero-ghost__haut .repere { font-size:.64rem; color:#c9c8c3; letter-spacing:.12em; line-height:1.8; }
.hero-ghost__edition { font-size:.58rem; text-align:right; letter-spacing:.1em; color:#adadb2; line-height:1.8; }
.titre-ghost { position:relative; z-index:1; font:600 clamp(7rem,15.6vw,20rem)/.76 var(--sans); letter-spacing:-.095em; margin:2rem 0 3rem -.075em; text-wrap:initial; width:max-content; max-width:100%; pointer-events:none; }
.titre-ghost > span { display:block; }
.titre-ghost > span:first-child { color:#f1efe9; }
.titre-ghost__forme { position:relative; margin-top:.18em; color:transparent; -webkit-text-stroke:1px #f1efe9a6; }
.titre-ghost__point { position:absolute; left:100%; top:.1em; font-size:.25em; letter-spacing:0; padding-left:.3em; color:#da2e21; -webkit-text-stroke:0; }
.apparition { position:absolute; z-index:0; width:62%; height:115%; right:-4%; top:-6%; pointer-events:none; }
.apparition canvas, .apparition__repli { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
.apparition canvas { opacity:0; transition:opacity 1s; }
.apparition canvas.forme-prete { opacity:1; }
.apparition:has(.forme-prete) .apparition__repli { opacity:0; }
.hero-ghost__bas { display:grid; grid-template-columns:1fr auto; gap:3rem; position:relative; z-index:2; align-items:end; }
.hero-manifeste { font:600 clamp(1.4rem,2.2vw,2.3rem)/1.2 var(--sans); letter-spacing:-.045em; margin-bottom:1.1rem; max-width:32rem; }
.hero-manifeste span { color:#b2b0ab; }
.hero-ghost__description { font-size:.78rem; color:#b9b8b3; line-height:1.7; margin:0; }
.hero-ghost__conversion { width:19rem; padding-bottom:.2rem; }
.hero-ghost__conversion > p { font-size:.62rem; color:#b9b8b3; margin:.8rem 0 1.6rem; }
.experience .bouton--signal { border-radius:100px; padding:1.05rem 1.5rem; font-size:.8rem; background:#b51b10; border:1px solid #eb4a3a; min-width:16rem; box-shadow:inset 0 1px 0 #ffffff25; }
.experience .bouton--signal span { font-size:1.4rem; font-weight:400; line-height:.6; }
.experience .bouton--signal:hover { background:#d22b1c; }
.explorer { display:flex; justify-content:space-between; padding:.6rem 0; color:#c9c8c3; text-decoration:none; border-bottom:1px solid #646469; font-size:.68rem; }
.animation-controle { position:absolute; right:4.5vw; top:8.5rem; z-index:3; border:0; border-bottom:1px solid #646469; background:#08090b90; color:#b9b8b3; padding:.45rem 0; font:400 .6rem/1.5 var(--sans); cursor:pointer; }
.animation-controle span { margin-left:.8rem; color:#eee; }
.hero-ghost__edition { padding-top:3rem; }
.interlude { overflow:hidden; border-block:1px solid #35353b; padding:1.3rem 0; background:#0d0e11; }
.interlude > div { white-space:nowrap; display:inline-block; font:600 clamp(1.1rem,2.2vw,2rem)/1.1 var(--sans); letter-spacing:-.04em; color:#bfbeb8; }
.interlude span { color:#d42a1c; padding:0 3vw; }
.experience .reperes-cycle { padding:2rem 4.5vw; background:#08090b; }
.experience .reperes-cycle strong { font-size:1.9rem; }
.experience .section-v3 { padding:7rem 6vw; }
.experience .situations-v3 { display:block; padding-top:8rem; padding-bottom:8rem; position:relative; background:#0d0e11; }
.situations-intro { display:grid; grid-template-columns:1fr 1.15fr; align-items:end; gap:0 4rem; margin-bottom:4.5rem; }
.situations-intro .repere { grid-column:1/-1; }
.experience .situations-intro h2 { font:600 clamp(3rem,6.8vw,7.5rem)/.98 var(--sans); letter-spacing:-.07em; margin:0; }
.situations-intro h2 span { color:#85858a; }
.situations-intro > p:last-child { padding-bottom:.5rem; color:#b9b8b3; font-size:.9rem; }
.situations-scene { display:grid; grid-template-columns:.85fr 1.15fr; gap:4rem; }
.situations-choix { border-top:1px solid #4e4e54; align-self:center; }
.situations-choix > a { display:flex; align-items:center; gap:1.5rem; padding:1.6rem .8rem; border-bottom:1px solid #343439; color:#a6a5a4; text-decoration:none; font-size:clamp(.95rem,1.6vw,1.45rem); letter-spacing:-.04em; transition:color .25s,padding .25s,background .25s; }
.situations-choix > a > span:first-child { font-size:.6rem; letter-spacing:0; color:#a8a8ae; }
.situations-choix > a > span:last-child { margin-left:auto; opacity:.5; }
.situations-choix > a[aria-selected="true"], .situations-choix > a:hover { color:#f1efe9; padding-left:1.5rem; background:linear-gradient(90deg,#ffffff07,transparent); }
.situations-choix > a[aria-selected="true"] { border-bottom:1px solid #bb392e; }
.situations-choix > a[aria-selected="true"] > span:last-child { color:#ed5848; opacity:1; }
.situations-panels { position:relative; overflow:hidden; border:1px solid #3e3e46; border-radius:2px 3.5rem 2px 2px; background:radial-gradient(ellipse at 100% 0,#38373b,#15161a 65%); min-height:29rem; }
.situation-panel { position:relative; padding:3rem 2.8rem; z-index:1; }
.situation-panel .repere { margin-bottom:3rem; color:#c9c8c3; }
.situation-panel h3 { font:600 clamp(2rem,3.7vw,4rem)/1.03 var(--sans); letter-spacing:-.065em; margin-bottom:1.5rem; }
.situation-panel > p:not(.repere) { max-width:25rem; font-size:.83rem; color:#b9b8b3; line-height:1.8; }
.situation-panel .lien-simple { font-size:.75rem; margin-top:1rem; }
.scene-dessin { position:absolute; right:-15%; top:-28%; width:65%; aspect-ratio:1; transform:rotate(-30deg); opacity:.32; }
.scene-dessin i { position:absolute; inset:0; border:1px solid #aaa9ad; border-radius:50%; }
.scene-dessin i:nth-child(2) { transform:scaleX(.7); }
.scene-dessin i:nth-child(3) { transform:scaleX(.4); }
.scene-dessin i:nth-child(4) { transform:scaleY(.5); }
.scene-dessin > span { position:absolute; inset:0; display:grid; place-items:center; font:400 13rem/1 var(--sans); color:#e7e3dc; transform:rotate(30deg); }
.experience .regard-v3 { background:#dfdcd3; color:#18191c; position:relative; gap:5rem; padding-block:8rem; }
.experience .regard-v3 .repere, .experience .regard-v3 .section-v3__intro > p:not(.repere), .experience .regard-v3 .lectures p { color:#4b4a48; }
.experience .regard-v3 h2 { font:600 clamp(3rem,6.5vw,7rem)/.98 var(--sans); letter-spacing:-.07em; margin-bottom:2rem; }
.experience .regard-v3 h2 > span { color:#78766f; }
.experience .regard-v3 .lien-simple { color:#18191c; border-color:#97948c; }
.experience .regard-v3 .lectures { align-self:center; }
.experience .regard-v3 .lectures details { border-color:#aaa69e; padding:1.4rem 0; }
.experience .regard-v3 .lectures summary { color:#59544c; font-size:.65rem; }
.experience .regard-v3 .lectures summary span { color:#18191c; font-size:1.5rem; }
.experience .regard-v3 .lectures strong { color:#18191c; }
.experience .regard-v3 :focus-visible { outline-color:#18191c; }
.presence-cinema { position:relative; isolation:isolate; min-height:1050px; min-height:max(900px,110svh); padding:7rem 6vw 4rem; overflow:hidden; background:#060606; }
.presence-cinema__photo { position:absolute; z-index:-2; width:65%; height:100%; top:0; right:-5%; }
.presence-cinema__photo img { width:100%; height:100%; object-fit:cover; object-position:50% 22%; }
.presence-cinema__photo::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#060606,transparent 52%),linear-gradient(0deg,#060606,transparent 40%); }
.presence-cinema__lettres { position:absolute; z-index:-1; bottom:1rem; left:2%; font:600 23vw/.8 var(--sans); letter-spacing:-.095em; -webkit-text-stroke:1px #ffffff1c; color:transparent; pointer-events:none; }
.presence-cinema__contenu { max-width:55%; }
.presence-cinema .repere { color:#c4b6a5; }
.presence-cinema h2 { font:600 clamp(3rem,6.1vw,7rem)/1 var(--sans); letter-spacing:-.07em; margin-bottom:3rem; }
.presence-cinema h2 > span { color:#b7b3ab; }
.presence-cinema__texte { max-width:26rem; }
.presence-cinema__texte p { font-size:.85rem; color:#b9b8b3; }
.presence-cinema__texte .lien-simple { font-size:.72rem; margin-top:.5rem; }
.presence-cinema__signature { display:block; padding-top:5rem; color:#aaa9a6; font-size:.55rem; letter-spacing:.14em; }
.experience .cycle-v3 { position:relative; isolation:isolate; background:#9b170f; background:linear-gradient(130deg,#ba2418,#90150f 85%); color:#fff7ed; padding:7rem 6vw; overflow:hidden; grid-template-columns:1fr 1.05fr; gap:4rem; --filet:#f5dbca30; --filet-fort:#f5dbca60; --ocre:#fff0dc; --encre:#fff7ed; --encre-douce:#f4ddd0; }
.cycle-fantome { position:absolute; z-index:-1; left:-4vw; bottom:-2vw; font:600 47vw/.8 var(--sans); letter-spacing:-.11em; color:transparent; -webkit-text-stroke:1px #ffe3d620; pointer-events:none; }
.experience .cycle-v3 h2 { font:600 clamp(3.5rem,6.7vw,7.4rem)/.95 var(--sans); letter-spacing:-.075em; }
.experience .cycle-v3 .repere { color:#f8e4d4; }
.experience .cycle-v3 .section-v3__intro > p:not(.repere) { color:#f4ddd0; font-size:.85rem; }
.experience .cycle-v3 .cycle-v3__prix strong { font-size:5rem; }
.experience .cycle-v3 .cycle-v3__prix span { color:#f4ddd0; }
.experience .cycle-v3 .bouton--signal { background:#f1efe9; color:#68110c; border-color:#f1efe9; box-shadow:none; }
.experience .cycle-v3 .bouton--signal:hover { background:#fff; }
.experience .cycle-v3__etapes { align-self:center; background:#1a030424; border:1px solid #e5b5a442; padding:1rem 2rem; backdrop-filter:blur(12px); }
.experience .cycle-v3__etapes li { padding:2rem 0; }
.experience .cycle-v3__etapes li:first-child { border:0; }
.experience .cycle-v3__etapes h3 { font-size:1.55rem; }
.experience .cycle-v3__etapes p:not(.repere) { color:#f4ddd0; }
.experience .cadre-v3 p, .experience .cadre-v3 strong { color:#f4ddd0; }
.experience .cycle-v3 :focus-visible { outline-color:#fff7ed; }
.experience .questions { background:#0d0e11; padding-block:8rem; grid-template-columns:1fr 1.05fr; gap:4rem; }
.experience .questions h2 { font:600 clamp(3.5rem,6.5vw,7rem)/.98 var(--sans); letter-spacing:-.07em; }
.experience .faq summary { padding-block:1.1rem; font-size:.9rem; }
.experience .ouverture-liste { position:relative; padding-block:6rem; background:#dfdcd3; color:#18191c; }
.experience .ouverture-liste h2 { font:600 clamp(3rem,6.3vw,7rem)/1 var(--sans); letter-spacing:-.07em; }
.experience .ouverture-liste > p, .experience .ouverture-liste .repere { color:#4b4a48; }
.experience .ouverture-liste .liste-form { max-width:44rem; }
.experience .ouverture-liste input { color:#18191c; background:#ffffff35; border-color:#77736c; }
.experience .ouverture-liste .bouton--second { color:#18191c; border-color:#77736c; }
.experience .ouverture-liste .bouton--second:hover { background:#cbc6bb; }
.experience .ouverture-liste a { color:#4e3527; }
.experience .ouverture-liste :focus-visible { outline-color:#18191c; }
.experience .pied { background:#08090b; padding:3rem 6vw; }
.experience .pied::before { content:'GHOST FORM'; display:block; font:600 clamp(3rem,12.9vw,16rem)/1 var(--sans); letter-spacing:-.09em; color:#79797e; margin-bottom:3rem; }
.revelation { opacity:0; transform:translateY(2.5rem); transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1); }
.revelation.est-visible { opacity:1; transform:none; }
@media(min-width:1700px){.hero-ghost { padding-top:10rem; }.titre-ghost { font-size:15vw; }.hero-ghost__bas { margin-top:3rem; }}
@media(max-width:1000px){
.hero-ghost { min-height:900px; padding-top:8rem; }.titre-ghost { font-size:17vw; margin-top:3rem; }.apparition { width:72%; right:-10%; top:0;height:90%; }
.hero-ghost__bas { margin-top:8rem; gap:2rem; }.hero-ghost__conversion { width:17rem; }.hero-manifeste { font-size:1.8rem; }
.situations-scene { gap:2rem; }.situation-panel { padding:2.5rem 2rem; }.situation-panel h3 { font-size:2.6rem; }
.experience .regard-v3 { gap:3rem; }.presence-cinema__photo { width:80%;right:-15%; }.presence-cinema { min-height:850px; }.presence-cinema h2 { font-size:5.7vw; }
.experience .cycle-v3 { gap:3rem; }.experience .cycle-v3__etapes { padding-inline:1.2rem; }.experience .cycle-v3__etapes h3 { font-size:1.2rem; }
}
@media(max-width:700px){
.experience .entete { padding:1.25rem 1.25rem; }.experience .entete__nav { gap:1rem;font-size:.65rem; }.experience .marque__mot { font-size:1.1rem; }.experience .entete__espace { padding:.4rem .7rem; }
.hero-ghost { min-height:980px; min-height:max(940px,100svh); padding:7rem 1.25rem 2.5rem; }
.hero-ghost__haut .repere { font-size:.54rem; margin:0; }.hero-ghost__edition { display:none; }
.titre-ghost { font-size:24.5vw; margin:3rem 0 auto -.065em; line-height:.8; }.titre-ghost__forme { margin-top:.13em; }
.apparition { width:107%; right:-12%; top:14%; height:60%; }
.orbite { width:105%; top:25%; right:-15%; }.ligne-horizon { top:45%; }
.hero-ghost__bas { display:block; margin-top:20rem; }.hero-manifeste { font-size:1.6rem;max-width:24rem; }.hero-ghost__description { font-size:.78rem; }
.hero-ghost__conversion { margin-top:1.8rem; width:100%; }.hero-ghost__conversion .bouton--signal { width:100%; }.hero-ghost__conversion > p { margin-bottom:1rem; }.explorer { font-size:.68rem; }
.animation-controle { top:6.7rem;right:1.25rem;font-size:0; padding:.5rem;border:1px solid #646469;border-radius:50%;width:2rem;height:2rem; }.animation-controle span { font-size:.85rem; margin:0; }
.interlude { padding:1rem 0; }.interlude > div { font-size:1rem; }.interlude span { padding:0 1rem; }
.experience .reperes-cycle { padding:1.8rem 1.25rem; }.experience .reperes-cycle strong { font-size:1.6rem; }
.experience .section-v3 { padding:4.5rem 1.25rem; }
.situations-intro { display:block; margin-bottom:2.5rem; }.experience .situations-intro h2 { font-size:3.5rem; margin-bottom:1.8rem; }.situations-intro > p:last-child { font-size:.82rem; }
.situations-scene { display:block; }.situations-choix > a { font-size:1.08rem;padding:1.2rem .4rem; }.situations-choix > a[aria-selected="true"] { padding-left:.8rem; }
.situations-panels { margin-top:2rem; min-height:27rem; border-top-right-radius:3rem; }.situation-panel { padding:2rem 1.5rem; }.situation-panel .repere { margin-bottom:2.5rem; }.situation-panel h3 { font-size:2.7rem; }.situation-panel > p:not(.repere) { font-size:.8rem; }
.experience .regard-v3 { display:block; }.experience .regard-v3 h2 { font-size:3.6rem; }.experience .regard-v3 .section-v3__intro > p:not(.repere) { font-size:.85rem; }.experience .regard-v3 .lectures { margin-top:3rem; }
.presence-cinema { padding:4rem 1.25rem 3rem; min-height:1150px; display:flex; align-items:end; }.presence-cinema__photo { width:130%;height:67%;top:0;right:-25%; }.presence-cinema__photo::after { background:linear-gradient(0deg,#060606,transparent 57%),linear-gradient(90deg,#06060655,transparent); }.presence-cinema__contenu { max-width:none; position:relative; padding-top:30rem; }.presence-cinema h2 { font-size:3.3rem; max-width:22rem; margin-bottom:2rem; }.presence-cinema__texte { max-width:25rem; }.presence-cinema__lettres { bottom:30%; font-size:28vw;left:-1%; }.presence-cinema__signature { display:none; }
.experience .cycle-v3 { display:block; }.experience .cycle-v3 h2 { font-size:4.3rem; }.experience .cycle-v3 .cycle-v3__prix strong { font-size:4rem; }.experience .cycle-v3__etapes { margin-top:3rem;padding:1rem 1.2rem; }.experience .cycle-v3__etapes h3 { font-size:1.35rem; }.experience .cycle-v3 .cadre-v3 { margin-top:2rem; }.cycle-fantome { font-size:115vw;bottom:3rem; }
.experience .questions { display:block; }.experience .questions h2 { font-size:3.6rem;margin-bottom:2rem; }.experience .faq summary { font-size:.85rem; }
.experience .ouverture-liste h2 { font-size:3.2rem; }.experience .pied { padding:2rem 1.25rem; }.experience .pied::before { font-size:12.2vw; margin-bottom:2rem; }
}
@media(max-width:359px){.hero-ghost { min-height:970px; }.hero-manifeste {font-size:1.4rem;}.hero-ghost__bas {margin-top:17rem;}.experience .situations-intro h2{font-size:3rem;}.situation-panel h3{font-size:2.3rem;}.experience .regard-v3 h2{font-size:3.1rem;}.presence-cinema h2{font-size:2.8rem;}.experience .cycle-v3 h2{font-size:3.8rem;}.experience .ouverture-liste h2{font-size:2.8rem;}}
@media(prefers-reduced-motion:reduce){.revelation {opacity:1;transform:none;}.apparition canvas {transition:none;}}
/* Entrée de la typographie et lumière contenue dans la scène. */
.apparition { top:0; height:100%; }
.experience .entete__nav { background:#08090bde; border:1px solid #ffffff0a; border-radius:100px; padding:.45rem .6rem .45rem 1.4rem; }
.titre-ghost > span:first-child { animation:arrivee-ghost 1.1s cubic-bezier(.2,.7,.2,1) both; }
.titre-ghost__forme { animation:arrivee-ghost 1.3s .1s cubic-bezier(.2,.7,.2,1) both; }
@keyframes arrivee-ghost { from { clip-path:inset(100% 0 0); transform:translateY(.2em); } to { clip-path:inset(-10% -30% -10% -10%); transform:none; } }
@media(max-width:700px){.apparition {top:15%;height:58%;}.experience .entete__nav {padding:.2rem .3rem .2rem .8rem;gap:.8rem;}}
.apparition canvas, .apparition__repli { mask-image:linear-gradient(#000 78%,transparent 100%); }
.hero-ghost__bas > div:first-child { background:linear-gradient(90deg,#08090be8,transparent); }
@media(max-width:700px){.hero-ghost { min-height:max(860px,100svh); }.hero-ghost__bas { margin-top:13rem; }.apparition {top:15%;height:59%;}}
.situation-panel:not([hidden]) { animation:scene-ghost .45s ease both; }
@keyframes scene-ghost { from {opacity:.25;transform:translateY(.8rem)} to {opacity:1;transform:none} }

/* Pictogrammes dessinés, jamais de caractères emoji. */
.icone-motion{width:1.1em;height:1.1em;display:inline-block;vertical-align:middle;margin-left:.5em}
.animation-controle{min-height:44px}
@media(max-width:700px){.experience .animation-controle{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}.animation-controle .icone-motion{width:16px;height:16px;margin:0}}
