
/* Kokkekarriere v2.0.27 — isolated hero rebuild
   This file is intentionally loaded last and uses only swkk-* classes.
   The old WEBX/v2 hero classes are no longer used by hero markup. */
body.kk-theme-v2 .swkk-hero,
body.kk-theme-v2 section.swkk-hero {
  display:block !important;
  position:relative !important;
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
  border:0 !important;
  box-shadow:none !important;
  color:#fff !important;
  background:#24262b !important;
  background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.038) 0,rgba(255,255,255,.038) 2px,transparent 2px,transparent 17px) !important;
}
body.kk-theme-v2 .swkk-hero *,
body.kk-theme-v2 .swkk-hero *::before,
body.kk-theme-v2 .swkk-hero *::after { box-sizing:border-box !important; }
body.kk-theme-v2 .swkk-hero__inner {
  display:block !important;
  width:min(1180px,calc(100% - 56px)) !important;
  max-width:1180px !important;
  min-height:0 !important;
  height:auto !important;
  margin:0 auto !important;
  padding:var(--swkk-hero-top,64px) 0 var(--swkk-hero-bottom,62px) !important;
  position:relative !important;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  transform:none !important;
}
body.kk-theme-v2 .swkk-hero-trail,
body.kk-theme-v2 .swkk-hero-trail[aria-label] {
  display:block !important;
  width:auto !important;
  max-width:none !important;
  min-width:0 !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  margin:0 0 14px !important;
  padding:0 !important;
  position:static !important;
  inset:auto !important;
  float:none !important;
  clear:none !important;
  transform:none !important;
  overflow:visible !important;
  opacity:1 !important;
  visibility:visible !important;
  z-index:auto !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  text-shadow:none !important;
  color:rgba(255,255,255,.78) !important;
  font-size:var(--swkk-trail-size,13px) !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}
body.kk-theme-v2 .swkk-hero-trail ol {
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:0 !important;
  width:auto !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  background:transparent !important;
  border:0 !important;
}
body.kk-theme-v2 .swkk-hero-trail li {
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  background:transparent !important;
  border:0 !important;
  line-height:1.35 !important;
  color:inherit !important;
}
body.kk-theme-v2 .swkk-hero-trail li + li::before {
  content:"›" !important;
  display:inline-flex !important;
  margin:0 9px !important;
  color:rgba(255,255,255,.45) !important;
  font-weight:900 !important;
}
body.kk-theme-v2 .swkk-hero-trail a,
body.kk-theme-v2 .swkk-hero-trail span {
  display:inline !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
  text-decoration:none !important;
  line-height:1.35 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  text-shadow:none !important;
}
body.kk-theme-v2 .swkk-eyebrow {
  display:block !important;
  width:auto !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 0 14px !important;
  padding:0 !important;
  color:var(--brand2,#EE6A14) !important;
  -webkit-text-fill-color:var(--brand2,#EE6A14) !important;
  font-size:12px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  letter-spacing:.105em !important;
  text-transform:uppercase !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  text-shadow:none !important;
}
body.kk-theme-v2 .swkk-hero__title {
  display:block !important;
  max-width:850px !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:clamp(36px,4.2vw,58px) !important;
  line-height:1.04 !important;
  font-weight:900 !important;
  letter-spacing:-.035em !important;
  text-shadow:0 2px 0 rgba(0,0,0,.35) !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
body.kk-theme-v2 .swkk-hero__title--small { font-size:clamp(30px,3.2vw,44px) !important; }
body.kk-theme-v2 .swkk-hero__description {
  max-width:760px !important;
  margin:18px 0 0 !important;
  color:rgba(255,255,255,.82) !important;
  font-size:17px !important;
  line-height:1.65 !important;
}
body.kk-theme-v2 .swkk-hero .kk-job-search {
  margin-top:28px !important;
  position:relative !important;
  z-index:2 !important;
}
body.kk-theme-v2 .swkk-hero--jobs .swkk-hero__title { margin-bottom:0 !important; }
/* If old hero markup survives in cached HTML, neutralize only its erratic spacing. */
body.kk-theme-v2 main#content > section.kk-page-hero,
body.kk-theme-v2 main#content > section.kk-job-search-banner {
  padding:0 !important;
  margin:0 !important;
  min-height:0 !important;
  height:auto !important;
  background:#24262b !important;
  background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.038) 0,rgba(255,255,255,.038) 2px,transparent 2px,transparent 17px) !important;
}
body.kk-theme-v2 main#content > section.kk-page-hero > .kk-container,
body.kk-theme-v2 main#content > section.kk-job-search-banner > .kk-container {
  padding-top:var(--kk-hero-top-space,64px) !important;
  padding-bottom:var(--kk-hero-bottom-space,62px) !important;
}
body.kk-theme-v2 main#content > section.kk-page-hero .kk-breadcrumbs,
body.kk-theme-v2 main#content > section.kk-job-search-banner .kk-breadcrumbs {
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  margin:0 0 14px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  position:static !important;
}
@media(max-width:900px){
  body.kk-theme-v2 .swkk-hero__inner{width:min(100% - 40px,1180px) !important;padding-top:max(42px,calc(var(--swkk-hero-top,64px) - 12px)) !important;padding-bottom:max(42px,calc(var(--swkk-hero-bottom,62px) - 12px)) !important;}
  body.kk-theme-v2 .swkk-hero__title{font-size:clamp(31px,8vw,48px) !important;}
}
@media(max-width:600px){
  body.kk-theme-v2 .swkk-hero__inner{width:min(100% - 32px,1180px) !important;}
  body.kk-theme-v2 .swkk-hero .kk-job-search{margin-top:22px !important;}
}

