/*
Theme Name: Jobuilder
Author: OpenAI
Description: Thème WordPress léger et responsive pour publier des offres d’emploi, avec en-tête jaune moutarde et interface française.
Version: 1.1.8
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: jobuilder
*/

:root{--em-yellow:#ffdf55;--em-yellow-dark:#d4a017;--em-text:#242424;--em-muted:#666;--em-border:#ececec;--em-width:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--em-text);background:#fff;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65}
img{max-width:100%;height:auto}
a{color:#805f00;text-decoration:none}
a:hover,a:focus{text-decoration:underline}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;padding:.75rem 1rem;background:#fff;z-index:9999;border:2px solid #222}
.site-header{background:linear-gradient(110deg,#fff0a6 0%,#ffdf55 50%,#ffd94a 100%);color:#211a09}
.utility-bar{border-bottom:1px solid rgba(0,0,0,.12)}
.header-inner,.utility-inner{width:min(100% - 2rem,var(--em-width));margin-inline:auto}
.utility-inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.utility-navigation ul{list-style:none;display:flex;align-items:center;flex-wrap:wrap;gap:.25rem 1.3rem;margin:0;padding:0}
.utility-navigation a{display:block;color:#211a09;font-size:.9rem;padding:.35rem 0}
.utility-navigation a:hover{text-decoration:underline}
.social-links{display:flex;gap:.8rem;align-items:center;font-size:.85rem}
.social-links a{color:#211a09;font-weight:700}
.header-main{border-bottom:1px solid rgba(0,0,0,.08)}
.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:.65rem}
.site-branding{display:flex;align-items:center;gap:.8rem;min-width:0}
.custom-logo-link{display:inline-flex;align-items:center}
.custom-logo{display:block;max-height:54px;width:auto}
.site-title{margin:0;font-size:1.35rem;line-height:1.25;font-weight:800}
.site-title a{color:#201a0b}
.site-description{margin:.2rem 0 0;font-size:.85rem;color:#3d3217}
.primary-navigation{margin-left:auto}
.primary-navigation ul{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;padding:0}
.primary-navigation a{display:block;padding:.65rem .8rem;border-radius:6px;color:#211a09;font-weight:650;font-size:.95rem}
.primary-navigation a:hover,.primary-navigation a:focus{background:rgba(255,255,255,.38);text-decoration:none}
.menu-toggle{display:none;border:1px solid rgba(0,0,0,.3);border-radius:6px;padding:.55rem .75rem;background:rgba(255,255,255,.25);color:#211a09;font:inherit;font-weight:700;cursor:pointer}
.site-main{width:min(100% - 2rem,var(--em-width));min-height:55vh;margin-inline:auto;padding-block:clamp(2rem,5vw,4rem)}
.job-area{min-height:35vh}
.entry-title{margin:0 0 1rem;line-height:1.25}
.entry-content>*:first-child{margin-top:0}
.entry-content>*:last-child{margin-bottom:0}
.post-card{padding-block:1.5rem;border-bottom:1px solid var(--em-border)}
.post-card:first-child{padding-top:0}
.post-card h2{margin:0 0 .4rem;font-size:1.35rem}
.post-meta{color:var(--em-muted);font-size:.9rem}
.pagination{margin-top:2rem}
.pagination .nav-links{display:flex;flex-wrap:wrap;gap:.5rem}
.pagination a,.pagination span{display:inline-block;padding:.45rem .75rem;border:1px solid var(--em-border);border-radius:5px}
.site-footer{background:#222;color:#f6f6f6;text-align:center;padding:1.25rem 1rem;font-size:.9rem}
.site-footer p{margin:0}
.widget{margin-bottom:1.5rem}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;white-space:nowrap}
@media(max-width:760px){
 .utility-inner{align-items:flex-start;padding-block:.4rem;flex-direction:column;gap:.2rem}
 .utility-navigation ul{gap:.15rem .85rem}
 .utility-navigation a{font-size:.82rem}
 .social-links{display:none}
 .header-inner{flex-wrap:wrap;gap:.75rem}
 .site-branding{flex:1 1 auto}
 .menu-toggle{display:inline-block}
 .primary-navigation{display:none;width:100%;margin:0}
 .primary-navigation.is-open{display:block}
 .primary-navigation ul{flex-direction:column;align-items:stretch;gap:.15rem}
 .primary-navigation a{padding:.75rem}
 .site-main{padding-block:2rem}
}


/* Jobuilder 1.1.4 — correction de couleur uniquement, sans toucher aux menus */
html body .site-header {
  background: linear-gradient(110deg, #fff0a6 0%, #ffdf55 50%, #ffd94a 100%) !important;
  background-color: #ffdf55 !important;
  color: #211a09 !important;
}
html body .site-header .utility-bar,
html body .site-header .header-main {
  background: transparent !important;
}
html body .site-header .utility-navigation a,
html body .site-header .social-links a,
html body .site-header .site-title a,
html body .site-header .primary-navigation a,
html body .site-header .menu-toggle {
  color: #211a09 !important;
}


/* Jobuilder 1.1.5 — force uniquement la couleur d'en-tête, sans toucher aux menus */
html body header.site-header,
html body .site-header {
  background: linear-gradient(110deg, #fff0a6 0%, #ffdf55 50%, #ffd94a 100%) !important;
  background-color: #ffdf55 !important;
}
html body header.site-header .utility-bar,
html body header.site-header .header-main {
  background: transparent !important;
}


/* Jobuilder 1.1.6 — sous-menu Calculateurs au survol, en conservant le dégradé */
.site-header .primary-navigation { position: relative; z-index: 10000; }
.site-header .primary-navigation > ul {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.site-header .primary-navigation li { position: relative; }
.site-header .primary-navigation > ul > li > ul.sub-menu,
.site-header .primary-navigation > ul > li > ul.children {
  display: none !important;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  z-index: 99999 !important;
  min-width: 270px !important;
  max-width: min(380px, 90vw) !important;
  margin: 0 !important;
  padding: 8px !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 2px !important;
  list-style: none !important;
  background: linear-gradient(110deg, #fff0a6 0%, #ffdf55 50%, #ffd94a 100%) !important;
  border: 1px solid rgba(0,0,0,.14) !important;
  border-radius: 0 0 8px 8px !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.16) !important;
}
.site-header .primary-navigation > ul > li:hover > ul.sub-menu,
.site-header .primary-navigation > ul > li:focus-within > ul.sub-menu,
.site-header .primary-navigation > ul > li.submenu-open > ul.sub-menu,
.site-header .primary-navigation > ul > li:hover > ul.children,
.site-header .primary-navigation > ul > li:focus-within > ul.children,
.site-header .primary-navigation > ul > li.submenu-open > ul.children {
  display: flex !important;
}
.site-header .primary-navigation ul.sub-menu li,
.site-header .primary-navigation ul.children li { display: block !important; width: 100% !important; }
.site-header .primary-navigation ul.sub-menu a,
.site-header .primary-navigation ul.children a {
  display: block !important;
  width: 100% !important;
  padding: 10px 12px !important;
  white-space: normal !important;
  line-height: 1.35 !important;
  border-radius: 5px !important;
}
.site-header .primary-navigation ul.sub-menu a:hover,
.site-header .primary-navigation ul.sub-menu a:focus,
.site-header .primary-navigation ul.children a:hover,
.site-header .primary-navigation ul.children a:focus { background: rgba(255,255,255,.5) !important; }
.site-header .primary-navigation li.menu-item-has-children > a::after { content: " ▾"; font-size: .75em; }
@media (max-width:760px) {
  .site-header .primary-navigation > ul { flex-wrap: wrap; }
  .site-header .primary-navigation > ul > li > ul.sub-menu,
  .site-header .primary-navigation > ul > li > ul.children {
    display: none !important;
    position: static !important;
    min-width: 0 !important;
    max-width: none !important;
    width: 100% !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 6px !important;
    margin: .15rem 0 .35rem !important;
    padding-left: 1rem !important;
    background: rgba(255,255,255,.18) !important;
  }
  .site-header .primary-navigation > ul > li.submenu-open > ul.sub-menu,
  .site-header .primary-navigation > ul > li.submenu-open > ul.children { display: flex !important; }
}


/* Jobuilder 1.1.8: règle finale des sous-menus, priorité élevée */
html body header.site-header nav.primary-navigation { position: relative !important; z-index: 10000 !important; }
html body header.site-header nav.primary-navigation > ul { display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important; align-items:center !important; overflow:visible !important; }
html body header.site-header nav.primary-navigation > ul > li { position:relative !important; flex:0 0 auto !important; }
html body header.site-header nav.primary-navigation ul ul,
html body header.site-header nav.primary-navigation ul .sub-menu,
html body header.site-header nav.primary-navigation ul .children {
  display:none !important; position:absolute !important; top:100% !important; left:0 !important; right:auto !important;
  z-index:999999 !important; min-width:270px !important; width:max-content !important; max-width:min(380px,90vw) !important;
  margin:0 !important; padding:8px !important; flex-direction:column !important; align-items:stretch !important;
  gap:2px !important; list-style:none !important; background:linear-gradient(110deg,#fff0a6 0%,#ffdf55 50%,#ffd94a 100%) !important;
  border:1px solid rgba(0,0,0,.14) !important; border-radius:0 0 8px 8px !important; box-shadow:0 8px 20px rgba(0,0,0,.16) !important;
}
html body header.site-header nav.primary-navigation li:hover > ul,
html body header.site-header nav.primary-navigation li:focus-within > ul,
html body header.site-header nav.primary-navigation li.submenu-open > ul { display:flex !important; }
html body header.site-header nav.primary-navigation ul ul li { display:block !important; position:static !important; flex:0 0 auto !important; width:100% !important; }
html body header.site-header nav.primary-navigation ul ul a { display:block !important; width:100% !important; padding:10px 12px !important; white-space:normal !important; line-height:1.35 !important; }
@media(max-width:760px){
 html body header.site-header nav.primary-navigation > ul { flex-direction:column !important; flex-wrap:wrap !important; align-items:stretch !important; }
 html body header.site-header nav.primary-navigation ul ul { display:none !important; position:static !important; width:100% !important; min-width:0 !important; max-width:none !important; box-shadow:none !important; border:0 !important; }
 html body header.site-header nav.primary-navigation li.submenu-open > ul { display:flex !important; }
}
