/* 
Theme Name: OVM Communication
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: OVM Communication
Author URI: https://ovm-communication.fr/
Template: hello-elementor
Version: 1.0.2
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

 :root {
    --vert: #005B4A;
    --vert-d: #00493b;
    --vif: #93C01F;
    --vif-d: #7da417;
    --ink: #1f2a26;
    --muted: #5d6b65;
    --line: #e3e7e4;
    --bg: #ffffff;
    --soft: #f4f7f3;
    --card: #ffffff;
    --radius: 10px;
    --shadow: 0 1px 3px rgba(0, 0, 0, .06), 0 8px 24px rgba(0, 0, 0, .05);
    --shadow-h: 0 4px 12px rgba(0, 0, 0, .08), 0 16px 40px rgba(0, 91, 74, .10);
}


      /* moteur de recherche (barre verte) */
  .searchbar{background:var(--vif);border-radius:12px;padding:18px;margin-top:6px;max-width:1000px;
     box-shadow:0 18px 50px rgba(0,73,59,.35)}
  .search-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:12px;align-items:end}
  .sf label{display:block;font-size:12.5px;font-weight:700;color:#fff;margin-bottom:6px;letter-spacing:.01em}
  .sf input,.sf select{width:100%;border:0;border-radius:7px;padding:13px 14px;font-size:15px;font-family:inherit;
     background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(0,0,0,.04)}
  .sf input:focus,.sf select:focus{outline:2px solid var(--vert)}
  .searchbar .btn{height:48px}
  .hero-meta{display:flex;align-items:center;gap:10px;margin-top:20px;font-size:15px;font-weight:600}
  .dot{width:9px;height:9px;border-radius:50%;background:var(--vif);box-shadow:0 0 0 4px rgba(147,192,31,.3);animation:pulse 2s infinite}
  @keyframes pulse{0%,100%{box-shadow:0 0 0 4px rgba(147,192,31,.3)}50%{box-shadow:0 0 0 8px rgba(147,192,31,.05)}}
  #counter{font-weight:900;font-size:18px}
  
  
  /* ============ RESPONSIVE ============ */
  @media(max-width:980px){
   .search-grid{grid-template-columns:1fr 1fr;gap:10px}
  }
  @media(max-width:620px){
    .search-grid{grid-template-columns:1fr}
  }
  
.searchbar  .btn.lg {
    padding: 15px 30px;
    font-size: 16px;
}
.searchbar .btn.white {
    background: #fff;
    color: var(--vert);
}
.searchbar .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 0;
    border-radius: 8px;
    padding: 12px 22px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    font-family: inherit;
    transition: .15s;
    white-space: nowrap;
}

 .chips{display:flex;flex-wrap:wrap;gap:11px}
      .chip{
        display:inline-flex;
        align-items:center;
        gap:8px;
        background:var(--soft);
        border:1.5px solid transparent;
        border-radius:30px;
        padding:11px 20px;
        font-size:15px;
        font-weight:600;
        color:var(--vert);
        cursor:pointer;
        transition:.15s
      }
      .chip:hover{
        background:#fff;
        border-color:var(--vif);
        box-shadow:var(--shadow);
        transform:translateY(-1px);
        color:var(--vert)!important;
      }
      .chip:focus{
        background:#fff;
        border-color:var(--vif);
        box-shadow:var(--shadow);
        transform:translateY(-1px);
        color:var(--vert)!important;
      }
      .chip .n{
        font-size:12.5px;
        color:var(--muted);
        font-weight:600
      }
      .chip.active{
        background:var(--vert);
        color:#fff;
        border-color:var(--vert)
      }
      .chip.active .n{
        color:rgba(255,255,255,.75)
      }
      
      
           
     
  /* liste dernières offres */
  .list-row{display:flex;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);
     border-radius:var(--radius);padding:16px 20px;margin-bottom:12px;transition:.15s}
  .list-row:hover{border-color:var(--vif);box-shadow:var(--shadow)}
  .list-logo{width:52px;height:52px;flex:0 0 52px;border-radius:9px;background:var(--soft);
     display:flex;align-items:center;justify-content:center;color:var(--vert)}
  .list-row .info{flex:1;min-width:0}
  .list-row h3{font-size:16.5px;font-weight:700;margin:0 0 3px}
  .center{text-align:center;margin-top:26px}


  
#liste  .btn.lg {
    padding: 15px 30px;
    font-size: 16px;
}
#liste .btn.white {
    background: #fff;
    color: var(--vert);
}
#liste .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 0;
    border-radius: 8px;
    padding: 12px 22px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    font-family: inherit;
    transition: .15s;
    white-space: nowrap;
}

#liste .btn.sm {
    padding: 9px 16px;
    font-size: 14px;
}
#liste .btn.ghost {
    background: transparent;
    border: 1.5px solid var(--line);
    color: var(--ink);
    font-weight: 600;
}   
    .apply-card .salbig {
    font-size: 22px;
    font-weight: 800;
    color: #7da417;
    letter-spacing: -.01em;
}
    
    .apply-card .salbig small {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color:  #5d6b65;
    letter-spacing: 0;
}
    .apply-card .btn {
    width: 100%;
    margin-top: 14px;
}

 .apply-card .btn.lg {
    padding: 15px 30px;
    font-size: 16px;
}
 .apply-card  .btn.vif {
    background: #93C01F;
    color: #fff;
}
 .apply-card  .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 0;
    border-radius: 8px;
    padding: 12px 22px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    font-family: inherit;
    transition: .15s;
    white-space: nowrap;
}

.btn.ghost {
    background: transparent;
    border: 1.5px solid #e3e7e4;;
    color: #1f2a26;
    font-weight: 600;
}
    
    .btn.vif:hover {
    background:#7da417;
}
.btn.ghost:hover {
    border-color:  #005B4A;
    color:  #005B4A;
}

.single-offre_emploi .side {
  position: sticky;
  top: 96px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.single-offre_emploi .apply-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: var(--shadow);
  padding: 22px;
}
.single-offre_emploi .apply-card .salbig {
  font-size: 22px;
  font-weight: 800;
  color: var(--vif-d);
  letter-spacing: -0.01em;
}
.single-offre_emploi .apply-card .salbig small {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--muted);
  letter-spacing: 0;
}
.single-offre_emploi .apply-card .btn {
  width: 100%;
  margin-top: 14px;
}
.single-offre_emploi .apply-card .reassure {
  display: flex;
  flex-direction: column;
  gap: 9px;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}