/* v2.0.28 — final canonical hero rhythm
   The approved reference is the single article hero. To make archives,
   categories, pages, jobs and search match it, the hero now has one fixed
   minimum rhythm and only one spacing layer: .swkk-hero__inner. */
body.kk-theme-v2 main#content > section.swkk-hero,
body.kk-theme-v2 section.swkk-hero,
body.kk-theme-v2 .swkk-hero {
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
  height:auto !important;
  overflow:visible !important;
  background:#24262b !important;
  background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 2px,transparent 2px,transparent 17px) !important;
  border:0 !important;
  box-shadow:none !important;
  color:#fff !important;
}
body.kk-theme-v2 main#content > section.swkk-hero > .swkk-hero__inner,
body.kk-theme-v2 section.swkk-hero > .swkk-hero__inner,
body.kk-theme-v2 .swkk-hero > .swkk-hero__inner {
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
  width:min(1180px,calc(100% - 56px)) !important;
  max-width:1180px !important;
  min-height:var(--swkk-hero-min,225px) !important;
  height:auto !important;
  margin:0 auto !important;
  padding-top:var(--swkk-hero-top,28px) !important;
  padding-right:0 !important;
  padding-bottom:var(--swkk-hero-bottom,58px) !important;
  padding-left:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  position:relative !important;
  transform:none !important;
}
/* The visible category/section label must start at the same y-position on all templates. */
body.kk-theme-v2 .swkk-hero .swkk-eyebrow {
  order:2 !important;
  margin:0 0 18px !important;
  padding:0 !important;
  line-height:1.2 !important;
}
body.kk-theme-v2 .swkk-hero .swkk-hero__title {
  order:3 !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1.04 !important;
}
body.kk-theme-v2 .swkk-hero .kk-job-search {
  order:4 !important;
  margin-top:28px !important;
  width:100% !important;
}
/* Breadcrumbs are allowed, but they must never add vertical layout noise above the eyebrow. */
body.kk-theme-v2 .swkk-hero .swkk-hero-trail,
body.kk-theme-v2 .swkk-hero nav.swkk-hero-trail {
  order:1 !important;
  display:block !important;
  height:auto !important;
  min-height:0 !important;
  max-height:26px !important;
  margin:0 0 8px !important;
  padding:0 !important;
  overflow:hidden !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  line-height:1.25 !important;
  font-size:var(--swkk-trail-size,13px) !important;
}
/* If a page has no visible breadcrumb trail, it must not leave a phantom gap. */
body.kk-theme-v2 .swkk-hero .swkk-hero-trail:empty { display:none !important; margin:0 !important; }
body.kk-theme-v2 .swkk-hero .swkk-hero-trail ol:empty { display:none !important; }
/* Legacy topheaders must never create a second spacing system if old HTML is cached. */
body.kk-theme-v2 main#content > section.kk-page-hero,
body.kk-theme-v2 main#content > section.kk-job-search-banner {
  padding:0 !important;
  margin:0 !important;
  min-height:0 !important;
  height:auto !important;
  background:#24262b !important;
  background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 2px,transparent 2px,transparent 17px) !important;
}
body.kk-theme-v2 main#content > section.kk-page-hero > .kk-container,
body.kk-theme-v2 main#content > section.kk-job-search-banner > .kk-container {
  min-height:var(--swkk-hero-min,225px) !important;
  padding-top:var(--swkk-hero-top,28px) !important;
  padding-bottom:var(--swkk-hero-bottom,58px) !important;
}
@media(max-width:900px){
  body.kk-theme-v2 main#content > section.swkk-hero > .swkk-hero__inner,
  body.kk-theme-v2 section.swkk-hero > .swkk-hero__inner,
  body.kk-theme-v2 .swkk-hero > .swkk-hero__inner {
    width:min(100% - 40px,1180px) !important;
    min-height:max(190px,calc(var(--swkk-hero-min,225px) - 24px)) !important;
    padding-top:max(24px,calc(var(--swkk-hero-top,28px) - 4px)) !important;
    padding-bottom:max(42px,calc(var(--swkk-hero-bottom,58px) - 10px)) !important;
  }
}
@media(max-width:600px){
  body.kk-theme-v2 main#content > section.swkk-hero > .swkk-hero__inner,
  body.kk-theme-v2 section.swkk-hero > .swkk-hero__inner,
  body.kk-theme-v2 .swkk-hero > .swkk-hero__inner { width:min(100% - 32px,1180px) !important; }
}

