.vc-tarifs{
  --vc-blue:#003357;
  --vc-green:#77B014;
  --vc-green-dark:#639212;
  --vc-bg:#e9eaeb;
  --vc-pill:#f1f2f3;
  --vc-text:#31485a;
  --vc-muted:#5f7280;
  --vc-radius:10px;
  --vc-radius-sm:4px;
  --vc-shadow:0 14px 40px rgba(0,51,87,.12);
  --vc-shadow-soft:0 4px 16px rgba(0,51,87,.06);

  position:relative;
  background:var(--vc-bg);
  padding:150px 0 110px;
  overflow:hidden;
  font-family:'Scandium',-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  color:var(--vc-text);
  font-size:17px;
}
.vc-tarifs *{box-sizing:border-box;margin:0;padding:0}
.vc-tarifs .vc-wrap{max-width:1360px;margin:0 auto;padding:0 28px;position:relative;z-index:1}

/* ===== Header ===== */
.vc-head{position:relative;text-align:center;margin-bottom:56px}
.vc-watermark{position:absolute;left:50%;top:50%;transform:translate(-50%,-56%);font-weight:700;font-size:clamp(64px,10vw,100px);letter-spacing:.04em;color:#fff;opacity:.6;user-select:none;pointer-events:none;white-space:nowrap}
.vc-tarifs .vc-head h2{position:relative;font-size:clamp(32px,4.4vw,44px);font-weight:600;color:var(--vc-green);line-height:1.1}
.vc-tarifs .vc-head p{position:relative;margin-top:14px;font-size:21px;color:var(--vc-blue)}

/* ===== Tabs ===== */
.vc-tabs{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.vc-tarifs .vc-tab{display:flex;align-items:center;gap:12px;padding:17px 28px;background:#fff;color:var(--vc-blue);border:1px solid #dfe2e4;border-radius:var(--vc-radius-sm);font-family:inherit;font-size:17.5px;font-weight:600;cursor:pointer;transition:all .2s ease;line-height:1}
.vc-tab svg{width:36px;height:21px;fill:currentColor;opacity:.85}
.vc-tab:hover{border-color:var(--vc-blue)}
.vc-tarifs .vc-tab.is-active{background:var(--vc-blue);color:#fff;border-color:var(--vc-blue);box-shadow:var(--vc-shadow-soft)}
.vc-tab.is-active svg{fill:var(--vc-green);opacity:1}
.vc-models{text-align:center;font-size:16px;color:var(--vc-muted);margin-bottom:46px;min-height:24px}
.vc-models strong{color:var(--vc-blue);font-weight:600}
@media(max-width:720px){
  .vc-tabs{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}
  .vc-tab{flex-shrink:0}
}

/* ===== Cards ===== */
.vc-panel{display:none}
.vc-panel.is-active{display:block;animation:vcFade .3s ease}
@keyframes vcFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.vc-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:stretch;
  gap:24px;
}
.vc-grid .vc-card{
  flex:1 1 280px;
  max-width:308px;
}
@media(max-width:640px){
  .vc-grid .vc-card{
    max-width:100%;
  }
}

.vc-card{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:var(--vc-radius);box-shadow:var(--vc-shadow-soft);padding:34px 30px 30px;transition:transform .2s ease,box-shadow .2s ease}
.vc-card:hover{transform:translateY(-6px);box-shadow:var(--vc-shadow)}
.vc-card--featured{outline:2px solid var(--vc-green);outline-offset:-2px}
.vc-badge{position:absolute;top:-14px;left:30px;background:var(--vc-green);color:#fff;font-size:13px;font-weight:600;letter-spacing:.04em;padding:6px 16px;border-radius:20px;white-space:nowrap}

.vc-card__tagline{font-size:13.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--vc-green-dark);margin-bottom:8px}
.vc-card__name{font-size:27px;font-weight:600;color:var(--vc-blue);line-height:1.12;min-height:2.2em}

.vc-card__price{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:18px;padding:18px 0;border-top:1px solid #eceeef;border-bottom:1px solid #eceeef}
.vc-card__price .amount{display:flex;align-items:baseline;gap:7px}
.vc-card__price .cur{font-size:17px;font-weight:600;color:var(--vc-muted)}
.vc-card__price .num{font-size:48px;font-weight:700;color:var(--vc-blue);line-height:1;letter-spacing:-.01em}
.vc-card__price .dash{font-size:26px;font-weight:700;color:var(--vc-blue)}
.vc-card__price .dur{font-size:15px;color:var(--vc-muted);white-space:nowrap}

.vc-card__list{list-style:none;margin:20px 0 18px;flex-grow:1}
.vc-tarifs .vc-card__list li{position:relative;padding-left:30px;font-size:16px;line-height:1.5;color:var(--vc-text);margin-bottom:12px}
.vc-card__list li svg{position:absolute;left:0;top:3px;width:18px;height:18px}
.vc-card__list li.vc-incl{font-weight:600;color:var(--vc-blue)}

.vc-foryou{border-left:3px solid var(--vc-green);padding:2px 0 2px 16px;margin-bottom:24px;font-size:15.5px;line-height:1.5;color:var(--vc-muted)}
.vc-foryou span{display:block;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--vc-green-dark);margin-bottom:4px}

.vc-tarifs .vc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px 20px;background:var(--vc-blue);color:var(--vc-green);border:none;border-radius:var(--vc-radius-sm);font-family:inherit;font-size:16px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:all .2s ease;text-decoration:none;line-height:1}
.vc-tarifs .vc-btn:hover{background:var(--vc-green);color:#fff}
.vc-tarifs .vc-btn svg{width:17px;height:17px;fill:currentColor}
.vc-tarifs .vc-btn--green{background:var(--vc-green);color:#fff}
.vc-tarifs .vc-btn--green:hover{background:#fff;color:var(--vc-blue)}
.vc-tarifs .vc-btn--ghost{background:transparent;border:2px solid var(--vc-green);color:var(--vc-green-dark)}
.vc-tarifs .vc-btn--ghost:hover{background:var(--vc-green);color:#fff}

/* ===== Prestige ===== */
.vc-panel--prestige .vc-card{background:linear-gradient(165deg,var(--vc-blue) 0%,#00243d 100%)}
.vc-panel--prestige .vc-card__name{color:#fff}
.vc-panel--prestige .vc-card__price{border-color:rgba(255,255,255,.16)}
.vc-panel--prestige .vc-card__price .num,.vc-panel--prestige .vc-card__price .dash{color:#fff}
.vc-panel--prestige .vc-card__price .cur,.vc-panel--prestige .vc-card__price .dur{color:#9fb3c2}
.vc-panel--prestige .vc-card__tagline{color:var(--vc-green)}
.vc-panel--prestige .vc-tarifs .vc-card__list li{color:#d7e0e7}
.vc-panel--prestige .vc-card__list li{color:#d7e0e7}
.vc-panel--prestige .vc-card__list li.vc-incl{color:#fff}
.vc-panel--prestige .vc-foryou{color:#a9bcc9}
.vc-panel--prestige .vc-foryou span{color:var(--vc-green)}
.vc-panel--prestige .vc-btn{background:var(--vc-green);color:#fff}
.vc-panel--prestige .vc-btn:hover{background:#fff;color:var(--vc-blue)}

/* ===== Bande blanche : état + options ===== */
.vc-band{background:#fff;margin-top:100px;padding:90px 0}

.vc-subhead{text-align:center;margin-bottom:40px}
.vc-tarifs .vc-subhead h3{font-size:clamp(28px,3.4vw,34px);font-weight:600;color:var(--vc-blue);line-height:1.15}
.vc-tarifs .vc-subhead p{margin-top:10px;font-size:17.5px;color:var(--vc-muted)}

.vc-etat__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1080px;margin:0 auto}
@media(max-width:820px){.vc-etat__grid{grid-template-columns:1fr}}
.vc-etat__item{position:relative;text-align:center;padding:34px 26px 30px;border-radius:12px;transition:transform .2s ease,box-shadow .2s ease}
.vc-etat__item:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,51,87,.10)}
.vc-etat__item:nth-child(1){background:linear-gradient(165deg,#eef7dd 0%,#fafdf4 100%)}
.vc-etat__item:nth-child(2){background:linear-gradient(165deg,#fdeed3 0%,#fffaf1 100%)}
.vc-etat__item:nth-child(3){background:linear-gradient(165deg,#dfebf4 0%,#f6fafd 100%)}
.vc-etat__ico{display:flex;align-items:center;justify-content:center;width:54px;height:54px;margin:0 auto 16px;border-radius:50%;box-shadow:0 6px 14px rgba(0,51,87,.15)}
.vc-etat__ico svg{width:26px;height:26px;fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.vc-etat__item:nth-child(1) .vc-etat__ico{background:var(--vc-green)}
.vc-etat__item:nth-child(2) .vc-etat__ico{background:#f0a63a}
.vc-etat__item:nth-child(3) .vc-etat__ico{background:var(--vc-blue)}
.vc-etat__item .lvl{font-size:19px;font-weight:600;color:var(--vc-blue)}
.vc-etat__item .val{display:inline-block;margin-top:10px;font-size:22px;font-weight:700;color:var(--vc-green-dark)}
.vc-etat__item:nth-child(2) .val{color:#b26a00}
.vc-etat__item:nth-child(3) .val{color:var(--vc-blue)}
.vc-etat__item .det{margin-top:10px;font-size:15.5px;line-height:1.55;color:var(--vc-muted)}
.vc-etat__note{max-width:820px;margin:44px auto 0;text-align:center;font-size:15px;line-height:1.6;color:var(--vc-muted);font-style:italic}

.vc-options{margin-top:100px}
.vc-options__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 70px;max-width:1000px;margin:0 auto}
@media(max-width:720px){.vc-options__grid{grid-template-columns:1fr}}
.vc-opt{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:15px 4px;border-bottom:1px solid #eceeef;font-size:17px}
.vc-opt .n{color:var(--vc-text)}
.vc-opt .p{font-weight:700;color:var(--vc-blue);white-space:nowrap}
.vc-opt .u{font-size:14px;font-weight:400;color:var(--vc-muted)}

/* ===== Membre ===== */
.vc-membre{position:relative;margin-top:100px;background:linear-gradient(150deg,var(--vc-blue) 0%,#00253f 100%);border-radius:var(--vc-radius);padding:60px 56px;color:#fff;overflow:hidden;box-shadow:var(--vc-shadow)}
.vc-membre::after{content:'MEMBRE';position:absolute;right:-14px;bottom:-40px;font-size:150px;font-weight:700;color:rgba(255,255,255,.04);letter-spacing:.05em;pointer-events:none}
.vc-membre__cols{display:grid;grid-template-columns:1.2fr .9fr;gap:60px;position:relative;z-index:1}
@media(max-width:920px){.vc-membre__cols{grid-template-columns:1fr;gap:40px}.vc-membre{padding:40px 28px}}
.vc-membre .eyebrow{font-size:13.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--vc-green);margin-bottom:10px}
.vc-tarifs .vc-membre h3{font-size:clamp(28px,3.4vw,36px);font-weight:600;color:#fff;line-height:1.15}
.vc-membre .pitch{margin-top:16px;font-size:18.5px;line-height:1.55;color:#c3d2dd}
.vc-membre ul{list-style:none;margin-top:26px}
.vc-tarifs .vc-membre ul li{position:relative;padding-left:32px;margin-bottom:13px;font-size:16.5px;line-height:1.5;color:#d7e0e7}
.vc-membre ul li svg{position:absolute;left:0;top:4px;width:18px;height:18px}
.vc-membre .elig{margin-top:24px;font-size:14.5px;line-height:1.6;color:#8ba3b5;font-style:italic}
.vc-membre__box{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:var(--vc-radius);padding:32px;align-self:center}
.vc-membre__box .bt{font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--vc-green);margin-bottom:16px}
.vc-membre__row{display:flex;justify-content:space-between;align-items:baseline;padding:11px 0;border-bottom:1px dashed rgba(255,255,255,.16);font-size:16.5px;color:#d7e0e7}
.vc-membre__row:last-of-type{border-bottom:none}
.vc-membre__row b{font-size:21px;font-weight:700;color:#fff}
.vc-membre__box .cad{margin:18px 0 24px;font-size:14.5px;line-height:1.6;color:#9fb3c2}
.vc-membre__box .cad strong{color:#d7e0e7}

/* ===== Restitution ===== */
.vc-resti{display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center;margin-top:36px;background:#fff;border-left:4px solid var(--vc-green);border-radius:var(--vc-radius);padding:40px 48px;box-shadow:var(--vc-shadow-soft)}
@media(max-width:820px){.vc-resti{grid-template-columns:1fr;padding:32px 28px}}
.vc-tarifs .vc-resti h3{font-size:26px;font-weight:600;color:var(--vc-blue)}
.vc-tarifs .vc-resti p{margin-top:12px;font-size:16.5px;line-height:1.6;color:var(--vc-muted);max-width:680px}
.vc-resti p strong{color:var(--vc-blue)}
.vc-resti__cta{display:flex;flex-direction:column;align-items:center;gap:12px}
.vc-resti__cta .from{font-size:15px;color:var(--vc-muted)}
.vc-resti__cta .from b{display:block;text-align:center;font-size:28px;font-weight:700;color:var(--vc-blue)}
.vc-resti__cta .vc-btn{width:auto;padding:14px 32px}

/* ===== Zones + mentions ===== */
.vc-zones{margin-top:110px;text-align:center}
.vc-zones .zt{font-size:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--vc-green-dark);margin-bottom:22px}
.vc-zones__list{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.vc-zone{display:flex;align-items:center;gap:10px;background:#fff;border-radius:30px;padding:13px 24px;font-size:16px;color:var(--vc-blue);box-shadow:var(--vc-shadow-soft)}
.vc-zone svg{width:17px;height:17px;fill:none;stroke:var(--vc-green);stroke-width:2}
.vc-zone b{font-weight:700;color:var(--vc-green-dark)}
.vc-zone.warn b{color:#b26a00}

.vc-mentions{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:1080px;margin:70px auto 0;padding-top:50px;border-top:1px solid #d8dbdd}
@media(max-width:820px){.vc-mentions{grid-template-columns:1fr;gap:26px}}
.vc-mention{display:flex;align-items:flex-start;gap:14px;font-size:15.5px;line-height:1.55;color:var(--vc-muted)}
.vc-mention svg{flex-shrink:0;width:26px;height:26px;fill:none;stroke:var(--vc-blue);stroke-width:1.7;margin-top:1px}


/* ===== Restitution : section enrichie ===== */
.vc-resti--full{grid-template-columns:1.15fr .85fr;align-items:start;margin-top:64px}
@media(max-width:860px){.vc-resti--full{grid-template-columns:1fr}}
.vc-resti--full h3{font-size:27px}
.vc-resti__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
@media(max-width:640px){.vc-resti__stats{grid-template-columns:1fr}}
.vc-resti__stats .st b{display:block;font-size:24px;font-weight:700;color:var(--vc-green-dark);line-height:1.1}
.vc-resti__stats .st span{display:block;margin-top:5px;font-size:13.5px;line-height:1.45;color:var(--vc-muted)}
.vc-resti__peri{margin-top:20px;font-size:13.5px;font-style:italic;color:var(--vc-muted)}
.vc-resti__box{background:var(--vc-bg);border-radius:var(--vc-radius);padding:26px}
.vc-resti__box .bt{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--vc-green-dark);margin-bottom:10px}
.vc-resti__box .row{display:flex;justify-content:space-between;align-items:baseline;padding:9px 0;border-bottom:1px dashed #d5d9db;font-size:15px;color:var(--vc-text)}
.vc-resti__box .row:last-of-type{border-bottom:none}
.vc-resti__box .row b{font-size:18px;font-weight:700;color:var(--vc-blue)}
.vc-resti__box .note{margin:12px 0 18px;font-size:13px;line-height:1.5;color:var(--vc-muted);font-style:italic}
.vc-resti__box .vc-btn{width:100%}
.vc-resti__tel{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;font-size:14px;color:var(--vc-blue);text-decoration:none}
.vc-resti__tel svg{width:15px;height:15px}
