/* Página de proyecto · lectura con pausas + entrada de imágenes y videos estilo Apple.
   Se carga solo en proyecto.php y pisa las reglas viejas de .pd-texto (dos columnas justificadas). */

/* ---------- texto: una fila por sección, primera frase destacada, párrafos cortos ---------- */
.pd-texto.pd-texto--v2{max-width:1120px;margin:120px auto;columns:auto;column-count:1;text-align:left;hyphens:manual;-webkit-hyphens:manual;font-size:inherit;line-height:inherit;letter-spacing:normal;color:#c3cbd8;text-shadow:0 3px 28px #000b}
.pd-sec{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,2.7fr);column-gap:clamp(28px,6vw,96px);padding:58px 0;border-top:1px solid #dce7fc1f}
.pd-sec:first-child{border-top:0;padding-top:0}
.pd-sec:last-child{padding-bottom:0}
.pd-sec--solo{grid-template-columns:minmax(0,1fr)}
.pd-texto--v2 .pd-sub{margin:.75em 0 0!important;align-self:start;position:sticky;top:120px}
.pd-sec__txt{max-width:650px}
.pd-sec__txt p{margin:0 0 1.3em;font-size:clamp(16px,1.2vw,18.5px);line-height:1.8;letter-spacing:-.003em;text-wrap:pretty}
.pd-sec__txt p:last-child{margin-bottom:0}
.pd-sec__txt .pd-lead{font-size:clamp(22px,2.1vw,31px);line-height:1.32;letter-spacing:-.028em;color:#f0f2f6;margin-bottom:1em}
@media(max-width:760px){
  .pd-texto.pd-texto--v2{margin:76px auto}
  .pd-sec{grid-template-columns:minmax(0,1fr);row-gap:16px;padding:42px 0}
  .pd-texto--v2 .pd-sub{position:static;margin:0!important}
  .pd-sec__txt .pd-lead{font-size:22px}
  .pd-sec__txt p{font-size:16.5px;line-height:1.75}
}

/* ---------- entrada del texto: subtítulo, frase y párrafos suben de a uno ---------- */
html.js-reveal .pd-sec .pd-sub,html.js-reveal .pd-sec .pd-sec__txt>p{opacity:0;transform:translateY(26px);transition:opacity 1s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform 1.25s cubic-bezier(.16,1,.3,1) var(--d,0s)}
html.js-reveal .pd-sec.is-in .pd-sub,html.js-reveal .pd-sec.is-in .pd-sec__txt>p{opacity:1;transform:none}

/* ---------- medios: fondo mientras carga + entrada estilo Apple ---------- */
.pd-media,.pd-cover{background:#070b14}
html.js-reveal .pd-anim{opacity:0;transform:translate3d(0,90px,0) scale(.95);clip-path:inset(7% 5% 0 5% round 28px);
  transition:opacity 1.1s cubic-bezier(.2,.7,.2,1) var(--pd-d,0s),transform 1.7s cubic-bezier(.16,1,.3,1) var(--pd-d,0s),clip-path 1.7s cubic-bezier(.16,1,.3,1) var(--pd-d,0s);will-change:transform,opacity}
html.js-reveal .pd-anim>img,html.js-reveal .pd-anim>video{transform:scale(1.15);transition:transform 2.4s cubic-bezier(.16,1,.3,1) var(--pd-d,0s)}
html.js-reveal .pd-anim.is-in{opacity:1;transform:none;clip-path:inset(0 0 0 0 round 0)}
html.js-reveal .pd-anim.is-in>img,html.js-reveal .pd-anim.is-in>video{transform:none}

/* movimiento reducido o pausado con el botón del sitio: todo visible, sin animar */
@media(prefers-reduced-motion:reduce){
  html.js-reveal .pd-anim,html.js-reveal .pd-anim>img,html.js-reveal .pd-anim>video,html.js-reveal .pd-sec .pd-sub,html.js-reveal .pd-sec .pd-sec__txt>p{opacity:1;transform:none;clip-path:none;transition:none}
}
.motion-off .pd-anim,.motion-off .pd-anim>img,.motion-off .pd-anim>video,.motion-off .pd-sec .pd-sub,.motion-off .pd-sec .pd-sec__txt>p{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}
