/* Page Tarifs publique : composants de prix repris de account.css, limites a .lp-pricing pour ne pas toucher l en-tete et le pied du site. */
.lp-pricing{--blue:#0866ed;--ink:#102744;--muted:#697b92;--line:#e2eaf3;--wash:#f4f7fc;--teal:#0b887b;color:var(--ink);font:14px/1.6 Inter,system-ui,sans-serif}.lp-pricing *{box-sizing:border-box}
.lp-pricing button,.lp-pricing input,.lp-pricing select{font:inherit}
.lp-pricing button,.lp-pricing .action-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;background:var(--blue);color:white;min-height:42px;padding:10px 17px;border-radius:10px;font-weight:600;font-size:13px;cursor:pointer;text-decoration:none;transition:background .15s,box-shadow .15s}
.lp-pricing button:hover,.lp-pricing .action-link:hover{background:#0754c2}
.lp-pricing button:disabled{opacity:.48;cursor:not-allowed}
.lp-pricing .secondary,.lp-pricing .action-link.secondary{background:white;color:var(--ink);border-color:var(--line)}
.lp-pricing .secondary:hover{background:var(--wash)}
.lp-pricing input,.lp-pricing select{display:block;width:100%;border:1px solid #cfdbea;border-radius:9px;background:white;color:var(--ink);padding:11px 13px;margin-top:7px;min-width:0}
.lp-pricing input:focus,.lp-pricing select:focus{outline:3px solid #dbeafe;border-color:var(--blue)}
.lp-pricing input[type=checkbox]{width:auto;margin:0}
.lp-pricing .muted{font-size:12px;color:var(--muted)}
.lp-pricing .eyebrow{display:block;color:var(--blue);font-size:10px;font-weight:750;letter-spacing:1.7px;margin-top:5px}
.lp-pricing .panel,.lp-pricing .offer{padding:25px;border:1px solid var(--line);border-radius:16px;background:white}
.lp-pricing .panel{margin:24px 0}
.lp-pricing .panel-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}
.lp-pricing .panel-heading h2,.lp-pricing .panel-heading p{margin:0}
.lp-pricing .offer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;margin:24px 0}
.lp-pricing .two-columns>.panel{margin:0}
.lp-pricing .hero-panel .action-link{background:white;color:#0b5ed7}
.lp-pricing .hero-panel .badge{background:#ffffff21;color:white;border:1px solid #ffffff45}
.lp-pricing .badge{display:inline-flex;align-items:center;gap:6px;border-radius:20px;padding:4px 10px;font-size:11px;font-weight:600;white-space:nowrap;background:#edf3fb;color:#566b86}
.lp-pricing .badge.good{background:#e6f8f1;color:#08755a}
.lp-pricing .badge.warning{background:#fff5db;color:#926017}
.lp-pricing .badge.blue{background:#eaf2ff;color:#075ecf}
.lp-pricing .badge.bad{background:#fff0f0;color:#a93143}
.lp-pricing td .badge{display:inline-flex}
.lp-pricing .toolbar .secondary{flex-shrink:0}
.lp-pricing .notice{border:1px solid #c5eadf;background:#effbf6;padding:13px 17px;border-radius:11px;font-size:12px;margin:0 0 20px}
.lp-pricing .notice{color:#08755a}
.lp-pricing .offer{display:flex;flex-direction:column}
.lp-pricing .offer h2{margin-top:14px}
.lp-pricing .offer .price{font-size:27px;font-weight:650;letter-spacing:-.7px;color:var(--ink)}
.lp-pricing .price small{font-size:12px;letter-spacing:0}
.lp-pricing .offer form+form{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}
.lp-pricing .offer button{width:100%}
.lp-pricing .offer>.icon{color:var(--blue)}
.lp-pricing .actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
@media(max-width:760px){.lp-pricing .panel,.lp-pricing .offer{padding:20px}.lp-pricing .offer-grid{grid-template-columns:1fr}}
.lp-pricing .auth-card .secondary{margin-top:15px}
.lp-pricing .volume-offers{grid-template-columns:repeat(3,minmax(0,1fr))}
.lp-pricing .volume-offers .action-link{margin-top:auto}
.lp-pricing .enterprise-offer{display:flex;align-items:center;justify-content:space-between;gap:24px}
.lp-pricing .seat-calculator-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:25px;align-items:center}
.lp-pricing .seat-calculator-grid strong{display:block;font-size:26px;color:var(--ink);letter-spacing:-.6px}
.lp-pricing .quantity-control{display:flex;align-items:center;gap:8px;margin-top:8px}
.lp-pricing .quantity-control input{width:95px;text-align:center;margin:0}
.lp-pricing .quantity-control button{min-width:40px;padding:8px}
.lp-pricing .seat-calculator form>p{margin-top:18px}
@media(max-width:1100px){.lp-pricing .volume-offers{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-pricing .seat-calculator-grid{grid-template-columns:1fr 1fr}.lp-pricing .seat-calculator-grid>label{grid-column:1/-1}}
@media(max-width:650px){.lp-pricing .volume-offers{grid-template-columns:1fr}.lp-pricing .enterprise-offer{align-items:start;flex-direction:column}.lp-pricing .seat-calculator-grid{gap:15px}.lp-pricing .seat-calculator-grid strong{font-size:21px}}
@media(min-width:651px){.lp-pricing .volume-offers .offer>p:first-of-type{min-height:45px}}
.lp-pricing .billing-page .subscription-summary .badge{background:#eaf2ff;color:#084fae;border:1px solid #ccdef8}
.lp-pricing .billing-page .subscription-summary .action-link{background:var(--blue);color:#fff}
.lp-pricing .billing-page .subscription-summary .action-link:hover{background:#084fae}
.lp-pricing .billing-page .price{color:#102744}
.lp-pricing .billing-page .offer{border-color:#dce5f0}
.lp-pricing .billing-page .offer .eyebrow{color:#084fae}
.lp-pricing .billing-page .badge.good{background:#e6f6ef;color:#08634e}
.lp-pricing .offer-grid.pack-offers{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1250px){.lp-pricing .offer-grid.pack-offers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.lp-pricing .offer-grid.pack-offers{grid-template-columns:1fr}}
.lp-pricing .promotions-page .panel-heading p{margin-top:5px;font-size:12px}
.lp-pricing .promotions-page .promotion-price-grid .muted{margin:12px 0 0}
.lp-pricing .invitation-call .panel-heading{align-items:start}
.lp-pricing .invitation-call>.panel-heading>.icon{width:30px;height:30px;color:var(--blue);flex-shrink:0}
.lp-pricing .included-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:8px 24px;margin:0;padding-left:20px;color:var(--ink)}
.lp-pricing input[readonly]{background:var(--wash);color:var(--muted);cursor:not-allowed}
.lp-pricing .member-own .notice{background:#fff8eb;border-color:#f3dfb4;color:#8a5a12}
.lp-pricing .tester-row .actions form{margin:0}
.lp-pricing{max-width:1180px;margin:0 auto;padding-top:24px!important;text-align:left}.lp-pricing .panel{margin-bottom:22px}.lp-pricing h2{font-size:20px;letter-spacing:-.4px;margin:0 0 12px}
.lp .lp-pricing h2,.lp .lp-pricing h3{text-align:left;max-width:none;margin-left:0;margin-right:0}.lp .lp-pricing .action-link,.lp .lp-pricing button{color:#fff;text-decoration:none}.lp .lp-pricing .action-link.secondary,.lp .lp-pricing button.secondary,.lp .lp-pricing .secondary{color:var(--ink)}

/* Forfait mis en avant, economie annuelle, demo. */
.lp-pricing .offer-highlight { border: 2px solid #0b5ed7; box-shadow: 0 16px 36px rgb(11 94 215 / 10%); }
.lp-pricing .offer-badge { align-self: flex-start; margin-bottom: 8px; padding: 3px 10px; border-radius: 999px; background: #e4f5f2; color: #0b6b61; font-size: 12px; font-weight: 700; }
.lp-pricing .annual-save { align-self: flex-start; margin: 4px 0 6px; }
.lp-pricing .annual-hint { margin: 2px 0 8px; }
.lp-pricing .period-badge { margin-left: 6px; padding: 2px 8px; border-radius: 999px; background: #e4f5f2; color: #0b6b61; font-size: 11.5px; font-style: normal; font-weight: 700; }
.lp-pricing .pricing-demo video { width: 100%; height: auto; border-radius: 12px; background: #0f172a; }
.lp-guarantee strong { color: #08755a; }

/* ===== Page Tarifs repensee (charte : bleu #0B5ED7, cyan #14B8A6, bleu clair #60A5FA, anthracite #1F2937) ===== */
.pp { --pp-blue: #0b5ed7; --pp-cyan: #14b8a6; --pp-sky: #60a5fa; --pp-ink: #1f2937; --pp-muted: #526176; --pp-line: #dce5f0; background: linear-gradient(180deg, #eef5ff 0, #fff 520px); }
.pp-hero { padding-bottom: 8px; }
.pp-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 18px auto 0; padding: 0; list-style: none; max-width: 1000px; }
.pp-chips li { display: inline-flex; align-items: center; gap: 7px; padding: 7px 13px; border: 1px solid var(--pp-line); border-radius: 999px; background: #fff; color: var(--pp-ink); font-size: 13.5px; font-weight: 600; box-shadow: 0 4px 12px rgb(16 39 68 / 4%); }
.pp-chips svg { width: 16px; height: 16px; color: var(--pp-blue); flex-shrink: 0; }
.pp-chips .pp-chip-strong { border-color: #bfe6dc; background: #effbf6; color: #08634e; }
.pp-chips .pp-chip-strong svg { color: #0b887b; }
.pp-plans { max-width: 1180px; margin: 0 auto; padding-top: 18px; }

/* Selecteur Mensuel / Annuel */
.pp-toggle { display: flex; width: max-content; max-width: 100%; margin: 0 auto; padding: 5px; border: 1px solid var(--pp-line); border-radius: 999px; background: #fff; box-shadow: 0 8px 22px rgb(16 39 68 / 6%); }
.pp-toggle a { display: inline-flex; align-items: center; gap: 8px; padding: 10px 22px; border-radius: 999px; color: var(--pp-muted); font-weight: 700; font-size: 15px; text-decoration: none; transition: background 150ms, color 150ms; }
.pp-toggle a:hover { color: var(--pp-ink); }
.pp-toggle a.is-on { background: var(--pp-blue); color: #fff; }
.pp-toggle a.is-on .period-badge { background: rgb(255 255 255 / 22%); color: #fff; }
.pp-toggle-note { margin: 10px 0 26px; text-align: center; color: var(--pp-muted); font-size: 13px; }

/* Cartes */
.pp .offer-grid { gap: 18px; margin-top: 28px; align-items: stretch; }
.pp .offer { position: relative; display: flex; flex-direction: column; gap: 0; padding: 30px 22px 22px; border: 1px solid var(--pp-line); border-radius: 18px; background: #fff; box-shadow: 0 10px 28px rgb(16 39 68 / 5%); transition: transform 160ms, box-shadow 160ms; overflow: visible; }
.pp .offer:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgb(16 39 68 / 10%); }
.pp .offer-highlight { border: 2px solid var(--pp-blue); box-shadow: 0 18px 44px rgb(11 94 215 / 16%); }
.pp .offer-badge { position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%); max-width: calc(100% - 24px); margin: 0; padding: 5px 12px; border-radius: 999px; background: var(--pp-blue); color: #fff; font-size: 12px; font-weight: 700; line-height: 1.3; text-align: center; white-space: nowrap; }
.pp .offer-head { min-height: 150px; }
.pp .offer-head > svg { width: 22px; height: 22px; color: var(--pp-blue); }
.pp .offer-head .eyebrow { margin-top: 8px; color: var(--pp-blue); font-size: 12px; font-weight: 750; letter-spacing: 1.4px; text-transform: uppercase; }
.pp .offer-head h2 { margin: 6px 0 8px; font-size: 20px; letter-spacing: -.4px; color: var(--pp-ink); }
.pp .offer-desc { margin: 0; color: var(--pp-muted); font-size: 14px; line-height: 1.5; }
.pp .offer-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px; margin: 18px 0 6px; }
.pp .offer-price .price { margin: 0; font-size: 32px; font-weight: 800; letter-spacing: -1px; color: var(--pp-ink); line-height: 1.1; }
.pp .offer-unit { margin: 0; color: var(--pp-muted); font-size: 14px; }
.pp .annual-save { align-self: flex-start; margin: 2px 0 4px; white-space: normal; text-align: left; line-height: 1.35; }
.pp .annual-hint { margin: 0 0 4px; font-size: 13px; line-height: 1.4; }
.pp .offer .action-link { margin-top: 16px; width: 100%; min-height: 46px; border-radius: 10px; font-size: 15px; }
.pp .offer:not(.offer-highlight) .action-link { background: #f5f9ff; color: var(--pp-blue); border: 1.5px solid #93c5fd; }
.pp .offer:not(.offer-highlight) .action-link:hover { background: #eaf3ff; border-color: var(--pp-blue); }
.pp .offer-points { display: grid; gap: 8px; margin: 18px 0 0; padding: 16px 0 0; border-top: 1px solid #eef2f7; list-style: none; }
.pp .offer-points li { position: relative; padding-left: 24px; color: var(--pp-ink); font-size: 14px; }
.pp .offer-points li::before { content: "✓"; position: absolute; left: 0; color: #0b887b; font-weight: 800; }
.pp .offer-note { display: none; }
.pp-footnote { margin: 14px 0 0; text-align: center; color: var(--pp-muted); font-size: 13px; }
.pp .enterprise-offer { margin-top: 18px; border-radius: 18px; }

/* Garantie */
.pp-guarantee { display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: center; margin: 30px 0 0; padding: 22px 26px; border: 1px solid #bfe6dc; border-radius: 18px; background: linear-gradient(135deg, #effbf6, #f4fbff); }
.pp-guarantee-icon { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 16px; background: #fff; color: #0b887b; box-shadow: 0 6px 16px rgb(11 136 123 / 14%); }
.pp-guarantee-icon svg { width: 28px; height: 28px; }
.pp-guarantee h2 { margin: 0 0 4px; font-size: 19px; color: #08634e; }
.pp-guarantee p { margin: 0; color: var(--pp-ink); }

/* Inclus dans chaque offre */
.pp-included { margin: 30px 0 0; padding: 26px; border: 1px solid var(--pp-line); border-radius: 18px; background: #fff; }
.pp-included h2 { margin: 0 0 14px; font-size: 19px; }
.pp-included ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px 20px; margin: 0; padding: 0; list-style: none; }
.pp-included li { position: relative; padding-left: 26px; color: var(--pp-ink); font-size: 14.5px; line-height: 1.45; }
.pp-included li::before { content: ""; position: absolute; left: 0; top: 2px; width: 18px; height: 18px; border-radius: 50%; background: #e4f5f2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b887b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center / 12px no-repeat; }

/* Demo */
.pp-demo { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr); gap: 26px; align-items: center; margin: 30px 0 0; padding: 26px; border: 1px solid var(--pp-line); border-radius: 18px; background: #fff; }
.pp-demo h2 { margin: 4px 0 8px; font-size: 22px; }
.pp-demo p { color: var(--pp-muted); }
.pp-demo video { width: 100%; height: auto; border-radius: 12px; background: #0f172a; }

/* FAQ */
.pp-faq { max-width: 820px; margin: 34px auto 0; }
.pp-faq h2 { text-align: center; font-size: 22px; margin: 0 0 14px; }
.pp-faq details { margin-bottom: 10px; padding: 14px 18px; border: 1px solid var(--pp-line); border-radius: 12px; background: #fff; }
.pp-faq summary { cursor: pointer; font-weight: 700; color: var(--pp-ink); }
.pp-faq details p { margin: 10px 0 0; color: var(--pp-muted); }
.pp .welcome-terms { margin-top: 20px; text-align: center; }

@media (max-width: 980px) { .pp-included ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pp-demo { grid-template-columns: 1fr; } }
@media (max-width: 640px) {
    .pp-chips li { font-size: 12.5px; padding: 6px 11px; }
    .pp-toggle a { padding: 9px 16px; font-size: 14px; }
    .pp .offer-grid { gap: 26px; }
    .pp .offer-head { min-height: 0; }
    .pp-included ul { grid-template-columns: 1fr; }
    .pp-guarantee { grid-template-columns: 1fr; text-align: left; padding: 20px; }
    .pp-included, .pp-demo { padding: 20px; }
}
.pp-terms { margin: 10px auto 0; max-width: 760px; font-size: 13px; }
.pp-terms + .pp-terms { margin-top: 2px; }
.pp .offer-per-month { margin: 4px 0 0; color: #0d9488; font-size: 14px; font-weight: 700; }
.pp-perpetual { max-width: 860px; margin: 28px auto 0; display: grid; gap: 16px; padding: 24px 26px; border: 1px dashed #c7d2e0; border-radius: 16px; background: #fff; }
.pp-perpetual h2 { margin: 0 0 6px; font-size: 18px; }
.pp-perpetual p { margin: 0; color: var(--pp-muted); font-size: 14.5px; line-height: 1.55; }
.pp-perpetual-form { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px 12px; align-items: center; }
.pp-perpetual-form input[type=email] { padding: 12px 14px; border: 1px solid #d8e0ea; border-radius: 10px; font: inherit; }
.pp-perpetual-consent { grid-column: 1 / -1; display: flex; gap: 8px; align-items: flex-start; font-size: 13.5px; color: var(--pp-muted); }
.pp-perpetual-thanks { font-weight: 700; color: #0d9488 !important; }
.pp-visually-hidden { position: absolute !important; left: 0; top: 0; width: 1px !important; height: 1px; padding: 0 !important; border: 0 !important; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (max-width: 640px) { .pp-perpetual-form { grid-template-columns: 1fr; } }
