/* Tarifs — section « Modules métier » : la nuit et le verre du reste du site, de grands chiffres, rien à cocher. */
.tm{position:relative;width:100vw;margin:clamp(40px,6vw,80px) 0 0 calc(50% - 50vw);padding:clamp(56px,8vw,104px) 0;color:#fff;background:#0b1630;overflow:hidden;isolation:isolate}
.tm::before{content:"";position:absolute;inset:-20% -10%;background:radial-gradient(60% 50% at 20% 20%,rgba(52,113,219,.45),transparent 60%),radial-gradient(50% 60% at 85% 80%,rgba(157,188,255,.22),transparent 60%),linear-gradient(180deg,#060b17,#0b1630 55%,#0d1a3a);z-index:-1}
.tm::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(70% 60% at 50% 40%,#000 30%,transparent 100%);z-index:-1}
.tm-wrap{width:min(1180px,100%);margin:0 auto;padding-inline:max(20px,4vw)}
.tm-head{max-width:820px;margin-bottom:clamp(28px,4vw,48px)}
.tm-eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 16px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#9dbcff}
.tm-eyebrow svg{width:14px;height:14px;color:#9dbcff}
.tm h2{margin:0;font-size:clamp(30px,4vw,54px);line-height:1.04;letter-spacing:-.03em;font-weight:700;color:#fff}
.tm h2 em{font-style:normal;color:#9dbcff}
.tm-lead{margin:18px 0 0;font-size:17px;line-height:1.55;color:rgba(255,255,255,.72);max-width:62ch}
.tm-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tm-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:26px 24px 24px;border-radius:18px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 30px 60px -30px rgba(0,0,0,.6);transition:transform .5s cubic-bezier(.22,.61,.36,1),border-color .5s,background .5s}
.tm-card:hover{transform:translateY(-6px);border-color:rgba(157,188,255,.55);background:rgba(255,255,255,.09)}
.tm-card.-hero{border-color:rgba(157,188,255,.6);background:linear-gradient(180deg,rgba(52,113,219,.32),rgba(255,255,255,.06))}
.tm-card.-hero::before{content:"Le plus complet";position:absolute;top:-11px;left:22px;padding:4px 10px;border-radius:999px;background:#3471db;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.tm-card.-soon{opacity:.78}
.tm-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.tm-ico{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);color:#dbe7ff}
.tm-ico svg{width:22px;height:22px}
.tm-tag{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#9dbcff;padding:5px 9px;border-radius:999px;border:1px solid rgba(157,188,255,.4);white-space:nowrap}
.tm-tag.-free{color:#7fe0a8;border-color:rgba(127,224,168,.45)}
.tm-tag.-soon{color:rgba(255,255,255,.6);border-color:rgba(255,255,255,.25)}
.tm-card h3{margin:6px 0 0;font-size:22px;line-height:1.1;letter-spacing:-.02em;font-weight:700;color:#fff}
.tm-desc{margin:0;font-size:14px;line-height:1.5;color:rgba(255,255,255,.72);min-height:3.1em}
.tm-price{margin:6px 0 2px;display:flex;flex-direction:column;gap:4px;padding-top:14px;border-top:1px solid rgba(255,255,255,.14)}
.tm-price b{font-size:clamp(34px,3.2vw,46px);line-height:1;font-weight:400;letter-spacing:-.03em;color:#fff}
.tm-price span{font-size:13px;line-height:1.4;color:rgba(255,255,255,.66)}
.tm-price strong{color:#fff;font-weight:600}
.tm-card ul{margin:4px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.tm-card li{position:relative;padding-left:20px;font-size:14px;line-height:1.4;color:rgba(255,255,255,.86)}
.tm-card li::before{content:"";position:absolute;left:0;top:7px;width:10px;height:10px;border-radius:50%;background:#9dbcff;box-shadow:0 0 0 4px rgba(157,188,255,.18)}
.tm-link{margin-top:auto;padding-top:14px;font-size:14px;font-weight:700;color:#9dbcff;text-decoration:none}
.tm-link:hover{color:#fff;text-decoration:underline}
.tm-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:clamp(24px,3vw,36px);padding-top:clamp(20px,3vw,28px);border-top:1px solid rgba(255,255,255,.14)}
.tm-how div{display:flex;gap:14px;align-items:flex-start}
.tm-how b{font-size:12px;font-weight:700;letter-spacing:.12em;color:#9dbcff;padding-top:3px}
.tm-how span{font-size:14px;line-height:1.5;color:rgba(255,255,255,.78)}
.summary .sum-mod{font-weight:500;color:#9dbcff;font-size:12.5px;text-align:right}
.tm-cpro{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:28px;align-items:center;margin:22px 0 0;padding:26px 30px;border-radius:18px;border:1px solid rgba(157,188,255,.4);background:linear-gradient(90deg,rgba(52,113,219,.22),rgba(255,255,255,.05));overflow:hidden}
.tm-cpro h3{margin:8px 0 8px;font-size:22px;letter-spacing:-.02em;color:#fff}
.tm-cpro p{margin:0;font-size:14px;line-height:1.55;color:rgba(255,255,255,.75);max-width:62ch}
.tm-cpro .tm-eyebrow{margin:0}
.tm-cpro .tm-link{display:inline-block;margin-top:14px;padding-top:0}
.tm-cpro img{width:150px;height:auto;transform:rotate(-10deg) translateY(10px);filter:drop-shadow(0 24px 40px rgba(0,0,0,.6));border-radius:9%/6.2%;justify-self:center}
@media (max-width:1100px){.tm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.tm-grid,.tm-how,.tm-cpro{grid-template-columns:1fr}.tm-cpro img{width:120px;transform:rotate(-8deg)}.tm-card{padding:22px 18px 20px}.tm h2 br{display:none}}
@media (prefers-reduced-motion:reduce){.tm-card,.tm-card:hover{transition:none;transform:none}}
