/* Pagina comercial de un proyecto armada con bloques (proyectos.BloqueProyecto).
   Los colores vienen del proyecto: .pb lleva --pb-p (principal) y --pb-s (secundario) en linea.
   Sin animaciones en reposo: solo transiciones cortas al pasar el mouse. */
.pb{ --pb-p:#1A4B99; --pb-s:#2B76F7; --pb-verde:#2BB673; --pb-cian:#40CFFF;
  --ink:#0f172a; --mut:#5b6b7f; --soft:#f6f9fd; --bd:#e3e9f1; --tint:#eef4ff; }
.pb *{ box-sizing:border-box; }
.pb-wrap{ max-width:1180px; margin:0 auto; padding:0 1.25rem; position:relative; z-index:1; }
.pb-eye{ display:inline-flex; align-items:center; gap:.5rem; font-size:.74rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; color:var(--pb-s); }
.pb-h2{ font-size:1.9rem; font-weight:800; color:var(--ink); font-family:var(--c-font-display); line-height:1.15; letter-spacing:-.015em; margin:0; }
@media(min-width:768px){ .pb-h2{ font-size:2.45rem; } }
.pb-lead{ color:var(--mut); font-size:1.05rem; line-height:1.65; margin:0; }
.pb-head{ text-align:center; max-width:740px; margin:0 auto 3rem; }
.pb-head .pb-h2{ margin-top:.75rem; } .pb-head .pb-lead{ margin-top:1rem; }
.pb-sec{ position:relative; padding:5rem 0; overflow:hidden; }
.pb-sec--soft{ background:var(--soft); } .pb-sec--white{ background:#fff; }
.pb-dots{ position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26'%3E%3Ccircle cx='2' cy='2' r='1.5' fill='%23cdd7e6'/%3E%3C/svg%3E"); background-size:26px 26px;
  -webkit-mask:radial-gradient(ellipse 80% 74% at 50% 44%, #000 0%, transparent 80%); mask:radial-gradient(ellipse 80% 74% at 50% 44%, #000 0%, transparent 80%); }
.pb-shape{ position:absolute; z-index:0; border-radius:46px; pointer-events:none; }
.pb-btns{ display:flex; flex-wrap:wrap; gap:.75rem; margin-top:2rem; }
.pb-btns--c{ justify-content:center; }
.pb-btn{ display:inline-flex; align-items:center; justify-content:center; gap:.55rem; font-weight:700; padding:.85rem 1.5rem; border-radius:999px; font-size:.95rem;
  cursor:pointer; border:2px solid transparent; transition:transform .15s, box-shadow .15s, color .15s, border-color .15s; text-align:center; text-decoration:none; }
.pb-btn:hover{ transform:translateY(-2px); }
.pb-btn--p{ background:var(--pb-s); color:#fff; box-shadow:0 12px 26px -12px color-mix(in srgb, var(--pb-s) 70%, transparent); }
.pb-btn--line{ background:#fff; color:var(--ink); border-color:var(--bd); }
.pb-btn--line:hover{ border-color:var(--pb-s); color:var(--pb-s); }
.pb-btn--wa{ background:#1fa855; color:#fff; box-shadow:0 12px 26px -12px rgba(31,168,85,.55); }
.pb-list{ list-style:none; padding:0; margin:1rem 0 0; display:grid; gap:.6rem; }
.pb-list li{ display:flex; gap:.65rem; align-items:flex-start; font-size:.9rem; color:var(--ink); line-height:1.5; }
.pb-list li i{ color:var(--pb-verde); margin-top:.2rem; flex-shrink:0; }
.pb-ic{ width:46px; height:46px; border-radius:13px; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:1.2rem;
  color:var(--c, var(--pb-s)); background:color-mix(in srgb, var(--c, var(--pb-s)) 12%, #fff); }

/* PORTADA */
.pb-hero{ position:relative; background:#f7f9fd; overflow:hidden; padding:7.5rem 0 4.5rem; }
.pb-hero .pb-dots{ -webkit-mask:none; mask:none; }
.pb-back{ display:inline-flex; align-items:center; gap:.5rem; font-size:.875rem; color:var(--mut); margin-bottom:1.75rem; text-decoration:none; }
.pb-back:hover{ color:var(--pb-s); }
.pb-hgrid{ display:grid; gap:2.5rem; align-items:center; }
@media(min-width:1024px){ .pb-hgrid{ grid-template-columns:minmax(0,1fr) minmax(0,1.08fr); gap:3rem; } }
.pb-chip{ display:inline-flex; align-items:center; gap:.5rem; padding:.32rem .9rem .32rem .38rem; border-radius:999px; background:#fff;
  border:1px solid var(--bd); font-size:.76rem; font-weight:700; color:var(--ink); box-shadow:0 8px 20px -12px rgba(15,23,42,.2); }
.pb-chip .n{ background:var(--pb-verde); color:#fff; font-size:.62rem; font-weight:800; padding:.16rem .55rem; border-radius:999px; letter-spacing:.04em; }
.pb-h1{ margin:1.4rem 0 0; font-family:var(--c-font-display); color:var(--ink); line-height:1.04; letter-spacing:-.02em; }
.pb-h1__fila{ display:flex; align-items:center; gap:.85rem; }
.pb-h1__logo{ height:clamp(3.4rem,7.4vw,5.2rem); width:auto; flex-shrink:0; }
.pb-h1__logotipo{ height:clamp(4.2rem,9vw,6.4rem); width:auto; max-width:100%; }   /* logo ancho (el nombre escrito): va en lugar del nombre */
.pb-h1__marca{ display:block; font-size:clamp(3.4rem,8vw,5.4rem); font-weight:800;
  background:linear-gradient(100deg,var(--pb-p) 0%,var(--pb-s) 58%,var(--pb-cian) 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.pb-h1__txt{ display:block; margin-top:.35rem; font-size:clamp(1.55rem,3.1vw,2.3rem); font-weight:800; }
.pb-hero .pb-lead{ margin-top:1.25rem; max-width:34rem; font-size:1.1rem; }
.pb-checks{ display:flex; flex-wrap:wrap; gap:.6rem 1.4rem; margin-top:1.9rem; }
.pb-checks span{ display:inline-flex; align-items:center; gap:.5rem; font-size:.86rem; font-weight:700; color:var(--ink); }
.pb-checks i{ color:var(--pb-verde); }
.pb-vis{ position:relative; }
.pb-win{ position:relative; background:#fff; border-radius:16px; overflow:hidden; border:1px solid var(--bd); box-shadow:0 40px 80px -36px rgba(15,23,42,.45); }
.pb-win__bar{ display:flex; gap:.4rem; padding:.6rem .85rem; background:#eef2f7; border-bottom:1px solid var(--bd); align-items:center; }
.pb-win__bar i{ width:10px; height:10px; border-radius:50%; flex-shrink:0; }
.pb-win__url{ margin-left:.5rem; font-size:.7rem; color:var(--mut); background:#fff; border:1px solid var(--bd); border-radius:6px; padding:.1rem .6rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.pb-win img{ display:block; width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; object-position:top left; }
.pb-vis .pb-win{ margin-left:14%; }
.pb-persona{ position:absolute; z-index:3; left:-4%; bottom:-11%; width:52%; height:auto; pointer-events:none; filter:drop-shadow(0 18px 24px rgba(15,23,42,.12)); }
.pb-float{ position:absolute; z-index:4; background:#fff; border:1px solid var(--bd); border-radius:14px; box-shadow:0 24px 50px -20px rgba(15,23,42,.32);
  display:flex; align-items:center; gap:.65rem; padding:.65rem .9rem; }
.pb-float b{ display:block; font-size:.82rem; color:var(--ink); line-height:1.2; } .pb-float small{ display:block; font-size:.68rem; color:var(--mut); }
.pb-float .pb-ic{ width:34px; height:34px; border-radius:10px; font-size:1rem; color:#fff; background:var(--c, var(--pb-s)); }
.pb-float--1{ top:-20px; right:-12px; } .pb-float--2{ right:6%; bottom:-24px; }
/* Instituciones en produccion: bolitas flotando alrededor de la pantalla; en celular, en fila bajo los vistos */
.pb-bolas{ position:absolute; inset:0; z-index:5; pointer-events:none; }
.pb-bola{ position:absolute; pointer-events:auto; width:96px; height:96px; border-radius:50%; background:#fff; border:1px solid var(--bd);
  box-shadow:0 18px 36px -16px rgba(15,23,42,.35); display:flex; align-items:center; justify-content:center; transition:transform .18s; }
.pb-bola:hover{ transform:translateY(-3px); }
.pb-bola__logo{ width:84px; height:84px; border-radius:50%; overflow:hidden; display:flex; align-items:center; justify-content:center;
  background:var(--tint); color:var(--pb-s); font-family:var(--c-font-display); font-weight:800; font-size:1.8rem; }
.pb-bola__logo img{ width:100%; height:100%; object-fit:contain; }
.pb-bola__ok{ position:absolute; right:4px; bottom:6px; width:20px; height:20px; border-radius:50%; background:var(--pb-verde); border:3px solid #fff; }
.pb-bola::after{ content:attr(data-nombre); position:absolute; top:calc(100% + 8px); left:50%; transform:translateX(-50%); white-space:nowrap;
  background:var(--ink); color:#fff; font-size:.72rem; font-weight:700; padding:.25rem .6rem; border-radius:8px; opacity:0; transition:opacity .15s; pointer-events:none; }
.pb-bola:hover::after{ opacity:1; }
.pb-bolas .pb-bola:nth-child(1){ top:-52px; left:0; }
.pb-bolas .pb-bola:nth-child(2){ top:26%; left:-6%; width:84px; height:84px; }
.pb-bolas .pb-bola:nth-child(2) .pb-bola__logo{ width:72px; height:72px; font-size:1.55rem; }
.pb-bolas .pb-bola:nth-child(3){ top:-58px; left:42%; }
.pb-bolas .pb-bola:nth-child(4){ bottom:-46px; left:50%; }
.pb-bolas .pb-bola:nth-child(5){ top:46%; right:-48px; }
.pb-bolas .pb-bola:nth-child(n+6){ display:none; }
.pb-bolas--linea{ display:none; gap:.6rem; margin-top:1.4rem; }
.pb-bolas--linea .pb-bola{ position:relative; width:60px; height:60px; }
.pb-bolas--linea .pb-bola__logo{ width:50px; height:50px; font-size:1.2rem; }
.pb-bolas--linea .pb-bola::after{ display:none; }
@media(max-width:1023px){ .pb-float{ display:none; } .pb-vis{ margin-bottom:2.5rem; } }
@media(max-width:1023px){ .pb-bolas{ display:none; } .pb-bolas--linea{ display:flex; } }
@media(max-width:640px){ .pb-vis .pb-win{ margin-left:0; } .pb-persona{ position:relative; display:block; left:auto; bottom:auto; width:78%; margin:-2.5rem auto -1rem; } .pb-hero{ padding-top:6.5rem; } }
/* "Proximamente" (Proyecto.es_proximo): la pastilla en naranja. Un nombre largo, mas chico. Sin imagen de portada
   (un servicio como la capacitacion), la ilustracion del bloque en el lugar de la pantalla. */
.pb-chip .n.n--prox{ background:#F7931E; color:#231400; }
.pb-h1__marca--largo{ font-size:clamp(2.5rem,5.4vw,3.9rem); line-height:1.02; }
.pb-h1__marca--muy-largo{ font-size:clamp(2.1rem,4.1vw,3.05rem); line-height:1.06; }
.pb-vis--ilus{ display:flex; justify-content:center; }
.pb-vis--ilus .pb-persona{ position:relative; left:auto; bottom:auto; display:block; width:min(500px,100%); margin:0 auto; filter:none; }
@media(max-width:1023px){ .pb-vis--ilus{ margin-bottom:0; } }
@media(max-width:640px){ .pb-vis--ilus .pb-persona{ width:84%; margin:0 auto; } }

/* CIFRAS */
.pb-cifras{ display:grid; grid-template-columns:repeat(2,1fr); gap:2rem 1rem; }
@media(min-width:768px){ .pb-cifras{ grid-template-columns:repeat(var(--n,4),1fr); } }
.pb-cifra{ text-align:center; }
.pb-cifra b{ display:block; font-family:var(--c-font-display); font-size:2.6rem; font-weight:800; color:var(--ink); line-height:1; }
.pb-cifra span{ display:block; margin-top:.5rem; font-size:.86rem; font-weight:700; color:var(--mut); }

/* BENEFICIOS */
.pb-ben{ display:grid; grid-template-columns:1fr; gap:1rem; }
@media(min-width:640px){ .pb-ben{ grid-template-columns:repeat(2,1fr); } }
@media(min-width:1024px){ .pb-ben{ grid-template-columns:repeat(4,1fr); gap:1.25rem; } }
.pb-ben__it{ display:flex; gap:.9rem; align-items:flex-start; padding:1.25rem; border-radius:18px; background:#fff; border:1px solid var(--bd); }
.pb-ben__it h3{ font-size:1rem; font-weight:800; color:var(--ink); margin:0; }
.pb-ben__it p{ font-size:.85rem; color:var(--mut); line-height:1.5; margin:.3rem 0 0; }
/* Con ilustracion (los items traen imagen): tres por fila, la ilustracion arriba y el icono de color con el titulo */
@media(min-width:1024px){ .pb-ben--ilus{ grid-template-columns:repeat(3,1fr); } }
.pb-ben__it--ilus{ flex-direction:column; align-items:stretch; gap:0; padding:0; overflow:hidden; }
.pb-ben__img{ display:flex; justify-content:center; background:#F0F7FB; padding:.9rem 1rem 0; }
.pb-ben__img img{ display:block; width:min(250px,100%); height:auto; }
.pb-ben__b{ display:flex; gap:.9rem; align-items:flex-start; padding:1.15rem 1.25rem 1.35rem; }

/* VIDEO */
.pb-video{ position:relative; max-width:980px; margin:0 auto; border-radius:20px; overflow:hidden; border:1px solid var(--bd); background:#0f172a; box-shadow:0 40px 80px -40px rgba(15,23,42,.5); }
.pb-video video, .pb-video iframe{ display:block; width:100%; aspect-ratio:16/9; border:0; }

/* CARACTERISTICAS: tarjetas de dos en dos con su ilustracion */
.pb-areas{ display:grid; grid-template-columns:1fr; gap:1.1rem; }
@media(min-width:900px){ .pb-areas{ grid-template-columns:repeat(2,1fr); gap:1.4rem; } }
.pb-area{ position:relative; display:grid; grid-template-columns:132px 1fr; gap:1.1rem; align-items:center; padding:1rem 1.25rem 1rem 1rem; border-radius:20px;
  background:#fff; border:1px solid var(--bd); transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.pb-area:hover{ transform:translateY(-3px); border-color:color-mix(in srgb, var(--pb-s) 35%, transparent); box-shadow:0 22px 44px -28px rgba(45,62,80,.4); }
.pb-area__img{ width:132px; height:107px; border-radius:14px; background:var(--soft); overflow:hidden; display:flex; align-items:center; justify-content:center; }
.pb-area__img img{ width:100%; height:100%; object-fit:contain; }
.pb-area__img i{ font-size:2.2rem; color:var(--pb-s); }
.pb-area h3{ display:flex; align-items:center; gap:.55rem; font-size:1.02rem; font-weight:800; color:var(--ink); margin:0; line-height:1.25; }
.pb-area h3 i{ color:var(--pb-s); font-size:1.05rem; flex-shrink:0; }
.pb-area p{ font-size:.86rem; color:var(--mut); line-height:1.55; margin:.4rem 0 0; }
.pb-area__num{ position:absolute; top:.7rem; right:1rem; font-family:var(--c-font-display); font-weight:800; font-size:1.6rem; line-height:1; color:rgba(45,62,80,.07); }
@media(max-width:520px){ .pb-area{ grid-template-columns:96px 1fr; gap:.85rem; } .pb-area__img{ width:96px; height:78px; } .pb-area__num{ display:none; } }
.pb-extra{ display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem; margin-top:2.25rem; }
.pb-extra span{ display:inline-flex; align-items:center; gap:.5rem; padding:.5rem .95rem; border-radius:999px; background:#fff; border:1px solid var(--bd); font-size:.84rem; font-weight:700; color:var(--ink); }
.pb-extra i{ color:var(--pb-s); }

/* CAPTURAS (carrusel manual) */
.pb-cargrid{ display:grid; gap:2.5rem; align-items:center; }
@media(min-width:1024px){ .pb-cargrid{ grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:3.5rem; } }
.pb-car{ position:relative; min-width:0; }
.pb-car__view{ overflow:hidden; }
.pb-car__track{ display:flex; transition:transform .45s ease; }
.pb-car__slide{ min-width:100%; display:block; cursor:zoom-in; border:0; padding:0; background:#fff; }
.pb-car__slide img{ display:block; width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; object-position:top left; }
.pb-car__nav{ position:absolute; top:calc(50% - 30px); width:44px; height:44px; border-radius:50%; background:#fff; color:var(--pb-p); border:1px solid var(--bd);
  box-shadow:0 10px 22px -10px rgba(0,0,0,.3); display:flex; align-items:center; justify-content:center; cursor:pointer; z-index:3; }
.pb-car__nav:hover{ color:var(--pb-s); }
.pb-car__nav.prev{ left:-18px; } .pb-car__nav.next{ right:-18px; }
@media(max-width:640px){ .pb-car__nav{ display:none; } }
.pb-car__cap{ margin-top:1.1rem; min-height:3.6rem; } .pb-car__cap h3{ font-size:1.05rem; font-weight:800; color:var(--ink); margin:0; }
.pb-car__cap p{ font-size:.88rem; color:var(--mut); margin:.25rem 0 0; }
.pb-car__dots{ display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.6rem; }
.pb-car__dots button{ width:9px; height:9px; border-radius:999px; border:0; background:#d5deea; cursor:pointer; padding:0; transition:width .2s,background .2s; }
.pb-car__dots button.on{ width:26px; background:var(--pb-s); }
.pb-car__hint{ position:absolute; top:.55rem; right:.8rem; z-index:3; font-size:.64rem; font-weight:700; color:var(--mut); background:rgba(255,255,255,.92); border:1px solid var(--bd); border-radius:999px; padding:.12rem .55rem; pointer-events:none; }

/* DEMO POR PERFIL (pestanas manuales) */
.pb-rs{ display:grid; gap:1.75rem; } @media(min-width:1024px){ .pb-rs{ grid-template-columns:minmax(0,360px) 1fr; align-items:center; } }
.pb-tabs{ display:grid; gap:.7rem; }
@media(max-width:1023px){ .pb-tabs{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
.pb-tab{ width:100%; text-align:left; display:flex; gap:.85rem; align-items:center; padding:.85rem 1rem; border:1px solid var(--bd); border-radius:16px; background:#fff; cursor:pointer; transition:transform .18s, border-color .18s, box-shadow .18s; }
.pb-tab:hover{ transform:translateX(3px); border-color:color-mix(in srgb, var(--pb-s) 40%, transparent); }
.pb-tab.on{ border-color:var(--pb-s); box-shadow:0 16px 32px -18px color-mix(in srgb, var(--pb-s) 60%, transparent); }
.pb-tab .pb-ic{ width:42px; height:42px; border-radius:12px; color:#fff; background:var(--c, var(--pb-s)); }
.pb-tab b{ display:block; font-size:.98rem; font-weight:800; color:var(--ink); }
.pb-tab small{ display:block; font-size:.78rem; color:var(--mut); line-height:1.35; margin-top:.15rem; }
@media(max-width:1023px){ .pb-tab small{ display:none; } .pb-tab:hover{ transform:none; } }
@media(max-width:440px){ .pb-tabs{ grid-template-columns:1fr; } .pb-tab{ padding:.65rem .8rem; } .pb-tab .pb-ic{ width:36px; height:36px; font-size:1rem; } }
.pb-panes{ position:relative; min-width:0; }
.pb-pane{ display:none; } .pb-pane.on{ display:block; }
.pb-pane__go{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.75rem; margin-top:1rem; }
.pb-pane__go p{ margin:0; font-size:.88rem; color:var(--mut); }

/* TARJETAS CON IMAGEN Y LISTA */
.pb-duo{ display:grid; gap:1.4rem; } @media(min-width:900px){ .pb-duo{ grid-template-columns:repeat(2,1fr); } }
.pb-duo__c{ display:grid; border-radius:24px; background:#fff; border:1px solid var(--bd); overflow:hidden; }
.pb-duo__img{ background:var(--soft); display:flex; align-items:center; justify-content:center; padding:1rem 1rem 0; }
.pb-duo__img img{ width:min(320px,100%); height:auto; }
.pb-duo__b{ padding:1.5rem 1.6rem 1.7rem; }
.pb-duo__b h3{ display:flex; align-items:center; gap:.6rem; font-size:1.25rem; font-weight:800; color:var(--ink); margin:0; }
.pb-duo__b h3 i{ color:var(--c, var(--pb-s)); }
.pb-duo__b > p{ font-size:.9rem; color:var(--mut); line-height:1.55; margin:.5rem 0 0; }

/* PARA QUIEN ES */
.pb-para{ display:grid; gap:1.4rem; } @media(min-width:900px){ .pb-para{ grid-template-columns:repeat(var(--n,3),1fr); } }
.pb-para__c{ border-radius:24px; background:#fff; border:1px solid var(--bd); overflow:hidden; display:flex; flex-direction:column; transition:transform .2s, box-shadow .2s; }
.pb-para__c:hover{ transform:translateY(-4px); box-shadow:0 26px 50px -30px rgba(45,62,80,.4); }
.pb-para__img{ background:linear-gradient(180deg,#f3f8ff,#fff); padding:.75rem 1.25rem 0; display:flex; justify-content:center; }
.pb-para__img img{ width:min(300px,100%); height:auto; }
.pb-para__b{ padding:.4rem 1.5rem 1.6rem; }
.pb-para__b h3{ font-size:1.18rem; font-weight:800; color:var(--ink); margin:0; }
.pb-para__b > p{ font-size:.88rem; color:var(--mut); line-height:1.55; margin:.4rem 0 0; }
.pb-para__b .pb-list li{ font-size:.87rem; }

/* BANDA OSCURA */
.pb-banda{ display:grid; gap:1.25rem; align-items:center; padding:1.6rem 1.75rem; border-radius:24px; background:var(--pb-p); color:#fff; }
@media(min-width:900px){ .pb-banda{ grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:2.25rem; padding:2rem 2.25rem; } }
.pb-banda .pb-eye{ color:var(--pb-cian); } .pb-banda h3{ font-size:1.35rem; font-weight:800; margin:.4rem 0 0; color:#fff; }
.pb-banda p{ margin:.4rem 0 0; font-size:.9rem; color:rgba(255,255,255,.78); line-height:1.55; }
.pb-banda__its{ display:grid; gap:.7rem; } @media(min-width:640px){ .pb-banda__its{ grid-template-columns:repeat(var(--n,3),minmax(0,1fr)); } }
.pb-banda__it{ display:flex; flex-direction:column; gap:.55rem; padding:1rem 1.05rem; border-radius:16px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); }
@media(max-width:639px){ .pb-banda__it{ flex-direction:row; align-items:flex-start; } }
.pb-banda__it i{ font-size:1.45rem; color:var(--pb-cian); width:1.6rem; flex-shrink:0; }
.pb-banda__it b{ display:block; font-size:.95rem; } .pb-banda__it small{ display:block; font-size:.78rem; color:rgba(255,255,255,.72); line-height:1.45; margin-top:.2rem; }

/* IMAGEN CON GRILLA (seguridad) */
.pb-seg{ display:grid; gap:2.5rem; align-items:center; } @media(min-width:1024px){ .pb-seg{ grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:3.5rem; } }
.pb-seg__img{ display:flex; justify-content:center; } .pb-seg__img img{ width:min(440px,100%); height:auto; }
.pb-seg__grid{ display:grid; gap:.9rem; margin-top:1.75rem; } @media(min-width:640px){ .pb-seg__grid{ grid-template-columns:repeat(2,1fr); } }
.pb-seg__it{ display:flex; gap:.75rem; align-items:flex-start; padding:1rem; border-radius:16px; background:#fff; border:1px solid var(--bd); }
.pb-seg__it .pb-ic{ width:38px; height:38px; border-radius:11px; font-size:1.05rem; --c:var(--pb-verde); }
.pb-seg__it b{ display:block; font-size:.92rem; color:var(--ink); } .pb-seg__it span{ display:block; font-size:.82rem; color:var(--mut); line-height:1.45; margin-top:.15rem; }

/* INSTITUCIONES */
.pb-inst{ display:flex; flex-wrap:wrap; justify-content:center; gap:1.25rem; }
.pb-inst__c{ width:min(240px,100%); text-align:center; padding:1.5rem 1.25rem; border-radius:22px; background:#fff; border:1px solid var(--bd); transition:transform .2s, box-shadow .2s; }
.pb-inst__c:hover{ transform:translateY(-4px); box-shadow:0 24px 44px -28px rgba(45,62,80,.4); }
.pb-inst__logo{ width:76px; height:76px; margin:0 auto; border-radius:50%; display:flex; align-items:center; justify-content:center; overflow:hidden; background:var(--tint); color:var(--pb-s); font-weight:800; font-size:1.6rem; }
.pb-inst__logo img{ width:100%; height:100%; object-fit:contain; }
.pb-inst__c h3{ margin:.9rem 0 .5rem; font-size:.98rem; font-weight:800; color:var(--ink); }
.pb-inst__badge{ display:inline-flex; align-items:center; gap:.35rem; font-size:.66rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:#1D7A4D; background:rgba(43,182,115,.12); padding:.2rem .6rem; border-radius:999px; }

/* PREGUNTAS */
.pb-faq{ max-width:820px; margin:0 auto; display:grid; gap:.75rem; }
.pb-faq details{ border-radius:16px; background:#fff; border:1px solid var(--bd); transition:border-color .2s, box-shadow .2s; }
.pb-faq details[open]{ border-color:color-mix(in srgb, var(--pb-s) 40%, transparent); box-shadow:0 18px 36px -26px color-mix(in srgb, var(--pb-s) 50%, transparent); }
.pb-faq summary{ list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.05rem 1.25rem; font-weight:700; color:var(--ink); font-size:1rem; }
.pb-faq summary::-webkit-details-marker{ display:none; }
.pb-faq summary .mas{ width:30px; height:30px; border-radius:50%; background:var(--tint); color:var(--pb-s); display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:transform .2s; font-size:.85rem; }
.pb-faq details[open] summary .mas{ transform:rotate(180deg); }
.pb-faq details p{ margin:0; padding:0 1.25rem 1.15rem; color:var(--mut); font-size:.94rem; line-height:1.6; }

/* CIERRE */
.pb-cta{ position:relative; overflow:hidden; text-align:center; padding:5.5rem 1.5rem; background:#f6f9fd; }
.pb-cta__in{ position:relative; z-index:1; max-width:820px; margin:0 auto; }
.pb-cta h2{ font-family:var(--c-font-display); font-weight:800; line-height:1.15; font-size:clamp(1.9rem,4.4vw,3rem); color:var(--ink); margin:1rem 0 0; }
.pb-cta .pb-lead{ margin-top:1.25rem; font-size:1.1rem; }

/* OTROS PROYECTOS */
.pb-op{ display:grid; grid-template-columns:1fr; gap:1.5rem; } @media(min-width:768px){ .pb-op{ grid-template-columns:repeat(3,1fr); } }
.pb-opc{ display:block; background:#fff; border:1px solid var(--bd); border-radius:24px; overflow:hidden; transition:transform .2s ease, box-shadow .2s ease; text-decoration:none; }
.pb-opc:hover{ transform:translateY(-6px); box-shadow:0 28px 50px -26px rgba(45,62,80,.3); }
.pb-opc__top{ position:relative; height:170px; display:flex; align-items:center; justify-content:center; overflow:hidden; background:color-mix(in srgb, var(--pc,#2B76F7) 9%, #fff); }
.pb-opc__top img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:top left; }
.pb-opc__top img.persona{ position:relative; inset:auto; width:auto; height:100%; object-fit:contain; }
.pb-opc__top i{ font-size:2.7rem; color:var(--pc,#2B76F7); }
.pb-opc__b{ padding:1.3rem 1.5rem 1.6rem; }
.pb-opc__cat{ font-size:.62rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; color:var(--pb-s); }
.pb-opc h3{ display:flex; align-items:flex-start; gap:.55rem; font-size:1.08rem; font-weight:800; color:var(--ink); margin:.3rem 0 .35rem; }
.pb-opc__logo{ height:1.9rem; width:auto; flex-shrink:0; margin-top:-.15rem; }
.pb-opc__logotipo{ height:2.1rem; width:auto; max-width:100%; }
.pb-opc p{ font-size:.85rem; color:var(--mut); line-height:1.5; margin:0; }
.pb-opc__go{ display:inline-flex; align-items:center; gap:.45rem; margin-top:1rem; font-size:.82rem; font-weight:800; color:var(--pb-s); }

/* MODAL (ampliar captura) */
.pb-modal{ position:fixed; inset:0; z-index:120; display:none; align-items:center; justify-content:center; padding:1.2rem; }
.pb-modal.open{ display:flex; }
.pb-modal__bd{ position:absolute; inset:0; background:rgba(15,23,42,.82); }
.pb-modal__box{ position:relative; z-index:1; max-width:1120px; width:100%; max-height:92vh; overflow:auto; border-radius:16px; background:#fff; }
.pb-modal__x{ position:absolute; top:.7rem; right:.7rem; z-index:2; width:40px; height:40px; border-radius:50%; border:0; background:rgba(255,255,255,.94); color:var(--ink); font-size:1.3rem; cursor:pointer; box-shadow:0 4px 12px rgba(0,0,0,.15); }
.pb-modal__img{ display:block; width:100%; height:auto; }
.pb-modal__cap{ padding:1rem 1.3rem; } .pb-modal__cap h3{ font-size:1.05rem; font-weight:800; margin:0; } .pb-modal__cap p{ font-size:.9rem; color:var(--mut); margin:.25rem 0 0; }