.single-offre_emploi .apply-card .reassure div {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 13.5px;
  color: var(--muted);
}
.single-offre_emploi .apply-card .reassure svg {
  color: var(--vif-d);
  width: 17px;
  height: 17px;
  flex: 0 0 auto;
}
a.btn.ghost.alert-btn:hover {
    border-color: white;
}
a.btn.ghost.alert-btn {
    background: white;
}

.main_card .o-head {
  padding: 30px 34px 26px;
  border-bottom: 1px solid var(--line);
}
.main_card .o-badges {
  display: flex;
  gap: 8px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.main_card .badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-radius: 5px;
  padding: 4px 10px;
}
.main_card .badge.excl {
  background: var(--vert);
  color: #fff;
}
.main_card .badge.une {
  background: var(--vif);
  color: #fff;
}
.main_card .badge.new {
  background: var(--soft);
  color: var(--vert);
}
.main_card .o-head h1 {
  font-size: clamp(24px, 3vw, 33px);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.12;
  margin: 0 0 16px;
}
.main_card .o-company {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
}
.main_card .o-company .logo {
  width: 58px;
  height: 58px;
  border-radius: 12px;
  background: var(--soft);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 20px;
  color: var(--vert);
}
.main_card .o-company .nm {
  font-size: 17px;
  font-weight: 700;
}
.main_card .o-company .nm a {
  color: var(--vert);
  font-size: 13.5px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.main_card .o-facts {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.main_card .fact {
  background: var(--soft);
  border-radius: 10px;
  padding: 13px 15px;
}
.main_card .fact .k {
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 3px;
}
.main_card .fact .v {
  font-size: 15px;
  font-weight: 700;
  color: var(--ink);
}
.main_card .fact .v.sal {
  color: var(--vif-d);
}
.main_card .o-body {
  padding: 30px 34px 34px;
}
.main_card .o-body h2 {
  font-size: 19px;
  font-weight: 800;
  letter-spacing: -0.01em;
  margin: 28px 0 12px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.main_card .o-body h2:first-child {
  margin-top: 0;
}
.main_card .o-body h2::before {
  content: "";
  width: 5px;
  height: 20px;
  border-radius: 3px;
  background: var(--vif);
  flex: 0 0 auto;
}
.main_card .o-body p {
  font-size: 15.5px;
  color: #36433d;
  margin: 0 0 14px;
}
.main_card .o-body ul {
  margin: 0 0 16px;
  padding-left: 4px;
  list-style: none;
}
.main_card .o-body ul li {
  position: relative;
  padding-left: 28px;
  font-size: 15.5px;
  color: #36433d;
  margin-bottom: 9px;
}
.main_card .o-body ul li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--vif);
}
.main_card .o-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 6px;
}
.main_card .o-tags .t {
  background: var(--soft);
  color: var(--vert);
  font-size: 13.5px;
  font-weight: 600;
  border-radius: 30px;
  padding: 8px 16px;
}
.main_card .apply-inline {
  margin-top: 30px;
  padding: 24px;
  background: linear-gradient(135deg, var(--vert), #0a7a62);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}
.main_card .apply-inline .txt {
  color: #fff;
  max-width: calc(100% - 250px);

}
.main_card .apply-inline .txt b {
  font-size: 17px;
  font-weight: 800;
  display: block;
}
.main_card .apply-inline .txt span {
  color: rgba(255, 255, 255, 0.85);
  font-size: 14px;
}
.main_card .src-note {
  font-size: 13px;
  color: var(--muted);
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}
.main_card .src-note a {
  color: var(--vert);
  font-weight: 600;
}


  .main_card   .btn.lg {
    padding: 15px 30px;
    font-size: 16px;
}
.main_card  .btn.white {
    background: #fff;
    color: var(--vert);
}
.main_card  .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 0;
    border-radius: 8px;
    padding: 12px 22px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    font-family: inherit;
    transition: .15s;
    white-space: nowrap;
}
.main_card {
    padding: 0 !important;
}

.boxed {
    max-width: 1180px !important;
    margin: 0 auto!important;
}

/* ============ AUTRES OFFRES (bas de page, pleine largeur) ============ */
            .more {
                padding: 8px 0 64px
            }

            .more h2 {
                font-size: clamp(22px,2.6vw,30px);
                font-weight: 800;
                letter-spacing: -.02em;
                margin: 0 0 6px
            }

            .more .sub {
                color: var(--muted);
                margin: 0 0 24px
            }

            .more-grid {
                display: grid;
                grid-template-columns: repeat(3,1fr);
                gap: 18px
            }

            .more-card {
                background: #fff;
                border: 1px solid var(--line);
                border-radius: var(--radius);
               
                transition: .18s;
                display: flex;
                flex-direction: column;
                gap: 4px;
                    overflow: hidden;
            }
			.cover_img {
    			height: 200px;
    			margin-bottom: 10px;
    			background-size: cover;
    			background-position: center;
    			background-repeat: no-repeat;
}
            .more-card-content{
                 padding: 20px;
            }

            .more-card:hover {
                box-shadow: var(--shadow-h);
                transform: translateY(-3px);
                border-color: #d6ded8
            }

            .more-card .badge {
                align-self: flex-start;
                  margin: 20px;
                   margin-bottom: 8px;
            }
            
            
          

            .more-card h3 {
                font-size: 17px;
                font-weight: 700;
                margin: 0 0 4px;
                    color: var(--ink)!important;
            }

            .more-card .mc-meta {
                font-size: 13.5px;
                color: var(--muted)
            }

            .more-card .mc-foot {
                margin-top: 14px;
                padding-top: 13px;
                border-top: 1px solid var(--line);
                display: flex;
                align-items: center;
                justify-content: space-between
            }

            .more-card .mc-foot .when {
                font-size: 12.5px;
                color: var(--muted)
            }
            
            .more-grid .badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-radius: 5px;
  padding: 4px 10px;
}
.more-grid .badge.excl {
  background: var(--vert);
  color: #fff;
}
.more-grid .badge.une {
  background: var(--vif);
  color: #fff;
}
.more-grid .badge.new {
  background: var(--soft);
  color: var(--vert);
}
            


  .more-grid   .btn.lg {
    padding: 15px 30px;
    font-size: 16px;
}
.more-grid  .btn.white {
    background: #fff;
    color: var(--vert);
}
.more-grid  .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 0;
    border-radius: 8px;
    padding: 12px 22px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    font-family: inherit;
    transition: .15s;
    white-space: nowrap;
}
.more-grid .btn.sm {
    padding: 9px 16px;
    font-size: 14px;
}
.more-grid .btn.vert {
    background: var(--vert);
    color: #fff;
}

