/* Horizons 1.2 — consolidated compact layout. All content rules are scoped. */
#hzn-wrap.job-premium {
  --hzn-ink:#292d34; --hzn-body:#42464d; --hzn-rose:#963950; --hzn-line:#e3dfe3;
  box-sizing:border-box; width:100%; max-width:100%; margin:0; padding:0;
  font-family:Montserrat,Arial,sans-serif; font-size:14px; line-height:1.5;
  color:var(--hzn-body); background:#fff; text-align:left; overflow-wrap:anywhere;
}
#hzn-wrap.job-premium :is(.h-sec,.h-sec *, .h-hero:not(:has(.cfs-job-cta)),.h-hero:not(:has(.cfs-job-cta)) *) {
  box-sizing:border-box; font-family:Montserrat,Arial,sans-serif; text-indent:0;
}
#hzn-wrap.job-premium .h-sec {
  display:block; width:100%; max-width:100%; margin:14px 0; padding:0;
  background:transparent; border:0; border-radius:0; box-shadow:none; transform:none;
}
#hzn-wrap.job-premium .h-hero { margin:0; padding:8px 0 12px; border:0; background:transparent; }
#hzn-wrap.job-premium :is(.h-sec,.h-hero:not(:has(.cfs-job-cta))) :is(h1,h2,h3,h4) {
  margin:0 0 7px; padding:0; color:var(--hzn-ink); font-weight:700;
  line-height:1.3; text-shadow:none; letter-spacing:-.015em; text-transform:none;
}
#hzn-wrap.job-premium .h-hero:not(:has(.cfs-job-cta)) > h1 { font-size:28px; line-height:1.2; }
#hzn-wrap.job-premium .h-sec h2 { font-size:20px; }
#hzn-wrap.job-premium .h-sec h3 { font-size:15px; }
#hzn-wrap.job-premium .h-sec h4 { font-size:14px; }
#hzn-wrap.job-premium .pk { color:var(--hzn-rose); font:inherit; text-shadow:none; }
#hzn-wrap.job-premium :is(.h-sec,.h-hero:not(:has(.cfs-job-cta))) p {
  display:block; height:auto; max-height:none; overflow:visible; visibility:visible; opacity:1;
  margin:0 0 7px; padding:0; max-width:none; font-size:14px; line-height:1.5;
  color:var(--hzn-body); font-weight:400; text-align:left;
}
#hzn-wrap.job-premium :is(.h-sec,.h-hero) p:empty { display:none; margin:0; padding:0; }
#hzn-wrap.job-premium .h-sec strong { font-weight:700; }
#hzn-wrap.job-premium :is(.h-tag,.mini-label,.info-label) {
  display:block; margin:0 0 5px; padding:0; font-size:10px; font-weight:700;
  line-height:1.35; letter-spacing:.035em; text-transform:uppercase; color:var(--hzn-rose);
}
#hzn-wrap.job-premium .h-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:10px 0 0; padding:0; }
#hzn-wrap.job-premium :is(.h-actions,.compact-grid,.two-col,.stages) > br { display:none; }
#hzn-wrap.job-premium .btn-p {
  display:inline-flex; align-items:center; justify-content:center; min-height:40px; max-width:100%;
  padding:9px 15px; border:1px solid transparent; border-radius:10px;
  background:var(--hzn-rose); color:#fff; font-size:13px; font-weight:700; line-height:1.35;
  text-decoration:none; white-space:normal; text-align:center; box-shadow:none;
}
#hzn-wrap.job-premium .btn-p:hover { background:#7f2f44; color:#fff; }
#hzn-wrap.job-premium .btn-p:focus-visible { outline:2px solid #7f2f44; outline-offset:3px; }
#hzn-wrap.job-premium .badge { display:inline-block; padding:5px 8px; border:1px solid #e8dce1; border-radius:999px; background:#fff8fa; font-size:11px; line-height:1.35; color:#56515a; }
#hzn-wrap.job-premium :is(.compact-grid,.two-col,.stages) { display:grid; width:100%; max-width:none; margin:8px 0 0; padding:0; gap:12px; border:0; }
#hzn-wrap.job-premium .compact-grid { grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:0; align-items:stretch; }
#hzn-wrap.job-premium .two-col { grid-template-columns:repeat(2,minmax(0,1fr)); }
#hzn-wrap.job-premium .stages { grid-template-columns:1.2fr 1fr 1fr; }
#hzn-wrap.job-premium :is(.compact-grid,.two-col,.stages) > * { min-width:0; }
#hzn-wrap.job-premium :is(.info-card,.soft-card,.st),
#hzn-wrap.job-premium .two-col > div {
  margin:0; padding:12px; min-height:0; border:1px solid var(--hzn-line); border-radius:12px;
  background:#fff; box-shadow:none; transform:none; transition:none; text-align:left;
  font-size:14px; line-height:1.5;
}
#hzn-wrap.job-premium .compact-grid > .info-card { padding:11px; }
#hzn-wrap.job-premium .compact-grid .info-card > :first-child { margin:0 0 4px; padding:0; font-size:10px; line-height:1.35; }
#hzn-wrap.job-premium .compact-grid .info-card > br { display:none; }
#hzn-wrap.job-premium .compact-grid .info-card .info-value,
#hzn-wrap.job-premium .compact-grid .info-card > div:nth-of-type(2) { display:block; margin:0 0 4px; padding:0; font-size:15px; font-weight:700; line-height:1.3; color:var(--hzn-ink); }
#hzn-wrap.job-premium .compact-grid .info-card .info-note,
#hzn-wrap.job-premium .compact-grid .info-card > div:nth-of-type(3) { margin:0; padding:0; font-size:12px; line-height:1.45; color:var(--hzn-body); }
#hzn-wrap.job-premium .soft-card { padding:12px; background:#fff8fa; border-color:#eadce2; }
#hzn-wrap.job-premium .h-sec:has(> h2) { padding:12px; border:1px solid #e0dfe5; border-radius:14px; background:#f6f6f8; }
#hzn-wrap.job-premium .h-sec > h2 { padding-bottom:8px; margin-bottom:10px; border-bottom:1px solid #dfd8df; }
#hzn-wrap.job-premium .two-col h3 { padding-bottom:6px; border-bottom:1px solid #eadce2; }
#hzn-wrap.job-premium :is(.info-card,.soft-card,.st,.two-col > div) > :is(p,h2,h3,h4,span,ul,ol) {
  margin-left:0; margin-right:0; max-width:none; text-align:left; text-indent:0;
}
/* Small explicit dots survive the theme's removal of native list markers. */
#hzn-wrap.job-premium .h-sec :is(ul,ol) { margin:5px 0 0; padding:0; }
#hzn-wrap.job-premium .h-sec ul { list-style:none; }
#hzn-wrap.job-premium .h-sec ul > li {
  display:block; position:relative; list-style:none; margin:0 0 5px; padding:0 0 0 11px;
  color:var(--hzn-body); font-size:14px; font-weight:400; line-height:1.5; text-indent:0; text-align:left;
}
#hzn-wrap.job-premium .h-sec ul > li::before {
  content:""; display:block; position:absolute; left:0; top:.62em; width:3px; height:3px;
  margin:0; padding:0; border:0; border-radius:50%; background:#9d516a; box-shadow:none; transform:none;
}
#hzn-wrap.job-premium .h-sec ul > li::marker { content:""; }
#hzn-wrap.job-premium .h-sec ol { padding-left:16px; list-style:decimal outside; }
#hzn-wrap.job-premium .h-sec ol > li { display:list-item; padding:0; margin-bottom:5px; font-size:14px; }
#hzn-wrap.job-premium .h-sec:has(> .stages) { background:#fbf2f5; border-color:#dec3ce; }
#hzn-wrap.job-premium .h-sec:has(> .stages) > h2 { color:#87354e; border-color:#dec3ce; }
#hzn-wrap.job-premium .st { background:#fff; }
#hzn-wrap.job-premium .st:first-child { background:#f2dfe7; border-color:#d4acbc; }
#hzn-wrap.job-premium .st:first-child h3 { color:#773046; }
#hzn-wrap.job-premium .st::before { content:none; }
#hzn-wrap.job-premium .st:hover { transform:none; box-shadow:none; }
#hzn-wrap.job-premium :is(.info-card,.soft-card,.st) > :last-child { margin-bottom:0; }
#hzn-wrap.job-premium .h-company { padding-top:12px; border-top:1px solid var(--hzn-line); }
#hzn-wrap.job-premium .h-company p { font-size:12px; }
#hzn-wrap.job-premium .h-cta { padding:8px 0 12px; }
@media(max-width:600px) {
  #hzn-wrap.job-premium .h-hero:not(:has(.cfs-job-cta)) > h1 { font-size:24px; }
  #hzn-wrap.job-premium .compact-grid,
  #hzn-wrap.job-premium .two-col,
  #hzn-wrap.job-premium .stages { grid-template-columns:minmax(0,1fr); gap:10px; }
  #hzn-wrap.job-premium .h-actions .btn-p { min-height:44px; }
}

/* BG footer button: room for the longer label, including narrow screens. */
#hzn-wrap.job-premium:is([lang="bg"], :has(.h-cta[lang="bg"])) .cfs-job-cta > a.cfs-job-apply {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  gap: 10px;
  width: fit-content;
  max-width: 100%;
  min-width: 0;
  height: auto;
  min-height: 44px;
  padding: 12px 18px;
  line-height: 1.4;
  white-space: normal;
  text-align: center;
}
#hzn-wrap.job-premium:is([lang="bg"], :has(.h-cta[lang="bg"])) .cfs-job-apply-label {
  display: block;
  flex: 0 1 auto;
  min-width: 0;
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: 13px;
  line-height: 1.4;
  white-space: normal;
  overflow-wrap: anywhere;
}
#hzn-wrap.job-premium:is([lang="bg"], :has(.h-cta[lang="bg"])) .cfs-job-apply-arrow {
  display: block;
  position: static;
  flex: 0 0 auto;
  width: auto;
  margin: 0;
  padding: 0;
  transform: none;
  line-height: 1;
}
