/*
Theme Name: Jobify Child – BSB Header
Theme URI: https://www.bsb-jobs.at
Description: Child-Theme von Jobify. Enthält einen sauber neu programmierten, responsiven Header (Desktop + Mobil) nach BSB-Konzept. Update-sicher.
Author: BSB-Jobs
Template: jobify
Version: 1.0.0
Text Domain: jobify-child
*/

/* =========================================================
   BSB-JOBS HEADER  (neu, sauber, responsiv)
   Marke: Blau #2f5fa8 · Grün #6dbe3f · Schrift Montserrat
   Breakpoint Mobil: <= 900px
   ========================================================= */
:root{
  --bsb-blue:#2f5fa8;
  --bsb-green:#6dbe3f;
  --bsb-link:#eef2fb;
  --bsb-logo-h:150px;
  --bsb-band-h:78px;
}

/* Header-Grundgerüst zurücksetzen (überschreibt Jobify-Vorgaben auf #masthead) */
#masthead.bsb-header{
  background:#fff;box-shadow:none;border:0;position:relative;padding:56px 0 10px;
  font-family:'Montserrat',sans-serif;
}
.bsb-header *{box-sizing:border-box;}
.bsb-header a{text-decoration:none;}
.bsb-header img{display:block;}

/* obere Leiste (Desktop = blaues Band) */
.bsb-bar{
  position:relative;background:var(--bsb-blue);
  display:flex;align-items:center;min-height:var(--bsb-band-h);padding:0 30px;
}

/* linke & rechte Menügruppe flankieren das mittige Logo */
.bsb-side{flex:1;display:flex;align-items:center;gap:28px;margin:0;padding:0;list-style:none;}
.bsb-side.bsb-left{justify-content:flex-end;padding-right:120px;}
.bsb-side.bsb-right{justify-content:flex-start;padding-left:120px;}

.bsb-link{
  color:var(--bsb-link);font-weight:600;font-size:14px;letter-spacing:.2px;
  line-height:1;white-space:nowrap;transition:opacity .15s;
}
.bsb-link:hover{opacity:.75;color:var(--bsb-link);}

/* grüner Button */
.bsb-apply{
  display:inline-block;background:var(--bsb-green);color:#fff;
  font-weight:800;font-size:13.5px;letter-spacing:.3px;text-transform:uppercase;
  padding:10px 22px;border-radius:22px;border:2px solid #fff;line-height:1;
  white-space:nowrap;
}
.bsb-apply:hover{color:#fff;}

/* mittiges, überstehendes Logo */
.bsb-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;}
.bsb-logo img{height:var(--bsb-logo-h);width:auto;filter:drop-shadow(0 6px 10px rgba(0,0,0,.25));}

/* Dropdown „Unternehmen" */
.bsb-has-sub{position:relative;display:flex;align-items:center;padding:10px 0;}
.bsb-caret{margin-left:10px;border:solid var(--bsb-link);border-width:0 2px 2px 0;
  display:inline-block;padding:3px;transform:rotate(45deg);}

.bsb-sub{
  position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:6px;
  background:#fff;min-width:200px;border-radius:8px;box-shadow:0 12px 30px rgba(0,0,0,.15);
  padding:8px 0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease;z-index:20;
}
.bsb-sub::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px;}
.bsb-has-sub:hover .bsb-sub,.bsb-has-sub:focus-within .bsb-sub{opacity:1;visibility:visible;pointer-events:auto;}
.bsb-sub a{display:block;padding:9px 18px;color:#333;font-size:13.5px;font-weight:500;white-space:nowrap;}
.bsb-sub a:hover{background:#f3f6fc;color:var(--bsb-blue);}

/* untere weiße Zeile: FOLLOW US, rechtsbündig */
.bsb-subbar{display:flex;justify-content:flex-start;align-items:center;gap:8px;
  padding:20px 30px 10px calc(50% + 81px);background:#fff;}
.bsb-subbar .bsb-fu{font-size:11px;font-weight:500;color:var(--bsb-blue);letter-spacing:.4px;line-height:1;}
.bsb-social{display:flex;align-items:center;gap:12px;}
.bsb-social a{display:flex;transition:opacity .15s;}
.bsb-social a:hover{opacity:.7;}
.bsb-subbar svg,.bsb-social svg{display:block;}

/* nur-mobil / nur-desktop */
.bsb-social--top{display:none;}
.bsb-band-mobile{display:none;}
.bsb-mobile-nav{display:none;}
.bsb-burger{
  display:none;background:none;border:0;cursor:pointer;color:var(--bsb-blue);
  width:34px;height:34px;align-items:center;justify-content:center;padding:0;
}
.bsb-burger svg{width:26px;height:26px;}

/* =========================================================
   MOBIL (<= 900px)
   ========================================================= */
@media (max-width:900px){
  .bsb-bar{background:#fff;min-height:auto;padding:12px 16px;justify-content:space-between;}
  .bsb-side{flex:0 0 auto;gap:0;padding:0 !important;}
  .bsb-side.bsb-right{display:none;}
  .bsb-link.bsb-only-desktop{display:none;}
  .bsb-logo{display:none;}

  .bsb-social--top{display:flex;}
  .bsb-burger{display:flex;}
  .bsb-side.bsb-left{justify-content:center;}
  .bsb-apply{font-size:11px;padding:8px 15px;border-radius:20px;box-shadow:0 1px 3px rgba(0,0,0,.15);}

  .bsb-subbar{display:none;}

  .bsb-band-mobile{display:block;position:relative;background:var(--bsb-blue);height:96px;}
  .bsb-band-mobile img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
    height:100px;width:auto;filter:drop-shadow(0 5px 8px rgba(0,0,0,.25));}

  .bsb-mobile-nav{display:block;max-height:0;overflow:hidden;background:#fff;
    transition:max-height .3s ease;border-top:1px solid #eee;}
  #masthead.bsb-header.bsb-open .bsb-mobile-nav{max-height:520px;}
  .bsb-mobile-nav a{display:block;padding:14px 20px;color:#243b63;font-weight:600;
    font-size:15px;border-bottom:1px solid #f0f0f0;}
  .bsb-mobile-nav a:hover{background:#f3f6fc;color:var(--bsb-blue);}
  .bsb-mobile-nav .bsb-sub-m a{padding-left:38px;font-weight:500;font-size:14px;color:#555;}
}