.gp_autres_offres .mini {
  display: block;
  padding: 13px 0;
  border-top: 1px solid var(--line);
  transition: 0.12s;
}
.gp_autres_offres .mini:first-of-type {
  border-top: 0;
  padding-top: 0;
}
.gp_autres_offres .mini:hover h4 {
  color: var(--vert);
}
.gp_autres_offres .mini h4 {
  font-size: 14.5px;
  font-weight: 700;
  margin: 0 0 3px;
  line-height: 1.3;
  transition: 0.12s;
  color: var(--ink);
}
.gp_autres_offres .mini .m {
  font-size: 12.5px;
  color: var(--muted);
}
.gp_autres_offres .mini .mt {
  display: flex;
  gap: 6px;
  margin-top: 7px;
  flex-wrap: wrap;
}
.gp_autres_offres .mini .mt span {
  background: var(--soft);
  color: var(--vert);
  font-size: 11.5px;
  font-weight: 600;
  border-radius: 5px;
  padding: 2px 8px;
}
.gp_autres_offres .all {
  display: block;
  text-align: center;
  margin-top: 14px;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--vert);
}
p#breadcrumbs a {
    color: var(--ink);
    font-family: var(--e-global-typography-primary-font-family);
}
span.breadcrumb_last {
    font-weight: 800;
     font-family: var(--e-global-typography-primary-font-family);
}

.more-grid.favorite a {
    text-decoration: none;
}
.backlink {
    font-size: 13.5px;
    font-weight: 600;
    color: var(--vert);
    display: flex;
    align-items: center;
    gap: 6px;
        float: right;
}


/* Drawer mobile */
.gp-drawer {
    position: fixed;
    bottom: 0; left: 0; right: 0;
    max-height: 90vh;
    background: var(--card);
    border-radius: 16px 16px 0 0;
    overflow-y: auto;
    z-index: 9999;
    transform: translateY(100%);
    transition: transform .3s ease;
}
.gp-drawer.open      { transform: translateY(0); }
.gp-drawer-overlay   { display:none; position:fixed; inset:0; background:rgba(0,0,0,.45); z-index:9998; }
.gp-drawer-overlay.open { display:block; }
.gp-drawer-close {
    position: sticky;
    top: 12px; right: 12px;
    float: right;
    background: transparent;
    border: none;
    font-size: 20px;
    cursor: pointer;
    padding: 8px 12px;
}


