/* Estilos de /trabaja-con-nosotros y las páginas de oferta (generadas por empleo/). */
.jobs-hero{ background:var(--gradient-structure); color:var(--color-on-dark); padding:calc(var(--nav-h) + clamp(2.5rem,6vw,5rem)) 0 clamp(2.5rem,6vw,4.5rem); position:relative; overflow:hidden; }
.jobs-hero::after{ content:""; position:absolute; right:-8%; top:10%; width:min(46vw,520px); aspect-ratio:1; background:
  linear-gradient(135deg,rgba(255,255,255,.06) 50%,transparent 50%) 0 0/50% 50%,
  linear-gradient(315deg,rgba(247,98,32,.16) 50%,transparent 50%) 100% 100%/50% 50% no-repeat; pointer-events:none; }
.jobs-hero .eyebrow{ color:var(--color-on-dark-muted); }
.jobs-hero h1{ font-family:var(--font-display); font-weight:400; font-size:var(--fs-h1); line-height:var(--lh-tight); letter-spacing:var(--tracking-display); margin:var(--space-md) 0 var(--space-lg); max-width:18ch; }
.jobs-hero p{ font-size:var(--fs-body-lg); color:var(--color-on-dark-muted); max-width:60ch; margin:0 0 var(--space-xl); line-height:var(--lh-body); }
.jobs-hero .breadcrumbs__list, .jobs-hero .breadcrumbs a{ color:var(--color-on-dark-muted); }
.jobs-hero .breadcrumbs [aria-current="page"]{ color:#fff; }
.jobs-hero__cta{ display:flex; flex-wrap:wrap; gap:var(--space-sm); }
.jobs-hero .btn-secondary{ background:transparent; color:#fff; border-color:rgba(255,255,255,.35); }
.jobs-hero .btn-secondary:hover{ background:rgba(255,255,255,.08); border-color:#fff; }
.badge-live{ display:inline-flex; align-items:center; gap:8px; font-size:var(--fs-caption); font-weight:600; color:#fff; background:rgba(247,98,32,.18); border:1px solid rgba(247,98,32,.45); padding:6px 12px; border-radius:var(--radius-pill); margin-left:var(--space-sm); }
.badge-live::before{ content:""; width:8px; height:8px; border-radius:50%; background:var(--color-accent); box-shadow:0 0 0 4px rgba(247,98,32,.25); }

.jobs-section{ padding:var(--section-pad) 0; }
.jobs-section--alt{ background:var(--color-surface); border-block:1px solid var(--color-border); }
.jobs-section h2{ font-size:var(--fs-h2); letter-spacing:var(--tracking-tight); line-height:var(--lh-snug); margin:var(--space-sm) 0 var(--space-xl); color:var(--color-ink); }

.why-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr)); gap:var(--space-lg); }
.why-card{ background:var(--color-bg); border:1px solid var(--color-border); border-radius:var(--radius-lg); padding:var(--space-xl); }
.why-card__n{ font-family:var(--font-display); font-size:2.2rem; color:var(--color-accent); line-height:1; }
.why-card h3{ font-size:var(--fs-h3); margin:var(--space-md) 0 var(--space-xs); color:var(--color-structure); }
.why-card p{ margin:0; color:var(--color-text-muted); }

.job{ background:var(--color-surface); border:1px solid var(--color-border); border-radius:var(--radius-lg); box-shadow:var(--shadow-md); overflow:hidden; }
.job__head{ padding:clamp(1.25rem,3vw,2rem); display:grid; grid-template-columns:1fr auto; gap:var(--space-lg); align-items:start; }
.job__area{ font-size:var(--fs-eyebrow); letter-spacing:var(--tracking-eyebrow); text-transform:uppercase; font-weight:600; color:var(--color-accent); }
.job__title{ font-size:var(--fs-h3); line-height:var(--lh-snug); margin:var(--space-xs) 0 var(--space-md); color:var(--color-ink); }
.job__mission{ color:var(--color-text-muted); margin:0 0 var(--space-md); max-width:70ch; }
.chips{ display:flex; flex-wrap:wrap; gap:var(--space-xs); margin:0; padding:0; list-style:none; }
.chips li{ display:inline-flex; align-items:center; gap:6px; font-size:var(--fs-caption); font-weight:600; color:var(--color-structure); background:var(--tint-navy-06); border:1px solid var(--tint-navy-10); padding:6px 12px; border-radius:var(--radius-pill); }
.chips svg{ width:14px; height:14px; }
.job__salary{ text-align:right; }
.job__salary strong{ display:block; font-size:var(--fs-h3); color:var(--color-structure); white-space:nowrap; }
.job__salary span{ font-size:var(--fs-caption); color:var(--color-text-muted); }
.job details{ border-top:1px solid var(--color-border); }
.job summary{ cursor:pointer; list-style:none; padding:var(--space-md) clamp(1.25rem,3vw,2rem); font-weight:600; color:var(--color-structure); display:flex; justify-content:space-between; align-items:center; }
.job summary::-webkit-details-marker{ display:none; }
.job summary::after{ content:"+"; color:var(--color-accent); font-size:1.5rem; transition:transform var(--dur-base) var(--ease-out); }
.job details[open] summary::after{ transform:rotate(45deg); }
.job__body{ padding:0 clamp(1.25rem,3vw,2rem) clamp(1.25rem,3vw,2rem); display:grid; grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr)); gap:var(--space-xl) var(--space-2xl); }
.job__body h4{ margin:0 0 var(--space-sm); font-size:var(--fs-body); color:var(--color-ink); }
.job__body ul{ margin:0; padding-left:1.1rem; color:var(--color-text-muted); }
.job__body li{ margin-bottom:6px; }
.job__body li::marker{ color:var(--color-accent); }
.job__foot{ border-top:1px solid var(--color-border); background:var(--color-bg); padding:var(--space-md) clamp(1.25rem,3vw,2rem); display:flex; flex-wrap:wrap; gap:var(--space-sm); align-items:center; justify-content:space-between; }
.job__foot small{ color:var(--color-text-muted); }

