:root{
      --bg:#18181b;
      --card-bg:rgba(255,255,255,0.05);
      --card-border:rgba(132,204,22,0.3);
      --accent:#84cc16;
      --accent-soft:rgba(132,204,22,0.15);
      --text:#e5e7eb;
      --muted:#9ca3af;
      --danger:#f97373;
      --radius:14px;
      --shadow-soft:0 18px 45px rgba(0,0,0,0.55);
      --max-w:1120px;
      --header-h:68px;
    }
    *{box-sizing:border-box;margin:0;padding:0;}
    html,body{height:100%;scroll-behavior:smooth;}
    body{
      font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      background:var(--bg);
      color:var(--text);
      -webkit-font-smoothing:antialiased;
    }
    a{text-decoration:none;color:inherit;}
    img{max-width:100%;display:block;}
    main{padding-top:var(--header-h);}

    /* Layout helpers */
    .wrapper{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem 4rem;}
    section{padding:4rem 0;}
    @media(min-width:960px){section{padding:5rem 0;}}

    /* Header */
    .header{
      position:fixed;top:0;left:0;right:0;z-index:40;
      backdrop-filter:blur(18px);
      background:linear-gradient(to bottom,rgba(24,24,27,0.9),rgba(24,24,27,0.78));
      border-bottom:1px solid rgba(39,39,42,0.9);
    }
    .header-inner{
      max-width:var(--max-w);
      margin:0 auto;
      padding:0.6rem 1.5rem;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1rem;
    }
    .logo{
      display:flex;
      align-items:center;
      gap:0.55rem;
      font-weight:600;
      letter-spacing:0.03em;
    }
    .logo-mark{
      width:28px;height:28px;border-radius:999px;
      background:conic-gradient(from 160deg at 50% 50%,#bbf7d0,var(--accent),#a3e635,#22c55e);
      box-shadow:0 0 0 1px rgba(132,204,22,0.5),0 10px 25px rgba(0,0,0,0.65);
      position:relative;
    }
    .logo-mark::after{
      content:"";
      position:absolute;
      inset:6px;
      border-radius:999px;
      background:radial-gradient(circle at 30% 20%,rgba(255,255,255,0.9),transparent 55%);
      mix-blend-mode:screen;
      opacity:.9;
    }
    .logo-text-main{font-size:0.95rem;}
    .logo-text-sub{font-size:0.7rem;color:var(--muted);}

    .nav{display:flex;align-items:center;gap:1.75rem;font-size:0.9rem;}
    .nav a{color:var(--muted);transition:color .2s ease,opacity .2s ease;}
    .nav a:hover{color:var(--accent);opacity:1;}

    .btn{
      display:inline-flex;align-items:center;justify-content:center;
      padding:0.65rem 1.4rem;
      border-radius:999px;
      font-size:0.9rem;
      font-weight:500;
      border:0;
      cursor:pointer;
      gap:0.45rem;
      white-space:nowrap;
      transition:transform .12s ease,box-shadow .12s ease,background .12s ease,opacity .15s ease;
    }
    .btn-primary{
      background:linear-gradient(135deg,#a3e635,var(--accent),#4ade80);
      color:#022c22;
      box-shadow:0 12px 30px rgba(22,163,74,0.35);
    }
    .btn-primary:hover{transform:translateY(-1px);box-shadow:0 16px 40px rgba(22,163,74,0.45);}
    .btn-outline{
      background:rgba(24,24,27,0.9);
      color:var(--muted);
      border:1px solid rgba(63,63,70,0.9);
    }
    .btn-outline:hover{border-color:var(--accent);color:var(--accent);}

    .header-cta{display:flex;align-items:center;gap:0.75rem;}

    /* Hamburger */
    .hamburger{
      width:30px;height:30px;border-radius:999px;
      border:1px solid rgba(63,63,70,0.9);
      display:flex;align-items:center;justify-content:center;
      background:rgba(24,24,27,0.9);
      cursor:pointer;
      padding:0;
    }
    .hamburger-box{width:17px;height:12px;position:relative;}
    .hamburger-line{
      position:absolute;left:0;right:0;height:2px;
      border-radius:999px;
      background:#e5e7eb;
      transition:transform .18s ease,top .18s ease,opacity .14s ease;
    }
    .hamburger-line:nth-child(1){top:0;}
    .hamburger-line:nth-child(2){top:5px;}
    .hamburger-line:nth-child(3){top:10px;}
    .hamburger.open .hamburger-line:nth-child(1){top:5px;transform:rotate(40deg);}
    .hamburger.open .hamburger-line:nth-child(2){opacity:0;}
    .hamburger.open .hamburger-line:nth-child(3){top:5px;transform:rotate(-40deg);}

    .nav-mobile{
      position:fixed;
      inset:var(--header-h) 0 auto 0;
      background:rgba(15,15,18,0.98);
      border-bottom:1px solid rgba(39,39,42,0.9);
      backdrop-filter:blur(16px);
      transform:translateY(-8px);
      opacity:0;
      pointer-events:none;
      transition:opacity .18s ease,transform .18s ease;
    }
    .nav-mobile.open{opacity:1;pointer-events:auto;transform:translateY(0);}
    .nav-mobile-inner{
      max-width:var(--max-w);
      margin:0 auto;
      padding:0.75rem 1.5rem 1.35rem;
      display:flex;
      flex-direction:column;
      gap:0.4rem;
    }
    .nav-mobile a{
      padding:0.5rem 0;
      color:var(--muted);
      font-size:0.95rem;
    }

    @media(min-width:960px){
      .hamburger,.nav-mobile{display:none;}
    }
    @media(max-width:959px){
      .nav{display:none;}
    }

    /* Hero */
    .hero{display:grid;grid-template-columns:minmax(0,1.2fr);align-items:center;gap:3rem;}
    .hero-kicker{
      display:inline-flex;align-items:center;gap:0.4rem;
      padding:0.18rem 0.6rem 0.18rem 0.18rem;
      border-radius:999px;
      background:rgba(24,24,27,0.9);
      border:1px solid rgba(63,63,70,0.95);
      box-shadow:0 18px 45px rgba(0,0,0,0.65);
      font-size:0.78rem;
      color:var(--muted);
      margin-bottom:1rem;
    }
    .hero-kicker-pill{
      padding:0.12rem 0.55rem;
      border-radius:999px;
      background:rgba(22,163,74,0.95);
      font-weight:600;
      font-size:0.74rem;
      color:#052e16;
    }
    .hero-title{
      font-size:2.25rem;
      line-height:1.15;
      letter-spacing:-0.03em;
      margin-bottom:0.9rem;
    }
    @media(min-width:960px){
      .hero{grid-template-columns:minmax(0,1.15fr) minmax(0,0.95fr);}
      .hero-title{font-size:2.7rem;}
    }
    .hero-sub{
      color:var(--muted);
      font-size:0.98rem;
      max-width:32rem;
      margin-bottom:1.5rem;
    }
    .hero-badges{
      display:flex;flex-wrap:wrap;gap:0.6rem;
      margin-bottom:1.8rem;
    }
    .pill{
      border-radius:999px;
      border:1px solid rgba(63,63,70,0.95);
      padding:0.28rem 0.65rem;
      font-size:0.78rem;
      color:var(--muted);
      background:rgba(12,12,16,0.9);
    }
    .hero-ctas{display:flex;flex-wrap:wrap;gap:0.75rem;margin-bottom:1.35rem;}
    .hero-note{
      display:flex;align-items:center;gap:0.45rem;
      font-size:0.8rem;
      color:var(--muted);
    }
    .dot{
      width:8px;height:8px;border-radius:999px;
      background:var(--accent);
      box-shadow:0 0 0 5px rgba(132,204,22,0.3);
    }

    .hero-aside{
      border-radius:22px;
      border:1px solid var(--card-border);
      background:radial-gradient(circle at top,var(--accent-soft),rgba(12,12,14,0.9));
      padding:1.45rem 1.4rem 1.5rem;
      box-shadow:var(--shadow-soft);
      position:relative;
      overflow:hidden;
    }
    .hero-aside::before{
      content:"";
      position:absolute;
      inset:-40%;
      background:radial-gradient(circle at 0% 0%,rgba(190,242,100,0.12),transparent 55%),radial-gradient(circle at 100% 100%,rgba(52,211,153,0.18),transparent 55%);
      opacity:0.9;
      mix-blend-mode:screen;
      pointer-events:none;
    }
    .hero-aside-inner{position:relative;z-index:1;}
    .hero-aside-title{font-size:0.9rem;font-weight:600;margin-bottom:0.2rem;}
    .hero-aside-sub{font-size:0.8rem;color:var(--muted);margin-bottom:1.1rem;}
    .hero-metrics{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:0.9rem;
      margin-bottom:1.2rem;
    }
    .metric-card{
      border-radius:16px;
      border:1px solid rgba(63,63,70,0.9);
      background:rgba(15,15,18,0.94);
      padding:0.7rem 0.75rem;
      font-size:0.8rem;
      color:var(--muted);
    }
    .metric-label{font-size:0.74rem;color:var(--muted);margin-bottom:0.22rem;}
    .metric-value{font-weight:600;color:#e5e7eb;font-size:0.95rem;}
    .metric-chip{
      margin-top:0.3rem;
      display:inline-flex;align-items:center;gap:0.25rem;
      padding:0.12rem 0.48rem;
      border-radius:999px;
      background:rgba(22,163,74,0.16);
      font-size:0.7rem;
      color:#bbf7d0;
    }

    /* Generic section header */
    .section-header{margin-bottom:2.3rem;}
    .section-kicker{
      font-size:0.78rem;
      text-transform:uppercase;
      letter-spacing:0.12em;
      color:var(--muted);
      margin-bottom:0.4rem;
    }
    .section-title{font-size:1.5rem;margin-bottom:0.4rem;}
    .section-sub{font-size:0.92rem;color:var(--muted);max-width:32rem;}

    /* Cards */
    .card-grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
      gap:1.2rem;
    }
    .card{
      border-radius:var(--radius);
      border:1px solid var(--card-border);
      background:linear-gradient(135deg,rgba(24,24,27,0.95),rgba(12,12,15,0.98));
      padding:1.1rem 1.15rem 1.15rem;
      box-shadow:var(--shadow-soft);
      position:relative;
      overflow:hidden;
    }
    .card::before{
      content:"";
      position:absolute;
      inset:-40%;
      background:radial-gradient(circle at 0% 20%,rgba(190,242,100,0.08),transparent 60%);
      opacity:0.8;
      pointer-events:none;
    }
    .card-inner{position:relative;z-index:1;}
    .card-icon{
      width:26px;height:26px;border-radius:999px;
      background:rgba(22,163,74,0.18);
      display:flex;align-items:center;justify-content:center;
      font-size:0.9rem;color:#bef264;
      margin-bottom:0.6rem;
    }
    .card-title{font-size:0.98rem;font-weight:600;margin-bottom:0.4rem;}
    .card-text{font-size:0.88rem;color:var(--muted);line-height:1.5;}
    .card-tag{
      margin-top:0.55rem;
      font-size:0.76rem;
      color:#a3e635;
    }

    /* Technologies */
    .tech-grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
      gap:1.2rem;
    }
    .tech-list{font-size:0.86rem;color:var(--muted);margin-top:0.35rem;}
    .tech-list li{margin-left:1.1rem;margin-bottom:0.18rem;}
    .chip-row{display:flex;flex-wrap:wrap;gap:0.45rem;margin-top:0.5rem;}
    .chip{
      font-size:0.72rem;
      border-radius:999px;
      padding:0.12rem 0.55rem;
      border:1px solid rgba(63,63,70,0.9);
      color:var(--muted);
      background:rgba(15,15,18,0.98);
    }

    /* Economies */
    .economies-layout{
      display:grid;
      grid-template-columns:minmax(0,1.15fr) minmax(0,0.95fr);
      gap:1.2rem;
      align-items:flex-start;
    }
    @media(max-width:840px){
      .economies-layout{grid-template-columns:minmax(0,1fr);}
    }
    .list{font-size:0.9rem;color:var(--muted);margin-top:0.3rem;}
    .list li{margin-left:1.1rem;margin-bottom:0.18rem;}
    .badge-row{display:flex;flex-wrap:wrap;gap:0.4rem;margin-top:0.6rem;}
    .badge{
      font-size:0.74rem;
      padding:0.14rem 0.55rem;
      border-radius:999px;
      background:rgba(132,204,22,0.13);
      color:#d9f99d;
      border:1px solid rgba(132,204,22,0.4);
    }
    .simu-card{
      border-radius:var(--radius);
      border:1px solid rgba(63,63,70,0.95);
      background:radial-gradient(circle at 0% 0%,rgba(34,197,94,0.16),rgba(15,15,18,0.98));
      padding:1.05rem 1.1rem 1.1rem;
      box-shadow:var(--shadow-soft);
      font-size:0.88rem;
      color:var(--muted);
    }
    .simu-row{display:flex;justify-content:space-between;gap:1.2rem;margin-top:0.6rem;font-size:0.86rem;}
    .simu-label{color:var(--muted);}
    .simu-value{font-weight:600;color:#e5e7eb;}

    /* Processus / étapes */
    .steps-process{display:grid;gap:0.9rem;}
    .step-process{
      display:flex;align-items:flex-start;gap:1rem;
      padding:1rem 1.1rem;border-radius:var(--radius);
      border:1px solid var(--card-border);
      background:linear-gradient(135deg,rgba(24,24,27,0.95),rgba(12,12,15,0.98));
      box-shadow:var(--shadow-soft);
    }
    .step-num{
      width:32px;height:32px;border-radius:999px;
      background:var(--accent);color:#022c22;font-weight:700;font-size:0.9rem;
      display:flex;align-items:center;justify-content:center;flex-shrink:0;
    }
    .step-body h3{font-size:0.98rem;font-weight:600;margin-bottom:0.2rem;}
    .step-body p{font-size:0.88rem;color:var(--muted);}

    /* Form */
    .form-section{scroll-margin-top:80px;}
    .form-layout{
      display:grid;
      grid-template-columns:minmax(0,1.08fr) minmax(0,0.9fr);
      gap:1.5rem;
      align-items:flex-start;
    }
    @media(max-width:900px){.form-layout{grid-template-columns:minmax(0,1fr);}}
    form{
      border-radius:18px;
      border:1px solid var(--card-border);
      background:linear-gradient(145deg,rgba(15,15,18,0.98),rgba(24,24,27,0.98));
      padding:1.3rem 1.3rem 1.4rem;
      box-shadow:var(--shadow-soft);
      font-size:0.9rem;
    }
    .field-grid{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:0.9rem;
      margin-bottom:0.4rem;
    }
    @media(max-width:640px){.field-grid{grid-template-columns:minmax(0,1fr);}}
    .field{display:flex;flex-direction:column;gap:0.25rem;margin-bottom:0.75rem;}
    label{font-size:0.8rem;color:#d4d4d8;}
    label span.optional{color:var(--muted);font-weight:400;font-style:italic;}
    input,select,textarea{
      border-radius:10px;
      border:1px solid rgba(63,63,70,0.95);
      background:rgba(15,15,18,0.95);
      color:var(--text);
      padding:0.55rem 0.65rem;
      font-family:inherit;
      font-size:0.9rem;
      outline:none;
      transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
    }
    input::placeholder,textarea::placeholder{color:#4b5563;}
    input:focus,select:focus,textarea:focus{
      border-color:var(--accent);
      box-shadow:0 0 0 1px rgba(132,204,22,0.6);
      background:rgba(12,12,16,0.98);
    }
    select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#6b7280 50%),linear-gradient(135deg,#6b7280 50%,transparent 50%);background-position:calc(100% - 15px) 55%,calc(100% - 10px) 55%;background-size:5px 5px;background-repeat:no-repeat;padding-right:2rem;}
    textarea{min-height:90px;resize:vertical;}
    .form-foot{
      display:flex;flex-wrap:wrap;align-items:center;gap:0.75rem;margin-top:0.3rem;
    }
    .form-foot small{font-size:0.75rem;color:var(--muted);max-width:16rem;}
    .form-note{font-size:0.83rem;color:var(--muted);margin-bottom:0.9rem;}

    .side-note{
      font-size:0.88rem;
      color:var(--muted);
      max-width:23rem;
    }
    .side-note strong{color:#e5e7eb;font-weight:600;}
    .side-note-list{margin-top:0.55rem;}
    .side-note-list li{margin-left:1.1rem;margin-bottom:0.2rem;}

    /* Footer */
    footer{
      border-top:1px solid rgba(39,39,42,0.9);
      padding:1.4rem 1.5rem 1.6rem;
      font-size:0.8rem;
      color:var(--muted);
      background:#09090b;
    }
    .footer-inner{
      max-width:var(--max-w);
      margin:0 auto;
      display:flex;
      flex-wrap:wrap;
      justify-content:space-between;
      align-items:center;
      gap:0.8rem;
    }
    .footer-link{color:#a3e635;}
    .footer-link:hover{text-decoration:underline;}

    /* Toast */
    .toast{
      position:fixed;
      left:50%;
      bottom:1.4rem;
      transform:translateX(-50%) translateY(30px);
      padding:0.7rem 1rem;
      border-radius:999px;
      background:rgba(22,163,74,0.97);
      color:#022c22;
      font-size:0.85rem;
      box-shadow:0 18px 45px rgba(0,0,0,0.7);
      opacity:0;
      pointer-events:none;
      transition:opacity .2s ease,transform .2s ease;
      z-index:50;
      white-space:nowrap;
    }
    .toast.show{
      opacity:1;
      transform:translateX(-50%) translateY(0);
      pointer-events:auto;
    }

    .reviews-widget-section {
      padding: 2.8rem 0 2rem;
      background: radial-gradient(circle at top, var(--accent-soft), transparent 55%), var(--bg);
    }

    .reviews-widget-inner {
      width: 100%;
      max-width: 1140px;
      margin: 0 auto;
      padding: 0 1.5rem;
    }

    .reviews-widget-card {
      background: var(--card-bg);
      border: 1px solid var(--card-border);
      border-radius: var(--radius);
      box-shadow: var(--shadow-soft);
      padding: 1.2rem 1.1rem 1.35rem;
    }

    .reviews-widget-head {
      margin-bottom: 0.9rem;
    }

    .reviews-widget-kicker {
      margin: 0 0 0.25rem;
      font-size: 0.78rem;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      font-weight: 800;
      color: var(--accent);
    }

    .reviews-widget-title {
      margin: 0;
      font-size: clamp(1.35rem, 2.4vw, 1.95rem);
      line-height: 1.2;
      color: var(--text);
      letter-spacing: -0.02em;
    }

    .reviews-widget-subtitle {
      margin: 0.5rem 0 0;
      font-size: 0.93rem;
      color: var(--muted);
      max-width: 65ch;
    }

    .reviews-widget-proof {
      display: flex;
      flex-wrap: wrap;
      gap: 0.45rem;
      margin: 0.85rem 0 1rem;
    }

    .reviews-widget-proof span {
      display: inline-flex;
      align-items: center;
      gap: 0.35rem;
      border-radius: 999px;
      padding: 0.28rem 0.7rem;
      font-size: 0.79rem;
      font-weight: 700;
      color: #d9f99d;
      background: var(--accent-soft);
      border: 1px solid var(--card-border);
    }

    .reviews-widget-note {
      margin: 0.75rem 0 0;
      font-size: 0.82rem;
      color: var(--muted);
      text-align: center;
    }

    /* Elfsight widget – couleurs de la page */
    .reviews-widget-card .es-embed-root,
    .reviews-widget-card [class*="es-main-container"],
    .reviews-widget-card [class*="es-widget-background"],
    .reviews-widget-card [class*="es-background-container"] {
      background: transparent !important;
    }
    .reviews-widget-card [class*="es-background-base"] {
      background-color: transparent !important;
    }
    .reviews-widget-card [class*="es-review-background-container"] {
      background: rgba(15, 15, 18, 0.95) !important;
      border: 1px solid var(--card-border) !important;
    }
    .reviews-widget-card [class*="es-review-author-name"],
    .reviews-widget-card [class*="ReviewAuthorName"] span {
      color: var(--text) !important;
    }
    .reviews-widget-card [class*="es-review-content-text"],
    .reviews-widget-card [class*="es-text-shortener"],
    .reviews-widget-card [class*="ShortenedText"] {
      color: var(--muted) !important;
    }
    .reviews-widget-card [class*="es-review-info-date"],
    .reviews-widget-card [class*="es-review-info-source"] {
      color: var(--muted) !important;
    }
    .reviews-widget-card [class*="es-rating-item-filled"] path,
    .reviews-widget-card [class*="es-rating-item-unfilled"] path {
      fill: var(--accent) !important;
      stroke: var(--accent) !important;
    }
    .reviews-widget-card [class*="es-carousel-arrow-control"],
    .reviews-widget-card [class*="ArrowControl"] svg,
    .reviews-widget-card [class*="es-carousel-arrow-control"] path {
      color: var(--muted) !important;
      fill: var(--muted) !important;
      stroke: var(--muted) !important;
    }
    .reviews-widget-card [class*="es-bullets-control-item"] {
      background: rgba(156, 163, 175, 0.4) !important;
    }
    .reviews-widget-card [class*="es-bullets-control-item-active"] {
      background: var(--accent) !important;
    }
    .reviews-widget-card [class*="es-text-shortener-control"] {
      color: var(--accent) !important;
    }
    .reviews-widget-card a[class*="es-review-link"] {
      color: #a3e635 !important;
    }

    @media (min-width: 768px) {
      .reviews-widget-card {
        padding: 1.55rem 1.45rem 1.6rem;
      }
    }

    @media (max-width: 767px) {
      .reviews-widget-inner {
        padding: 0 1rem;
      }
    }


  /* header-single-cta */
  header .menu-toggle,
  header .nav-toggle,
  header .mobile-menu {
    display: none !important;
  }

  /* Mobile : burger + nav-mobile, pas de menu desktop */
  @media (max-width: 959px) {
    header .hamburger { display: flex !important; }
    header .nav-mobile { display: block !important; }
    header .nav { display: none !important; }
    header .header-cta { display: none !important; }
  }
  /* Desktop : menu horizontal, pas de burger */
  @media (min-width: 960px) {
    header .hamburger { display: none !important; }
    header .nav-mobile { display: none !important; }
    header .nav { display: flex !important; }
  }

  header .nav-links,
  header .links,
  header .nav-link {
    display: none !important;
  }

  @media (min-width: 960px) {
    header nav,
    header nav.site-nav,
    header nav.primary-nav,
    header .site-nav,
    header .primary-nav {
      display: flex !important;
      align-items: center !important;
      justify-content: flex-end !important;
      gap: 0.5rem !important;
    }
  }

  header nav ul,
  header nav .nav-list,
  header nav .links,
  header nav .nav-links {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0.5rem !important;
  }

  header nav ul > li,
  header nav .nav-list > li,
  header nav .links > li,
  header nav .nav-links > li {
    display: none !important;
  }

  header nav ul > li.nav-cta,
  header nav .nav-list > li.nav-cta,
  header nav .links > li.nav-cta,
  header nav .nav-links > li.nav-cta {
    display: inline-flex !important;
  }

  header a.btn,
  header a.btn-primary,
  header a.nav-cta,
  header .nav-cta,
  header .header-cta {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.45rem !important;
    white-space: nowrap !important;
  }

  header .btn-ghost,
  header .btn-outline {
    display: none !important;
  }

  @media (max-width: 959px) {
    header .header-cta,
    header .header-cta a {
      display: none !important;
    }
  }

/* faq-site-section */
  .faq-site-section {
    padding: 2.6rem 0 1.8rem;
  }

  .faq-site-wrap {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 1.5rem;
  }

  .faq-site-head {
    margin-bottom: 1rem;
  }

  .faq-site-kicker {
    margin: 0 0 0.25rem;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-weight: 700;
    color: var(--accent);
  }

  .faq-site-title {
    margin: 0;
    font-size: clamp(1.2rem, 2.2vw, 1.8rem);
    line-height: 1.25;
    color: var(--text);
  }

  .faq-site-grid {
    display: grid;
    gap: 0.7rem;
  }

  .faq-site-item {
    border: 1px solid rgba(63,63,70,0.95);
    border-radius: 14px;
    background: rgba(24,24,27,0.96);
    padding: 0.75rem 0.9rem;
  }

  .faq-site-item summary {
    cursor: pointer;
    font-weight: 600;
    color: var(--text);
    list-style: none;
  }

  .faq-site-item summary::-webkit-details-marker {
    display: none;
  }

  .faq-site-answer {
    margin-top: 0.55rem;
    font-size: 0.9rem;
    color: var(--muted);
  }

  @media (max-width: 767px) {
    .faq-site-wrap {
      padding: 0 1rem;
    }
  }

/* Page article (guides SEO) */
.page-article{max-width:720px;margin:5em auto 0;}
.page-header{margin-bottom:2.5rem;}
.page-title{font-size:1.9rem;line-height:1.2;margin-bottom:0.6rem;}
@media(min-width:768px){.page-title{font-size:2.2rem;}}
.page-lead{font-size:1rem;color:var(--muted);line-height:1.55;}
.page-article section{margin-bottom:2rem;}
.page-article h2{font-size:1.35rem;margin-bottom:0.7rem;margin-top:1.5rem;}
.page-article h3{font-size:1.1rem;margin-bottom:0.4rem;margin-top:1rem;}
.page-article p{font-size:0.95rem;color:var(--muted);line-height:1.6;margin-bottom:0.6rem;}
.page-article ul{margin:0.5rem 0 0.8rem 1.2rem;}
.page-article li{font-size:0.95rem;color:var(--muted);line-height:1.55;margin-bottom:0.3rem;}
.page-article strong{color:var(--text);}
.cta-section{background:linear-gradient(135deg,rgba(132,204,22,0.12),rgba(34,197,94,0.08));border-radius:var(--radius);padding:1.5rem 1.4rem;margin-top:2rem;text-align:center;}
.cta-section h2{margin-top:0;}
.cta-section p{margin-bottom:1rem;}

/* Nav link actif */
.nav a.nav-active{color:var(--accent);font-weight:600;}

/* Callout / encadré info */
.page-article .callout{
  margin:1.5rem 0;
  padding:1rem 1.25rem;
  background:rgba(132,204,22,0.08);
  border-left:4px solid var(--accent);
  border-radius:0 10px 10px 0;
}
.page-article .callout p:last-child{margin-bottom:0;}
.page-article .callout strong{color:var(--accent);}

/* Tables dans page-article */
.page-article table{
  width:100%;
  border-collapse:collapse;
  margin:1rem 0;
  font-size:0.9rem;
}
.page-article table thead tr{border-bottom:2px solid var(--accent);}
.page-article table th{text-align:left;padding:0.75rem;}
.page-article table td{padding:0.75rem;}
.page-article table tbody tr{border-bottom:1px solid rgba(63,63,70,0.5);}
.page-article table tbody tr:last-child{border-bottom:none;}

/* FAQ items dans guides (cohérence avec index) */
.page-article .faq-item{margin-bottom:1.5rem;}
.page-article .faq-item h3{font-size:1.05rem;margin-bottom:0.4rem;}
.page-article .faq-item p{margin-bottom:0;}