/* Maquettes D « Clarté », E « Sérénité », F « Portrait & vidéo » — palette de Michel (thème c) */
:root{--navy:#192c40;--navy-2:#14283b;--gold:#c6a04d;--gold-soft:#e6cf96;--paper:#faf8f3;--mist:#e9eff2;--mist-2:#dce5e9;--ink:#29343c}
.m-center{text-align:center}
.m-sec{padding:clamp(3.5rem,8vw,6rem) 0}
.m-sec--tint{background:var(--mist)}
.m-sec--warm{background:linear-gradient(180deg,#f3efe6,var(--paper))}
.m-kicker{font:600 .8rem "Inter",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-text);margin:0 0 .9rem}
.m-kicker--gold{color:var(--gold-soft)}
.m-note{font-size:.98rem;color:var(--muted);max-width:30rem;margin-top:1.1rem}
.m-link{font-weight:600;color:var(--navy);text-decoration:none;border-bottom:2px solid var(--gold);padding-bottom:.1rem}
.m-link--light{color:var(--paper)}
.m-sign p{font-family:"Lora",Georgia,serif;font-style:italic;font-size:1.1rem;color:var(--navy)}
.btn--pill{padding-inline:1.9rem;box-shadow:0 6px 18px rgba(198,160,77,.35)}
.btn--ghost.btn--pill,.btn--outline{box-shadow:none}
.btn--outline{background:transparent;color:var(--navy);border-color:var(--navy)}
.btn--outline:hover{background:var(--navy);color:var(--paper);border-color:var(--navy)}
.m-visual{display:grid;place-items:center;text-align:center;gap:.25rem;min-height:14rem;border:2px dashed var(--gold);border-radius:18px;background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(198,160,77,.12) 14px 28px);color:var(--muted);padding:1.5rem;font-size:.95rem}
.m-visual strong{font:600 .8rem "Inter";letter-spacing:.2em;color:var(--gold-text)}
.m-cover{display:grid;place-items:center;padding:1.2rem;background:linear-gradient(160deg,var(--mist-2),#fff);border-radius:18px}
.m-cover img{width:min(11rem,60%);height:auto;border-radius:6px;box-shadow:0 18px 40px rgba(25,44,64,.28)}
.m-prose p{font-size:1.1rem}

/* ============ D — Clarté ============ */
[data-model="d"] .d-hero{background:linear-gradient(180deg,#fff 0,var(--paper) 55%,var(--mist) 100%);padding:clamp(2.5rem,6vw,4.5rem) 0 0;overflow:hidden}
.d-hero__grid{display:grid;gap:1rem;align-items:end}
.d-hero__text{padding-bottom:clamp(2rem,6vw,5rem);align-self:center}
.d-hero h1{font:500 clamp(2.3rem,6.2vw,4.1rem)/1.08 "Lora",Georgia,serif;letter-spacing:-.015em;color:var(--navy);max-width:16ch;margin-bottom:.6em}
.d-hero p{max-width:32rem}
.d-hero__photo{position:relative;justify-self:center;width:min(100%,30rem)}
.d-halo{position:absolute;left:8%;right:8%;top:10%;bottom:-2%;border-radius:999px 999px 0 0;background:radial-gradient(circle at 50% 30%,rgba(198,160,77,.38),rgba(198,160,77,.05) 70%);z-index:0}
.d-portrait{position:relative;z-index:1;display:block;width:100%;height:auto;border-radius:999px 999px 0 0;-webkit-mask-image:linear-gradient(#000 88%,transparent);mask-image:linear-gradient(#000 88%,transparent)}
.d-band{background:var(--navy);color:var(--paper);padding:1.2rem 0}
.d-band p{margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.4rem;font:600 .95rem "Inter";letter-spacing:.04em}
.d-band i{color:var(--gold);font-style:normal}
.d-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:clamp(1.6rem,4vw,3rem)}
.d-card--wide h2{font:500 clamp(1.7rem,4vw,2.4rem)/1.15 "Lora",Georgia,serif;color:var(--navy);margin-bottom:1rem}
.d-card__cols{display:grid;gap:1.5rem}
.d-aside{border-left:3px solid var(--gold);padding-left:1.2rem;align-self:start}
.d-aside>p{font:italic 1.2rem/1.4 "Lora",Georgia,serif;color:var(--navy)}
.d-pillars{display:grid;gap:1.2rem;margin-top:2rem}
.d-pillar{background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:16px;padding:1.6rem;box-shadow:var(--shadow)}
.d-pillar__n{font:500 2.4rem "Lora",Georgia,serif;color:var(--gold)}
.d-pillar h3{margin:.3rem 0 .5rem;color:var(--navy)}
.d-parcours{display:grid;gap:2rem;align-items:center}
.d-portrait--sm{border-radius:22px;-webkit-mask-image:none;mask-image:none;max-width:22rem;margin-inline:auto;box-shadow:var(--shadow)}
.d-teasers{display:grid;gap:1.4rem}
.d-event{display:grid;gap:1.2rem;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:1.4rem;align-content:start}
.d-event h3{font:500 1.5rem/1.2 "Lora",Georgia,serif;color:var(--navy);margin:.2rem 0 .6rem}
.d-final{background:linear-gradient(135deg,var(--navy),#23415f);color:var(--paper);padding:clamp(3.5rem,8vw,5.5rem) 0}
.d-final .lead{font:italic clamp(1.4rem,3.6vw,2rem)/1.35 "Lora",Georgia,serif;max-width:34rem;margin-inline:auto;color:var(--paper)}
@media (min-width:60em){
  .d-hero__grid{grid-template-columns:1.1fr 1fr}
  .d-card__cols{grid-template-columns:1.6fr 1fr;gap:3rem}
  .d-pillars{grid-template-columns:repeat(3,1fr)}
  .d-parcours{grid-template-columns:.8fr 1.4fr;gap:4rem}
  .d-teasers{grid-template-columns:1fr 1fr}
  .d-event{grid-template-columns:11rem 1fr;align-items:center}
}

/* ============ E — Sérénité ============ */
.e-hero{position:relative;overflow:hidden;color:var(--paper);text-align:center;padding:clamp(4rem,10vw,8rem) 0 clamp(8rem,16vw,13rem);background:radial-gradient(120% 90% at 50% 0,#2b4a69 0,#192c40 55%,#101f30 100%)}
.e-stars{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(1.5px 1.5px at 12% 22%,#fff 50%,transparent),radial-gradient(1px 1px at 28% 12%,#fff 50%,transparent),radial-gradient(1.5px 1.5px at 44% 30%,#e6cf96 50%,transparent),radial-gradient(1px 1px at 63% 14%,#fff 50%,transparent),radial-gradient(1.5px 1.5px at 78% 26%,#fff 50%,transparent),radial-gradient(1px 1px at 90% 10%,#e6cf96 50%,transparent),radial-gradient(1px 1px at 6% 48%,#fff 50%,transparent),radial-gradient(1px 1px at 52% 6%,#fff 50%,transparent);opacity:.8}
.e-light{position:absolute;left:50%;bottom:18%;width:min(60vw,34rem);aspect-ratio:2/1;transform:translateX(-50%);background:radial-gradient(closest-side,rgba(230,207,150,.38),transparent 72%);pointer-events:none}
.e-hero__inner{position:relative;z-index:2}
.e-kicker{display:flex;align-items:center;gap:1rem;justify-content:center;font:500 .9rem "Inter";letter-spacing:.28em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:1.6rem}
.e-kicker span{flex:1;max-width:8rem;height:1px;background:rgba(230,207,150,.55)}
.e-hero h1{font:400 clamp(2.2rem,6vw,4.2rem)/1.12 "Lora",Georgia,serif;letter-spacing:-.01em;max-width:18ch;margin:0 auto .7em;color:#fff}
.e-lead{max-width:36rem;margin-inline:auto;color:var(--mist-2);font-size:1.15rem}
.e-note{max-width:30rem;margin:1.3rem auto 0;color:var(--mist-2);font-size:.98rem}
.e-hills{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:clamp(6rem,14vw,11rem);z-index:1}
.e-letter{display:grid;gap:2.2rem;align-items:center}
.e-portrait{display:block;width:100%;max-width:26rem;height:auto;margin-inline:auto;border-radius:20px;box-shadow:0 24px 60px rgba(25,44,64,.22)}
.e-title{font:300 clamp(1.8rem,4.2vw,2.7rem)/1.15 "Lora",Georgia,serif;color:var(--navy);margin-bottom:1.1rem}
.e-title span{font-weight:600}
.e-title--light{color:#fff}
.e-letter__text p{font-size:1.1rem}
.e-quote{font:italic 1.35rem/1.4 "Lora",Georgia,serif;color:var(--navy);border-left:3px solid var(--gold);padding-left:1.1rem;margin:1.4rem 0}
.e-sign{font:italic 2.1rem "Lora",Georgia,serif;color:var(--gold-text);margin-top:1.2rem}
.e-band{position:relative;padding:clamp(3.5rem,8vw,6rem) 0;background:linear-gradient(180deg,#1b3a50,#12293a);color:var(--paper)}
.e-cards{display:grid;gap:1.3rem;margin-top:2.2rem}
.e-card{background:#fff;color:var(--ink);border-radius:18px;padding:1.8rem;box-shadow:0 18px 40px rgba(0,0,0,.25)}
.e-card__tag{display:inline-block;font:600 .75rem "Inter";letter-spacing:.14em;text-transform:uppercase;color:#fff;background:var(--navy);padding:.3rem .7rem;border-radius:4px;margin-bottom:.9rem}
.e-card h3{color:var(--navy);margin-bottom:.5rem}
.e-parcours .e-rule{display:block;width:4rem;height:2px;background:var(--gold);margin:0 auto 1.4rem}
.e-rows{display:grid;gap:1.6rem}
.e-row{display:grid;gap:1.3rem;background:#fff;border-radius:22px;padding:1.5rem;box-shadow:var(--shadow);align-items:center}
.e-row h3{font:400 1.6rem/1.2 "Lora",Georgia,serif;color:var(--navy);margin-bottom:.6rem}
.e-final{position:relative;overflow:hidden;color:var(--paper);padding:clamp(4rem,9vw,6.5rem) 0;background:radial-gradient(120% 100% at 50% 100%,#2b4a69,#192c40 60%,#101f30)}
.e-final .narrow{position:relative;z-index:2}
.e-final .lead{font:italic clamp(1.4rem,3.6vw,2rem)/1.35 "Lora",Georgia,serif;max-width:34rem;margin-inline:auto;color:var(--paper)}
@media (min-width:60em){
  .e-letter{grid-template-columns:.9fr 1.3fr;gap:5rem}
  .e-cards{grid-template-columns:repeat(3,1fr)}
  .e-row{grid-template-columns:12rem 1fr;gap:2rem;padding:1.8rem 2.2rem}
}

/* ============ F — Portrait & vidéo ============ */
.f-hero{background:linear-gradient(120deg,#12283b,#1f3b57);color:var(--paper);padding:clamp(2.5rem,6vw,5rem) 0;overflow:hidden}
.f-hero__grid{display:grid;gap:2rem;align-items:center}
.f-name{font:500 clamp(2.8rem,9vw,6rem)/.95 "Lora",Georgia,serif;letter-spacing:-.02em;color:#fff;margin:0 0 .4rem}
.f-hero h1{font:400 clamp(1.5rem,3.4vw,2.3rem)/1.25 "Lora",Georgia,serif;color:var(--gold-soft);margin:.6rem 0 1.1rem;max-width:22ch}
.f-hero p{color:var(--mist-2);max-width:32rem}
.f-hero .m-link--light{border-color:var(--gold)}
.f-hero__photo{position:relative;justify-self:center;width:min(100%,28rem)}
.f-hero__photo::before{content:"";position:absolute;inset:14px -14px -14px 14px;border:2px solid var(--gold);border-radius:24px;z-index:0}
.f-portrait{position:relative;z-index:1;display:block;width:100%;height:auto;border-radius:24px;box-shadow:0 30px 70px rgba(0,0,0,.45)}
.f-video{background:var(--paper);padding:clamp(3rem,7vw,5rem) 0 clamp(2rem,5vw,3rem)}
.f-video h2{font:500 clamp(1.8rem,4vw,2.6rem) "Lora",Georgia,serif;color:var(--navy);margin-bottom:1.6rem}
.f-player{position:relative;display:grid;place-items:center;align-content:center;gap:.4rem;aspect-ratio:16/9;max-width:56rem;margin:0 auto;border-radius:22px;background:linear-gradient(135deg,#12283b,#2b4a69);color:var(--mist-2);text-align:center;padding:1.5rem;border:2px dashed var(--gold);box-shadow:0 30px 70px rgba(25,44,64,.3)}
.f-player strong{font:600 .8rem "Inter";letter-spacing:.2em;color:var(--gold-soft)}
.f-player>span:last-child{max-width:28rem;font-size:.95rem}
.f-play{display:grid;place-items:center;width:5rem;height:5rem;border-radius:50%;background:var(--gold);color:var(--navy);box-shadow:0 0 0 10px rgba(198,160,77,.25)}
.f-cap{color:var(--muted);margin-top:1.2rem}
.f-quote{margin:1.6rem auto 0;font:italic clamp(1.3rem,3vw,1.7rem)/1.4 "Lora",Georgia,serif;color:var(--navy);max-width:30rem}
.f-pillars{display:grid;gap:0;margin-top:2.2rem;border-top:1px solid var(--line)}
.f-pillar{display:grid;grid-template-columns:4.5rem 1fr;gap:0 1rem;padding:1.6rem 0;border-bottom:1px solid var(--line)}
.f-pillar__n{grid-row:1/3;font:500 3.2rem/1 "Lora",Georgia,serif;color:var(--gold)}
.f-pillar h3{margin:0 0 .3rem;color:var(--navy)}
.f-parcours{display:grid;gap:2rem;align-items:center}
.f-portrait--sm{max-width:20rem;margin-inline:auto}
.f-teasers{display:grid;gap:1.4rem}
.f-teaser{background:#fff;border:1px solid var(--line);border-radius:22px;padding:1.5rem;box-shadow:var(--shadow);display:grid;gap:1rem;align-content:start}
.f-teaser h3{font:500 1.5rem/1.2 "Lora",Georgia,serif;color:var(--navy);margin:0}
.f-teaser .btn{justify-self:start}
.f-final{background:linear-gradient(135deg,#12283b,#1f3b57);color:var(--paper);padding:clamp(3.5rem,8vw,5.5rem) 0}
.f-final .lead{font:italic clamp(1.4rem,3.6vw,2rem)/1.35 "Lora",Georgia,serif;max-width:34rem;margin-inline:auto;color:var(--paper)}
@media (min-width:60em){
  .f-hero__grid{grid-template-columns:1.2fr 1fr;gap:4rem}
  .f-pillars{grid-template-columns:repeat(3,1fr);border-top:0;gap:2rem}
  .f-pillar{display:block;border:1px solid var(--line);border-radius:18px;padding:1.8rem;background:#fff}
  .f-pillar__n{display:block;margin-bottom:.6rem}
  .f-parcours{grid-template-columns:.8fr 1.4fr;gap:4rem}
  .f-teasers{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* ============ Effets communs G / H ============ */
.fx [data-reveal]{opacity:0;transform:translateY(32px);transition:opacity .8s ease var(--d,0ms),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0ms)}
.fx [data-reveal].in{opacity:1;transform:none}
.fx .w{opacity:.2;transition:opacity .5s ease}
.fx .w.on{opacity:1}
@media (prefers-reduced-motion:reduce){.g-aurora i,.g-ring,.g-ribbon__track,.g-orb,.h-badge{animation:none!important}}

/* ============ G — Aurore ============ */
html:is([data-model="g"],[data-model="i"],[data-model="k"]){background:#0c1a2a}
:is([data-model="g"],[data-model="i"],[data-model="k"]) main{background:#0c1a2a;color:#dfe7ee;overflow-x:clip}
:is([data-model="g"],[data-model="i"],[data-model="k"]) main h1,:is([data-model="g"],[data-model="i"],[data-model="k"]) main h2,:is([data-model="g"],[data-model="i"],[data-model="k"]) main h3{color:#fff}
.g-hero{position:relative;overflow:hidden;background:radial-gradient(120% 90% at 70% 0%,#1d3a57 0,#0f2236 55%,#0a1624 100%);min-height:min(calc(100svh - 7rem),50rem);padding:clamp(2rem,5vw,3.5rem) 0 0;isolation:isolate}
.g-aurora{position:absolute;inset:-20%;z-index:-1;filter:blur(60px);opacity:.75}
.g-aurora i{position:absolute;border-radius:50%;width:55vmax;height:55vmax;animation:aur 22s ease-in-out infinite alternate}
.g-aurora i:nth-child(1){left:-10%;top:-20%;background:radial-gradient(circle,rgba(198,160,77,.55),transparent 65%)}
.g-aurora i:nth-child(2){right:-15%;top:0;background:radial-gradient(circle,rgba(70,130,180,.5),transparent 65%);animation-duration:28s;animation-delay:-8s}
.g-aurora i:nth-child(3){left:25%;bottom:-35%;background:radial-gradient(circle,rgba(230,207,150,.35),transparent 65%);animation-duration:34s;animation-delay:-15s}
@keyframes aur{to{transform:translate3d(8%,10%,0) scale(1.18) rotate(30deg)}}
.g-stars{position:absolute;inset:0;z-index:-1;opacity:.7;background-image:radial-gradient(1.2px 1.2px at 12% 18%,#fff,transparent),radial-gradient(1px 1px at 28% 62%,#fff,transparent),radial-gradient(1.4px 1.4px at 46% 28%,#e6cf96,transparent),radial-gradient(1px 1px at 63% 12%,#fff,transparent),radial-gradient(1.2px 1.2px at 81% 44%,#fff,transparent),radial-gradient(1px 1px at 92% 20%,#e6cf96,transparent),radial-gradient(1px 1px at 7% 80%,#fff,transparent),radial-gradient(1.3px 1.3px at 71% 78%,#fff,transparent)}
.g-bigname{position:absolute;z-index:-1;left:50%;top:48%;transform:translate(-50%,-50%);margin:0;white-space:nowrap;text-align:center;font:700 clamp(5.5rem,22vw,19rem)/.82 "Lora",Georgia,serif;letter-spacing:.02em;color:transparent;-webkit-text-stroke:1.5px rgba(230,207,150,.28);user-select:none;pointer-events:none}
.g-hero__grid{display:grid;gap:0;align-items:end;min-height:inherit}
.g-hero__text{padding:1.5rem 0 1rem;align-self:center;position:relative;z-index:2}
.g-hero h1{font:500 clamp(2.4rem,5.6vw,4.4rem)/1.02 "Lora",Georgia,serif;letter-spacing:-.02em;margin-bottom:.5em;text-wrap:balance;text-shadow:0 2px 30px rgba(0,0,0,.35)}
.g-lead{font-size:clamp(1.05rem,2vw,1.25rem);color:#dfe7ee;max-width:34rem}
.g-note{font-size:.95rem;color:#b9c7d4;max-width:30rem;margin-top:1.2rem}
.g-hero .m-link--light{color:#fff;border-color:var(--gold)}
.g-glow{box-shadow:0 0 0 0 rgba(198,160,77,.6),0 10px 40px rgba(198,160,77,.45);animation:pulse 3.2s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 14px rgba(198,160,77,0),0 10px 50px rgba(198,160,77,.6)}}
.g-hero__photo{position:relative;justify-self:center;width:min(100%,32rem);margin-top:.5rem;transform:translateY(var(--py,0px))}
.cutwrap{display:block;position:relative;z-index:1}
.g-hero__photo .cutwrap,.g-parcours__photo .cutwrap{filter:drop-shadow(0 0 40px rgba(198,160,77,.35)) drop-shadow(0 20px 40px rgba(0,0,0,.45))}
.g-cut{display:block;width:100%;height:auto;position:relative;z-index:1;-webkit-mask-image:linear-gradient(#000 92%,transparent);mask-image:linear-gradient(#000 92%,transparent)}
.g-ring{position:absolute;z-index:0;left:50%;top:44%;width:128%;max-width:none;transform:translate(-50%,-50%);color:var(--gold);opacity:.7;animation:spin 90s linear infinite}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.g-ribbon{background:linear-gradient(90deg,#c6a04d,#e6cf96,#c6a04d);color:#13263a;overflow:hidden;white-space:nowrap;transform:rotate(-1.2deg);margin:-1.2rem 0 0;position:relative;z-index:3;width:104%;left:-2%;box-shadow:0 10px 40px rgba(0,0,0,.4)}
.g-ribbon__track{display:inline-flex;gap:2rem;padding:.9rem 0;animation:mq 40s linear infinite;font:600 clamp(1rem,2.4vw,1.4rem) "Lora",Georgia,serif}
.g-ribbon__track span,.g-ribbon__track i{flex:none}
@keyframes mq{to{transform:translateX(-50%)}}
.g-statement{padding:clamp(4.5rem,11vw,9rem) 0 clamp(3rem,7vw,5rem);background:#0c1a2a}
.g-statement h2{font:500 clamp(1.4rem,3vw,2rem)/1.2 "Lora",Georgia,serif;color:var(--gold-soft)!important;margin-bottom:1.5rem}
.g-statement__text p{font:500 clamp(1.5rem,3.6vw,2.6rem)/1.28 "Lora",Georgia,serif;color:#fff;max-width:26ch;max-width:44rem;letter-spacing:-.01em}
.g-quote{margin:2.5rem 0 0;border-left:3px solid var(--gold);padding-left:1.2rem;max-width:36rem}
.g-quote p{font:italic 1.25rem/1.45 "Lora",Georgia,serif;color:var(--gold-soft)}
.g-pillars{padding:clamp(3rem,7vw,6rem) 0;background:linear-gradient(180deg,#0c1a2a,#10263b)}
.g-pillars h2{font:500 clamp(1.8rem,4.5vw,3rem)/1.1 "Lora",Georgia,serif;margin-bottom:2.2rem}
.g-pillars__grid{display:grid;gap:1.2rem}
.g-pillar{position:relative;overflow:hidden;padding:2rem 1.6rem 2.2rem;border-radius:22px;background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.02));border:1px solid rgba(230,207,150,.28);backdrop-filter:blur(6px);transition:transform .35s,border-color .35s,box-shadow .35s}
.g-pillar:hover{transform:translateY(-8px);border-color:var(--gold);box-shadow:0 24px 60px rgba(0,0,0,.45),0 0 40px rgba(198,160,77,.2)}
.g-pillar__n{position:absolute;right:.6rem;top:-.6rem;font:700 7rem/1 "Lora",Georgia,serif;color:rgba(230,207,150,.14)}
.g-pillar h3{position:relative;font:600 1.45rem/1.2 "Lora",Georgia,serif;margin-bottom:.7rem;max-width:12ch}
.g-pillar p{position:relative;color:#cdd8e2;margin:0}
.g-parcours{padding:clamp(3rem,8vw,7rem) 0;background:#10263b;overflow:hidden}
.g-parcours__grid{display:grid;gap:2rem;align-items:center}
.g-parcours__photo{position:relative;max-width:26rem;margin-inline:auto;width:100%}
.g-disc{position:absolute;left:50%;top:48%;width:92%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 35% 30%,#e6cf96,#c6a04d 55%,#8f6f25);box-shadow:0 0 80px rgba(198,160,77,.4)}
.g-parcours__photo .cutwrap{filter:drop-shadow(0 16px 30px rgba(0,0,0,.4))}
.g-parcours h2{font:500 clamp(1.8rem,4vw,2.8rem)/1.12 "Lora",Georgia,serif;margin-bottom:1rem}
.g-parcours p{color:#dfe7ee}
.g-parcours .btn--ghost{color:#fff;border-color:rgba(255,255,255,.7);background:transparent}
.g-parcours .btn--ghost:hover{background:#fff;color:#13263a}
:is([data-model="g"],[data-model="i"],[data-model="k"]) .section--surface{background:#0c1a2a;color:#dfe7ee}
:is([data-model="g"],[data-model="i"],[data-model="k"]) .section--surface h2{color:#fff}
:is([data-model="g"],[data-model="i"],[data-model="k"]) .quote{background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02));border:1px solid rgba(230,207,150,.25);border-radius:20px;color:#e8eef3;padding:1.6rem;position:relative}
:is([data-model="g"],[data-model="i"],[data-model="k"]) .quote::before{content:"“";position:absolute;right:1rem;top:-.4rem;font:700 5rem/1 "Lora",Georgia,serif;color:rgba(230,207,150,.35)}
:is([data-model="g"],[data-model="i"],[data-model="k"]) .quote cite,:is([data-model="g"],[data-model="i"],[data-model="k"]) .quote figcaption{color:var(--gold-soft)}
:is([data-model="g"],[data-model="i"],[data-model="k"]) .quote .more summary{color:var(--gold-soft)}
.g-teasers{padding:clamp(3rem,7vw,6rem) 0;background:linear-gradient(180deg,#0c1a2a,#0a1624)}
.g-teasers__grid{display:grid;gap:1.6rem}
.g-book,.g-conf{border-radius:26px;padding:clamp(1.6rem,4vw,2.6rem);border:1px solid rgba(230,207,150,.25);background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02))}
.g-book{display:grid;gap:1.6rem;align-items:center}
.g-book__cover{perspective:900px;display:grid;place-items:center}
.g-book__cover img{width:min(12rem,60%);height:auto;border-radius:6px;transform:rotateY(-24deg) rotateX(4deg);box-shadow:24px 24px 50px rgba(0,0,0,.55),0 0 50px rgba(198,160,77,.25);transition:transform .6s}
.g-book:hover .g-book__cover img{transform:rotateY(-8deg) rotateX(0) scale(1.04)}
.g-book p,.g-conf p{color:#dfe7ee}
.g-conf .m-visual{background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(198,160,77,.12) 14px 28px);color:#cdd8e2;margin-bottom:1.2rem}
.g-conf .m-visual strong{color:var(--gold-soft)}
.g-final{position:relative;overflow:hidden;padding:clamp(5rem,12vw,9rem) 0;background:#0a1624;text-align:center;isolation:isolate}
.g-orb{position:absolute;left:50%;top:50%;width:60vmax;height:60vmax;max-width:70rem;max-height:70rem;transform:translate(-50%,-50%);z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(198,160,77,.4),rgba(198,160,77,.08) 45%,transparent 68%);animation:breathe 7s ease-in-out infinite}
@keyframes breathe{50%{transform:translate(-50%,-50%) scale(1.15);opacity:.75}}
.g-final .lead{font:italic 500 clamp(1.4rem,3.4vw,2.2rem)/1.4 "Lora",Georgia,serif;color:#fff}
:is([data-model="g"],[data-model="i"],[data-model="k"]) .site-footer{background:#07101b}
@media (min-width:60em){
  .g-hero__grid{grid-template-columns:1.05fr .95fr}
  .g-hero__text{padding-bottom:6rem}
  .g-hero__photo{margin-right:-2rem}
  .g-pillars__grid{grid-template-columns:repeat(3,1fr)}
  .g-pillar:nth-child(2){margin-top:2.5rem}
  .g-pillar:nth-child(3){margin-top:5rem}
  .g-parcours__grid{grid-template-columns:.9fr 1.1fr;gap:4rem}
  .g-teasers__grid{grid-template-columns:1.15fr .85fr}
  .g-book{grid-template-columns:.8fr 1.2fr}
}

/* ============ H — Éclat ============ */
.h-hero{background:var(--paper);padding:clamp(2rem,5vw,3rem) 0 0;overflow:hidden}
.h-hero__grid{display:grid;gap:1rem;align-items:end}
.h-hero__text{align-self:center;padding-bottom:1rem}
.h-hero h1{font:600 clamp(2.9rem,9vw,7rem)/.95 "Lora",Georgia,serif;letter-spacing:-.03em;color:var(--navy);margin-bottom:.45em;text-wrap:balance}
.h-hero h1::first-line{color:var(--navy)}
.h-lead{font-size:clamp(1.1rem,2vw,1.3rem);max-width:34rem}
.h-hero__photo{position:relative;justify-self:center;width:min(100%,34rem);min-height:20rem}
.h-sun{position:absolute;left:50%;top:44%;width:92%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 35% 30%,#f2dfa8,#c6a04d 62%,#a8832f)}
.h-block{position:absolute;left:4%;right:4%;bottom:0;height:34%;background:var(--navy);border-radius:28px 28px 0 0}
.h-cut{position:relative;z-index:1;display:block;width:100%;height:auto;-webkit-mask-image:linear-gradient(#000 94%,transparent);mask-image:linear-gradient(#000 94%,transparent)}
.h-badge{position:absolute;z-index:2;left:-.5rem;top:12%;width:6.8rem;height:6.8rem;animation:spin2 24s linear infinite;filter:drop-shadow(0 8px 18px rgba(25,44,64,.35))}
@keyframes spin2{to{transform:rotate(360deg)}}
.h-intro{background:var(--navy);color:#dfe7ee;padding:clamp(3.5rem,9vw,7rem) 0}
.h-intro__grid{display:grid;gap:1.6rem}
.h-intro h2{font:600 clamp(2.2rem,6vw,4.4rem)/1 "Lora",Georgia,serif;color:#fff;letter-spacing:-.02em}
.h-intro p{color:#dfe7ee;font-size:1.12rem}
.h-quote{margin:1.8rem 0 0;padding:0;border:0}
.h-quote p{font:italic 500 clamp(1.3rem,2.6vw,1.8rem)/1.35 "Lora",Georgia,serif;color:var(--gold-soft)}
.h-pillars{background:var(--paper);padding:clamp(2.5rem,6vw,5rem) 0}
.h-list{list-style:none;margin:0;padding:0}
.h-row{display:grid;gap:.4rem 1.5rem;padding:1.8rem 0;border-top:2px solid var(--navy);position:relative;transition:padding .35s}
.h-row:last-child{border-bottom:2px solid var(--navy)}
.h-row::before{content:"";position:absolute;left:0;top:-2px;height:2px;width:0;background:var(--gold);transition:width .6s}
.h-row:hover::before{width:100%}
.h-row:hover{padding-left:.8rem}
.h-row__n{font:700 clamp(3rem,8vw,6rem)/.9 "Lora",Georgia,serif;color:var(--gold)}
.h-row h3{font:600 clamp(1.5rem,3.4vw,2.4rem)/1.1 "Lora",Georgia,serif;color:var(--navy);margin:0}
.h-row p{margin:0;max-width:34rem}
.h-parcours{background:linear-gradient(180deg,#f3efe6,var(--paper));padding:clamp(3rem,8vw,6rem) 0}
.h-parcours__grid{display:grid;gap:2rem;align-items:center}
.h-parcours h2{font:600 clamp(1.9rem,4.5vw,3.2rem)/1.08 "Lora",Georgia,serif;color:var(--navy);margin-bottom:1rem}
.h-parcours .m-kicker--gold{color:var(--gold-text)}
.h-parcours__photo{position:relative;max-width:26rem;margin-inline:auto}
.h-parcours__photo::before{content:"";position:absolute;inset:6% -6% -6% 6%;border:3px solid var(--gold);border-radius:24px}
.h-frame{position:relative;display:block;width:100%;height:auto;border-radius:24px;box-shadow:0 30px 60px rgba(25,44,64,.25)}
.h-teasers{background:var(--mist);padding:clamp(3rem,7vw,6rem) 0}
.h-teasers__grid{display:grid;gap:1.6rem}
.h-card{background:#fff;border-radius:26px;padding:clamp(1.6rem,4vw,2.6rem);box-shadow:var(--shadow);border-top:6px solid var(--gold)}
.h-card--book{display:grid;gap:1.4rem;align-items:center}
.h-card h3{font:600 1.6rem/1.15 "Lora",Georgia,serif;color:var(--navy)}
.h-card .m-visual{margin-bottom:1.2rem}
.h-card__cover{display:grid;place-items:center;background:linear-gradient(160deg,var(--mist-2),#fff);border-radius:18px;padding:1.2rem}
.h-card__cover img{width:min(11rem,70%);height:auto;border-radius:6px;box-shadow:0 18px 40px rgba(25,44,64,.3);transform:rotate(-4deg);transition:transform .5s}
.h-card:hover .h-card__cover img{transform:rotate(0) scale(1.05)}
.h-final{background:linear-gradient(135deg,#192c40,#0f2236);padding:clamp(4.5rem,10vw,8rem) 0}
.h-final .lead{font:italic 500 clamp(1.4rem,3.4vw,2.2rem)/1.4 "Lora",Georgia,serif;color:#fff}
@media (min-width:60em){
  .h-hero__grid{grid-template-columns:1.1fr .9fr}
  .h-hero__text{padding-bottom:5rem}
  .h-intro__grid{grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
  .h-row{grid-template-columns:8rem 1fr 1fr;align-items:center;padding:2.2rem 0}
  .h-parcours__grid{grid-template-columns:1.1fr .9fr;gap:4rem}
  .h-teasers__grid{grid-template-columns:1.1fr .9fr}
  .h-card--book{grid-template-columns:.7fr 1.3fr}
}

/* ============ I — Constellation ============ */
@keyframes rot{to{transform:rotate(360deg)}}
@keyframes draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes twinkle{50%{opacity:.25}}
.i-hero{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(90% 70% at 50% 55%,#12304d 0,#0a1a2c 55%,#050c16 100%);color:#fff;padding:clamp(2rem,5vw,3rem) 0 2.5rem;min-height:min(calc(100svh - 7rem),54rem);display:grid;grid-template-rows:auto 1fr auto;gap:1rem}
.i-sky{position:absolute;inset:-3%;z-index:-2;transform:translate3d(calc(var(--mx,0)*-14px),calc(var(--my,0)*-10px),0);transition:transform .25s ease-out}
.i-sky svg{width:100%;height:100%}
.i-s{fill:#fff;animation:twinkle 4s ease-in-out infinite}.i-s1{animation-delay:-1.3s;fill:#e6cf96}.i-s2{animation-delay:-2.6s}
.i-chart{position:absolute;inset:0;width:100%;height:100%;z-index:-1;transform:translate3d(calc(var(--mx,0)*8px),calc(var(--my,0)*6px),0);transition:transform .25s ease-out}
.i-line{stroke:var(--gold);stroke-width:1.2;stroke-dasharray:1;stroke-dashoffset:0;animation:draw 3.5s ease-out both;filter:drop-shadow(0 0 4px rgba(198,160,77,.8))}
.i-star{cursor:pointer;outline:none}
.i-star__dot{fill:#fff;filter:drop-shadow(0 0 8px #e6cf96)}
.i-star__halo{fill:rgba(198,160,77,.18);stroke:rgba(230,207,150,.6);stroke-width:.8;transition:r .3s}
.i-star:hover .i-star__halo,.i-star:focus-visible .i-star__halo{r:26}
.i-star:focus-visible .i-star__halo{stroke:#fff;stroke-width:2}
.i-star text{fill:#e6cf96;font:600 15px "Inter",sans-serif;letter-spacing:.04em}
.i-hero__top{position:relative;z-index:2;text-align:center}
.i-hero h1{font:500 clamp(2.1rem,5.4vw,4.2rem)/1.05 "Lora",Georgia,serif;letter-spacing:-.02em;max-width:18ch;margin:0 auto;text-wrap:balance;color:#fff}
.i-planet{position:relative;justify-self:center;width:min(21rem,72vw);aspect-ratio:1;border-radius:50%;margin:1.2rem 0;transform:translate3d(calc(var(--mx,0)*-14px),calc(var(--my,0)*-10px),0);transition:transform .25s ease-out;background:radial-gradient(circle at 50% 35%,#f0dca0,#c6a04d 55%,#7a5a10);box-shadow:0 0 0 1px rgba(230,207,150,.7),0 0 90px rgba(198,160,77,.45),inset 0 -30px 60px rgba(0,0,0,.25)}
.i-planet .cutwrap{position:absolute;left:0;right:0;bottom:0;height:112%;overflow:visible;-webkit-mask-image:radial-gradient(circle at 50% 38%,#000 0 69%,transparent 69.5%);mask-image:none}
.i-cut{position:absolute;left:3%;bottom:0;width:94%;height:auto;clip-path:inset(0 0 0 0 round 0 0 50% 50%)}
.i-planet{overflow:visible}
.i-planet .cutwrap{border-radius:0 0 50% 50%;overflow:hidden;height:100%;top:0;-webkit-mask-image:none}
.i-ticks{position:absolute;inset:-7%;border-radius:50%;pointer-events:none;background:repeating-conic-gradient(rgba(230,207,150,.75) 0 .35deg,transparent .35deg 3deg);-webkit-mask:radial-gradient(circle,transparent 63%,#000 63.5% 68%,transparent 68.5%);mask:radial-gradient(circle,transparent 63%,#000 63.5% 68%,transparent 68.5%);animation:rot 160s linear infinite}
.i-hero__bottom{position:relative;z-index:2;text-align:center}
.i-lead{max-width:36rem;margin:0 auto 1.2rem;color:#dfe7ee;font-size:clamp(1.02rem,1.8vw,1.2rem)}
.i-hero .actions{justify-content:center}
.i-hero .m-link--light{color:#fff;border-color:var(--gold)}
.i-coords{margin:1.4rem 0 0;font:500 .78rem "Inter",monospace;letter-spacing:.3em;color:rgba(230,207,150,.65)}
.i-sec{padding:clamp(3.5rem,9vw,7rem) 0;background:#07111c}
.i-sec--deep{background:#0b1b2d}
.i-recog{display:grid;gap:1.5rem}
.i-recog h2{font:500 clamp(2rem,5vw,3.6rem)/1.08 "Lora",Georgia,serif}
.i-recog p{color:#dfe7ee;font-size:1.12rem}
.i-note{font:italic 1.3rem/1.4 "Lora",Georgia,serif!important;color:var(--gold-soft)!important;border-left:2px solid var(--gold);padding-left:1rem}
.i-sec h2{color:#fff}
.i-cons{display:grid;gap:1.4rem;margin-top:2.2rem}
.i-con{position:relative;padding:1.6rem;border:1px solid rgba(230,207,150,.3);border-radius:4px;background:rgba(255,255,255,.03)}
.i-con svg{width:100%;max-width:11rem;height:auto;margin-bottom:.6rem;overflow:visible}
.i-con polyline{stroke:var(--gold);stroke-width:1;stroke-dasharray:1;stroke-dashoffset:1}
.i-con.in polyline{animation:draw 2.4s ease-out .3s forwards}
html:not(.fx) .i-con polyline{stroke-dashoffset:0}
.i-con circle{fill:#fff;filter:drop-shadow(0 0 4px #e6cf96)}
.i-con__n{position:absolute;right:1rem;top:1rem;font:500 .8rem "Inter",monospace;letter-spacing:.2em;color:var(--gold-soft)}
.i-con h3{font:600 1.35rem/1.2 "Lora",Georgia,serif;color:#fff}
.i-con p{color:#cdd8e2;margin:0}
.i-parcours{display:grid;gap:2.2rem;align-items:center}
.i-parcours__photo{position:relative;max-width:24rem;margin-inline:auto;width:82%}
.i-round{display:block;width:100%;aspect-ratio:1;object-fit:cover;object-position:50% 12%;border-radius:50%;box-shadow:0 0 70px rgba(198,160,77,.35)}
.i-ticks--lg{inset:-8%}
.i-parcours h2{font:500 clamp(1.8rem,4vw,2.8rem)/1.12 "Lora",Georgia,serif;margin-bottom:1rem}
.i-parcours p{color:#dfe7ee}
.i-parcours .btn--ghost{color:#fff;border-color:rgba(255,255,255,.7);background:transparent}
.i-parcours .btn--ghost:hover{background:#fff;color:#13263a}
.i-final{background:#050c16}
@media (min-width:60em){
  .i-recog{grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
  .i-cons{grid-template-columns:repeat(3,1fr)}
  .i-parcours{grid-template-columns:.8fr 1.2fr;gap:5rem}
}
@media (max-width:59.99em){.i-star text{display:none}}

/* ============ J — Couverture ============ */
.j-cover{background:#f3eee2;color:#0f1d2c;overflow:hidden;padding:1.2rem 0 0;border-bottom:6px solid #0f1d2c}
.j-cover__in{position:relative;display:grid;gap:1rem}
.j-top{margin:0;font:600 .75rem "Inter",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text);padding:.5rem 0}
.j-mast{margin:0;text-align:center;font:900 clamp(4.6rem,19vw,15rem)/.82 "Lora",Georgia,serif;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:2px rgba(15,29,44,.55);user-select:none}
.j-fig{position:relative;z-index:1;justify-self:center;width:min(100%,30rem);margin-top:-2.5rem}
.j-cut{display:block;width:100%;height:auto;filter:drop-shadow(0 18px 28px rgba(15,29,44,.35))}
.j-h1{position:relative;z-index:2;margin:0;font:700 clamp(2.2rem,6.4vw,4.4rem)/1 "Lora",Georgia,serif;letter-spacing:-.025em;color:#0f1d2c;text-wrap:balance}
.j-h1::after{content:"";display:block;width:5rem;height:6px;background:var(--gold);margin-top:.8rem}
.j-lines{border:2px solid #0f1d2c;padding:1rem 1.2rem;background:#fff;max-width:17rem}
.j-lines__t{margin:0 0 .5rem;font:700 .7rem "Inter";letter-spacing:.24em;text-transform:uppercase;color:var(--gold-text)}
.j-lines ol{list-style:none;margin:0;padding:0}.j-lines li{font:600 1.05rem/1.25 "Lora",Georgia,serif;padding:.4rem 0;border-top:1px solid rgba(15,29,44,.25)}
.j-lines li span{font:700 .75rem "Inter";color:var(--gold-text);margin-right:.6rem}
.j-sticker{justify-self:start;width:9.6rem;aspect-ratio:1;border-radius:50%;background:#c6a04d;color:#0f1d2c;display:grid;place-items:center;text-align:center;padding:1.3rem;font:700 .8rem/1.3 "Inter",sans-serif;transform:rotate(-10deg);box-shadow:0 10px 24px rgba(15,29,44,.3);border:2px dashed #0f1d2c;outline:4px solid #c6a04d}
.j-cta{padding-bottom:2rem}
.j-cta p{font-size:1.12rem;max-width:30rem}
.j-page{background:#fff;padding:clamp(3.5rem,8vw,6rem) 0}
.j-page__grid{display:grid;gap:1.6rem}
.j-page h2{font:800 clamp(2.4rem,7vw,5.4rem)/.95 "Lora",Georgia,serif;letter-spacing:-.03em;color:#0f1d2c}
.j-cols{column-gap:2.4rem}
.j-cols p{font-size:1.08rem;break-inside:avoid-column}
.j-cols>p:first-child::first-letter{float:left;font:800 4.4rem/.8 "Lora",Georgia,serif;padding:.3rem .6rem 0 0;color:var(--gold-text)}
.j-pull{margin:1rem 0 0;background:#0f1d2c;color:#fff;padding:2rem 1.6rem}
.j-pull p{font:italic 500 clamp(1.4rem,3vw,2.1rem)/1.3 "Lora",Georgia,serif;margin:0;color:#fff}
.j-eyebrow{font:700 .78rem "Inter",sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-text);margin:0 0 .8rem}
h2.j-eyebrow{font-size:.9rem;margin-bottom:1.4rem}
.j-sommaire{background:#f3eee2;padding:clamp(3rem,7vw,5rem) 0}
.j-sommaire ol{list-style:none;margin:0;padding:0;border-top:4px solid #0f1d2c}
.j-sommaire li{display:grid;grid-template-columns:auto 1fr;gap:1.4rem;align-items:center;padding:1.4rem 0;border-bottom:1px solid rgba(15,29,44,.4)}
.j-num{font:800 clamp(2.6rem,8vw,5rem)/.8 "Lora",Georgia,serif;color:var(--gold)}
.j-sommaire li:hover .j-num{color:var(--gold)}
.j-sommaire h3{font:700 clamp(1.4rem,3.4vw,2.3rem)/1.1 "Lora",Georgia,serif;color:#0f1d2c;margin:0 0 .3rem}
.j-sommaire p{margin:0;max-width:34rem}
.j-parcours{background:#fff;padding:clamp(3rem,8vw,6rem) 0}
.j-parcours__grid{display:grid;gap:2.2rem;align-items:center}
.j-parcours h2{font:800 clamp(2rem,4.6vw,3.4rem)/1.05 "Lora",Georgia,serif;color:#0f1d2c;margin-bottom:1rem}
.j-cols--one{columns:1!important}
.j-photo{position:relative;max-width:24rem;margin-inline:auto}
.j-frame{display:block;width:100%;height:auto;border:10px solid #fff;box-shadow:0 20px 50px rgba(15,29,44,.35)}
.j-tape{display:none}
:is([data-model="j"]) .section--surface{background:#0f1d2c}
[data-model="j"] .section--surface h2{color:#fff}
[data-model="j"] .quote{background:#fff;border:0;border-top:4px solid var(--gold);border-radius:0;box-shadow:none}
.j-shelf{background:#0f1d2c;padding:clamp(3rem,7vw,6rem) 0}
.j-shelf__grid{display:grid;gap:1.6rem}
.j-book,.j-conf{background:#f3eee2;padding:clamp(1.6rem,4vw,2.6rem);border-top:8px solid var(--gold)}
.j-book{display:grid;gap:1.4rem;align-items:center}
.j-book h3,.j-conf h3{font:800 1.7rem/1.1 "Lora",Georgia,serif;color:#0f1d2c}
.j-book__cover{display:grid;place-items:center;padding:1rem}
.j-book__cover img{width:min(11rem,70%);height:auto;box-shadow:0 18px 40px rgba(15,29,44,.35)}
.j-back{background:var(--gold);padding:clamp(4.5rem,10vw,8rem) 0;color:#0f1d2c}
.j-back .lead{font:italic 700 clamp(1.5rem,3.6vw,2.4rem)/1.35 "Lora",Georgia,serif;color:#0f1d2c}
.j-back .btn{background:#0f1d2c;color:#fff;border-color:#0f1d2c}
@media (min-width:60em){
  .j-cover__in{display:block;min-height:46rem}
  .j-top{margin-bottom:0}
  .j-mast{position:absolute;left:0;right:0;top:2rem}
  .j-fig{position:absolute;left:50%;transform:translateX(-5%);bottom:0;width:30rem;margin:0}
  .j-h1{margin-top:19rem;max-width:11ch;font-size:clamp(2.8rem,4.6vw,4rem)}
  .j-lines{position:absolute;right:0;top:29rem;z-index:3}
  .j-sticker{position:absolute;right:11rem;top:15rem;width:13rem;z-index:3}
  .j-cta{position:relative;z-index:3;max-width:30rem;padding:1rem 0 2.5rem}
  .j-cta p{margin-bottom:.8rem}
  .j-page__grid{grid-template-columns:1fr 1fr;gap:1rem 4rem}
  .j-page h2{grid-column:1/-1}
  .j-cols{columns:2}
  .j-pull{grid-column:1/-1;max-width:48rem;justify-self:center}
  .j-parcours__grid{grid-template-columns:1.1fr .9fr;gap:5rem}
  .j-shelf__grid{grid-template-columns:1.15fr .85fr}
  .j-book{grid-template-columns:.7fr 1.3fr}
}

/* ============ K — Révélation ============ */
@keyframes unveil{from{filter:blur(18px) grayscale(1) brightness(.45);opacity:.5}to{filter:none;opacity:1}}
@keyframes lightin{from{opacity:0;transform:translate(-50%,-50%) scale(.4)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.k-hero{position:relative;overflow:hidden;isolation:isolate;background:#060d17;padding:clamp(2rem,5vw,3.5rem) 0 0;min-height:min(calc(100svh - 7rem),52rem)}
.k-light{position:absolute;z-index:-1;left:72%;top:55%;width:70vmin;height:70vmin;border-radius:50%;background:radial-gradient(circle,rgba(230,207,150,.55),rgba(198,160,77,.2) 40%,transparent 68%);animation:lightin 3.4s ease-out .3s both}
.k-hero__grid{display:grid;align-items:end;gap:0}
.k-hero__text{align-self:center;padding:1rem 0 1.5rem;position:relative;z-index:2}
.k-hero h1{font:600 clamp(2.5rem,6.6vw,5.2rem)/1.02 "Lora",Georgia,serif;letter-spacing:-.025em;margin-bottom:.5em}
.k-ghost{display:block;color:rgba(255,255,255,.55);filter:blur(.6px)}
.k-lit{display:block;color:#f3deaa;text-shadow:0 0 40px rgba(198,160,77,.7);animation:lit 3s ease-out both}
@keyframes lit{from{opacity:.2;text-shadow:none}to{opacity:1}}
.k-hero__photo{justify-self:center;width:min(100%,32rem);position:relative}
.k-cut{display:block;width:100%;height:auto;animation:unveil 3.2s ease-out .2s both;-webkit-mask-image:linear-gradient(#000 92%,transparent);mask-image:linear-gradient(#000 92%,transparent)}
.k-scrub{background:#060d17;--p:1}
.k-scrub__stick{padding:clamp(3rem,8vw,5rem) 0}
.k-scrub__grid{display:grid;gap:2rem;align-items:center}
.k-scrub__photo{position:relative;max-width:24rem;margin-inline:auto;width:80%}
.k-scrub__photo::before{content:"";position:absolute;left:50%;top:45%;width:130%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(230,207,150,calc(.55*var(--p))),transparent 65%)}
.k-cut--scrub{position:relative;animation:none;filter:blur(calc((1 - var(--p))*9px)) grayscale(calc(1 - var(--p))) brightness(calc(.55 + .45*var(--p)));opacity:calc(.7 + .3*var(--p));-webkit-mask-image:none;mask-image:none}
.k-scrub h2{font:600 clamp(2rem,5vw,3.6rem)/1.08 "Lora",Georgia,serif;margin-bottom:1.2rem;color:#fff}
.k-steps p{font-size:1.15rem;color:#dfe7ee}
.k-note{font:italic 1.35rem/1.4 "Lora",Georgia,serif;color:#f3deaa;border-left:2px solid var(--gold);padding-left:1rem;margin-top:1.4rem}
.k-pillars{background:linear-gradient(180deg,#060d17,#0d2036);padding:clamp(3rem,7vw,6rem) 0}
.k-pillars h2{font:500 clamp(1.8rem,4.5vw,3rem)/1.1 "Lora",Georgia,serif;margin-bottom:2.2rem;color:#fff}
.k-pillars__grid{display:grid;gap:1.2rem}
.k-pillar{padding:1.8rem 1.6rem;border-radius:20px;border:1px solid rgba(230,207,150,.28);background:linear-gradient(180deg,rgba(255,255,255,.07),transparent);transition:transform .35s,background .35s}
.k-pillar:hover{transform:translateY(-6px);background:linear-gradient(180deg,rgba(198,160,77,.25),rgba(255,255,255,.02))}
.k-pillar span{font:700 3rem/1 "Lora",Georgia,serif;color:var(--gold)}
.k-pillar h3{font:600 1.4rem/1.2 "Lora",Georgia,serif;color:#fff;margin:.5rem 0}
.k-pillar p{color:#cdd8e2;margin:0}
.k-parcours{background:#0d2036;padding:clamp(3rem,8vw,7rem) 0;overflow:hidden}
.k-parcours h2{font:500 clamp(1.8rem,4vw,2.8rem)/1.12 "Lora",Georgia,serif;margin-bottom:1rem;color:#fff}
.k-parcours p{color:#dfe7ee}
.k-parcours .btn--ghost{color:#fff;border-color:rgba(255,255,255,.7);background:transparent}
.k-parcours .btn--ghost:hover{background:#fff;color:#13263a}
@media (min-width:60em){
  .k-hero__grid{grid-template-columns:1.05fr .95fr}
  .k-hero__text{padding-bottom:6rem}
  .k-scrub{height:150vh}
  .k-scrub__stick{position:sticky;top:0;height:100vh;display:grid;align-items:center;padding:0}
  .k-scrub__grid{grid-template-columns:.9fr 1.1fr;gap:4rem}
  .k-pillars__grid{grid-template-columns:repeat(3,1fr)}
}