.gp-job-listing-wrapper a {
  color: inherit;
  text-decoration: none;
}
.gp-job-listing-wrapper .wrap {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
}
.gp-job-listing-wrapper .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 0;
  border-radius: 8px;
  padding: 12px 22px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  transition: 0.15s;
  white-space: nowrap;
}
.gp-job-listing-wrapper .btn.vif {
  background: var(--vif);
  color: #fff;
}
.gp-job-listing-wrapper .btn.vif:hover {
  background: var(--vif-d);
}
.gp-job-listing-wrapper .btn.vert {
  background: var(--vert);
  color: #fff;
}
.gp-job-listing-wrapper .btn.vert:hover {
  background: var(--vert-d);
}
.gp-job-listing-wrapper .btn.white {
  background: #fff;
  color: var(--vert);
}
.gp-job-listing-wrapper .btn.white:hover {
  background: #f0f3ee;
}
.gp-job-listing-wrapper .btn.ghost {
  background: transparent;
  border: 1.5px solid var(--line);
  color: var(--ink);
  font-weight: 600;
}
.gp-job-listing-wrapper .btn.ghost:hover {
  border-color: var(--vert);
  color: var(--vert);
}
.gp-job-listing-wrapper .btn.sm {
  padding: 9px 16px;
  font-size: 14px;
}
.gp-job-listing-wrapper .btn.lg {
  padding: 15px 30px;
  font-size: 16px;
}
.gp-job-listing-wrapper {
  /* ============ HEADER (identique home) ============ */
}
.gp-job-listing-wrapper .topbar {
  background: #fff;
  border-bottom: 1px solid var(--line);
  position: sticky;
  top: 0;
  z-index: 50;
}
.gp-job-listing-wrapper .topbar .wrap {
  display: flex;
  align-items: center;
  gap: 34px;
  height: 74px;
}
.gp-job-listing-wrapper .brand svg {
  height: 46px;
  width: auto;
  display: block;
}
.gp-job-listing-wrapper .mainnav {
  display: flex;
  gap: 28px;
  font-size: 15.5px;
  font-weight: 600;
}
.gp-job-listing-wrapper .mainnav a {
  color: #33433d;
  padding: 6px 0;
  position: relative;
}
.gp-job-listing-wrapper .mainnav a.on {
  color: var(--vert);
}
.gp-job-listing-wrapper .mainnav a.on::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -26px;
  height: 3px;
  background: var(--vif);
}
.gp-job-listing-wrapper .mainnav a:hover {
  color: var(--vert);
}
.gp-job-listing-wrapper .topbar .right {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 16px;
}
.gp-job-listing-wrapper .icon-btn {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #33433d;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.gp-job-listing-wrapper .icon-btn:hover {
  background: var(--soft);
  color: var(--vert);
}
.gp-job-listing-wrapper .login {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 14.5px;
  font-weight: 600;
  color: #33433d;
  cursor: pointer;
}
.gp-job-listing-wrapper .login:hover {
  color: var(--vert);
}
.gp-job-listing-wrapper .social {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--ink);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.gp-job-listing-wrapper .social:hover {
  background: var(--vert);
}
.gp-job-listing-wrapper .burger {
  display: none;
  background: none;
  border: 0;
  cursor: pointer;
  color: var(--ink);
}
.gp-job-listing-wrapper .subnav {
  background: var(--vert);
}
.gp-job-listing-wrapper .subnav .wrap {
  display: flex;
  gap: 30px;
  height: 48px;
  align-items: center;
}
.gp-job-listing-wrapper .emploi-nav {
  display: flex;
  align-items: center;
  height: 48px;
}
.gp-job-listing-wrapper .menu {
  position: relative;
  height: 48px;
  display: flex;
  align-items: center;
}
.gp-job-listing-wrapper .menu > a {
  color: #cfe6df;
  font-size: 14.5px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 15px;
  height: 100%;
}
.gp-job-listing-wrapper .menu:first-child > a {
  padding-left: 0;
}
.gp-job-listing-wrapper .menu > a .cv {
  width: 13px;
  height: 13px;
  flex: 0 0 auto;
  transition: 0.2s;
}
.gp-job-listing-wrapper .menu:hover > a, .gp-job-listing-wrapper .menu > a.on {
  color: #fff;
}
.gp-job-listing-wrapper .menu:hover > a .cv {
  transform: rotate(180deg);
}
.gp-job-listing-wrapper .menu > a.on::after {
  content: "";
  position: absolute;
  left: 15px;
  right: 15px;
  bottom: 0;
  height: 3px;
  background: var(--vif);
}
.gp-job-listing-wrapper .menu:first-child > a.on::after {
  left: 0;
}
.gp-job-listing-wrapper .drop {
  position: absolute;
  top: 48px;
  left: 0;
  min-width: 236px;
  background: #fff;
  border-radius: 0 0 10px 10px;
  box-shadow: 0 16px 44px rgba(0, 0, 0, 0.18);
  padding: 10px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(7px);
  transition: 0.16s;
  z-index: 60;
  border-top: 3px solid var(--vif);
}
.gp-job-listing-wrapper .menu:hover .drop {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.gp-job-listing-wrapper .drop a {
  display: block;
  color: #33433d;
  font-size: 14.5px;
  font-weight: 500;
  padding: 9px 13px;
  border-radius: 7px;
  white-space: nowrap;
}
.gp-job-listing-wrapper .drop a:hover {
  background: var(--soft);
  color: var(--vert);
}
.gp-job-listing-wrapper .drop .dsep {
  height: 1px;
  background: var(--line);
  margin: 7px 6px;
}
.gp-job-listing-wrapper .drop a.lead-link {
  font-weight: 700;
  color: var(--vert);
}
.gp-job-listing-wrapper .emploi-cta {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
}
.gp-job-listing-wrapper .btn.ghost-w {
  background: transparent;
  border: 1.5px solid rgba(255, 255, 255, 0.45);
  color: #fff;
  font-weight: 600;
}
.gp-job-listing-wrapper .btn.ghost-w:hover {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.12);
}
.gp-job-listing-wrapper .ico {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  vertical-align: -2px;
}
.gp-job-listing-wrapper {
  /* ============ BARRE RECHERCHE (résultats) ============ */
}
.gp-job-listing-wrapper .searchwrap {
  background: #fff;
  border-bottom: 1px solid var(--line);
  
  
}
.gp-job-listing-wrapper .searchrow {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 16px 0;
}
.gp-job-listing-wrapper .sfield {
  position: relative;
  flex: 1;
}
.gp-job-listing-wrapper .sfield .ic {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--muted);
  width: 18px;
  height: 18px;
}
.gp-job-listing-wrapper .sfield input {
  width: 100%;
  border: 1.5px solid var(--line);
  border-radius: 9px;
  padding: 13px 14px 13px 42px;
  font-size: 15px;
  font-family: inherit;
  color: var(--ink);
  background: #fff;
  transition: 0.15s;
}
.gp-job-listing-wrapper .sfield input:focus {
  outline: 0;
  border-color: var(--vif);
  box-shadow: 0 0 0 3px rgba(147, 192, 31, 0.15);
}
.gp-job-listing-wrapper {
  /* barre de filtres horizontale (style talent.com) */
}
.gp-job-listing-wrapper .filters {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 0 0 14px;
  flex-wrap: wrap;
}
.gp-job-listing-wrapper .fsel {
  position: relative;
}
.gp-job-listing-wrapper .fsel select {
  appearance: none;
  -webkit-appearance: none;
  border: 1.5px solid var(--line);
  background: #fff;
  border-radius: 30px;
  padding: 9px 36px 9px 16px;
  font-size: 14px;
  font-weight: 600;
  color: var(--ink);
  font-family: inherit;
  cursor: pointer;
  transition: 0.15s;
}
.gp-job-listing-wrapper .fsel select:hover {
  border-color: var(--vert);
}
.gp-job-listing-wrapper .fsel::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid var(--muted);
  border-bottom: 2px solid var(--muted);
  transform: translateY(-70%) rotate(45deg);
  pointer-events: none;
}
.gp-job-listing-wrapper .filters .clearf {
  margin-left: auto;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--muted);
  cursor: pointer;
}
.gp-job-listing-wrapper .filters .clearf:hover {
  color: var(--vert);
}
.gp-job-listing-wrapper {
  /* ============ ZONE RÉSULTATS ============ */
}
.gp-job-listing-wrapper .results {
  padding: 22px 0 60px;
}
.gp-job-listing-wrapper .results-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}
.gp-job-listing-wrapper .results-head h1 {
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -0.01em;
  margin: 0;
}
.gp-job-listing-wrapper .results-head h1 b {
  color: var(--vert);
}
.gp-job-listing-wrapper .results-head .count {
  color: var(--muted);
  font-weight: 600;
  font-size: 14.5px;
}
.gp-job-listing-wrapper .sortbox {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--muted);
  font-weight: 600;
}
.gp-job-listing-wrapper .alert-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  background: linear-gradient(135deg, var(--vert), #0a7a62);
  color: #fff;
  border-radius: 12px;
  padding: 14px 20px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}
