/* =========================================================
   ELEVATE MEDIA LABS — Páginas institucionales
   (/servicios, /servicios/<slug>, /plataforma, /nosotros, /contacto)
   Usa site.css y la cabecera/CTA de blog.css (.bhead, .bcta).
   Las genera scripts/generate-pages.js.
   ========================================================= */

/* ---------- Cabecera ---------- */
.crumbs{display:flex;flex-direction:column;gap:0.75rem}
.crumbs ol{display:flex;flex-wrap:wrap;gap:0.375rem;margin:0;padding:0;list-style:none;font-family:var(--mono);font-size:0.6563rem;color:rgba(255,255,255,.45)}
.crumbs li + li::before{content:"/";margin-right:0.375rem;opacity:.5}
.crumbs a:hover{color:#fff}
.phero__actions{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1.75rem}

/* ---------- Bloques ---------- */
.pblock{padding:5rem var(--gutter) 0}
.pblock .h2{max-width:24ch}
.ptext{margin-top:1.25rem;max-width:60ch;font-size:0.875rem;line-height:1.7;color:rgba(255,255,255,.65);text-wrap:pretty}
.ptext a,.pcontact a{color:#fff;border-bottom:1px solid rgba(255,255,255,.3)}
.ptext a:hover,.pcontact a:hover{color:var(--violet)}

/* Lista con tilde */
.pticks{display:flex;flex-direction:column;gap:0.75rem;margin-top:1.75rem;max-width:60ch;font-size:0.875rem;line-height:1.6;color:rgba(255,255,255,.75)}
.pticks li{display:flex;gap:0.75rem;align-items:flex-start}
.pticks li::before{content:"";flex:0 0 auto;width:0.375rem;height:0.375rem;margin-top:0.55em;border-radius:50%;background:var(--violet)}

/* ---------- Índice de servicios ---------- */
.slist{margin:0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.1)}
.slist__item{
  display:grid;grid-template-columns:3rem minmax(0,1fr) minmax(0,1.3fr) auto;gap:1.5rem;align-items:baseline;
  padding:1.75rem 0;border-bottom:1px solid rgba(255,255,255,.1);transition:color .2s;
}
.slist__item:hover{color:var(--violet)}
.slist__item sup{font-family:var(--mono);font-size:0.6875rem;opacity:.55}
.slist__name{font-size:clamp(1.25rem,2.2vw,1.75rem);font-weight:500;letter-spacing:-.03em;line-height:1.2}
.slist__desc{font-size:0.8125rem;line-height:1.6;color:rgba(255,255,255,.55)}
.slist__go{font-size:1rem}

/* ---------- Capturas ---------- */
.pshots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.pshots figure{display:flex;flex-direction:column;gap:0.625rem}
.pshots img{width:100%;border-radius:0.5rem;background:var(--card-dark)}
.pshots figcaption{font-family:var(--mono);font-size:0.6563rem;color:rgba(255,255,255,.45)}

/* ---------- Preguntas y enlaces ---------- */
.pfaq{margin-top:1.75rem;max-width:60ch;border-top:1px solid rgba(255,255,255,.1)}
.pfaq details{border-bottom:1px solid rgba(255,255,255,.1)}
.pfaq summary{cursor:pointer;padding:1.125rem 0;font-size:0.9375rem;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.pfaq summary::-webkit-details-marker{display:none}
.pfaq summary::after{content:"+";font-family:var(--mono);opacity:.6}
.pfaq details[open] summary::after{content:"−"}
.pfaq p{padding:0 0 1.25rem;font-size:0.8438rem;line-height:1.7;color:rgba(255,255,255,.62)}
.plinks{display:flex;flex-direction:column;margin-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}
.plinks a{display:block;padding:0.9375rem 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:0.9375rem}
.plinks sup{font-family:var(--mono);font-size:0.6563rem;opacity:.55;margin-right:0.375rem}

/* ---------- Planes ---------- */
.pblock > .sgrid + .pplans,.pblock > .sgrid + .pfeats{margin-top:2.5rem}
.pplans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.pplan{
  border-radius:0.375rem;padding:1.75rem 1.625rem 1.625rem;
  display:flex;flex-direction:column;gap:1.25rem;
  background:var(--card-dark);border:1px solid rgba(255,255,255,.06);
}
.pplan--featured{
  background:
    radial-gradient(80% 90% at 100% 0%,rgba(122,92,255,.22),transparent 60%),
    radial-gradient(60% 70% at 0% 100%,rgba(127,227,255,.1),transparent 60%),
    var(--card-dark);
  border-color:rgba(199,184,255,.25);
}
.pplan h3{font-size:1rem;font-weight:500;letter-spacing:-.02em}
.pplan__body{margin-top:0.625rem;font-size:0.75rem;line-height:1.6;color:rgba(255,255,255,.6);max-width:34ch}
.pplan ul{display:flex;flex-direction:column;gap:0.5625rem;font-size:0.7813rem;color:rgba(255,255,255,.8)}
.pplan li{display:flex;gap:0.625rem}
.pplan li::before{content:"—";opacity:.4}
.pplan__foot{margin-top:auto;display:flex;flex-direction:column;gap:1rem}
.pplan__price{font-size:0.7813rem}
.pplan__price strong{font-size:1.375rem;font-weight:500;letter-spacing:-.03em}
.pplan__price span{opacity:.6}
.pplan__cta{
  display:flex;justify-content:space-between;align-items:center;
  padding:0.6875rem 0.875rem;border-radius:0.375rem;background:#fff;color:var(--bg);
  font-size:0.7813rem;font-weight:500;transition:background-color .2s;
}
.pplan__cta:hover{background:#d8d8d8;color:var(--bg)}

/* ---------- Plataforma ---------- */
.pfeats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);border-radius:0.375rem;overflow:hidden}
.pfeat{padding:1.625rem;background:var(--bg)}
.pfeat h3{font-size:0.9375rem;font-weight:500;letter-spacing:-.02em}
.pfeat p{margin-top:0.625rem;font-size:0.7813rem;line-height:1.6;color:rgba(255,255,255,.58)}

/* ---------- Nosotros ---------- */
.pfounder{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:3rem;align-items:center}
.pfounder__photo img{width:100%;border-radius:0.5rem;filter:grayscale(1)}
.pfounder .h2{margin-top:0.625rem}
.pquote{margin-top:1.5rem;font-size:clamp(1.0625rem,1.6vw,1.375rem);line-height:1.45;letter-spacing:-.02em;color:#fff;max-width:40ch;text-wrap:pretty}
.pchips{display:flex;flex-wrap:wrap;gap:0.375rem;margin-top:1.5rem}
.pchips li{padding:0.375rem 0.625rem;border-radius:0.3125rem;border:1px solid rgba(255,255,255,.16);font-size:0.7188rem;color:rgba(255,255,255,.75)}

/* ---------- Contacto ---------- */
.pcontact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;padding:2rem 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.pcontact p:not(.overline){margin-top:0.625rem;font-size:0.9375rem;line-height:1.55}

/* ---------- Responsive ---------- */
@media (max-width:1000px){
  .pplans,.pfeats{grid-template-columns:minmax(0,1fr)}
  .pcontact{grid-template-columns:repeat(2,minmax(0,1fr))}
  .slist__item{grid-template-columns:2.5rem minmax(0,1fr) auto}
  .slist__desc{grid-column:2 / 3}
}
@media (max-width:760px){
  .pblock{padding-top:3.5rem}
  .pshots,.pfounder{grid-template-columns:minmax(0,1fr)}
  .pfounder{gap:1.75rem}
}
@media (max-width:520px){
  .pcontact{grid-template-columns:minmax(0,1fr)}
}
