/* LPE 2.54 — expériences partenaires Créateurs / Experts */
.lpe-p4 {
  --p4-ink: #0a1324;
  --p4-blue: #135db8;
  --p4-blue-soft: #5b91d8;
  --p4-gold: #e2c582;
  --p4-gold-deep: #8b671f;
  --p4-paper: #f8f6ef;
  --p4-line: rgba(255,255,255,.12);
  color: var(--p4-ink);
  background: #f7f7f4;
}

.lpe-p4 *, .lpe-p4 *::before, .lpe-p4 *::after { box-sizing: border-box; }
.lpe-p4 a { text-decoration: none; }
.lpe-p4 em { font-style: normal; }

.lpe-p4-hero {
  position: relative;
  isolation: isolate;
  min-height: min(860px, calc(100svh - 40px));
  display: grid;
  align-items: center;
  overflow: clip;
  background:
    radial-gradient(circle at 78% 30%, rgba(42,89,159,.30), transparent 28%),
    radial-gradient(circle at 88% 8%, rgba(229,195,128,.16), transparent 18%),
    linear-gradient(110deg, #071225 0%, #0a1730 44%, #12284b 100%);
}

.lpe-p4-hero--expert {
  background:
    radial-gradient(circle at 78% 25%, rgba(184,135,43,.18), transparent 29%),
    radial-gradient(circle at 90% 6%, rgba(255,222,158,.15), transparent 17%),
    linear-gradient(110deg, #071225 0%, #0a1427 46%, #1d2636 100%);
}

.lpe-p4-hero__backdrop {
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(3,10,23,.98) 0%, rgba(3,10,23,.91) 34%, rgba(3,10,23,.35) 58%, rgba(3,10,23,.06) 100%),
    repeating-linear-gradient(90deg, transparent 0 12.4%, rgba(255,255,255,.018) 12.5% 12.56%);
}

.lpe-p4-scene {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(520px, 1.1fr);
  gap: clamp(2rem, 4vw, 5rem);
  align-items: center;
  padding-top: clamp(3.5rem, 7vw, 7rem);
  padding-bottom: clamp(4.5rem, 8vw, 8rem);
  perspective: 1400px;
}

.lpe-p4-hero__copy { position: relative; z-index: 4; max-width: 760px; color: #fff; }
.lpe-p4-kicker {
  margin: 0 0 1rem;
  font: 800 .72rem/1.2 Manrope, sans-serif;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(220,233,255,.72);
}
.lpe-p4-kicker--dark { color: rgba(10,19,36,.54); }

.lpe-p4-hero h1,
.lpe-p4-sectionhead h2,
.lpe-p4-format-intro h2,
.lpe-p4-feature__statement h2,
.lpe-p4-method__intro h2,
.lpe-p4-trace__header h2,
.lpe-p4-pass__top h2 {
  font-family: Manrope, sans-serif;
  letter-spacing: -.055em;
}

.lpe-p4-hero h1 {
  margin: 0;
  max-width: 760px;
  font-size: clamp(3.35rem, 6.3vw, 7rem);
  line-height: .91;
  font-weight: 820;
  color: #fff;
}
.lpe-p4-hero h1 em { color: #a8c9ff; }
.lpe-p4--expert .lpe-p4-hero h1 em { color: #f0d28e; }

.lpe-p4-lead {
  max-width: 720px;
  margin: 1.45rem 0 0;
  font-size: clamp(1rem, 1.4vw, 1.16rem);
  line-height: 1.7;
  color: rgba(238,244,255,.78);
}

.lpe-p4-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.6rem; }
.lpe-p4-button {
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: .8rem 1.08rem;
  border-radius: 999px;
  font: 800 .86rem/1 Manrope, sans-serif;
  transition: transform .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
}
.lpe-p4-button:hover { transform: translateY(-2px); }
.lpe-p4-button--light { color: #06152e; background: #eef5ff; border: 1px solid rgba(255,255,255,.82); box-shadow: 0 14px 34px rgba(0,0,0,.22); }
.lpe-p4-button--gold { color: #181409; background: #f0d38f; border: 1px solid rgba(255,243,208,.78); box-shadow: 0 14px 34px rgba(0,0,0,.22); }
.lpe-p4-button--glass { color: #fff; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.2); backdrop-filter: blur(12px); }
.lpe-p4-button--ink { color: #fff; background: var(--p4-ink); border: 1px solid var(--p4-ink); }

.lpe-p4-hero__meta { display: flex; flex-wrap: wrap; gap: .48rem; margin-top: 1rem; }
.lpe-p4-hero__meta span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: .36rem .7rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.13);
  background: rgba(255,255,255,.045);
  font: 700 .72rem/1 Manrope, sans-serif;
  color: rgba(240,246,255,.68);
}

.lpe-p4-hero__visual {
  position: relative;
  min-height: 570px;
  transform-style: preserve-3d;
  transform: rotateX(var(--p4-rx, 0deg)) rotateY(var(--p4-ry, 0deg));
  transition: transform .18s ease-out;
}
.lpe-p4-hero__image {
  position: absolute;
  inset: 4% -2% 2% 0;
  overflow: hidden;
  border-radius: 42px 0 0 42px;
  box-shadow: 0 40px 100px rgba(0,0,0,.34);
  transform: translateZ(0);
}
.lpe-p4-hero__image::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(6,17,36,.8) 0%, rgba(6,17,36,.08) 38%, rgba(6,17,36,.04) 100%);
  pointer-events: none;
}
.lpe-p4-hero__image img { width: 100%; height: 100%; object-fit: cover; display: block; }

.lpe-p4-float {
  position: absolute;
  z-index: 5;
  width: min(270px, 42%);
  padding: 1rem 1rem .95rem;
  border-radius: 22px;
  color: #fff;
  background: linear-gradient(180deg, rgba(9,25,55,.82), rgba(5,14,31,.76));
  border: 1px solid rgba(205,224,255,.22);
  box-shadow: 0 28px 55px rgba(0,0,0,.26);
  backdrop-filter: blur(16px);
}
.lpe-p4-float small { display: block; margin-bottom: .48rem; font: 800 .62rem/1 Manrope, sans-serif; letter-spacing: .18em; color: rgba(175,208,255,.7); }
.lpe-p4-float strong { display: block; font: 800 .92rem/1.25 Manrope, sans-serif; }
.lpe-p4-float--one { left: -1.5rem; top: 9%; transform: translateZ(80px) rotate(-2deg); }
.lpe-p4-float--two { right: 1rem; bottom: 4%; transform: translateZ(120px) rotate(1deg); }
.lpe-p4-float--gold { border-color: rgba(240,210,142,.22); }
.lpe-p4-float--gold small { color: rgba(240,210,142,.78); }

.lpe-p4-orbit { position: absolute; z-index: 3; inset: 8% 5% 5% 8%; pointer-events: none; transform: translateZ(30px); }
.lpe-p4-orbit::before,
.lpe-p4-orbit::after { content:''; position:absolute; border:1px solid rgba(115,169,239,.2); border-radius:50%; }
.lpe-p4-orbit::before { width: 180px; height: 180px; right: 5%; top: 3%; }
.lpe-p4-orbit::after { width: 290px; height: 290px; right: -2%; top: -6%; border-color: rgba(218,191,126,.12); }
.lpe-p4-orbit i { position:absolute; width:6px; height:6px; border-radius:50%; background:#8cc0ff; box-shadow:0 0 18px #6da9ff; }
.lpe-p4-orbit i:nth-child(1){right:17%;top:2%;}.lpe-p4-orbit i:nth-child(2){right:3%;top:28%;}.lpe-p4-orbit i:nth-child(3){right:22%;top:48%;}
.lpe-p4-orbit--gold i { background:#f2ce7b; box-shadow:0 0 18px #e8be64; }

.lpe-p4-scrollcue {
  position: absolute;
  z-index: 7;
  left: 50%; bottom: 1rem;
  transform: translateX(-50%);
  display: inline-flex; gap: .6rem; align-items:center;
  color: rgba(255,255,255,.58);
  font: 700 .72rem/1 Manrope,sans-serif;
  text-transform: uppercase; letter-spacing: .12em;
}

.lpe-p4-light { background: linear-gradient(180deg, #fbfbf8 0%, #f4f4ef 100%); }
.lpe-p4-night { color:#fff; background: linear-gradient(180deg, #081426 0%, #0b1d38 100%); }
.lpe-p4-night--expert { background: linear-gradient(180deg, #0c1421 0%, #14181e 100%); }

.lpe-p4-sectionhead { max-width: 920px; margin-bottom: clamp(2rem, 4vw, 3.2rem); }
.lpe-p4-sectionhead h2,
.lpe-p4-format-intro h2,
.lpe-p4-feature__statement h2,
.lpe-p4-method__intro h2,
.lpe-p4-trace__header h2,
.lpe-p4-pass__top h2 {
  margin: 0;
  font-size: clamp(2.45rem, 4.6vw, 5.2rem);
  line-height: .96;
  color: var(--p4-ink);
}
.lpe-p4-sectionhead h2 em,
.lpe-p4-feature__statement h2 em,
.lpe-p4-method__intro h2 em { color: var(--p4-blue); }
.lpe-p4--expert .lpe-p4-sectionhead h2 em,
.lpe-p4--expert .lpe-p4-method__intro h2 em { color: var(--p4-gold-deep); }
.lpe-p4-sectionhead > p:last-child { max-width: 760px; margin: 1rem 0 0; font-size: 1rem; line-height: 1.7; color: rgba(10,19,36,.66); }
.lpe-p4-sectionhead--night h2,
.lpe-p4-sectionhead--night > p:last-child { color:#fff; }
.lpe-p4-sectionhead--night > p:last-child { color:rgba(255,255,255,.66); }
.lpe-p4-sectionhead--night h2 em { color:#f0d28e; }

.lpe-p4-material-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:rgba(10,19,36,.11); border:1px solid rgba(10,19,36,.11); border-radius:30px; overflow:clip; }
.lpe-p4-material { min-height:260px; padding:1.25rem; display:grid; grid-template-columns:auto 1fr auto; gap:1rem; align-items:start; color:var(--p4-ink); background:rgba(255,255,255,.94); transition:background .2s ease, transform .2s ease; }
.lpe-p4-material:hover { background:#eef5ff; }
.lpe-p4-material > span { font:800 .65rem/1 Manrope,sans-serif; letter-spacing:.14em; color:rgba(10,19,36,.35); }
.lpe-p4-material h3 { margin:0; max-width:260px; font:800 1.18rem/1.1 Manrope,sans-serif; }
.lpe-p4-material p { margin:.75rem 0 0; color:rgba(10,19,36,.62); line-height:1.55; }
.lpe-p4-material i { font-style:normal; font-size:1.05rem; color:var(--p4-blue); }

.lpe-p4-format-layout { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:clamp(2rem,4vw,5rem); align-items:center; }
.lpe-p4-format-intro h2 { color:#fff; font-size:clamp(2.5rem,4.5vw,5rem); }
.lpe-p4-format-intro h2 em { color:#a8c9ff; }
.lpe-p4-format-intro > p { max-width:600px; line-height:1.7; color:rgba(255,255,255,.65); }
.lpe-p4-inline-link { display:inline-flex; margin-top:.8rem; color:#b8d5ff; font-weight:800; }
.lpe-p4-format-rail { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.lpe-p4-format-card { min-height:220px; padding:1.25rem; border-radius:26px; background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.045)); border:1px solid rgba(255,255,255,.1); box-shadow:0 22px 48px rgba(0,0,0,.12); }
.lpe-p4-format-card span { display:inline-flex; padding:.34rem .6rem; border-radius:999px; background:rgba(130,185,255,.12); color:#a9d0ff; font:800 .66rem/1 Manrope,sans-serif; letter-spacing:.1em; text-transform:uppercase; }
.lpe-p4-format-card h3 { margin:1.1rem 0 .6rem; font:800 1.35rem/1 Manrope,sans-serif; }
.lpe-p4-format-card p { margin:0; color:rgba(255,255,255,.66); line-height:1.55; }

.lpe-p4-feature { background:linear-gradient(135deg,#f5f1e6 0%,#fff 55%,#eef5ff 100%); }
.lpe-p4-feature__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(380px,.75fr); gap:4rem; align-items:center; }
.lpe-p4-feature__statement > p { max-width:720px; line-height:1.7; color:rgba(10,19,36,.66); }
.lpe-p4-feature__actions { display:flex; flex-wrap:wrap; gap:1rem; align-items:center; margin-top:1.35rem; }
.lpe-p4-link { color:var(--p4-blue); font-weight:800; }
.lpe-p4-showcase-stack { position:relative; height:360px; perspective:900px; }
.lpe-p4-showcase-card { position:absolute; width:80%; min-height:170px; padding:1.2rem; border-radius:28px; background:#fff; border:1px solid rgba(10,19,36,.08); box-shadow:0 28px 70px rgba(10,19,36,.14); display:flex; flex-direction:column; justify-content:flex-end; }
.lpe-p4-showcase-card span { font:800 .65rem/1 Manrope,sans-serif; letter-spacing:.14em; color:rgba(10,19,36,.4); }
.lpe-p4-showcase-card strong { margin-top:.65rem; font:800 1.25rem/1.15 Manrope,sans-serif; }
.lpe-p4-showcase-card.is-back { right:0; top:0; transform:rotate(5deg) translateZ(-50px); background:#eaf2ff; }
.lpe-p4-showcase-card.is-mid { left:5%; top:80px; transform:rotate(-3deg); background:#fbf4df; }
.lpe-p4-showcase-card.is-front { right:8%; bottom:0; transform:rotate(1deg) translateZ(60px); }

.lpe-p4-protocol-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.lpe-p4-protocol { min-height:260px; padding:1.35rem; border-radius:28px; background:#fff; border:1px solid rgba(10,19,36,.08); box-shadow:0 20px 55px rgba(10,19,36,.06); }
.lpe-p4-protocol > span { width:46px; height:46px; display:grid; place-items:center; border-radius:50%; background:#f5ead0; color:#76520e; font:900 1rem/1 Manrope,sans-serif; }
.lpe-p4-protocol h3 { margin:1.4rem 0 .65rem; font:800 1.4rem/1 Manrope,sans-serif; }
.lpe-p4-protocol p { color:rgba(10,19,36,.64); line-height:1.6; }

.lpe-p4-domain-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.09); border-radius:28px; overflow:clip; }
.lpe-p4-domain { min-height:220px; padding:1.15rem; background:rgba(255,255,255,.035); }
.lpe-p4-domain span { color:#d8bb78; font:800 .66rem/1 Manrope,sans-serif; letter-spacing:.15em; }
.lpe-p4-domain h3 { margin:1.1rem 0 .6rem; font:800 1.06rem/1.16 Manrope,sans-serif; color:#fff; }
.lpe-p4-domain p { margin:0; color:rgba(255,255,255,.58); line-height:1.55; font-size:.9rem; }

.lpe-p4-method { background:#f8f6ef; }
.lpe-p4-method__grid { display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr); gap:4rem; align-items:start; }
.lpe-p4-method__intro > p { line-height:1.7; color:rgba(10,19,36,.65); }
.lpe-p4-method__table { border-top:1px solid rgba(10,19,36,.12); }
.lpe-p4-method__table > div { display:grid; grid-template-columns:140px 1fr; gap:1.2rem; padding:1.25rem 0; border-bottom:1px solid rgba(10,19,36,.12); }
.lpe-p4-method__table span { font:800 .7rem/1.2 Manrope,sans-serif; text-transform:uppercase; letter-spacing:.12em; color:rgba(10,19,36,.4); }
.lpe-p4-method__table strong { font:700 1rem/1.45 Manrope,sans-serif; }

.lpe-p4-trace { color:#fff; background:linear-gradient(180deg,#101315 0%,#191817 100%); }
.lpe-p4-trace__header { max-width:780px; }
.lpe-p4-trace__header h2 { color:#fff; font-size:clamp(2.4rem,4vw,4.7rem); }
.lpe-p4-trace__header > p:last-child { color:rgba(255,255,255,.62); line-height:1.65; }
.lpe-p4-trace__line { margin-top:2.3rem; display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; gap:1rem; align-items:center; }
.lpe-p4-trace__line > div { min-height:180px; padding:1rem; border-radius:24px; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.045); }
.lpe-p4-trace__line > div span { color:#e6c77f; font:800 .66rem/1 Manrope,sans-serif; letter-spacing:.14em; }
.lpe-p4-trace__line > div strong { display:block; margin:.9rem 0 .5rem; font:800 1rem/1.15 Manrope,sans-serif; }
.lpe-p4-trace__line > div p { margin:0; color:rgba(255,255,255,.58); font-size:.88rem; }
.lpe-p4-trace__line > i { color:rgba(230,199,127,.5); font-style:normal; }

.lpe-p4-pass { color:#fff; background:radial-gradient(circle at 75% 20%,rgba(27,91,170,.25),transparent 28%),linear-gradient(160deg,#061329,#091c3d 55%,#071327); }
.lpe-p4-pass--expert { background:radial-gradient(circle at 75% 18%,rgba(176,131,45,.18),transparent 28%),linear-gradient(160deg,#101214,#1d1b17 55%,#111315); }
.lpe-p4-pass__shell { position:relative; overflow:clip; padding:clamp(1.4rem,3vw,2.4rem); border-radius:36px; border:1px solid rgba(171,208,255,.18); background:linear-gradient(145deg,rgba(13,35,76,.86),rgba(4,15,35,.92)); box-shadow:0 38px 100px rgba(0,0,0,.3); }
.lpe-p4-pass__shell::before { content:''; position:absolute; width:460px; height:460px; right:-140px; top:-180px; border:1px solid rgba(129,180,245,.12); border-radius:50%; box-shadow:0 0 0 70px rgba(129,180,245,.035),0 0 0 140px rgba(129,180,245,.025); pointer-events:none; }
.lpe-p4-pass__shell--expert { border-color:rgba(237,204,130,.18); background:linear-gradient(145deg,rgba(55,43,24,.72),rgba(15,16,18,.94)); }
.lpe-p4-pass__shell--expert::before { border-color:rgba(237,204,130,.12); box-shadow:0 0 0 70px rgba(237,204,130,.025),0 0 0 140px rgba(237,204,130,.018); }
.lpe-p4-pass__top { position:relative; z-index:2; display:flex; justify-content:space-between; gap:2rem; align-items:flex-start; }
.lpe-p4-pass__top h2 { color:#fff; font-size:clamp(2.5rem,4.7vw,5.3rem); }
.lpe-p4-pass__top h2 em { color:#a8c9ff; }
.lpe-p4-pass--expert .lpe-p4-pass__top h2 em { color:#f0d28e; }
.lpe-p4-pass__badge { flex:0 0 150px; min-height:115px; padding:1rem; border-radius:22px; background:linear-gradient(145deg,#d8e9ff,#9cc6ff); color:#07162f; display:flex; flex-direction:column; justify-content:space-between; transform:rotate(3deg); box-shadow:0 18px 50px rgba(0,0,0,.25); }
.lpe-p4-pass__badge--expert { background:linear-gradient(145deg,#f1d899,#b99145); color:#1a160e; }
.lpe-p4-pass__badge small,.lpe-p4-pass__badge span { font:800 .6rem/1 Manrope,sans-serif; letter-spacing:.14em; }
.lpe-p4-pass__badge strong { font:900 1rem/1 Manrope,sans-serif; }
.lpe-p4-pass__intro { position:relative; z-index:2; max-width:850px; margin:1.2rem 0 1.6rem; color:rgba(255,255,255,.7); line-height:1.7; }
.lpe-p4-checks { position:relative; z-index:2; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; }
.lpe-p4-check { position:relative; cursor:pointer; display:grid; grid-template-columns:28px 34px 1fr; gap:.7rem; align-items:start; min-height:100px; padding:1rem; border-radius:20px; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.045); transition:border-color .2s ease, background .2s ease, transform .2s ease; }
.lpe-p4-check:hover { transform:translateY(-1px); border-color:rgba(165,205,255,.28); }
.lpe-p4-check input,.lpe-p4-finalcheck input { position:absolute; opacity:0; pointer-events:none; }
.lpe-p4-check__box { width:24px; height:24px; border-radius:7px; border:1px solid rgba(255,255,255,.28); background:rgba(255,255,255,.05); }
.lpe-p4-check__num { padding-top:.25rem; font:800 .65rem/1 Manrope,sans-serif; letter-spacing:.12em; color:rgba(255,255,255,.35); }
.lpe-p4-check strong { font:700 .87rem/1.45 Manrope,sans-serif; color:rgba(255,255,255,.82); }
.lpe-p4-check input:checked + .lpe-p4-check__box { background:#b9d7ff; border-color:#d9e9ff; box-shadow:0 0 0 4px rgba(142,192,255,.1); }
.lpe-p4-check input:checked + .lpe-p4-check__box::after { content:'✓'; display:grid; place-items:center; color:#06152f; font-weight:900; font-size:.8rem; height:100%; }
.lpe-p4-checks--expert .lpe-p4-check input:checked + .lpe-p4-check__box { background:#efd08a; border-color:#ffe6ab; box-shadow:0 0 0 4px rgba(239,208,138,.08); }
.lpe-p4-checks--expert .lpe-p4-check input:checked + .lpe-p4-check__box::after { color:#1a160d; }
.lpe-p4-finalcheck { position:relative; z-index:2; cursor:pointer; margin-top:1rem; display:grid; grid-template-columns:30px 1fr; gap:.8rem; align-items:center; padding:1rem; border-radius:20px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.13); }
.lpe-p4-finalcheck > span { width:27px; height:27px; border-radius:8px; border:1px solid rgba(255,255,255,.28); }
.lpe-p4-finalcheck input:checked + span { background:#b9d7ff; }
.lpe-p4-finalcheck input:checked + span::after { content:'✓'; display:grid; place-items:center; color:#06152f; font-weight:900; height:100%; }
.lpe-p4-finalcheck strong { color:rgba(255,255,255,.88); font:800 .9rem/1.4 Manrope,sans-serif; }
.lpe-p4-pass__footer { position:relative; z-index:2; display:grid; grid-template-columns:1fr auto; gap:1.2rem; align-items:center; margin-top:1.2rem; }
.lpe-p4-progress > div { width:min(380px,100%); height:6px; overflow:hidden; border-radius:999px; background:rgba(255,255,255,.1); }
.lpe-p4-progress i { display:block; width:0; height:100%; background:linear-gradient(90deg,#7ab7ff,#dcecff); transition:width .25s ease; }
.lpe-p4-pass--expert .lpe-p4-progress i { background:linear-gradient(90deg,#b98d3c,#f1d692); }
.lpe-p4-progress span { display:block; margin-top:.45rem; color:rgba(255,255,255,.48); font:700 .7rem/1 Manrope,sans-serif; }
.lpe-p4-unlock { min-width:270px; min-height:58px; padding:.8rem 1rem; border-radius:18px; display:flex; align-items:center; justify-content:space-between; gap:1rem; background:#eaf3ff; color:#06152f; font:900 .86rem/1.1 Manrope,sans-serif; box-shadow:0 18px 45px rgba(0,0,0,.2); transition:opacity .2s ease,transform .2s ease,filter .2s ease; }
.lpe-p4-unlock--gold { background:#f0d38f; color:#181409; }
.lpe-p4-unlock.is-locked { opacity:.35; filter:saturate(.35); cursor:not-allowed; }
.lpe-p4-unlock:not(.is-locked):hover { transform:translateY(-2px); }

.lpe-p4-reveal { opacity:0; transform:translateY(18px); transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1); }
.lpe-p4-reveal.is-inview { opacity:1; transform:none; }

@media (max-width: 1180px) {
  .lpe-p4-scene { grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr); gap:2rem; }
  .lpe-p4-material-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lpe-p4-domain-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lpe-p4-feature__grid,.lpe-p4-method__grid { grid-template-columns:1fr 1fr; gap:2.5rem; }
}

@media (max-width: 900px) {
  .lpe-p4-hero { min-height:auto; }
  .lpe-p4-scene { grid-template-columns:1fr; padding-top:2.2rem; padding-bottom:4.5rem; }
  .lpe-p4-hero__copy { max-width:none; }
  .lpe-p4-hero h1 { font-size:clamp(3.2rem,10vw,5.7rem); }
  .lpe-p4-hero__visual { min-height:440px; order:-1; }
  .lpe-p4-hero__image { inset:0; border-radius:26px; }
  .lpe-p4-hero__image::after { background:linear-gradient(180deg,rgba(4,13,29,.08),rgba(4,13,29,.34)); }
  .lpe-p4-float { width:min(270px,55%); }
  .lpe-p4-float--one { left:.8rem; top:1rem; }
  .lpe-p4-float--two { right:.8rem; bottom:1rem; }
  .lpe-p4-scrollcue { display:none; }
  .lpe-p4-format-layout,.lpe-p4-feature__grid,.lpe-p4-method__grid { grid-template-columns:1fr; }
  .lpe-p4-showcase-stack { max-width:540px; margin-inline:auto; }
  .lpe-p4-trace__line { grid-template-columns:1fr; }
  .lpe-p4-trace__line > i { transform:rotate(90deg); justify-self:center; }
  .lpe-p4-pass__top { align-items:flex-start; }
  .lpe-p4-checks { grid-template-columns:1fr; }
  .lpe-p4-pass__footer { grid-template-columns:1fr; }
  .lpe-p4-unlock { width:100%; }
}

@media (max-width: 720px) {
  .lpe-p4 .lpe-wrap { width:min(100% - 24px, 1180px); }
  .lpe-p4-hero { background:linear-gradient(180deg,#071225 0%,#0b1c38 100%); }
  .lpe-p4-hero--expert { background:linear-gradient(180deg,#0a111d 0%,#161718 100%); }
  .lpe-p4-scene { padding-top:1rem; padding-bottom:3rem; gap:1.25rem; }
  .lpe-p4-hero__visual { min-height:300px; }
  .lpe-p4-hero__image { border-radius:20px; box-shadow:0 20px 48px rgba(0,0,0,.22); }
  .lpe-p4-orbit { display:none; }
  .lpe-p4-float { display:none; }
  .lpe-p4-hero h1 { font-size:clamp(2.8rem,13.2vw,4.5rem); line-height:.91; }
  .lpe-p4-lead { font-size:.96rem; line-height:1.62; }
  .lpe-p4-actions { display:grid; grid-template-columns:1fr; }
  .lpe-p4-button { width:100%; min-height:50px; }
  .lpe-p4-hero__meta { overflow-x:auto; flex-wrap:nowrap; padding-bottom:.35rem; scroll-snap-type:x proximity; scrollbar-width:none; touch-action:pan-x pan-y; }
  .lpe-p4-hero__meta::-webkit-scrollbar { display:none; }
  .lpe-p4-hero__meta span { flex:0 0 auto; scroll-snap-align:start; }
  .lpe-p4-sectionhead { margin-bottom:1.5rem; }
  .lpe-p4-sectionhead h2,.lpe-p4-format-intro h2,.lpe-p4-feature__statement h2,.lpe-p4-method__intro h2,.lpe-p4-trace__header h2,.lpe-p4-pass__top h2 { font-size:clamp(2.25rem,10.6vw,3.6rem); }
  .lpe-p4-material-grid { display:flex; overflow-x:auto; gap:.8rem; background:transparent; border:0; border-radius:0; scroll-snap-type:x mandatory; scrollbar-width:none; touch-action:pan-x pan-y; padding-right:18%; }
  .lpe-p4-material-grid::-webkit-scrollbar { display:none; }
  .lpe-p4-material { flex:0 0 78vw; min-height:245px; border:1px solid rgba(10,19,36,.09); border-radius:22px; scroll-snap-align:start; }
  .lpe-p4-format-rail { display:flex; overflow-x:auto; gap:.8rem; scroll-snap-type:x mandatory; scrollbar-width:none; touch-action:pan-x pan-y; padding-right:18%; }
  .lpe-p4-format-rail::-webkit-scrollbar { display:none; }
  .lpe-p4-format-card { flex:0 0 78vw; min-height:215px; scroll-snap-align:start; border-radius:22px; }
  .lpe-p4-feature__actions { display:grid; grid-template-columns:1fr; }
  .lpe-p4-feature__actions .lpe-p4-button { width:100%; }
  .lpe-p4-showcase-stack { height:300px; transform:scale(.92); transform-origin:center top; }
  .lpe-p4-protocol-grid { display:flex; overflow-x:auto; gap:.8rem; scroll-snap-type:x mandatory; scrollbar-width:none; touch-action:pan-x pan-y; padding-right:18%; }
  .lpe-p4-protocol-grid::-webkit-scrollbar { display:none; }
  .lpe-p4-protocol { flex:0 0 78vw; min-height:245px; scroll-snap-align:start; border-radius:22px; }
  .lpe-p4-domain-grid { display:flex; overflow-x:auto; gap:.8rem; background:transparent; border:0; border-radius:0; scroll-snap-type:x mandatory; scrollbar-width:none; touch-action:pan-x pan-y; padding-right:18%; }
  .lpe-p4-domain-grid::-webkit-scrollbar { display:none; }
  .lpe-p4-domain { flex:0 0 78vw; min-height:210px; border:1px solid rgba(255,255,255,.08); border-radius:22px; scroll-snap-align:start; background:rgba(255,255,255,.045); }
  .lpe-p4-method__table > div { grid-template-columns:1fr; gap:.45rem; }
  .lpe-p4-trace__line > div { min-height:145px; }
  .lpe-p4-pass__shell { padding:1rem; border-radius:24px; }
  .lpe-p4-pass__top { display:block; }
  .lpe-p4-pass__badge { width:136px; min-height:94px; margin:1rem 0 0 auto; transform:rotate(2deg); }
  .lpe-p4-check { min-height:auto; grid-template-columns:28px 30px 1fr; padding:.85rem; border-radius:16px; }
  .lpe-p4-finalcheck { border-radius:16px; }
  .lpe-p4-unlock { min-width:0; min-height:56px; border-radius:16px; }
}

@media (prefers-reduced-motion: reduce) {
  .lpe-p4-reveal { opacity:1 !important; transform:none !important; transition:none !important; }
  .lpe-p4-hero__visual { transform:none !important; transition:none !important; }
  .lpe-p4-button,.lpe-p4-material,.lpe-p4-unlock,.lpe-p4-check { transition:none !important; }
}