.gp-job-listing-wrapper .alert-strip .t {
  font-size: 15px;
  font-weight: 600;
      max-width: calc(100% - 170px);

}
.gp-job-listing-wrapper .alert-strip .t b {
  font-weight: 800;
}
.gp-job-listing-wrapper {
  /* split master-detail */
}
.gp-job-listing-wrapper .split {
  display: grid;
  grid-template-columns: minmax(370px, 440px) 1fr;
  gap: 22px;
  align-items: start;
}
.gp-job-listing-wrapper {
  /* colonne gauche : liste */
}
.gp-job-listing-wrapper .joblist {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.gp-job-listing-wrapper .jobcard {
  background: #fff;
  border: 1.5px solid var(--line);
  border-radius: var(--radius);
  padding: 18px;
  cursor: pointer;
  transition: 0.15s;
  position: relative;
}
.gp-job-listing-wrapper .jobcard:hover {
  border-color: #cdd8d0;
  box-shadow: var(--shadow);
}
.gp-job-listing-wrapper .jobcard.active {
  border-color: var(--vert);
  box-shadow: 0 0 0 1px var(--vert), var(--shadow-h);
}
.gp-job-listing-wrapper .jobcard.active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  bottom: 14px;
  width: 4px;
  border-radius: 0 4px 4px 0;
  background: var(--vif);
}
.gp-job-listing-wrapper .jc-top {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.gp-job-listing-wrapper .jc-logo {
  width: 50px;
  height: 50px;
  flex: 0 0 50px;
  border-radius: 9px;
  background: var(--soft);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 16px;
  color: var(--vert);
}
.gp-job-listing-wrapper .jc-main {
  flex: 1;
  min-width: 0;
}
.gp-job-listing-wrapper .jc-main h3 {
  font-size: 16.5px;
  font-weight: 700;
  margin: 0 0 3px;
  line-height: 1.3;
}
.gp-job-listing-wrapper .jc-comp {
  font-size: 14px;
  color: var(--muted);
  font-weight: 600;
}
.gp-job-listing-wrapper .jc-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 11px;
}
.gp-job-listing-wrapper .tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: var(--soft);
  color: var(--vert);
  font-size: 12.5px;
  font-weight: 600;
  border-radius: 6px;
  padding: 4px 9px;
  white-space: nowrap;
}
.gp-job-listing-wrapper .tag.sal {
  color: var(--vif-d);
}
.gp-job-listing-wrapper .jc-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}
.gp-job-listing-wrapper .jc-when {
  font-size: 12.5px;
  color: var(--muted);
}
.gp-job-listing-wrapper .badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-radius: 5px;
  padding: 3px 8px;
}
.gp-job-listing-wrapper .badge.une {
  background: var(--vif);
  color: #fff;
}
.gp-job-listing-wrapper .badge.excl {
  background: var(--vert);
  color: #fff;
}
.gp-job-listing-wrapper .badge.ft {
  background: var(--soft);
  color: var(--vert);
}
.gp-job-listing-wrapper .save {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  border: 1.5px solid var(--line);
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--muted);
  cursor: pointer;
  transition: 0.15s;
}
.gp-job-listing-wrapper .save:hover {
  border-color: var(--vif);
  color: var(--vif-d);
}
.gp-job-listing-wrapper .pagin {
  display: flex;
  gap: 7px;
  justify-content: center;
  margin-top: 20px;
}
.gp-job-listing-wrapper .pagin a {
  min-width: 38px;
  height: 38px;
  padding: 0 6px;
  border: 1.5px solid var(--line);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 600;
  color: var(--muted);
  background: #fff;
}
.gp-job-listing-wrapper .pagin a.on {
  background: var(--vert);
  color: #fff;
  border-color: var(--vert);
}
.gp-job-listing-wrapper .pagin a:hover:not(.on) {
  border-color: var(--vert);
  color: var(--vert);
}
.gp-job-listing-wrapper {
  /* colonne droite : aperçu sticky */
}
.gp-job-listing-wrapper .detailcol {
  position: sticky;
 /* top: 210px; */
  top: 130px;
  max-height: calc(100vh - 145px);
  overflow: auto;
  background: #fff;
  border: 1.5px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}
.admin-bar .gp-job-listing-wrapper .detailcol {
    top: 160px;
   max-height: calc(100vh - 170px);
}
.gp-job-listing-wrapper .detailcol::-webkit-scrollbar {
  width: 10px;
}
.gp-job-listing-wrapper .detailcol::-webkit-scrollbar-thumb {
  background: #dde4df;
  border-radius: 8px;
  border: 3px solid #fff;
}
.gp-job-listing-wrapper .dt-head {
  padding: 24px 26px 18px;
  border-bottom: 1px solid var(--line);
}
.gp-job-listing-wrapper .dt-srcrow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}
.gp-job-listing-wrapper .dt-head h2 {
  font-size: 23px;
  font-weight: 800;
  letter-spacing: -0.02em;
  margin: 8px 0 6px;
  line-height: 1.2;
}
.gp-job-listing-wrapper .dt-comp {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 14px;
}
.gp-job-listing-wrapper .dt-comp .lg {
  width: 44px;
  height: 44px;
  border-radius: 9px;
  background: var(--soft);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  color: var(--vert);
}
.gp-job-listing-wrapper .dt-comp .nm {
  font-size: 15px;
  font-weight: 700;
}
.gp-job-listing-wrapper .dt-comp .nm small {
  display: block;
  font-weight: 500;
  color: var(--muted);
  font-size: 13px;
}
.gp-job-listing-wrapper .dt-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}
.gp-job-listing-wrapper .dt-cta {
  display: flex;
  gap: 10px;
}
.gp-job-listing-wrapper .dt-cta .btn {
  flex: 1;
}
.gp-job-listing-wrapper .dt-body {
  padding: 22px 26px 26px;
}
.gp-job-listing-wrapper .dt-body h4 {
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--vert);
  margin: 20px 0 9px;
}
.gp-job-listing-wrapper .dt-body h4:first-child {
  margin-top: 0;
}
.gp-job-listing-wrapper .dt-body p {
  font-size: 14.5px;
  color: #384640;
  margin: 0 0 10px;
}
.gp-job-listing-wrapper .dt-body ul {
  margin: 0 0 10px;
  padding-left: 18px;
  font-size: 14.5px;
  color: #384640;
}
.gp-job-listing-wrapper .dt-body ul li {
  margin-bottom: 5px;
}
.gp-job-listing-wrapper .dt-note {
  font-size: 12.5px;
  color: var(--muted);
  background: var(--soft);
  border-radius: 8px;
  padding: 11px 13px;
  margin-top: 16px;
}
.gp-job-listing-wrapper .dt-foot {
  padding: 18px 26px;
  border-top: 1px solid var(--line);
  background: #fafcfa;
  display: flex;
  gap: 10px;
  align-items: center;
}
.gp-job-listing-wrapper .dt-foot .btn {
  flex: 1;
}
.gp-job-listing-wrapper .poc-tag {
  position: fixed;
  right: 14px;
  bottom: 14px;
  z-index: 99;
  background: var(--ink);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  padding: 8px 14px;
  border-radius: 30px;
  box-shadow: var(--shadow-h);
  opacity: 0.92;
}
.gp-job-listing-wrapper .poc-tag span {
  color: var(--vif);
}
.gp-job-listing-wrapper {
  /* footer (identique home) */
}
.gp-job-listing-wrapper footer {
  background: var(--ink);
  color: #b9c4bf;
  padding: 54px 0 30px;
  margin-top: 8px;
}
.gp-job-listing-wrapper footer .cols {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 36px;
  margin-bottom: 36px;
}
.gp-job-listing-wrapper footer .brand-f svg {
  height: 42px;
  filter: brightness(0) invert(1);
  opacity: 0.95;
  margin-bottom: 14px;
}
.gp-job-listing-wrapper footer p.desc {
  font-size: 14px;
  color: #8c9a94;
  max-width: 34ch;
  margin: 0;
}
.gp-job-listing-wrapper footer h5 {
  color: #fff;
  font-size: 13px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin: 0 0 14px;
  font-weight: 700;
}
.gp-job-listing-wrapper footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 9px;
  font-size: 14.5px;
}
.gp-job-listing-wrapper footer ul a:hover {
  color: #fff;
}
.gp-job-listing-wrapper footer .legal {
  border-top: 1px solid #2c3833;
  padding-top: 22px;
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  justify-content: space-between;
  font-size: 13px;
  color: #7e8c86;
}
.gp-job-listing-wrapper footer .legal .ftlinks {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
}
.gp-job-listing-wrapper {
  /* ============ RESPONSIVE ============ */
}


