/* ===================================================================
   MOSAICA : SYSTEME DE COMPOSANTS EDITORIAL (arborescence McKinsey)
   Ce fichier vient s'ajouter a assets/styles.css (variables, hero,
   boutons). Il ne redefinit jamais #nav ni .hero-* de l'ancien systeme.
   =================================================================== */

/* ---------- Mosaique artistique (motif du livre Mosaica) ---------- */
.mosaic-art{position:absolute;pointer-events:none;filter:drop-shadow(0 20px 60px rgba(0,0,0,0.35))}
.mosaic-art svg{width:100%;height:100%;display:block}
.mosaic-corner-br{right:-8%;bottom:-14%;width:min(58vw,620px);opacity:0.94;z-index:1}
.mosaic-corner-bl{left:-10%;bottom:-18%;width:min(46vw,480px);opacity:0.4;transform:scaleX(-1);z-index:1}
.mosaic-inline{position:relative;width:100%;max-width:420px;margin:0 auto;filter:drop-shadow(0 12px 30px rgba(6,34,47,0.25))}
.mosaic-inline svg{width:100%;height:auto;display:block}
.mosaic-strip{display:flex;height:10px;overflow:hidden;border-radius:0}
.mosaic-strip span{flex:1}
@media(max-width:700px){
  .mosaic-corner-br{width:78vw;right:-18%;bottom:-10%;opacity:0.5}
  .mosaic-corner-bl{display:none}
}

/* ---------- Base editoriale ---------- */
.tag-cat{display:inline-block;font-size:0.68rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold)}
.tag-cat.navy{color:var(--navy)}
.tag-cat.green{color:var(--green)}
.wrap{max-width:1180px;margin:0 auto;padding:0 1.5rem}
.wrap-narrow{max-width:820px;margin:0 auto;padding:0 1.5rem}
section.pad{padding:5rem 0}
@media(max-width:700px){section.pad{padding:3.25rem 0}}
.eb-head{max-width:680px;margin-bottom:3rem}
.eb-head h2{font-family:'Ibarra Real Nova',serif;font-size:clamp(1.6rem,3.2vw,2.15rem);color:var(--navy);font-weight:700;margin:0.6rem 0 0.85rem;line-height:1.25}
.eb-head p{color:var(--gray6);font-size:1rem;line-height:1.7}
.eb-head.center{margin-left:auto;margin-right:auto;text-align:center}

