body.peau-neuve{--paper:#f9f5ee;--ink:#3a2850;--accent:#8e71b6;--line:#3a285025;--display:'DM Serif Display',serif}.tiny-note{background:#3a2850;color:#f1e9fa;text-align:center;font-size:9px;padding:11px}.peau-neuve .header{padding:25px 6%}.peau-neuve .wordmark{font:400 33px/.8 'DM Serif Display';letter-spacing:-.04em}.peau-neuve .wordmark span{display:block;padding-left:27px;font-style:italic}.peau-neuve .header nav{background:#eee5f1;padding:13px 24px;border-radius:40px;gap:25px}.peau-neuve .cart-button{border-radius:40px;border-color:#3a28504d}.soft-hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:40px 6% 60px;align-items:center;position:relative;overflow:hidden}.soft-copy h1{font:400 clamp(60px,7.5vw,115px)/.94 'DM Serif Display';letter-spacing:-.045em;margin:30px 0}.soft-copy h1 i{font-weight:400;color:#9279ad}.soft-copy>p:not(.eyebrow){font-size:12px;line-height:1.9;color:#8b7b91}.soft-copy .solid{margin-top:30px;background:#3a2850;border-color:#3a2850;border-radius:40px;padding-left:25px;padding-right:25px}.soft-handnote{display:block;font:italic 18px 'DM Serif Display';color:#a48aaf;transform:rotate(-6deg);margin:35px 0 0 55px}.portrait-orbit{position:relative;padding:40px 12px 40px 0}.portrait-circle{height:540px;border-radius:49% 49% 45% 45%;overflow:hidden;background:#d2bee8;transform:rotate(5deg);border:15px solid #e5d8f0}.portrait-circle img{object-position:50% 35%;transform:rotate(-5deg) scale(1.1)}.orbit-label{position:absolute;left:-30px;bottom:20px;background:#f2d8bb;color:#6b4b38;width:145px;height:145px;border-radius:50%;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:9px;line-height:1.1;transform:rotate(-13deg);box-shadow:0 0 0 8px #f9f5ee}.orbit-label i{font:italic 26px/.95 'DM Serif Display'}.petal{position:absolute;right:-15px;top:5px;font-size:140px;line-height:1;color:#af91d0;transform:rotate(10deg)}.ritual-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:15px 6% 30px}.ritual-cards a{border-radius:24px;padding:27px 28px 25px;position:relative;background:#ece4f1;min-height:200px}.ritual-cards a:nth-child(2){background:#f1deca}.ritual-cards a:nth-child(3){background:#e5e8d7}.ritual-cards a>span{font-size:9px;opacity:.5}.ritual-cards h2{font:400 36px 'DM Serif Display';margin:12px 0}.ritual-cards p{font-size:11px;line-height:1.6;opacity:.6}.ritual-cards b{position:absolute;right:25px;bottom:25px;font-size:24px;font-weight:400}.peau-neuve .catalog{padding:65px 6%}.peau-neuve .catalog h2{font-size:43px;font-weight:400;letter-spacing:-.03em}.peau-neuve .catalog-tools{border:0;gap:25px}.peau-neuve .filter-list{gap:8px}.peau-neuve .filter-list button{padding:9px 15px;border:1px solid #dacde0;border-radius:30px;margin:0;opacity:1;color:#947da1}.peau-neuve .filter-list button[aria-pressed=true]{background:#3a2850;color:#fff;border-color:#3a2850}.peau-neuve .search-label{border-bottom:1px solid #d5c5dc}.peau-neuve .items{gap:18px}.peau-neuve .item{background:white;border-radius:24px;padding:12px 12px 15px}.peau-neuve .item-media{border-radius:17px;aspect-ratio:1}.peau-neuve .item-index{display:none}.peau-neuve .item-text{padding:14px 5px 0}.peau-neuve .item h3{font-size:12px;min-height:36px;margin-bottom:4px}.peau-neuve .add{background:#eee6f3;border:0;border-radius:30px;padding:9px 14px;margin-top:15px;font-size:9px}.peau-neuve .add:hover{background:#3a2850;color:white}.peau-neuve .inspect{border-radius:20px}.soft-story{margin:10px 4% 60px;background:#dcccdf;border-radius:36px;padding:75px 20px;text-align:center;position:relative;overflow:hidden}.soft-story h2{font:400 79px/.97 'DM Serif Display';letter-spacing:-.045em;margin:25px 0}.soft-story h2 i{color:#8a659a}.soft-story>p:not(.eyebrow){font-size:12px;line-height:1.9;position:relative}.soft-story .outline{border-radius:30px;border-color:#84668f;margin-top:30px;background:#f4ecf2}.soft-flower{position:absolute;left:-65px;bottom:-85px;font-size:450px;color:#bda0c6;line-height:1;transform:rotate(10deg)}.peau-neuve .how{padding-left:6%;padding-right:6%}.peau-neuve .how h2{font-weight:400}.peau-neuve .how li{border-color:#dfd3e5}.peau-neuve footer{background:#3a2850;color:#f2e9fa;--line:#ffffff30}.peau-neuve .footer-name{font:400 15vw/.9 'DM Serif Display';text-transform:lowercase;letter-spacing:-.05em}
@media(max-width:950px){.soft-hero{gap:25px}.portrait-circle{height:440px;border-width:12px}.soft-copy h1{font-size:78px}.petal{font-size:110px}.orbit-label{width:120px;height:120px;left:-20px}.peau-neuve .catalog h2{font-size:36px}.peau-neuve .items{gap:12px}.peau-neuve .item{padding:9px}.ritual-cards{gap:15px}.ritual-cards a{padding:23px}.soft-story h2{font-size:70px}}
@media(max-width:650px){.peau-neuve .header{padding:23px 6%}.peau-neuve .wordmark{font-size:30px}.tiny-note{font-size:8px;padding:10px}.soft-hero{grid-template-columns:1fr;padding:25px 7% 35px;gap:20px}.soft-copy h1{font-size:78px;margin:23px 0}.soft-copy>p:not(.eyebrow){font-size:12px}.soft-handnote{font-size:17px;margin:25px 0 0 40px}.portrait-orbit{padding:20px 8px 30px 15px;margin-top:10px}.portrait-circle{height:410px;border-width:12px}.petal{font-size:100px;right:0;top:0}.orbit-label{width:115px;height:115px;left:0;bottom:5px}.orbit-label i{font-size:23px}.ritual-cards{grid-template-columns:1fr;padding:15px 6% 10px;gap:12px}.ritual-cards a{min-height:155px;padding:23px}.ritual-cards h2{font-size:32px;margin:5px 0}.ritual-cards p{font-size:10px}.peau-neuve .catalog{padding:45px 6%}.peau-neuve .catalog h2{font-size:34px}.peau-neuve .catalog-tools{align-items:stretch;flex-direction:column;gap:10px}.peau-neuve .search-label{max-width:100%;width:100%}.peau-neuve .items{gap:20px 12px}.peau-neuve .item{border-radius:19px;padding:8px 8px 12px}.peau-neuve .item-media{border-radius:13px}.peau-neuve .item h3{font-size:11px;min-height:34px}.peau-neuve .item-text{padding-left:3px}.peau-neuve .add{font-size:8px;padding:8px 10px}.peau-neuve .inspect{font-size:7px;padding:8px;left:5px;right:5px;bottom:5px}.soft-story{margin:0 5% 40px;border-radius:25px;padding:50px 15px}.soft-story h2{font-size:59px}.soft-story>p:not(.eyebrow){font-size:11px}.soft-flower{font-size:290px;left:-100px;bottom:-70px}.soft-story .eyebrow{font-size:7px}.peau-neuve .how h2{font-size:43px}}

/* ==========================================================================
   ANIMATIONS SENSORIELLES & EFFETS IMMERSIFS — PEAU NEUVE
   ========================================================================== */
@keyframes pnLiquidMorph {
  0%, 100% {
    border-radius: 49% 49% 45% 45%;
    transform: rotate(5deg) translateY(0px);
    box-shadow: 0 24px 60px -15px rgba(142, 113, 182, 0.28), 0 0 0 0 rgba(210, 190, 232, 0.45);
  }
  50% {
    border-radius: 45% 52% 49% 43%;
    transform: rotate(3.2deg) translateY(-10px);
    box-shadow: 0 34px 75px -12px rgba(142, 113, 182, 0.38), 0 0 0 12px rgba(210, 190, 232, 0);
  }
}

@keyframes pnPortraitZoom {
  0%, 100% { transform: rotate(-5deg) scale(1.1); }
  50% { transform: rotate(-3.2deg) scale(1.16); }
}

@keyframes pnOrbitFloat {
  0%, 100% { transform: rotate(-13deg) translateY(0px) scale(1); }
  50% { transform: rotate(-8deg) translateY(-9px) scale(1.04); }
}

@keyframes pnSpinFloat {
  0% { transform: rotate(0deg) scale(1); }
  50% { transform: rotate(180deg) scale(1.08); }
  100% { transform: rotate(360deg) scale(1); }
}

@keyframes pnHandnoteWave {
  0%, 100% { transform: rotate(-6deg) translateY(0px); }
  50% { transform: rotate(-3.5deg) translateY(-4px); }
}

@keyframes pnSilkShimmer {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

@keyframes pnBtnShine {
  0% { left: -75%; }
  45%, 100% { left: 135%; }
}

@keyframes pnPetalDrift {
  0% { transform: translateY(0) rotate(0deg); opacity: 0; }
  20% { opacity: 0.55; }
  80% { opacity: 0.55; }
  100% { transform: translateY(-90px) rotate(160deg); opacity: 0; }
}

body.peau-neuve {
  overflow-x: hidden;
}

body.peau-neuve .tiny-note {
  background: linear-gradient(90deg, #3a2850, #593d79, #3a2850);
  background-size: 200% 200%;
  animation: pnSilkShimmer 9s ease infinite;
  letter-spacing: 0.04em;
}

body.peau-neuve .header {
  position: sticky;
  top: 0;
  z-index: 35;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  background: rgba(249, 245, 238, 0.84);
  transition: box-shadow 0.35s ease, background-color 0.35s ease;
}

body.peau-neuve .header nav a {
  position: relative;
  transition: color 0.25s ease, transform 0.25s ease;
}
body.peau-neuve .header nav a:hover {
  color: #8e71b6;
  transform: translateY(-1px);
}

body.peau-neuve .soft-copy h1 i {
  background: linear-gradient(120deg, #8e71b6 0%, #c08497 50%, #7c5ba6 100%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: pnSilkShimmer 6s ease-in-out infinite;
  display: inline-block;
}

body.peau-neuve .soft-copy .solid,
body.peau-neuve .soft-story .outline {
  position: relative;
  overflow: hidden;
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, background-color 0.3s ease;
}
body.peau-neuve .soft-copy .solid::after {
  content: "";
  position: absolute;
  top: -30%;
  left: -75%;
  width: 45%;
  height: 160%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.28), transparent);
  transform: skewX(-22deg);
  animation: pnBtnShine 4.8s ease-in-out infinite;
  pointer-events: none;
}
body.peau-neuve .soft-copy .solid:hover {
  transform: translateY(-3px) scale(1.03);
  box-shadow: 0 16px 34px -8px rgba(58, 40, 80, 0.42);
}

body.peau-neuve .soft-handnote {
  animation: pnHandnoteWave 4.5s ease-in-out infinite;
}

body.peau-neuve .portrait-circle {
  animation: pnLiquidMorph 8s ease-in-out infinite;
  will-change: transform, border-radius;
}
body.peau-neuve .portrait-circle img {
  animation: pnPortraitZoom 8s ease-in-out infinite;
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
body.peau-neuve .orbit-label {
  animation: pnOrbitFloat 5.5s ease-in-out infinite;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
body.peau-neuve .orbit-label:hover {
  transform: rotate(0deg) scale(1.1) !important;
}
body.peau-neuve .petal {
  animation: pnSpinFloat 22s linear infinite;
  transform-origin: center;
  pointer-events: none;
}
body.peau-neuve .soft-flower {
  animation: pnSpinFloat 36s linear infinite;
  transform-origin: center;
  pointer-events: none;
}

/* Cartes Rituels 01 · 02 · 03 */
body.peau-neuve .ritual-cards a {
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease;
  overflow: hidden;
}
body.peau-neuve .ritual-cards a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 85% 15%, rgba(255, 255, 255, 0.55), transparent 60%);
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}
body.peau-neuve .ritual-cards a:hover {
  transform: translateY(-9px) scale(1.015);
  box-shadow: 0 22px 44px -14px rgba(58, 40, 80, 0.16);
}
body.peau-neuve .ritual-cards a:hover::before {
  opacity: 1;
}
body.peau-neuve .ritual-cards a b {
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
body.peau-neuve .ritual-cards a:hover b {
  transform: translate(5px, -5px) scale(1.15);
}

/* Cartes Produits */
body.peau-neuve .item {
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease;
  box-shadow: 0 6px 20px -10px rgba(58, 40, 80, 0.08);
}
body.peau-neuve .item:hover {
  transform: translateY(-10px);
  box-shadow: 0 26px 50px -14px rgba(90, 62, 122, 0.2);
}
body.peau-neuve .item-media img {
  transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
body.peau-neuve .item:hover .item-media img {
  transform: scale(1.09);
}
body.peau-neuve .add {
  transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}
body.peau-neuve .add:hover {
  transform: scale(1.03);
  box-shadow: 0 10px 22px -6px rgba(58, 40, 80, 0.35);
}

/* Révélation fluide au défilement */
.pn-reveal {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1), transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}
.pn-reveal.pn-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Halo sensoriel suivant le curseur */
.pn-cursor-aura {
  position: fixed;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 1;
  background: radial-gradient(circle, rgba(189, 160, 224, 0.22) 0%, rgba(242, 216, 187, 0.14) 45%, transparent 72%);
  transform: translate(-50%, -50%);
  transition: width 0.3s ease, height 0.3s ease, opacity 0.4s ease;
  mix-blend-mode: multiply;
}

/* Particules / pétales flottants */
.pn-floating-petal {
  position: absolute;
  pointer-events: none;
  color: rgba(142, 113, 182, 0.38);
  font-size: 16px;
  animation: pnPetalDrift 6.5s ease-in-out infinite;
  z-index: 2;
}