.gp-job-listing-wrapper .o-badges {
  display: flex;
  gap: 8px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.gp-job-listing-wrapper .badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-radius: 5px;
  padding: 4px 10px;
}
.gp-job-listing-wrapper .badge.excl {
  background: var(--vert);
  color: #fff;
}
.gp-job-listing-wrapper .badge.une {
  background: var(--vif);
  color: #fff;
}
.gp-job-listing-wrapper .badge.new {
  background: var(--soft);
  color: var(--vert);
}
@media (max-width: 1080px) {
  .gp-job-listing-wrapper .split {
    grid-template-columns: 1fr;
  }
  .gp-job-listing-wrapper .detailcol {
    display: none;
  }
  .gp-job-listing-wrapper {
    /* mobile/tablette : pas de split, le clic mène à la page offre */
  }
  .gp-job-listing-wrapper .jobcard .gomobile {
    display: inline-flex;
  }
}
@media (min-width: 1081px) {
  .gp-job-listing-wrapper .jobcard .gomobile {
    display: none;
  }
}
@media (max-width: 980px) {
  .gp-job-listing-wrapper .mainnav, .gp-job-listing-wrapper .subnav, .gp-job-listing-wrapper .login .lbl {
    display: none;
  }
  .gp-job-listing-wrapper .burger {
    display: flex;
  }
  .gp-job-listing-wrapper footer .cols {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 620px) {
  .gp-job-listing-wrapper .topbar .wrap {
    gap: 14px;
    height: 64px;
  }
  .gp-job-listing-wrapper .brand svg {
    height: 38px;
  }

  .gp-job-listing-wrapper .searchrow {
    flex-direction: column;
    align-items: stretch;
  }
  .gp-job-listing-wrapper .split {
    grid-template-columns: 1fr;
  }
  .gp-job-listing-wrapper footer .cols {
    grid-template-columns: 1fr;
  }
}

#gp-pagin span.disabled {
    display: none;
}
.results-head h2{
        font-size: 20px;
    font-weight: 700;

}
div#gp-detail .dt-empty {
    /* padding-top: 100px; */
    /* padding-bottom: 100px; */
    text-align: center;
    height: 160px;
    display: flex;
    align-content: center;
    flex-wrap: wrap;
    justify-content: center;
}
#gp-results {
    opacity:0;
    transition:.15s
}
body.loaded #gp-results {
    opacity:1;
    transition:.15s
}

@media (max-width:620px) {
    
    .gp-job-listing-wrapper .filters .fsel {
    width: 100%;
}

.more-grid:not(.a-la-une) {
        display: flex;
    flex-direction: column;
}
.gp-job-listing-wrapper .dt-cta {
  
    flex-direction: column;
}
.main_card .apply-inline .txt {
    max-width:100%;
}


.main_card .o-facts {
        display: flex;
    flex-direction: column;
}
.gp-job-listing-wrapper .searchrow {
   
}
.gp-job-listing-wrapper .wrap {
        margin-bottom: 70Px;
       
}
.gp-job-listing-wrapper .searchrow {
      position:relative;
}
.gp-job-listing-wrapper button[type="submit"].btn {
        height: 50px;
    position: absolute;
    width: 100%;
    bottom: -290px;

}
.gp-job-listing-wrapper .joblist {
        width: 96%;
    margin-left: 1%;
}
div#liste {
    display: flex;
    flex-direction: column;
}

div#liste .list-logo {
    display: none;
   
}
.gp-job-listing-wrapper .jc-logo {
    display:none;
}
}

.alert-system {
    /*display: none !important;*/
}
#gp-metier {
    width:300px;
}
.no-initiale {
        width: 40px;
    height: 40px;
    background-size: contain!important;
}

.more-wrapper {
    display:flex;
}


.more-wrapper .logo.logo_img img {
    width: 40px;
    margin-right: 7Px;
    height: 40px;
    object-fit: contain;
}


.msc-signup-overlay{
		display:none;
		position:fixed;
		top:0; left:0; right:0; bottom:0;
		background:rgba(0,0,0,.6);
		z-index:99999;
		align-items:center;
		justify-content:center;
	}
	.msc-signup-overlay.is-open{
		display:flex;
	}
	.msc-signup-popin{
		background:#FFFFFF;
		width:90%;
		max-width:420px;
		padding:40px 30px;
		border-radius:6px;
		position:relative;
		font-family:"Poppins", sans-serif;
		    max-height: 80vh;
    overflow: scroll;
	}
	.msc-signup-close{
		position:absolute;
		top:12px; right:16px;
		background:none;
		border:none;
		font-size:26px;
		line-height:1;
		cursor:pointer;
		color:#005B4A;
	}
	.msc-signup-popin h2{
		color:#005B4A;
		font-family:"Poppins", sans-serif;
		font-weight:700;
		text-transform:uppercase;
		margin-bottom:20px;
		text-align:center;
	}
	.msc-field{
		margin-bottom:16px;
	}
	.msc-field label{
		display:block;
		font-family:"Poppins", sans-serif;
		font-weight:700;
		color:#005B4A;
		margin-bottom:6px;
		font-size:14px;
	}
	.msc-field input{
		width:100%;
		padding:10px 12px;
		border:2px solid #93C01F;
		border-radius:4px;
		font-family:"Poppins", sans-serif;
		box-sizing:border-box;
	}
	.msc-field input:focus{
		outline:none;
		border-color:#005B4A;
	}
	.msc-field-submit{
		text-align:center;
		margin-top:24px;
	}
	#msc-signup-submit{
		background-color:#FFFFFF;
		font-family:"Poppins", Sans-serif;
		font-weight:700;
		text-transform:uppercase;
		fill:#93C01F;
		color:#93C01F;
		border-style:solid;
		border-width:2px 2px 2px 2px;
		border-color:#93C01F;
		padding:12px 28px;
		border-radius:4px;
		cursor:pointer;
		transition:all .2s ease;
	}
	#msc-signup-submit:hover{
		background-color:#93C01F;
		color:#FFFFFF;
	}
	#msc-signup-submit:disabled{
		opacity:.6;
		cursor:not-allowed;
	}
	
	#msc-login-submit{
		background-color:#FFFFFF;
		font-family:"Poppins", Sans-serif;
		font-weight:700;
		text-transform:uppercase;
		fill:#93C01F;
		color:#93C01F;
		border-style:solid;
		border-width:2px 2px 2px 2px;
		border-color:#93C01F;
		padding:12px 28px;
		border-radius:4px;
		cursor:pointer;
		transition:all .2s ease;
	}
	#msc-login-submit:hover{
		background-color:#93C01F;
		color:#FFFFFF;
	}
	#msc-login-submit:disabled{
		opacity:.6;
		cursor:not-allowed;
	}
	.msc-signup-message, .msc-login-message{
		padding:10px 14px;
		margin-bottom:16px;
		border-radius:4px;
		font-size:14px;
		text-align:center;
		font-weight:600;
		margin-bottom:10px;
	}
	.msc-success{
		background:#eaf4d8;
		color:#005B4A;
		border:1px solid #93C01F;
	}
