/* ============================================================
   ChefBase — Global CSS Tokens + Header/Footer v3
   Source unique de vérité pour tous les CSS custom properties
   ============================================================ */

/* ── TOKENS ── */
:root {
  /* Gradient Flamme */
  --cb-gradient-flame: linear-gradient(90deg, #CA313F 0%, #E43E32 25%, #D15927 50%, #E89A24 75%, #EFC31A 100%);
  --cb-gradient-flame-d: linear-gradient(135deg, #CA313F 0%, #E43E32 30%, #D15927 65%, #E89A24 100%);

  /* Backgrounds dark */
  --cb-dark-400: #0F0907;
  --cb-dark-300: #17100A;
  --cb-dark-200: #1E1410;
  --cb-dark-100: #251810;

  /* Texte dark */
  --cb-text-dark: #F5EFE6;
  --cb-text-dark-secondary: rgba(245,239,230,0.70);
  --cb-text-dark-muted: rgba(245,239,230,0.45);

  /* Couleurs accentuées */
  --cb-flame-600: #E89A24;
  --cb-flame-500: #D15927;
  --cb-red: #CA313F;
  --cb-orange: #D15927;

  /* Shadows */
  --cb-shadow-flame-md: 0 4px 24px rgba(232,154,36,0.25);
  --cb-shadow-flame-lg: 0 8px 40px rgba(232,154,36,0.35);
  --cb-shadow-lift: 0 8px 32px rgba(0,0,0,0.5);

  /* Typographie */
  --cb-font-display: 'Space Grotesk', system-ui, sans-serif;
  --cb-font-body: 'DM Sans', system-ui, sans-serif;
  --cb-font-mono: 'JetBrains Mono', 'DM Mono', ui-monospace, monospace;

  /* Border */
  --cb-border: rgba(245,239,230,0.09);

  /* Radii */
  --cb-r-sm: 6px;
  --cb-r-md: 8px;
  --cb-r-lg: 12px;
  --cb-r-xl: 16px;
}

/* ── GRADIENT TEXT ── */
.cb-gradient-text,
[class*="cb-flame-text"] {
  background: var(--cb-gradient-flame);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  display: inline;
}

/* ── HEADER ── */
.cb-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:#0F0907;border-bottom:1px solid rgba(245,239,230,0.06);}
.cb-header-inner{max-width:1400px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;height:64px;}
.cb-logo-link{text-decoration:none;display:flex;align-items:center;gap:8px;flex-shrink:0;}
.cb-logo-ring{height:28px;width:28px;object-fit:contain;}
.cb-logo-wordmark{font-family:var(--cb-font-display);font-size:18px;font-weight:700;color:#F5EFE6;letter-spacing:-0.01em;}
.cb-logo-base{background:var(--cb-gradient-flame);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.cb-header-nav{display:flex;align-items:center;gap:32px;}
.cb-nav-link{font-family:var(--cb-font-body);font-size:14px;font-weight:500;color:rgba(245,239,230,0.70);text-decoration:none;transition:color 150ms;}
.cb-nav-link:hover{color:#F5EFE6;}
.cb-header-actions{display:flex;align-items:center;gap:12px;}
.cb-lang-switcher{display:flex;align-items:center;gap:1px;font-family:var(--cb-font-body);font-size:12px;border:1px solid rgba(245,239,230,0.25);border-radius:6px;padding:3px;background:rgba(245,239,230,0.04);}
.cb-lang-btn{padding:2px 8px;border-radius:4px;text-decoration:none;color:rgba(245,239,230,0.60);background:transparent;transition:all 150ms;cursor:pointer;font-weight:500;}
.cb-lang-btn--active{color:#F5EFE6 !important;background:rgba(245,239,230,0.18) !important;font-weight:700 !important;}
.cb-lang-btn:hover{color:#F5EFE6;}
.cb-nav-login{font-family:var(--cb-font-body);font-size:14px;font-weight:500;color:rgba(245,239,230,0.70);text-decoration:none;transition:color 150ms;}
.cb-nav-login:hover{color:#F5EFE6;}
.cb-btn-primary{display:inline-flex;align-items:center;padding:9px 20px;background:var(--cb-gradient-flame);color:#0F0907;font-family:var(--cb-font-body);font-size:14px;font-weight:600;text-decoration:none;border-radius:8px;white-space:nowrap;transition:opacity 150ms;}
.cb-btn-primary:hover{opacity:0.9;}

/* ── BILINGUE : détection par URL via JS (classe .lang-en injectée sur <html>) ── */
/* Par défaut : éléments EN cachés */
.cb-t-en { display: none !important; }

/* Quand .lang-en est présent sur <html> : inverser */
.lang-en .cb-t-fr { display: none !important; }
.lang-en .cb-t-en { display: inline-flex !important; }
.lang-en #cb-lang-fr { color: rgba(245,239,230,0.60) !important; background: transparent !important; font-weight: 500 !important; }
.lang-en #cb-lang-en { color: #F5EFE6 !important; background: rgba(245,239,230,0.18) !important; font-weight: 700 !important; border-radius: 4px !important; }

/* État par défaut (FR) */
#cb-lang-fr { color: #F5EFE6 !important; background: rgba(245,239,230,0.18) !important; font-weight: 700 !important; border-radius: 4px !important; }
#cb-lang-en { color: rgba(245,239,230,0.60) !important; background: transparent !important; font-weight: 500 !important; }

/* ── FOOTER ── */
.cb-footer{background:#0D0704;padding:64px 0 0;}
.cb-footer-inner{max-width:1400px;margin:0 auto;padding:0 24px 40px;}
.cb-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;}
.cb-footer-tagline{font-family:var(--cb-font-body);font-size:14px;line-height:1.6;color:rgba(245,239,230,0.55);margin:0;max-width:320px;}
.cb-footer-col-title{font-family:var(--cb-font-mono);font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:#F5EFE6;margin:0 0 16px;}
.cb-footer-links a{font-family:var(--cb-font-body);font-size:14px;color:rgba(245,239,230,0.55);text-decoration:none;transition:color 150ms;}
.cb-footer-links a:hover{color:#F5EFE6;}
.cb-footer-copy{font-family:var(--cb-font-body);font-size:13px;color:rgba(245,239,230,0.35);margin:0;}

/* ── HAMBURGER MOBILE ── */
.cb-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;margin-right:-8px;background:none;border:none;flex-shrink:0;}
.cb-hamburger-bar{display:block;width:22px;height:2px;background:#F5EFE6;border-radius:2px;transition:transform 220ms ease,opacity 220ms ease;}
.cb-hamburger.open .cb-hamburger-bar:nth-child(1){transform:translateY(7px) rotate(45deg);}
.cb-hamburger.open .cb-hamburger-bar:nth-child(2){opacity:0;}
.cb-hamburger.open .cb-hamburger-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.cb-mobile-menu{display:none;position:fixed;top:64px;left:0;right:0;bottom:0;background:#0F0907;z-index:998;padding:24px 24px 40px;flex-direction:column;overflow-y:auto;}
.cb-mobile-menu.open{display:flex;}
.cb-mobile-nav-link{display:block;padding:18px 0;font-family:var(--cb-font-body);font-size:20px;font-weight:500;color:rgba(245,239,230,0.70);text-decoration:none;border-bottom:1px solid rgba(245,239,230,0.07);transition:color 150ms;}
.cb-mobile-nav-link:hover{color:#F5EFE6;}
.cb-mobile-cta{display:block;text-align:center;padding:16px 24px;margin-top:32px;background:var(--cb-gradient-flame);color:#0F0907;font-family:var(--cb-font-body);font-size:16px;font-weight:600;text-decoration:none;border-radius:10px;}
.cb-mobile-login{display:block;text-align:center;padding:14px 24px;margin-top:8px;color:rgba(245,239,230,0.55);font-family:var(--cb-font-body);font-size:15px;font-weight:500;text-decoration:none;}

/* ── FLUENT FORM ── */
.ff-btn-submit,.ff_btn_style{background:var(--cb-gradient-flame) !important;color:#0F0907 !important;font-family:var(--cb-font-body) !important;font-size:15px !important;font-weight:600 !important;padding:12px 32px !important;border:none !important;border-radius:8px !important;cursor:pointer !important;display:flex !important;align-items:center;justify-content:center;width:100% !important;}
.ff-form-loading .ff_submit_btn_wrapper{display:flex !important;}
.ff_submit_btn_wrapper{display:flex !important;}
.fluentform_wrapper_6 .ff-el-form-control{background:rgba(245,239,230,0.06) !important;border:1px solid rgba(245,239,230,0.15) !important;color:#F5EFE6 !important;border-radius:8px !important;padding:10px 14px !important;font-family:var(--cb-font-body);font-size:14px;width:100%;box-sizing:border-box;}
.fluentform_wrapper_6 .ff-el-form-control::placeholder{color:rgba(245,239,230,0.35) !important;}
.fluentform_wrapper_6 label{font-family:var(--cb-font-body);font-size:13px;font-weight:500;color:rgba(245,239,230,0.70);margin-bottom:6px;display:block;}
.fluentform_wrapper_6 .ff-el-group{margin-bottom:16px;}

/* ── MOBILE ── */
@media(max-width:768px){
  .cb-header-nav{display:none !important;}
  .cb-lang-switcher{display:none !important;}
  .cb-btn-primary{display:none !important;}
  .cb-nav-login{display:none !important;}
  .cb-hamburger{display:flex !important;}
  .cb-footer-grid{grid-template-columns:1fr 1fr;}
  .cb-footer-brand{grid-column:1/-1;}
}

/* ── PADDING HEADER FIXE ── */
.wp-site-blocks { padding-top: 52px; }
