/* ============================================================
   BIM Forum Chile v14.9 — Caja de oferta (jcard) rediseñada
   Limpia, jerárquica, 100% color de marca (azul + ámbar).
   Reemplaza visualmente a .emp-job. Carga DESPUÉS de v14.7.
   ============================================================ */

.emp-list{ display:flex; flex-direction:column; gap:1rem; }

.jcard{
  position:relative; overflow:hidden;
  background:#fff; border:1px solid var(--ink-100);
  border-radius:16px; padding:1.4rem 1.5rem 1.25rem 1.75rem;
  cursor:pointer; transition:transform .22s var(--ease-out,ease), box-shadow .22s, border-color .22s;
}
.jcard:hover{
  transform:translateY(-3px);
  border-color:transparent;
  box-shadow:0 20px 44px -22px rgba(11,27,44,.4);
}
/* Lomo de color de marca a la izquierda */
.jcard__spine{
  position:absolute; left:0; top:0; bottom:0; width:5px;
  background:linear-gradient(180deg,var(--p1),var(--cta));
}
.jcard--feat{ border-color:rgba(243,146,0,.4); background:linear-gradient(180deg,#fffdf8,#fff); }
.jcard--feat .jcard__spine{ background:linear-gradient(180deg,var(--c3),var(--c1)); }

/* ── Top: logo + títulos + guardar ─────────────────────────── */
.jcard__top{ display:flex; align-items:flex-start; gap:1rem; }
.jcard__logo{
  flex-shrink:0; width:52px; height:52px; border-radius:12px;
  display:grid; place-items:center;
  font-family:var(--f-d); font-weight:800; font-size:1rem; letter-spacing:.02em;
  color:#fff; background:linear-gradient(150deg,var(--p2),var(--cta));
  box-shadow:0 6px 16px -6px rgba(1,117,201,.5);
}
.jcard--feat .jcard__logo{ background:linear-gradient(150deg,var(--c1),#d97e00); box-shadow:0 6px 16px -6px rgba(243,146,0,.55); }
.jcard__head{ flex:1; min-width:0; display:flex; align-items:flex-start; justify-content:space-between; gap:.75rem; }
.jcard__titles{ min-width:0; }
.jcard__title{
  font-family:var(--f-d); font-weight:700; font-size:1.12rem; line-height:1.25;
  color:var(--ink-900); margin:0 0 2px; text-wrap:pretty;
}
.jcard:hover .jcard__title{ color:var(--cta); }
.jcard__co{ font-size:.9rem; color:var(--ink-500); font-weight:500; }

/* Guardar */
.jcard__save{
  flex-shrink:0; width:38px; height:38px; border-radius:10px;
  border:1px solid var(--ink-100); background:var(--ink-25); color:var(--ink-400);
  display:grid; place-items:center; cursor:pointer; transition:all .18s;
}
.jcard__save:hover{ border-color:var(--cta); color:var(--cta); background:#fff; }
.jcard__save.is-on{ background:var(--cta); border-color:var(--cta); color:#fff; }

/* ── Tags ──────────────────────────────────────────────────── */
.jcard__tags{ display:flex; flex-wrap:wrap; gap:.4rem; margin:1rem 0 0; }
.jtag{
  font-family:var(--f-d); font-weight:600; font-size:.72rem; letter-spacing:.01em;
  padding:.32rem .7rem; border-radius:100px; white-space:nowrap;
  background:var(--ink-50); color:var(--ink-500); border:1px solid var(--ink-100);
}
.jtag--area{ background:rgba(1,117,201,.09); color:var(--cta); border-color:rgba(1,117,201,.2); }
.jtag--feat{ background:var(--c1); color:var(--navy-900); border-color:transparent; font-weight:800; }
.jtag--new{ background:rgba(1,117,201,.12); color:var(--cta); border-color:transparent; font-weight:800; }

/* ── Footer: datos + CTA ───────────────────────────────────── */
.jcard__foot{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  margin-top:1.1rem; padding-top:1rem; border-top:1px solid var(--ink-100);
}
.jcard__facts{ display:flex; align-items:center; gap:1.1rem; flex-wrap:wrap; min-width:0; }
.jcard__fact{ display:inline-flex; align-items:center; gap:.4rem; font-size:.85rem; color:var(--ink-500); font-weight:500; }
.jcard__fact svg{ stroke:var(--ink-300); }
.jcard__fact--sal{ font-family:var(--f-d); font-weight:800; color:var(--ink-900); font-size:.92rem; }
.jcard__apply{
  flex-shrink:0; display:inline-flex; align-items:center; gap:.4rem;
  font-family:var(--f-d); font-weight:700; font-size:.88rem; color:var(--cta);
  transition:gap .2s;
}
.jcard:hover .jcard__apply{ gap:.65rem; }

@media(max-width:520px){
  .jcard{ padding:1.2rem 1.15rem 1.1rem 1.4rem; }
  .jcard__foot{ flex-direction:column; align-items:flex-start; gap:.85rem; }
  .jcard__apply{ align-self:flex-end; }
}

/* ════════════════════════════════════════════════════════════
   v14.10 — Grilla visual de áreas (filtro con foto)
   ════════════════════════════════════════════════════════════ */
.emp-areas{ margin:2.25rem 0 1.75rem; }
.emp-areas__head{ display:flex; align-items:baseline; justify-content:space-between; gap:1rem; margin-bottom:1.1rem; flex-wrap:wrap; }
.emp-areas__head h3{ font-family:var(--f-d); font-weight:700; font-size:1.35rem; color:var(--ink-900); }
.emp-areas__head span{ font-size:.85rem; color:var(--ink-400); }
.emp-areas__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.area-card{
  position:relative; overflow:hidden; border-radius:16px; cursor:pointer;
  min-height:190px; padding:0; border:2px solid transparent; text-align:left;
  background:var(--navy-900); transition:transform .25s var(--ease-out,ease), box-shadow .25s, border-color .2s;
}
.area-card:hover{ transform:translateY(-4px); box-shadow:0 22px 48px -24px rgba(11,27,44,.55); }
.area-card.is-on{ border-color:var(--cta); box-shadow:0 22px 48px -24px rgba(1,117,201,.6); }
.area-card img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease-out,ease); }
.area-card:hover img{ transform:scale(1.07); }
.area-card__shade{ position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,15,26,.15) 0%,rgba(7,15,26,.5) 45%,rgba(7,15,26,.9) 100%); }
.area-card.is-on .area-card__shade{ background:linear-gradient(180deg,rgba(1,50,110,.2) 0%,rgba(1,80,150,.55) 45%,rgba(1,50,110,.92) 100%); }
.area-card__body{ position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; justify-content:flex-end; padding:1.15rem 1.2rem; }
.area-card__count{ font-family:var(--f-d); font-weight:700; font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; color:var(--c3); margin-bottom:.35rem; }
.area-card__name{ font-family:var(--f-d); font-weight:700; font-size:1.15rem; color:#fff; line-height:1.15; }
.area-card__desc{ font-size:.78rem; color:rgba(255,255,255,.72); line-height:1.45; margin-top:.4rem; }
.area-card__check{ position:absolute; top:.85rem; right:.85rem; z-index:3; width:26px; height:26px; border-radius:50%; background:var(--cta); color:#fff; display:grid; place-items:center; box-shadow:0 4px 12px -2px rgba(1,117,201,.6); }
@media(max-width:860px){ .emp-areas__grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:440px){ .emp-areas__grid{ grid-template-columns:1fr; } .area-card{ min-height:150px; } }

/* ════════════════════════════════════════════════════════════
   v14.10 — Franja de empresas (logos reales)
   ════════════════════════════════════════════════════════════ */
.emp-companies__head{ text-align:center; margin-bottom:2rem; }
.emp-companies__head .eyebrow{ justify-content:center; }
.emp-companies__head p{ margin-inline:auto; }
.emp-companies__logos{ display:grid; grid-template-columns:repeat(6,1fr); gap:1rem; align-items:stretch; }
.emp-logo{
  display:grid; place-items:center; background:#fff; border:1px solid var(--ink-100);
  border-radius:14px; padding:1.4rem 1rem; min-height:96px; transition:transform .2s, box-shadow .2s, border-color .2s;
}
.emp-logo:hover{ transform:translateY(-3px); box-shadow:0 16px 34px -20px rgba(11,27,44,.4); border-color:transparent; }
.emp-logo img{ max-width:100%; max-height:52px; object-fit:contain; filter:grayscale(1); opacity:.62; transition:filter .25s, opacity .25s; }
.emp-logo:hover img{ filter:grayscale(0); opacity:1; }
@media(max-width:860px){ .emp-companies__logos{ grid-template-columns:repeat(3,1fr); } }
@media(max-width:440px){ .emp-companies__logos{ grid-template-columns:repeat(2,1fr); } }
.emp-logo--ph span{ font-family:"Roboto",Arial,sans-serif; font-weight:700; font-size:.82rem; color:var(--ink-400); letter-spacing:.02em; }
.emp-companies-sec .emp-companies__note{ text-align:center; max-width:60ch; margin:1.5rem auto 0; font-size:.85rem; color:var(--ink-400); }