.msc-error{
		background:#fde8e8;
		color:#a12626;
		border:1px solid #e08a8a;
	}
	
	button.msc-signup-close:hover, button.msc-signup-close:focus {
        background: none;
        color: #005B4A;
    }
    
    #msc-signup-rgpd {
        display: inline;
    float: left;
    width: auto;
    margin-right: 10px;
    }
    
    .msc-signup-creer-postuler {
           display:block;
    }
    .msc-signup-creer-alerte {
        display:none;
    }
    
   body.create_alert_sign_up .msc-signup-creer-postuler {
           display:none;
    }
     body.create_alert_sign_up .msc-signup-creer-alerte {
        display:block;
    }
    
    	.msc-login-wrapper{
		max-width:360px;
		font-family:"Poppins", sans-serif;
	}
	.msc-login-wrapper p{
		margin-bottom:14px;
	}
	.msc-login-wrapper label{
		display:block;
		font-weight:700;
		color:#005B4A;
		margin-bottom:6px;
		font-size:14px;
	}
	.msc-login-wrapper input[type="text"],
	.msc-login-wrapper input[type="password"]{
		width:100%;
		padding:10px 12px;
		border:2px solid #93C01F;
		border-radius:4px;
		font-family:"Poppins", sans-serif;
		box-sizing:border-box;
	}
	.msc-login-wrapper input[type="submit"]{
		background-color:#FFFFFF;
		font-family:"Poppins", Sans-serif;
		font-weight:700;
		text-transform:uppercase;
		color:#93C01F;
		border:2px solid #93C01F;
		padding:12px 28px;
		border-radius:4px;
		cursor:pointer;
		transition:all .2s ease;
	}
	.msc-login-wrapper input[type="submit"]:hover{
		background-color:#93C01F;
		color:#FFFFFF;
	}
	.msc-login-signup-link{
		font-size:14px;
	}
	.msc-login-signup-link a,
	.msc-logout-link{
		color:#005B4A;
		font-weight:700;
		text-decoration:underline;
	}
	
	.msc-login-link{
		color:#005B4A;
		font-weight:700;
		text-align:center;
	}
	
		.msc-login-link a{
		color:#93C01F;
		font-weight:700;
		text-decoration:underline;
	}
	
	.gp-my-alerts{
    margin:30px 0;
}

.gp-alerts-list{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:16px;
}

.gp-alert-item{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:18px 22px;
    background:#fff;
    border:1px solid #E7ECEF;
    border-radius:12px;
    transition:.2s ease;
}

.gp-alert-item:hover{
    border-color:#93C01F;
    box-shadow:0 8px 20px rgba(0,0,0,.06);
}

.gp-alert-desc{
    display:flex;
    flex-direction:column;
    gap:8px;
    min-width:0;
    flex:1;
}

.gp-alert-label{
    font-family:"Poppins",sans-serif;
    font-size:17px;
    font-weight:600;
    color:#222;
    line-height:1.4;
}