.apply{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); gap:clamp(1.5rem,4vw,3.5rem); align-items:start; }
.apply__intro p{ color:var(--color-text-muted); }
.apply__card{ background:var(--color-bg); border:1px solid var(--color-border); border-radius:var(--radius-lg); padding:clamp(1.25rem,3vw,2rem); }
.drop{ position:relative; display:block; border:1.5px dashed var(--color-border-strong); border-radius:var(--radius-md); background:var(--color-surface); padding:var(--space-lg); text-align:center; color:var(--color-text-muted); cursor:pointer; transition:border-color var(--dur-base) var(--ease-std), background-color var(--dur-base) var(--ease-std); }
.drop:hover, .drop.is-over{ border-color:var(--color-accent); background:var(--tint-accent-08); }
.drop:focus-within{ border-color:var(--color-accent); box-shadow:0 0 0 3px var(--tint-accent-14); }
.drop.has-file{ border-style:solid; border-color:var(--color-structure); color:var(--color-ink); }
.drop[aria-invalid="true"]{ border-color:#B42318; }
.drop b{ color:var(--color-accent); }
.commit{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); gap:clamp(1.5rem,4vw,3.5rem); align-items:start; }
.commit h2{ margin-bottom:0; }
.commit__body{ border-left:3px solid var(--color-accent); padding-left:clamp(1rem,3vw,2rem); }
.commit__body p{ color:var(--color-text-muted); margin:0 0 var(--space-md); }
.commit__body p:last-child{ margin-bottom:0; color:var(--color-ink); font-weight:600; }
.form__equal{ font-size:var(--fs-caption); color:var(--color-text-muted); margin:0; }
.form__done{ text-align:center; padding:var(--space-lg) 0; color:var(--color-text-muted); }
.drop__input{ position:absolute; inset:0; opacity:0; cursor:pointer; width:100%; }

.jobs-lead{ color:var(--color-text-muted); max-width:70ch; margin:calc(-1 * var(--space-md)) 0 var(--space-xl); }
.jobs-list{ list-style:none; margin:0 0 var(--space-2xl); padding:0; border:1px solid var(--color-border); border-radius:var(--radius-lg); background:var(--color-surface); overflow:hidden; }
.jobs-list li + li{ border-top:1px solid var(--color-border); }
.jobs-list a{ display:grid; grid-template-columns:1fr auto auto; gap:var(--space-lg); align-items:center; padding:var(--space-md) var(--space-lg); text-decoration:none; color:var(--color-ink); transition:background-color var(--dur-fast) var(--ease-std); }
.jobs-list a:hover{ background:var(--tint-navy-06); }
.jobs-list__title{ font-weight:600; }
.jobs-list__area{ display:block; font-size:var(--fs-caption); color:var(--color-text-muted); font-weight:400; }
.jobs-list__meta{ font-size:var(--fs-caption); color:var(--color-structure); white-space:nowrap; }
.jobs-list__go{ color:var(--color-accent); font-weight:600; font-size:var(--fs-caption); white-space:nowrap; }
.job + .job{ margin-top:var(--space-lg); }
.job__apply{ border-top:1px solid var(--color-border); background:var(--color-bg); padding:clamp(1.25rem,3vw,2rem); }
.job__apply-title{ margin:0 0 var(--space-lg); font-size:var(--fs-h3); color:var(--color-ink); }
.job__apply .form{ max-width:760px; }
@media (max-width:760px){
  .job__head{ grid-template-columns:1fr; }
  .job__salary{ text-align:left; }
  .apply, .commit{ grid-template-columns:1fr; }
  .jobs-list a{ grid-template-columns:1fr auto; }
  .jobs-list__meta{ display:none; }
}

/* Ficha de oferta (/trabaja-con-nosotros/<clave>) */
.jobs-hero--offer h1{ font-family:var(--font-sans); font-weight:700; font-size:var(--fs-h2); letter-spacing:var(--tracking-tight); line-height:var(--lh-snug); max-width:26ch; }
.jobs-hero--offer .eyebrow{ color:var(--color-accent); }
.job__body--open{ padding-top:0; }
.job__sec{ margin:0 0 var(--space-sm); font-size:var(--fs-body); color:var(--color-ink); }
.jobs-empty{ background:var(--color-surface); border:1px solid var(--color-border); border-radius:var(--radius-lg); padding:var(--space-lg); color:var(--color-text-muted); }
.jobs-empty a, .apply__commit a{ color:var(--color-accent); }
.apply__commit{ font-size:var(--fs-caption); border-left:3px solid var(--color-accent); padding-left:var(--space-md); }
.preview-bar{ position:sticky; top:0; z-index:150; background:#FFF4D6; color:#6B4E00; text-align:center; padding:10px 16px; font-size:var(--fs-caption); border-bottom:1px solid #F0D98A; }