/* v2.0.31 — use the full approved content width for hero titles.
   Long job titles should not be locked to the old 850px measure when the
   surrounding hero/content container is 1180px wide. The title still stays
   inside the shared content area and can be tuned in Theme Options. */
body.kk-theme-v2 .swkk-hero .swkk-hero__title,
body.kk-theme-v2 main#content > section.swkk-hero .swkk-hero__title,
body.kk-theme-v2 section.swkk-hero .swkk-hero__title {
  width:min(100%, var(--swkk-hero-title-max,1120px)) !important;
  max-width:min(100%, var(--swkk-hero-title-max,1120px)) !important;
}
body.kk-theme-v2 .swkk-hero--job-detail .swkk-hero__title,
body.kk-theme-v2 .swkk-hero--job-category .swkk-hero__title,
body.kk-theme-v2 .swkk-hero--jobs .swkk-hero__title {
  max-width:min(100%, var(--swkk-hero-title-max,1120px)) !important;
}
@media(max-width:900px){
  body.kk-theme-v2 .swkk-hero .swkk-hero__title,
  body.kk-theme-v2 main#content > section.swkk-hero .swkk-hero__title,
  body.kk-theme-v2 section.swkk-hero .swkk-hero__title {
    width:100% !important;
    max-width:100% !important;
  }
}


/* v2.0.32 — compact hero rhythm when a top ad is active.
   The ad area already takes vertical attention under the logo/menu. When active,
   the dark hero must remain clean and aligned but not become excessively tall. */
body.kk-theme-v2.kk-has-after-menu-ad main#content > section.swkk-hero > .swkk-hero__inner,
body.kk-theme-v2.kk-has-after-menu-ad section.swkk-hero > .swkk-hero__inner,
body.kk-theme-v2.kk-has-after-menu-ad .swkk-hero > .swkk-hero__inner {
  padding-top:var(--swkk-hero-after-ad-top,24px) !important;
  padding-bottom:var(--swkk-hero-after-ad-bottom,40px) !important;
  min-height:var(--swkk-hero-after-ad-min,180px) !important;
}
body.kk-theme-v2.kk-has-after-menu-ad .swkk-hero .swkk-hero-trail,
body.kk-theme-v2.kk-has-after-menu-ad .swkk-hero nav.swkk-hero-trail { margin-bottom:8px !important; }
body.kk-theme-v2.kk-has-after-menu-ad .swkk-hero .swkk-eyebrow { margin-bottom:12px !important; }
body.kk-theme-v2.kk-has-after-menu-ad .swkk-hero .swkk-hero__title { font-size:clamp(34px,3.8vw,54px) !important; }
body.kk-theme-v2 .kk-after-menu-ad { padding:10px 0 !important; margin:0 !important; background:#fff !important; }
body.kk-theme-v2 .kk-after-menu-ad__inner { width:min(1180px,calc(100% - 56px)) !important; max-width:1180px !important; margin:0 auto !important; padding:0 !important; box-sizing:border-box !important; }
body.kk-theme-v2 .kk-ad-slot--after-menu { width:100% !important; margin:0 !important; padding:0 !important; border:0 !important; background:transparent !important; overflow:hidden !important; display:flex !important; align-items:center !important; justify-content:center !important; }
body.kk-theme-v2 .kk-ad-slot--after-menu img,
body.kk-theme-v2 .kk-ad-slot--after-menu iframe { display:block !important; max-width:100% !important; height:auto !important; }
@media(max-width:900px){
  body.kk-theme-v2.kk-has-after-menu-ad main#content > section.swkk-hero > .swkk-hero__inner,
  body.kk-theme-v2.kk-has-after-menu-ad section.swkk-hero > .swkk-hero__inner,
  body.kk-theme-v2.kk-has-after-menu-ad .swkk-hero > .swkk-hero__inner { min-height:auto !important; padding-top:24px !important; padding-bottom:34px !important; }
  body.kk-theme-v2 .kk-after-menu-ad__inner{width:min(100% - 32px,1180px)!important;}
}