.gp-alert-status{
    display:inline-flex;
    align-items:center;
    width:fit-content;
    padding:4px 10px;
    border-radius:30px;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.gp-alert-status.on{
    background:rgba(147,192,31,.12);
    color:#6F9615;
}

.gp-alert-status.off{
    background:#F3F4F6;
    color:#777;
}

.gp-alert-date{
    font-size:13px;
    color:#8A8A8A;
}

.gp-delete-alert{
background: #fff;
    color: #E74C3C !important;
    border: 2px solid #E74C3C !important;
    border-radius: 4px !important;
    padding: 10px 20px !important;
    font-family: "Poppins", sans-serif;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    cursor: pointer !important;
    transition: .2s ease !important;
    flex-shrink: 0;
}

.gp-delete-alert:hover{
    background:#E74C3Cimportant;;
    color:#fff!important;
}
.gp-delete-alert:focus{
    background:#E74C3Cimportant;;
    color:#fff!important;
}

.gp-delete-alert:disabled{
    opacity:.5;
    cursor:not-allowed;
}

@media (max-width:768px){

    .gp-alert-item{
        flex-direction:column;
        align-items:flex-start;
    }

    .gp-delete-alert{
        width:100%;
    }

}
	
button.btn.sm.gp-toggle-alert {
    color: #93C01F;
    border-color: #93C01F;
}
button.btn.sm.gp-toggle-alert:hover, button.btn.sm.gp-toggle-alert:focus{
    color: white;
    background:#93C01F;
}

button.btn.sm.gp-send-alerts-now {
     color: white;
    background:#93C01F;
     border-color: #93C01F;
  
}
button.btn.sm.gp-send-alerts-now:hover, button.btn.sm.gp-send-alerts-now:focus{
     color: #93C01F;
    border-color: #93C01F;
}
.create_alert.disabled {
    opacity:0.5;
    cursor:not-allowed;
}

.login-submit {
    text-align:center;
}


/* ── Reset de base ── */
.gp-account-wrap *,
.gp-account-wrap *::before,
.gp-account-wrap *::after { box-sizing: border-box; }
 
/* ── Conteneur ── */
.gp-account-wrap {
	max-width: 760px;
	margin: 0 auto;
	padding: 2rem 1rem 4rem;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	color: #1a1a2e;
}
 
/* ── En-tête ── */
.gp-account-header {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: 2rem;
}
.gp-avatar__img {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid #e8e8f0;
}
.gp-account-title {
	margin: 0 0 .2rem;
	font-size: 1.6rem;
	font-weight: 700;
	color: #1a1a2e;
}
.gp-account-username {
	margin: 0;
	font-size: .9rem;
	color: #6b7280;
}
 
/* ── Feedback ── */
.gp-feedback {
	padding: .9rem 1.2rem;
	border-radius: 8px;
	font-size: .95rem;
	margin-bottom: 1.5rem;
	line-height: 1.5;
}
.gp-feedback--success { background: #ecfdf5; color: #065f46; border: 1px solid #6ee7b7; }
.gp-feedback--error   { background: #fef2f2; color: #991b1b; border: 1px solid #fca5a5; }
 
/* ── Fieldset ── */
.gp-fieldset {
	border: 1px solid #e8e8f0;
	border-radius: 12px;
	padding: 1.5rem;
	margin-bottom: 1.5rem;
	background: #fff;
	box-shadow: 0 1px 4px rgba(0,0,0,.04);
}
.gp-fieldset__legend {
	font-size: 1rem;
	font-weight: 600;
	color: #374151;
	padding: 0 .5rem;
	display: flex;
	align-items: center;
	gap: .4rem;
}
.gp-fieldset__hint {
	font-size: .8rem;
	font-weight: 400;
	color: #9ca3af;
}
 
/* ── Grilles ── */
.gp-grid { display: grid; gap: 1rem; margin-top: 1rem; }
.gp-grid--1 { grid-template-columns: 1fr; }
.gp-grid--2 { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
 
/* ── Champs ── */
.gp-field { display: flex; flex-direction: column; gap: .35rem; }
.gp-label {
	font-size: .875rem;
	font-weight: 500;
	color: #374151;
}
.gp-required {
	color: #dc2626;
	text-decoration: none;
	margin-left: 2px;
}
.gp-input {
	padding: .6rem .85rem;
	border: 1.5px solid #d1d5db;
	border-radius: 8px;
	font-size: .95rem;
	color: #1a1a2e;
	background: #fafafa;
	transition: border-color .18s, box-shadow .18s;
	width: 100%;
}
.gp-input:focus {
	outline: none;
	border-color: #6366f1;
	background: #fff;
	box-shadow: 0 0 0 3px rgba(99,102,241,.15);
}
.gp-input:invalid:not(:placeholder-shown) { border-color: #dc2626; }
 
/* ── Bouton toggle password ── */
.gp-input-wrap { position: relative; }
.gp-input-wrap .gp-input { padding-right: 2.8rem; }
.gp-toggle-pass {
	position: absolute;
	right: .6rem;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	cursor: pointer;
	font-size: 1.1rem;
	line-height: 1;
	padding: .2rem;
	color: #6b7280;
}
.gp-toggle-pass:hover { color: #374151; }
 
/* ── Jauge de force ── */
.gp-strength-wrap { margin-top: 1rem; }
.gp-strength-bar {
	height: 5px;
	border-radius: 3px;
	background: #e5e7eb;
	overflow: hidden;
}
#gp-strength-fill {
	display: block;
	height: 100%;
	width: 0;
	border-radius: 3px;
	transition: width .3s, background .3s;
}
.gp-strength-label { font-size: .8rem; color: #6b7280; margin: .4rem 0 0; }
 
/* ── Actions ── */
.gp-actions { display: flex; justify-content: flex-end; margin-top: .5rem; }
.gp-btn {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	padding: .7rem 1.6rem;
	border: none;
	border-radius: 8px;
	font-size: .95rem;
	font-weight: 600;
	cursor: pointer;
	transition: background .18s, opacity .18s;
}
.gp-btn--primary {
	background: #6366f1;
	color: #fff;
}
.gp-btn--primary:hover { background: #4f46e5; }
.gp-btn--primary:disabled { opacity: .6; cursor: default; }
 
/* ── Spinner ── */
.gp-btn__spinner {
	width: 16px;
	height: 16px;
	border: 2px solid rgba(255,255,255,.4);
	border-top-color: #fff;
	border-radius: 50%;
	animation: gp-spin .6s linear infinite;
}
@keyframes gp-spin { to { transform: rotate(360deg); } }
 
/* ── Notice non connecté ── */
.gp-notice { padding: 1rem; background: #fefce8; border: 1px solid #fde68a; border-radius: 8px; }
 
@media (max-width: 500px) {
	.gp-account-header { flex-direction: column; text-align: center; }
}


.gp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 0;
  border-radius: 8px;
  padding: 12px 22px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  transition: 0.15s;
  white-space: nowrap;
}
.gp-btn.vif {
  background: var(--vif);
  color: #fff;
}
.gp-btn.vif:hover {
  background: var(--vif-d);
}
.gp-btn.vert {
  background: var(--vert);
  color: #fff;
}
.gp-btn.vert:hover {
  background: var(--vert-d);
}
.gp-btn.white {
  background: #fff;
  color: var(--vert);
}
.gp-btn.white:hover {
  background: #f0f3ee;
}
.gp-btn.ghost {
  background: transparent;
  border: 1.5px solid var(--line);
  color: var(--ink);
  font-weight: 600;
}
.gp-btn.ghost:hover {
  border-color: var(--vert);
  color: var(--vert);
}
.gp-btn.sm {
  padding: 9px 16px;
  font-size: 14px;
}
.gp-btn.lg {
  padding: 15px 30px;
  font-size: 16px;
}

.msc-continue-no-account-btn {
    text-align: center;
    color: #93C01F;
    font-weight: 700;
    width: 100%;
    display: block;
    text-decoration: underline;
}

#msc-continue-no-account {
    text-align:center;
    line-height:1;
}


#msc-signup-newsletter {
        display: inline;
    float: left;
    width: auto;
    margin-right: 10px;
}
.gp-orderby-une-label {
    font-size: 16px;
    font-weight: 600;
    color: var(--muted);
}

.more-grid.a-la-une {
    display: flex;
    flex-wrap: nowrap;
    gap: 20px;
    overflow-x: auto;
    overflow-y: hidden; 

    scrollbar-width: none;
}

.more-grid.a-la-une::-webkit-scrollbar {
    display: none;
}

.more-grid.a-la-une .more-card {
    flex: 0 0 calc(33.333% - 14px);
    min-width: 280px;

    scroll-snap-align: start;
}

.a-la-une-slider-wrapper {
    width: 100%;
}

.a-la-une-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
}

.a-la-une-dot {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #ccc;
    cursor: pointer;
    transition: all .25s ease;
}

.a-la-une-dot.active {
    width: 22px;
    border-radius: 10px;
    background: #333;
}

.more-grid.a-la-une .more-wrapper h3 {
    min-height: 43px;
}

.more-grid.a-la-une .more-wrapper {
    min-height: 46Px;
}