/* ---------- NAV GLOBALE (gnav) ---------- */
.gnav{position:fixed;top:0;left:0;right:0;z-index:1000;height:68px;background:#fff;border-bottom:2px solid var(--gold);box-shadow:0 2px 16px rgba(0,0,0,0.06);transition:box-shadow 0.2s}
.gnav.scrolled{box-shadow:0 6px 24px rgba(1,46,74,0.1)}
.gnav-inner{max-width:1320px;margin:0 auto;height:100%;display:flex;align-items:center;padding:0 1.5rem;gap:1.75rem}
.gnav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.gnav-logo img{display:block;border-radius:0;height:34px;width:auto}
.gnav-logo-text{font-family:'Ibarra Real Nova',serif;font-weight:700;font-size:0.98rem;color:var(--navy);white-space:nowrap}
.gnav-logo-text span{color:var(--gold)}
.gnav-primary{display:flex;align-items:center;gap:0.15rem;flex:1;list-style:none}
.gnav-primary>li{position:relative}
.gnav-link,.gnav-btn{display:inline-flex;align-items:center;gap:5px;color:var(--navy);text-decoration:none;font-size:0.79rem;font-weight:600;letter-spacing:0.01em;padding:9px 12px;border-radius:0;background:none;border:none;cursor:pointer;font-family:'Space Grotesk',sans-serif;white-space:nowrap;transition:background 0.15s,color 0.15s}
.gnav-link:hover,.gnav-btn:hover,.gnav-btn.open{background:var(--gray1);color:var(--gold)}
.gnav-btn svg{width:9px;height:9px;transition:transform 0.2s;flex-shrink:0}
.gnav-btn.open svg{transform:rotate(180deg)}
.gnav-util{display:flex;align-items:center;gap:0.5rem;flex-shrink:0}
.gnav-icon-btn{width:36px;height:36px;border-radius:50%;border:1px solid #e0e4ea;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--navy);transition:background 0.15s,border-color 0.15s}
.gnav-icon-btn:hover{background:var(--gray1);border-color:var(--navy)}
.gnav-icon-btn svg{width:15px;height:15px}
.gnav-cta{background:var(--gold);color:var(--navy)!important;font-weight:700!important;padding:9px 16px!important;border-radius:0!important;font-size:0.78rem!important}
.gnav-cta:hover{background:#A9803F;color:var(--navy)!important}
.gnav-mobile-btn{display:none;background:none;border:none;width:38px;height:38px;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer}
.gnav-mobile-btn span{display:block;width:20px;height:2px;background:var(--navy);border-radius:0}

/* Mega menu (survol desktop, clic mobile) */
.gnav-mega{display:none;position:fixed;top:68px;left:0;right:0;background:#fff;border-top:3px solid var(--gold);box-shadow:0 24px 60px rgba(0,0,0,0.14);z-index:999;max-height:calc(100vh - 68px);overflow-y:auto}
.gnav-mega.open{display:block}
.gnav-mega-inner{max-width:1180px;margin:0 auto;padding:2.25rem 1.5rem}
.gnav-mega-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:0.25rem}
.gnav-mega-cols.cols-2{grid-template-columns:repeat(2,1fr);max-width:640px}
.gnav-mega-label{font-size:0.64rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--gray6);margin-bottom:1rem;grid-column:1/-1}
.gnav-mega-item{display:block;padding:0.85rem 1rem;border-radius:0;text-decoration:none;color:var(--navy);font-size:0.88rem;font-weight:600;transition:background 0.15s}
.gnav-mega-item:hover{background:var(--gray1);color:var(--gold)}
.gnav-mega-item small{display:block;font-weight:400;color:var(--gray6);font-size:0.76rem;margin-top:0.2rem;line-height:1.4}
.gnav-mega-overlay{display:none;position:fixed;inset:0;top:68px;background:rgba(1,20,35,0.25);z-index:998}
.gnav-mega-overlay.open{display:block}

/* Mobile menu */
.gnav-mobile{display:none;position:fixed;top:68px;left:0;right:0;bottom:0;background:#fff;z-index:997;overflow-y:auto;padding:1rem 1.25rem 2rem}
.gnav-mobile.open{display:block}
.gm-item{border-bottom:1px solid #eef1f4}
.gm-item>a,.gm-item>button{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;text-align:left;padding:1rem 0.25rem;font-size:0.98rem;font-weight:600;color:var(--navy);text-decoration:none;cursor:pointer;font-family:'Space Grotesk',sans-serif}
.gm-item>button svg{width:11px;height:11px;transition:transform 0.2s}
.gm-item>button.open svg{transform:rotate(180deg)}
.gm-sub{display:none;padding:0 0.25rem 1rem 0.75rem}
.gm-sub.open{display:block}
.gm-sub a{display:block;padding:0.6rem 0;color:var(--gray6);text-decoration:none;font-size:0.88rem;border-bottom:1px dashed #f0f0f0}
.gm-cta{display:block;text-align:center;background:var(--gold);color:var(--navy);font-weight:700;padding:0.9rem;border-radius:0;margin-top:1.25rem;text-decoration:none}
@media(max-width:1080px){
  .gnav-primary,.gnav-icon-btn.search-desktop{display:none}
  .gnav-mobile-btn{display:flex}
  .gnav-inner{padding:0 1.1rem}
}

/* ---------- BANDEAU A LA UNE (accueil) ---------- */
.feat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.feat-card{display:block;text-decoration:none;color:inherit}
.feat-card img{width:100%;height:150px;object-fit:cover;border-radius:0;display:block;margin-bottom:1rem;transition:transform 0.25s}
.feat-card:hover img{transform:scale(1.03)}
.feat-card h3{font-family:'Ibarra Real Nova',serif;font-size:1.02rem;color:var(--navy);line-height:1.35;margin-top:0.55rem;font-weight:700}
.feat-card:hover h3{color:var(--gold)}
@media(max-width:900px){.feat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.feat-grid{grid-template-columns:1fr}}

/* ---------- 3 CARTES SERVICES (accueil) ---------- */
.svc3-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem}
.svc3-card{background:#fff;border:1px solid #e8ecf0;border-radius:0;padding:2.25rem 2rem;transition:box-shadow 0.25s,transform 0.2s;text-decoration:none;color:inherit;display:block}
.svc3-card:hover{box-shadow:0 20px 50px rgba(1,46,74,0.12);transform:translateY(-4px);border-color:transparent}
.svc3-num{font-family:'Ibarra Real Nova',serif;font-size:0.85rem;font-weight:900;color:var(--gold);margin-bottom:1.25rem}
.svc3-card h3{font-family:'Ibarra Real Nova',serif;font-size:1.25rem;color:var(--navy);margin-bottom:0.75rem}
.svc3-card p{color:var(--gray6);font-size:0.9rem;line-height:1.7;margin-bottom:1.25rem}
.svc3-link{font-size:0.8rem;font-weight:700;color:var(--navy)}
.svc3-card:hover .svc3-link{color:var(--gold)}
@media(max-width:900px){.svc3-grid{grid-template-columns:1fr}}

/* ---------- BANDEAU CHIFFRES ---------- */
.stat-band{background:var(--navy);padding:3.5rem 0}
.stat-band-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;text-align:center}
.stat-band strong{display:block;font-family:'Ibarra Real Nova',serif;font-size:2.5rem;font-weight:900;color:var(--gold);line-height:1}
.stat-band span{display:block;font-size:0.78rem;color:rgba(255,255,255,0.65);margin-top:0.6rem;letter-spacing:0.03em}
@media(max-width:800px){.stat-band-grid{grid-template-columns:1fr 1fr;gap:2rem}}

/* ---------- INFOLETTRE ---------- */
.nl-band{background:var(--gray1);padding:4rem 0}
.nl-inner{max-width:640px;margin:0 auto;text-align:center}
.nl-form{display:flex;gap:0.75rem;margin-top:1.5rem;flex-wrap:wrap;justify-content:center}
.nl-form input{flex:1;min-width:220px;padding:12px 16px;border:1px solid #dde2e8;border-radius:0;font-family:'Space Grotesk',sans-serif;font-size:0.9rem}

/* ---------- MISSION 3 CARTES VALEURS ---------- */
.val-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.val-card{text-align:center;padding:0 1rem}
.val-icon{width:56px;height:56px;border-radius:50%;background:rgba(249,160,28,0.1);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}
.val-icon svg{width:24px;height:24px;stroke:var(--gold);fill:none;stroke-width:1.7}
.val-card h3{font-family:'Ibarra Real Nova',serif;font-size:1.1rem;color:var(--navy);margin-bottom:0.65rem}
.val-card p{color:var(--gray6);font-size:0.88rem;line-height:1.7}
@media(max-width:800px){.val-grid{grid-template-columns:1fr}}

/* ---------- PAGE HERO (industrie / expertise / service / interne) ---------- */
.page-hero{background:var(--navy);padding:calc(68px + 3.5rem) 1.5rem 3.5rem;color:#fff;position:relative;overflow:hidden}
.page-hero-inner{max-width:1180px;margin:0 auto;position:relative;z-index:1}
.page-hero .tag-cat{color:var(--gold)}
.page-hero h1{font-family:'Ibarra Real Nova',serif;font-size:clamp(1.9rem,3.6vw,2.75rem);font-weight:800;margin:0.75rem 0 1rem;line-height:1.2;max-width:820px}
.page-hero p{color:rgba(255,255,255,0.72);font-size:1.02rem;line-height:1.7;max-width:660px}
.page-hero .breadcrumb{font-size:0.76rem;color:rgba(255,255,255,0.45);margin-bottom:1rem}
.page-hero .breadcrumb a{color:rgba(255,255,255,0.6);text-decoration:none}
.page-hero .breadcrumb a:hover{color:var(--gold)}

/* ---------- CONSTATS TERRAIN (3 colonnes) ---------- */
.constat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem}
.constat-card{background:var(--gray1);border-radius:0;padding:1.75rem;border-left:3px solid var(--gold)}
.constat-num{font-family:'Ibarra Real Nova',serif;font-size:1.6rem;font-weight:900;color:var(--navy);opacity:0.25;margin-bottom:0.6rem}
.constat-card p{color:var(--gray8);font-size:0.92rem;line-height:1.7}
@media(max-width:900px){.constat-grid{grid-template-columns:1fr}}

/* ---------- RENVOI 4 SERVICES (reformules) ---------- */
.art-photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;max-width:900px}
.art-photo-card{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid #e8ecf0;transition:box-shadow 0.2s,transform 0.2s}
.art-photo-card:hover{box-shadow:0 16px 40px rgba(1,46,74,0.1);transform:translateY(-3px)}
.art-photo-card img{width:100%;height:220px;object-fit:cover;display:block}
.art-photo-card-body{padding:1.5rem}
.art-photo-card h3{font-family:'Ibarra Real Nova',serif;font-size:1.15rem;color:var(--navy);margin:0.6rem 0 0.6rem;line-height:1.3}
.art-photo-card p{color:var(--gray6);font-size:0.88rem;line-height:1.65}
.art-photo-card .art-read{display:inline-block;margin-top:0.6rem;font-size:0.85rem;font-weight:700;color:var(--navy);border-bottom:1.5px solid var(--gold)}
@media(max-width:700px){.art-photo-grid{grid-template-columns:1fr}}
.svc4-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
.svc4-card{background:#fff;border:1px solid #e8ecf0;border-radius:0;padding:1.5rem;text-decoration:none;color:inherit;transition:border-color 0.2s,box-shadow 0.2s}
.svc4-card:hover{border-color:var(--gold);box-shadow:0 12px 30px rgba(1,46,74,0.08)}
.svc4-card h3{font-family:'Ibarra Real Nova',serif;font-size:1rem;color:var(--navy);margin:0.6rem 0 0.5rem;line-height:1.3}
.svc4-card p{color:var(--gray6);font-size:0.82rem;line-height:1.6}
@media(max-width:900px){.svc4-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.svc4-grid{grid-template-columns:1fr}}

/* ---------- CTA bandeau ---------- */
.cta-band{background:var(--navy);border-radius:0;padding:3rem;text-align:center;position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#0c2c3a,#C9A45C,#0e3446,var(--gold),#EAD9B6,#0b2733)}
.cta-band h2{color:#fff;position:relative}
.cta-band p{color:rgba(255,255,255,0.7);max-width:520px;margin:0 auto 1.75rem;line-height:1.7;position:relative}
.cta-band .btn-gold,.cta-band .tag-cat{position:relative}

/* ---------- HUB RESSOURCES ---------- */
.res-filters{display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:0.85rem}
.res-filter-group{margin-bottom:1.25rem}
.res-filter-label{font-size:0.66rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--gray6);margin-bottom:0.6rem;display:block}
.res-chip{background:#fff;border:1.5px solid #e0e4ea;color:var(--navy);font-size:0.76rem;font-weight:600;padding:7px 14px;border-radius:40px;cursor:pointer;transition:all 0.15s;font-family:'Space Grotesk',sans-serif}
.res-chip:hover{border-color:var(--gold)}
.res-chip.active{background:var(--navy);border-color:var(--navy);color:#fff}
.res-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.res-card{background:#fff;border:1px solid #e8ecf0;border-radius:0;padding:1.6rem;transition:box-shadow 0.2s,transform 0.2s}
.res-card.has-img{padding:0}
.res-card.has-img .res-card-tags,.res-card.has-img .tag-cat,.res-card.has-img h3,.res-card.has-img p,.res-card.has-img .res-link{margin-left:1.6rem;margin-right:1.6rem}
.res-card.has-img .res-link{display:inline-block;margin-bottom:1.6rem}
.res-card-img{width:100%;height:170px;object-fit:cover;display:block;margin-bottom:1.25rem}
.res-card:hover{box-shadow:0 16px 40px rgba(1,46,74,0.1);transform:translateY(-3px)}
.res-card-tags{display:flex;gap:0.4rem;flex-wrap:wrap;margin-bottom:0.85rem}
.res-pill{font-size:0.62rem;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;padding:3px 9px;border-radius:20px}
.res-pill.ind{background:rgba(1,70,109,0.08);color:var(--navy)}
.res-pill.exp{background:rgba(249,160,28,0.12);color:var(--gold)}
.res-card h3{font-family:'Ibarra Real Nova',serif;font-size:1.02rem;color:var(--navy);margin-bottom:0.5rem;line-height:1.35}
.res-card p{color:var(--gray6);font-size:0.84rem;line-height:1.6;margin-bottom:0.9rem}
.res-card a.res-link{font-size:0.78rem;font-weight:700;color:var(--navy);text-decoration:none}
.res-card a.res-link:hover{color:var(--gold)}
.res-empty{text-align:center;padding:3rem 1rem;color:var(--gray6);font-size:0.9rem}
.res-mini{margin-top:1rem}
@media(max-width:900px){.res-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.res-grid{grid-template-columns:1fr}}

/* ---------- CALENDRIER INTERACTIF ---------- */
.cal2-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}
.cal2-card{background:#fff;border:1px solid #e8ecf0;border-radius:0;padding:1.5rem 1.6rem;display:flex;gap:1.25rem;align-items:flex-start;transition:box-shadow 0.2s}
.cal2-card:hover{box-shadow:0 16px 40px rgba(1,46,74,0.1)}
.cal2-card.full{opacity:0.6}
.cal2-date{flex-shrink:0;width:64px;text-align:center;background:var(--gray1);border-radius:0;padding:0.6rem 0.3rem}
.cal2-date .m{font-size:0.6rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--gold)}
.cal2-date .d{font-family:'Ibarra Real Nova',serif;font-size:1.5rem;font-weight:900;color:var(--navy);line-height:1.1}
.cal2-body h3{font-family:'Ibarra Real Nova',serif;font-size:1.02rem;color:var(--navy);margin-bottom:0.35rem}
.cal2-meta{font-size:0.78rem;color:var(--gray6);margin-bottom:0.6rem;line-height:1.6}
.cal2-seats{display:inline-flex;align-items:center;gap:5px;font-size:0.74rem;font-weight:700;padding:4px 10px;border-radius:20px;margin-bottom:0.75rem}
.cal2-seats.ok{background:rgba(0,150,81,0.1);color:var(--green)}
.cal2-seats.low{background:rgba(249,160,28,0.14);color:#c07800}
.cal2-seats.full{background:rgba(200,50,50,0.1);color:#c83232}
.cal2-btn{display:inline-block;font-size:0.78rem;font-weight:700;color:var(--navy);text-decoration:none;border:1.5px solid var(--navy);padding:7px 15px;border-radius:0}
.cal2-btn:hover{background:var(--navy);color:#fff}
@media(max-width:700px){.cal2-grid{grid-template-columns:1fr}}

/* ---------- QUIZ INTEGRAMETRE EXPRESS ---------- */
.quiz-box{background:#fff;border:1px solid #e8ecf0;border-radius:0;padding:2.5rem;box-shadow:0 20px 60px rgba(1,46,74,0.08)}
.quiz-progress{height:5px;background:var(--gray1);border-radius:0;overflow:hidden;margin-bottom:2rem}
.quiz-progress-bar{height:100%;background:var(--gold);border-radius:0;transition:width 0.3s;width:10%}
.quiz-step-label{font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--gray6);margin-bottom:0.6rem}
.quiz-question{font-family:'Ibarra Real Nova',serif;font-size:1.3rem;color:var(--navy);margin-bottom:1.75rem;line-height:1.4}
.quiz-opts{display:flex;flex-direction:column;gap:0.7rem}
.quiz-opt{display:flex;align-items:center;gap:0.9rem;padding:0.95rem 1.1rem;border:1.5px solid #e0e4ea;border-radius:0;cursor:pointer;background:#fff;font-family:'Space Grotesk',sans-serif;font-size:0.92rem;color:var(--gray8);text-align:left;transition:border-color 0.15s,background 0.15s}
.quiz-opt:hover{border-color:var(--gold);background:#fffaf0}
.quiz-opt .qn{width:24px;height:24px;border-radius:50%;border:1.5px solid #dde2e8;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:0.7rem;font-weight:700;color:var(--gray6)}
.quiz-nav{display:flex;justify-content:space-between;margin-top:2rem}
.quiz-back{background:none;border:none;color:var(--gray6);font-size:0.82rem;font-weight:600;cursor:pointer;font-family:'Space Grotesk',sans-serif}
.quiz-back:hover{color:var(--navy)}
.quiz-result{text-align:center}
.quiz-score-ring{width:150px;height:150px;margin:0 auto 1.5rem;position:relative;display:flex;align-items:center;justify-content:center}
.quiz-score-ring strong{font-family:'Ibarra Real Nova',serif;font-size:2.5rem;color:var(--navy);position:relative;z-index:1}
.quiz-score-label{font-size:0.72rem;color:var(--gray6);text-transform:uppercase;letter-spacing:0.08em;margin-top:-1.4rem;position:relative;z-index:1}
.quiz-verdict{font-family:'Ibarra Real Nova',serif;font-size:1.2rem;color:var(--navy);margin:1.25rem 0 0.75rem}
.quiz-verdict-sub{color:var(--gray6);font-size:0.9rem;line-height:1.7;max-width:460px;margin:0 auto 1.75rem}
.quiz-email-form{max-width:400px;margin:0 auto;display:flex;gap:0.6rem;flex-wrap:wrap;justify-content:center}
.quiz-email-form input{flex:1;min-width:200px;padding:11px 15px;border:1px solid #dde2e8;border-radius:0;font-family:'Space Grotesk',sans-serif}
@media(max-width:600px){.quiz-box{padding:1.75rem 1.4rem}}

/* ---------- FOOTER GLOBAL ---------- */
.gfoot{background:var(--navy-deep);color:rgba(255,255,255,0.55);padding:4.5rem 0 0;border-top:2px solid var(--gold)}
.gfoot-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:3rem}
.gfoot-brand-line{display:flex;align-items:center;gap:10px;margin-bottom:1.1rem}
.gfoot-brand-line img{height:30px;border-radius:0}
.gfoot-brand-name{font-family:'Ibarra Real Nova',serif;font-weight:700;color:#fff;font-size:1.02rem}
.gfoot-brand-name span{color:var(--gold)}
.gfoot p{font-size:0.82rem;line-height:1.7;max-width:280px}
.gfoot h4{color:#fff;font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:1.1rem}
.gfoot ul{list-style:none}
.gfoot li{margin-bottom:0.65rem}
.gfoot a{color:rgba(255,255,255,0.55);text-decoration:none;font-size:0.84rem;transition:color 0.15s}
.gfoot a:hover{color:var(--gold)}
.gfoot-bottom{border-top:1px solid rgba(255,255,255,0.08);padding:1.5rem 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:0.75rem;font-size:0.76rem}
@media(max-width:1000px){.gfoot-top{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.gfoot-top{grid-template-columns:1fr}}

/* ---------- Bandeau preuve regionale ---------- */
.proof-band{background:#fff;border:1px solid #e8ecf0;border-radius:0;padding:2rem 2.25rem}
.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.proof-item{border-left:2px solid var(--gold);padding-left:1rem}
.proof-item strong{display:block;font-family:'Ibarra Real Nova',serif;font-size:1.5rem;color:var(--navy)}
.proof-item span{font-size:0.76rem;color:var(--gray6)}
@media(max-width:800px){.proof-grid{grid-template-columns:1fr 1fr}}

/* ---------- Bouton rendez-vous flottant ---------- */
.book-float{position:fixed;bottom:1.5rem;right:1.5rem;z-index:900;display:flex;align-items:center;gap:8px;background:var(--gold);color:var(--navy);font-weight:700;font-size:0.82rem;padding:12px 18px;border-radius:50px;text-decoration:none;box-shadow:0 8px 26px rgba(249,160,28,0.4)}
.book-float:hover{background:#A9803F}
@media(max-width:600px){.book-float span{display:none}.book-float{padding:14px;border-radius:50%}}

/* ---------- 404 ---------- */
.err-page{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:8rem 1.5rem 4rem}
.err-page .num{font-family:'Ibarra Real Nova',serif;font-size:6rem;font-weight:900;color:var(--gold);line-height:1}
.err-page h1{font-family:'Ibarra Real Nova',serif;font-size:1.6rem;color:var(--navy);margin:1rem 0}
.err-page p{color:var(--gray6);max-width:440px;margin-bottom:2rem}

/* ---------- Globe du recrutement international ---------- */
.globe-section{background:var(--navy-deep);padding:5rem 0;position:relative;overflow:hidden}
.globe-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}
.globe-canvas-wrap{display:flex;justify-content:center;position:relative}
.globe-canvas-wrap canvas{max-width:100%;height:auto}
.globe-text .tag-cat{color:var(--gold)}
.globe-text h2{font-family:'Ibarra Real Nova',serif;font-size:1.7rem;color:#fff;margin:0.75rem 0 1.1rem;line-height:1.3}
.globe-text p{color:rgba(255,255,255,0.68);font-size:0.95rem;line-height:1.75;margin-bottom:1.5rem}
.globe-legend{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:1.25rem}
.globe-legend-item{display:flex;align-items:center;gap:8px;font-size:0.8rem;color:rgba(255,255,255,0.6)}
.globe-legend-dot{width:9px;height:9px;border-radius:50%}
@media(max-width:900px){.globe-grid{grid-template-columns:1fr}.globe-canvas-wrap{order:-1}}
.globe-mini-wrap{position:relative;display:flex;justify-content:center;align-items:center}
.globe-mini-wrap canvas{max-width:100%;height:auto;opacity:0.92}

/* ---------- ARTICLES D'EXPERTISE (pages industrie) ---------- */
.art-list{display:flex;flex-direction:column;max-width:800px}
.art-item{padding:2.75rem 0;border-top:1px solid #e8ecf0}
.art-item:first-child{border-top:none;padding-top:0}
.art-eyebrow{font-size:0.68rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);margin-bottom:0.75rem;display:block}
.art-item h3{font-family:'Ibarra Real Nova',serif;font-size:1.5rem;color:var(--navy);line-height:1.32;margin-bottom:0.9rem;font-weight:700}
.art-chapo{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:1.06rem;color:#333;line-height:1.6;margin-bottom:1.1rem}
.art-p{color:var(--gray6);font-size:0.95rem;line-height:1.85;margin-bottom:1rem}
.art-p:last-child{margin-bottom:0}
@media(max-width:700px){.art-item{padding:2rem 0}.art-item h3{font-size:1.25rem}}
