/* Rallyz — page des forfaits (tarifs / pricing) */
:root{--bg:#F6F2EC;--ink:#1A1208;--ink2:rgba(26,18,8,0.68);--line:rgba(26,18,8,0.10);--card:#FFFFFF;--o:#FF6B35;--p:#FF3B6B;--y:#FFBF00;--grad:linear-gradient(135deg,#FF6B35,#FF3B6B);}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:clip;}
body{overflow-x:clip;margin:0;background:var(--bg);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;}
a{color:inherit;}
.pp-wrap{max-width:1080px;margin:0 auto;padding:0 20px;}
/* En-tête */
.pp-top{position:sticky;top:0;z-index:20;background:rgba(246,242,236,0.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);}
.pp-top .pp-wrap{display:flex;align-items:center;justify-content:space-between;height:64px;gap:12px;}
.pp-nav{display:flex;align-items:center;gap:8px;font-size:15px;}
.pp-nav a{text-decoration:none;padding:7px 12px;border-radius:999px;border:1.5px solid var(--line);font-weight:600;white-space:nowrap;}
@media(max-width:420px){.pp-nav{gap:6px;font-size:14px;}.pp-nav a{padding:6px 10px;}}
.pp-nav a.pp-on{border-color:var(--o);color:var(--o);}
/* Logo animé : la balle rebondit sur les lettres et se pose au bout du « z » */
.pp-logo{position:relative;display:inline-flex;align-items:baseline;font-family:"Syne",sans-serif;font-weight:800;font-size:30px;letter-spacing:-1.5px;line-height:1;text-decoration:none;color:var(--ink);padding-top:22px;margin-top:-22px;}
.pp-logo .pp-yz{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.pp-logo .pp-slot{display:inline-block;width:0.19em;height:0.19em;margin-left:1px;}
.pp-shine{position:absolute;pointer-events:none;white-space:nowrap;color:transparent;-webkit-text-fill-color:transparent;
  background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,0.95) 50%,transparent 62%);background-size:300% 100%;background-position:120% 0;
  -webkit-background-clip:text;background-clip:text;animation:ppShine 1.9s cubic-bezier(.4,0,.2,1) .35s 1 both;}
@keyframes ppShine{from{background-position:120% 0;}to{background-position:-20% 0;}}
@media (prefers-reduced-motion:reduce){.pp-shine{display:none;}}
.pp-ball{position:absolute;left:0;top:0;width:0.19em;height:0.19em;border-radius:50%;background:var(--y);will-change:transform;}
.pp-logo.pp-logo-big{font-size:clamp(58px,13vw,104px);letter-spacing:-4px;padding-top:70px;margin-top:-40px;margin-bottom:6px;}
/* Hero */
.pp-hero{padding:56px 0 34px;text-align:center;}
.pp-nw{white-space:nowrap;}
.pp-hero h1{text-wrap:balance;font-family:"Syne",sans-serif;font-weight:800;font-size:clamp(26px,4.2vw,42px);line-height:1.12;letter-spacing:-1px;margin:44px auto 16px;max-width:720px;}
.pp-lede{font-size:clamp(17px,2.2vw,20px);color:var(--ink2);max-width:640px;margin:0 auto 26px;}
.pp-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.pp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:999px;font:700 16px "DM Sans",sans-serif;text-decoration:none;border:0;cursor:pointer;}
.pp-btn-main{background:var(--grad);color:#fff;box-shadow:0 10px 26px rgba(255,80,80,0.28);}
.pp-btn-ghost{background:transparent;color:var(--ink);border:1.5px solid rgba(26,18,8,0.2);}
.pp-btn:disabled{cursor:default;opacity:0.82;}
/* Fonctionnalités */
.pp-feats-bg{position:relative;padding:72px 0 48px;}
@media (max-width:860px){.pp-feats-bg{padding:52px 0 32px;}}
.pp-feats-bg::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(40% 50% at 15% 30%,rgba(255,107,53,0.20),transparent 70%),radial-gradient(35% 45% at 85% 60%,rgba(255,59,107,0.18),transparent 70%),radial-gradient(30% 40% at 50% 95%,rgba(255,191,0,0.14),transparent 70%);}
.pp-feats{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;}
.pp-feat{perspective:1200px;min-height:250px;cursor:pointer;outline:none;}
.pp-flip{position:relative;width:100%;height:100%;min-height:250px;transition:transform .7s cubic-bezier(.3,.7,.2,1);transform-style:preserve-3d;}
.pp-face{position:absolute;inset:0;border-radius:20px;padding:22px;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;}
.pp-front{background:rgba(255,255,255,0.42);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(255,255,255,0.75);box-shadow:0 10px 30px rgba(26,18,8,0.07),inset 0 1px 0 rgba(255,255,255,0.8);}
.pp-back{transform:rotateY(180deg);background:linear-gradient(135deg,rgba(255,107,53,0.93),rgba(255,59,107,0.93));color:#fff;box-shadow:0 14px 34px rgba(255,80,80,0.32);border:1px solid rgba(255,255,255,0.35);justify-content:center;}
.pp-back h3{color:#fff;}.pp-back p{color:rgba(255,255,255,0.92);font-size:15.5px;margin:0;}
.pp-feat:hover .pp-flip,.pp-feat:focus-visible .pp-flip,.pp-feat.pp-flipped .pp-flip{transform:rotateY(180deg);}
@media (hover:none){.pp-feat:hover .pp-flip{transform:none;}.pp-feat.pp-flipped .pp-flip{transform:rotateY(180deg);}}
.pp-feat h3{font-size:19px;margin:12px 0 6px;line-height:1.25;}
.pp-front p{margin:0;color:var(--ink2);font-size:16px;flex:1;}
.pp-more{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:13px;font-weight:700;color:var(--o);}
.pp-more svg{width:14px;height:14px;}
.pp-ic{display:inline-flex;width:46px;height:46px;border-radius:14px;align-items:center;justify-content:center;color:var(--o);background:rgba(255,107,53,0.12);}
.pp-ic svg{width:24px;height:24px;}
.pp-devices{display:flex;align-items:center;justify-content:center;gap:8px;margin:22px 0 0;color:var(--ink2);font-size:14.5px;font-weight:600;flex-wrap:wrap;}
.pp-devices svg{width:19px;height:19px;color:var(--o);}
h2{font-family:"Syne",sans-serif;font-weight:800;font-size:clamp(26px,4vw,38px);letter-spacing:-1px;line-height:1.1;margin:0 0 14px;}
.pp-center{text-align:center;}
.pp-sub{color:var(--ink2);margin:-4px 0 26px;}
/* Étapes : bande colorée pleine largeur, cartes en verre */
.pp-steps{position:relative;margin:90px auto 100px;padding:56px 20px;text-align:center;isolation:isolate;}
.pp-steps::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);z-index:-1;
  background:radial-gradient(45% 70% at 20% 30%,rgba(255,107,53,0.30),transparent 70%),radial-gradient(45% 70% at 80% 70%,rgba(255,59,107,0.26),transparent 70%),linear-gradient(135deg,#FCE3D3,#FBD9E0);}
.pp-steps ol{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;}
.pp-steps li{background:rgba(255,255,255,0.45);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);border:1px solid rgba(255,255,255,0.8);box-shadow:0 10px 30px rgba(26,18,8,0.07),inset 0 1px 0 rgba(255,255,255,0.8);border-radius:18px;padding:20px;display:flex;gap:14px;align-items:flex-start;text-align:left;}
.pp-steps b{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--grad);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:"Syne",sans-serif;box-shadow:0 6px 14px rgba(255,80,80,0.3);}
/* Bande Interclubs */
.pp-ic-band{margin:80px 0 70px;padding:56px 0;background:#1A1208;color:#FFF6EE;}
.pp-ic-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:34px;align-items:center;}
.pp-kicker{display:inline-block;font-size:13px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--o);margin-bottom:10px;}
.pp-ic-h{margin-bottom:26px;}
.pp-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px;}
.pp-list li{display:flex;gap:10px;align-items:flex-start;color:rgba(255,246,238,0.86);}
.pp-list svg,.pp-plan li svg{flex:0 0 auto;width:18px;height:18px;margin-top:4px;color:var(--o);}
.pp-ic-card{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:20px;padding:20px;}
.pp-ic-row{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid rgba(255,255,255,0.1);font-size:17px;}
.pp-ic-row b{flex:1;}.pp-ic-row span{font-family:"Syne",sans-serif;font-weight:800;font-size:22px;}
.pp-ic-row i{font-style:normal;font-size:13px;padding:3px 10px;border-radius:999px;border:1px solid rgba(255,255,255,0.25);}
.pp-ic-row i.pp-win{border-color:var(--o);color:var(--o);}
.pp-ic-meta{display:flex;align-items:center;gap:8px;margin-top:14px;color:rgba(255,246,238,0.7);font-size:15px;}
.pp-ic-meta svg{width:18px;height:18px;}
/* Forfaits */
.pp-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;align-items:stretch;}
.pp-plan{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:24px 20px 20px;}
.pp-plan-hi{border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--grad) border-box;box-shadow:0 18px 40px rgba(255,80,80,0.16);}
.pp-tag{position:absolute;top:-13px;left:20px;background:var(--grad);color:#fff;font-size:12.5px;font-weight:800;padding:5px 12px;border-radius:999px;letter-spacing:0.3px;}
.pp-plan h3{font-family:"Syne",sans-serif;font-weight:800;font-size:26px;margin:0;letter-spacing:-0.5px;}
.pp-who{margin:4px 0 14px;color:var(--ink2);font-size:15px;min-height:2.6em;}
.pp-price{font-family:"Syne",sans-serif;font-weight:800;font-size:22px;color:var(--o);margin-bottom:14px;}
.pp-plan ul{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:9px;font-size:15.5px;flex:1;}
.pp-plan li{display:flex;gap:8px;}
.pp-plan .pp-btn{width:100%;}
.pp-centre{display:flex;align-items:center;justify-content:center;gap:10px;margin:26px 0 0;color:var(--ink2);flex-wrap:wrap;}
.pp-centre a{color:var(--o);text-decoration:none;}.pp-centre a:hover{text-decoration:underline;}
.pp-centre svg{width:22px;height:22px;color:var(--o);}
/* FAQ */
.pp-faqs{margin:70px auto 30px;max-width:760px;}
.pp-faq{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:4px 18px;margin-bottom:10px;}
.pp-faq summary{cursor:pointer;font-weight:700;padding:14px 0;list-style:none;}
.pp-faq summary::-webkit-details-marker{display:none;}
.pp-faq summary::after{content:"+";float:right;color:var(--o);font-size:22px;line-height:1;}
.pp-faq[open] summary::after{content:"–";}
.pp-faq p{margin:0 0 14px;color:var(--ink2);}
/* Apparition au défilement */
.pp-rev{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;}
.pp-rev.pp-in{opacity:1;transform:none;}
/* Accès réservé */
.pp-gate{max-width:420px;margin:30px auto 60px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:28px 24px;text-align:center;}
.pp-gate h1{font-family:"Syne",sans-serif;font-size:24px;margin:14px 0 8px;}
.pp-gate p{color:var(--ink2);margin:0 0 18px;font-size:16px;}
.pp-gate input{width:100%;padding:12px 14px;margin-bottom:10px;border:1.5px solid rgba(0,0,0,0.14);border-radius:12px;font:16px "DM Sans",sans-serif;background:transparent;}
.pp-gate input:focus{outline:none;border-color:var(--o);}
.pp-gate .pp-btn{width:100%;margin-top:4px;}
.pp-msg{min-height:1.4em;margin-top:10px;font-size:14.5px;color:#C0392B;}
/* iPhone (maquette) */
.pp-phone{position:relative;width:300px;max-width:100%;aspect-ratio:300/610;margin:0 auto;border-radius:46px;background:#111;padding:12px;box-shadow:0 30px 70px rgba(26,18,8,0.28),inset 0 0 0 2px #2a2a2a;}
.pp-phone-dark{box-shadow:0 30px 70px rgba(0,0,0,0.5),inset 0 0 0 2px #3a3a3a;}
.pp-notch{position:absolute;top:20px;left:50%;transform:translateX(-50%);width:92px;height:26px;border-radius:14px;background:#111;z-index:3;}
.pp-screen{position:relative;height:100%;border-radius:36px;overflow:hidden;background:#F6F2EC;color:#1A1208;font-size:12px;}
.pp-app-top{display:flex;align-items:center;justify-content:space-between;padding:52px 16px 8px;}
.pp-mini{font-family:"Syne",sans-serif;font-weight:800;font-size:17px;letter-spacing:-0.8px;}
.pp-mini em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.pp-mini i{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--y);margin-left:1px;}
.pp-grp{font-size:11px;font-weight:700;color:var(--ink2);}
.pp-tabs{display:flex;gap:6px;margin:4px 14px 10px;padding:4px;border-radius:12px;background:#fff;border:1px solid var(--line);}
.pp-tabs span{flex:1;text-align:center;padding:7px 0;border-radius:9px;font-weight:800;font-size:12px;color:var(--ink2);transition:background .3s,color .3s;}
.pp-tabs span.on{background:var(--grad);color:#fff;}
.pp-views{position:relative;height:calc(100% - 130px);overflow:hidden;}
.pp-view{position:absolute;inset:0;padding:0 12px;transition:opacity .45s ease,transform .45s ease;}
.pp-view[data-dv="r"]{opacity:0;transform:translateX(30px);}
.pp-show-r .pp-view[data-dv="m"]{opacity:0;transform:translateX(-30px);}
.pp-show-r .pp-view[data-dv="r"]{opacity:1;transform:none;}
.pp-scroll{transition:transform 1.6s cubic-bezier(.45,.05,.3,1);}
.pp-rd{background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;margin-bottom:10px;}
.pp-rh{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;}
.pp-rh span{color:var(--ink2);font-weight:600;}
.pp-cc{display:grid;grid-template-columns:22px 1fr 54px;align-items:center;gap:6px;margin-bottom:7px;}
.pp-cn{font-weight:800;font-size:11px;color:var(--o);}
.pp-court{display:flex;align-items:stretch;border-radius:8px;background:linear-gradient(180deg,#3E7FC1,#3572B0);padding:5px;gap:4px;min-height:40px;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,0.55);}
.pp-court-d{background:linear-gradient(180deg,#2F8F6B,#257A5B);}
.pp-side{flex:1;display:flex;flex-direction:column;gap:3px;justify-content:center;}
.pp-net{width:2px;background:rgba(255,255,255,0.85);border-radius:1px;}
.pp-court i,.pp-st i{font-style:normal;display:block;padding:2px 6px;border-radius:6px;background:rgba(255,255,255,0.94);font-weight:700;font-size:10.5px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pp-court i.f,.pp-st i.f{color:#E8336A;}.pp-court i.m,.pp-st i.m{color:#2F6FC0;}
.pp-sc{display:flex;align-items:center;justify-content:center;gap:3px;background:#fff;border:1.5px solid var(--line);border-radius:10px;height:34px;font-family:"Syne",sans-serif;font-size:15px;transition:border-color .3s,box-shadow .3s;}
.pp-sc b{min-width:16px;text-align:center;}
.pp-cc-score.pp-typing .pp-sc{border-color:var(--o);box-shadow:0 0 0 4px rgba(255,107,53,0.18);}
.pp-cc-score.pp-won .pp-court .pp-side:first-child i{box-shadow:0 0 0 2px var(--y);}
.pp-bench{font-size:10.5px;color:var(--ink2);margin-top:2px;}
.pp-sth{display:grid;grid-template-columns:18px 1fr 52px 34px 32px;gap:6px;font-size:10px;font-weight:800;color:var(--ink2);text-transform:uppercase;letter-spacing:.5px;padding:2px 6px 6px;}
.pp-st{display:grid;grid-template-columns:18px 1fr 52px 34px 32px;gap:6px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:9px 6px;margin-bottom:7px;opacity:0;transform:translateY(10px);}
.pp-st i{background:none;padding:0;font-size:12.5px;}
.pp-st b{font-family:"Syne",sans-serif;color:var(--o);}
.pp-st em{font-style:normal;font-weight:700;font-size:11px;}.pp-st small{font-weight:800;font-size:11px;color:#2F8F6B;}.pp-st small.pp-neg{color:#C0392B;}
.pp-bar{height:6px;border-radius:3px;background:rgba(26,18,8,0.07);overflow:hidden;}
.pp-bar span{display:block;height:100%;width:0;border-radius:3px;background:var(--grad);transition:width .9s ease;}
.pp-show-r .pp-st{animation:ppUp .5s ease forwards;animation-delay:var(--d);}
.pp-show-r .pp-bar span{width:var(--w);transition-delay:calc(var(--d) + .25s);}
@keyframes ppUp{to{opacity:1;transform:none;}}
.pp-finger{position:absolute;width:30px;height:30px;border-radius:50%;background:rgba(26,18,8,0.22);border:2px solid rgba(255,255,255,0.9);left:60%;top:85%;opacity:0;transform:translate(-50%,-50%);transition:left .7s ease,top .7s ease,opacity .3s;pointer-events:none;z-index:4;}
.pp-ringer{position:absolute;z-index:3;background-repeat:no-repeat;transform-origin:50% 12%;pointer-events:none;animation:ppRing .95s ease-in-out 2;}
@keyframes ppRing{0%,100%{transform:rotate(0);}15%{transform:rotate(16deg);}30%{transform:rotate(-14deg);}45%{transform:rotate(10deg);}60%{transform:rotate(-7deg);}75%{transform:rotate(3deg);}}
.pp-finger.pp-tap{animation:ppTap .35s ease;}
@keyframes ppTap{50%{transform:translate(-50%,-50%) scale(0.75);background:rgba(255,107,53,0.45);}}
/* Appareils : couches de vraies captures */
.pp-layer{position:absolute;inset:0;opacity:0;transition:opacity .55s ease;overflow:hidden;}
.pp-layer.on{opacity:1;}
.pp-lc{transition:transform 1.7s cubic-bezier(.45,.05,.3,1);}
.pp-lc img{display:block;width:100%;height:auto;}
/* Portable (Mac) */
.pp-laptop{max-width:900px;margin:34px auto 0;}
.pp-lid{position:relative;border-radius:18px 18px 6px 6px;background:#1c1c1e;padding:22px 22px 26px;box-shadow:0 30px 80px rgba(0,0,0,0.45),inset 0 0 0 2px #3a3a3c;}
.pp-cam{position:absolute;top:8px;left:50%;width:7px;height:7px;border-radius:50%;background:#3a3a3c;transform:translateX(-50%);}
.pp-laptop .pp-screen{position:relative;aspect-ratio:16/10;border-radius:4px;overflow:hidden;}
.pp-laptop .pp-shots{top:0;}
.pp-base{height:16px;margin:0 -6%;border-radius:0 0 22px 22px;background:linear-gradient(180deg,#d9d9de,#a9a9b0);box-shadow:0 18px 30px rgba(0,0,0,0.35);position:relative;}
.pp-base::before{content:"";position:absolute;top:0;left:50%;width:16%;height:6px;border-radius:0 0 8px 8px;background:#8e8e95;transform:translateX(-50%);}
.pp-laptop .pp-finger{width:22px;height:22px;}
.pp-ic-head{text-align:center;max-width:820px;margin:0 auto;}
.pp-list-2{display:grid;grid-template-columns:1fr 1fr;gap:12px 26px;text-align:left;}
.pp-everywhere{display:flex;align-items:center;justify-content:center;gap:12px;max-width:760px;margin:30px auto 0;color:rgba(255,246,238,0.82);font-size:15.5px;text-align:left;}
.pp-everywhere span{display:inline-flex;gap:6px;flex:0 0 auto;}.pp-everywhere svg{width:22px;height:22px;color:var(--o);}
/* Écran Messages (textos) */
.pp-sms{position:absolute;inset:0;background:#fff;display:flex;flex-direction:column;font-family:-apple-system,"SF Pro Text","Helvetica Neue",Arial,sans-serif;}
.pp-sms-top{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 0 10px;border-bottom:1px solid #e5e5ea;background:#f7f7f9;}
.pp-sms-av{width:38px;height:38px;border-radius:50%;background:var(--grad);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-family:"Syne",sans-serif;}
.pp-sms-top b{font-size:12px;}.pp-sms-top small{font-size:10px;color:#8e8e93;}
.pp-sms-list{flex:1;display:flex;flex-direction:column;gap:8px;padding:14px 12px;}
.pp-bub{max-width:80%;padding:8px 11px;border-radius:17px;background:#e9e9eb;color:#000;font-size:12.5px;line-height:1.35;align-self:flex-start;transition:opacity .4s,transform .4s;}
.pp-bub.pp-me{align-self:flex-end;background:#34C759;color:#fff;}
.pp-bub.pp-hide{opacity:0;transform:translateY(8px) scale(.96);}
/* Pied de page */
.pp-foot{position:relative;margin-top:70px;padding:0;background:#141010;color:rgba(255,246,238,0.78);text-align:left;font-size:15px;}
.pp-foot::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);}
.pp-foot-in{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;padding:46px 0 30px;}
.pp-foot h4{margin:0 0 12px;color:#fff;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;}
.pp-foot a{color:rgba(255,246,238,0.85);text-decoration:none;}.pp-foot a:hover{color:#fff;}
.pp-foot ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.pp-fbrand{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.pp-fbrand img{width:46px;height:46px;border-radius:12px;box-shadow:0 8px 22px rgba(255,80,80,0.35);}
.pp-fword{font-family:"Syne",sans-serif;font-weight:800;font-size:26px;letter-spacing:-1px;color:#fff;}
.pp-fword em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.pp-fword i{display:inline-block;width:0.19em;height:0.19em;border-radius:50%;background:var(--y);margin-left:1px;}
.pp-fopen{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:10px 16px;border-radius:999px;background:var(--grad);color:#fff !important;font-weight:700;box-shadow:0 10px 24px rgba(255,80,80,0.3);}
.pp-social{display:flex;gap:10px;margin-top:4px;}
.pp-social a{display:inline-flex;width:40px;height:40px;border-radius:50%;align-items:center;justify-content:center;border:1.5px solid rgba(255,246,238,0.25);}
.pp-social a:hover{border-color:var(--o);color:var(--o);}
.pp-social svg{width:19px;height:19px;}
.pp-soon{font-size:12.5px;opacity:.6;margin-top:6px;}
.pp-foot-bot{border-top:1px solid rgba(255,246,238,0.1);padding:16px 0 26px;font-size:13px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;opacity:.75;}
/* Variante : pied de page en dégradé (?pied=degrade) */
.pp-foot.pp-foot-grad{background:linear-gradient(135deg,#FF6B35,#FF3B6B);color:rgba(255,255,255,0.9);}
.pp-foot.pp-foot-grad::before{display:none;}
.pp-foot-grad a,.pp-foot-grad h4{color:#fff;}.pp-foot-grad .pp-fopen{background:#fff;color:#FF4E50 !important;}
.pp-foot-grad .pp-fword em{-webkit-text-fill-color:#1A1208;}.pp-foot-grad .pp-social a{border-color:rgba(255,255,255,0.5);}
.pp-foot-grad .pp-fbrand img{box-shadow:0 8px 22px rgba(0,0,0,0.2);}
@media (max-width:860px){.pp-foot-in{grid-template-columns:1fr 1fr;}.pp-list-2{grid-template-columns:1fr;}}
@media (max-width:520px){.pp-foot-in{grid-template-columns:1fr 1fr;gap:22px 18px;padding:36px 0 22px;}.pp-foot-in>div:first-child,.pp-foot-in>div:last-child{grid-column:1/-1;}.pp-foot-bot{flex-direction:column;gap:4px;padding:14px 0 22px;}}
/* iPhone avec vraies captures de l'app */
.pp-screen-real{background:#F4EEE8;}
.pp-status{position:absolute;top:0;left:0;right:0;height:34px;background:#F9E2D4;z-index:2;transition:background .4s;}
.pp-screen.pp-light .pp-status{background:#f7f7f9;}
.pp-shots{position:absolute;top:34px;left:0;right:0;bottom:0;overflow:hidden;}
.pp-shots img{display:block;width:100%;height:auto;}
.pp-track{position:relative;transition:transform 1.8s cubic-bezier(.45,.05,.3,1);}
.pp-track .pp-s2{position:absolute;top:0;left:0;opacity:0;transition:opacity .5s ease;}
.pp-shots .pp-s3{position:absolute;top:0;left:0;opacity:0;transition:opacity .55s ease,transform 3.5s ease;}
.pp-real-note{margin:16px 0 0;font-size:13px;color:var(--ink2);}
.pp-ic-band .pp-real-note{color:rgba(255,246,238,0.6);}
/* Section démonstration */
.pp-demo{margin:80px 0 0;}
.pp-demo-grid{display:grid;grid-template-columns:1fr 320px;gap:48px;align-items:center;}
.pp-dsteps{list-style:none;padding:0;margin:26px 0 0 -16px;display:flex;flex-direction:column;gap:12px;}
.pp-dsteps li{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border-radius:16px;border:1.5px solid transparent;transition:background .4s,border-color .4s,opacity .4s;opacity:0.55;}
.pp-dsteps li.on{background:#fff;border-color:rgba(255,107,53,0.35);opacity:1;}
.pp-dsteps b{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:var(--grad);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:"Syne",sans-serif;}
.pp-dsteps h4{margin:2px 0 4px;font-size:17px;}.pp-dsteps p{margin:0;color:var(--ink2);font-size:15px;}
/* Interclubs : iPhone */
.pp-phone-dark .pp-screen{background:#FBF8F4;}
.pp-ic-top{padding:52px 16px 8px;display:flex;flex-direction:column;gap:2px;}
.pp-ic-top b{font-family:"Syne",sans-serif;font-size:16px;}.pp-ic-top span{font-size:11px;color:var(--ink2);font-weight:600;}
.pp-lock{display:inline-flex;align-items:center;gap:6px;margin:4px 14px 10px;padding:5px 10px;border-radius:999px;background:rgba(47,143,107,0.12);color:#257A5B;font-weight:800;font-size:11px;}
.pp-lock svg{width:13px;height:13px;}
.pp-board{display:flex;align-items:center;justify-content:space-between;margin:0 12px;padding:12px;border-radius:16px;background:#1A1208;color:#fff;}
.pp-club{display:flex;flex-direction:column;align-items:center;flex:1;}
.pp-club b{font-size:13px;}.pp-club small{font-size:10px;opacity:.65;}
.pp-club strong{font-family:"Syne",sans-serif;font-size:30px;line-height:1.1;margin-top:2px;}
.pp-club:first-child strong{color:var(--o);}
.pp-vs{font-size:11px;opacity:.6;font-weight:700;}
.pp-pts{display:grid;grid-template-columns:1fr auto 1fr auto;gap:6px;align-items:center;margin:8px 14px 10px;font-size:11px;font-weight:700;color:var(--ink2);}
.pp-pts b{padding:2px 8px;border-radius:999px;background:var(--grad);color:#fff;transform:scale(0);transition:transform .4s cubic-bezier(.2,1.6,.4,1);}
.pp-pts b.pp-pts-b{background:#8a8178;}
.pp-pts.pp-on b{transform:scale(1);}
.pp-ich{font-size:11px;font-weight:800;margin:0 14px 6px;color:var(--ink2);text-transform:uppercase;letter-spacing:.5px;}
.pp-icc{display:grid;grid-template-columns:28px 1fr;gap:6px;align-items:center;margin:0 12px 7px;}
.pp-ic-band .pp-phone{color:#1A1208;}
/* Comparatif Ligue / Ligue+ */
.pp-cmp-t{font-family:"Syne",sans-serif;font-size:24px;margin:46px 0 14px;}
.pp-cmp{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:20px;max-width:820px;margin:0 auto;}
.pp-cmp table{width:100%;border-collapse:collapse;font-size:15.5px;}
.pp-cmp th,.pp-cmp td{padding:13px 16px;border-bottom:1px solid var(--line);text-align:center;}
.pp-cmp td:first-child,.pp-cmp th:first-child{text-align:left;}
.pp-cmp tr:last-child td{border-bottom:0;}
.pp-cmp th{font-family:"Syne",sans-serif;font-size:18px;}
.pp-cmp .pp-cmp-hi{background:rgba(255,107,53,0.06);}
.pp-cmp th.pp-cmp-hi{color:var(--o);}
.pp-yes svg{width:20px;height:20px;color:var(--o);}.pp-no{color:rgba(26,18,8,0.35);}
.pp-demo-alt .pp-demo-grid{grid-template-columns:320px 1fr;}
@media (max-width:860px){.pp-demo-grid,.pp-demo-alt .pp-demo-grid{grid-template-columns:1fr;}.pp-demo .pp-phone{order:1;}}
@media (max-width:560px){.pp-cmp table{font-size:13.5px;}.pp-cmp th,.pp-cmp td{padding:10px 8px;}.pp-cmp td:first-child{min-width:150px;}.pp-cmp th{font-size:16px;}}
@media (max-width:760px){.pp-ic-grid{grid-template-columns:1fr;}.pp-top .pp-wrap{height:58px;}.pp-logo{font-size:26px;}}
@media (prefers-reduced-motion:reduce){.pp-rev{opacity:1;transform:none;transition:none;}html{scroll-behavior:auto;}.pp-st{opacity:1;transform:none;}}

/* Titre animé : deux plans, puis le terrain 3D qui s'aplatit en vraie carte de l'app (captures assets/demo) */
.pp-stage{position:relative;--k:1;height:calc(372px*var(--k));margin:26px auto 22px;max-width:1000px;transition:height .7s cubic-bezier(.6,0,.2,1);}
.pp-reel{position:absolute;inset:0;pointer-events:none;}
.pp-shot{position:absolute;inset:0;display:flex;align-items:center;align-content:center;justify-content:center;visibility:hidden;}
.pp-ra,.pp-rb{font-family:"Syne",sans-serif;font-weight:800;font-size:clamp(30px,6.2vw,66px);letter-spacing:-0.03em;line-height:1.04;text-align:center;flex-wrap:wrap;column-gap:.24em;padding:0 8px;}
.pp-ra{transition:opacity .3s ease,transform .35s ease,filter .3s ease;}
.pp-rw{display:inline-block;overflow:hidden;padding:.06em .03em .14em;margin:-.06em 0 -.14em;}
.pp-rwi{position:relative;display:inline-block;transform:translateY(112%);transition:transform .45s cubic-bezier(.2,1.25,.4,1);}
.pp-rg{position:absolute;left:0;top:0;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;clip-path:inset(0 100% 0 0);transition:clip-path .35s cubic-bezier(.7,0,.3,1);}
.pp-rb .pp-rbin{position:relative;display:inline-block;}
.pp-rbw{display:inline-block;white-space:nowrap;}
.pp-rl{display:inline-block;opacity:0;transform:translateX(.9em) rotate(16deg) skewX(-16deg);transition:opacity .2s ease,transform .4s cubic-bezier(.2,1.5,.4,1);}
.pp-swoosh{position:absolute;left:4%;right:4%;bottom:-.12em;width:92%;height:.3em;overflow:visible;}
.pp-swoosh path{fill:none;stroke:var(--y);stroke-width:7;stroke-linecap:round;stroke-dasharray:330;stroke-dashoffset:330;transition:stroke-dashoffset .25s cubic-bezier(.6,0,.2,1);}
.pp-rb{transition:opacity .4s ease,transform .45s ease;}
.pp-rc{perspective:760px;perspective-origin:50% 30%;overflow:hidden;-webkit-mask-image:linear-gradient(transparent,#000 9%,#000 86%,transparent);mask-image:linear-gradient(transparent,#000 9%,#000 86%,transparent);transition:opacity .5s ease,transform .6s ease;}
.pp-cbox{position:relative;width:calc(350px*var(--k));height:calc(248px*var(--k));transform-style:preserve-3d;}
.pp-crop{background-repeat:no-repeat;background-size:calc(390px*var(--k)) auto;}
.pp-card1,.pp-card2{position:absolute;inset:0;opacity:0;border-radius:calc(16px*var(--k));box-shadow:0 18px 44px rgba(80,40,10,.13);transition:opacity .35s ease;background-position:calc(-20px*var(--k)) calc(-283px*var(--k));}
.pp-card1{background-image:url(/assets/demo/l4-matchs.jpg);}
.pp-card2{background-image:url(/assets/demo/l5-matchs-scores.jpg);}
.pp-rf{position:absolute;left:calc(250px*var(--k));top:calc(25px*var(--k));width:32px;height:32px;margin:-16px;border-radius:50%;background:rgba(26,18,8,.22);border:2px solid rgba(255,255,255,.9);opacity:0;transform:scale(1.5);transition:opacity .3s ease,transform .35s ease;z-index:3;}
.pp-rstd{opacity:0;transform:translateX(50px);transition:opacity .5s ease .15s,transform .7s cubic-bezier(.2,1,.3,1) .15s;}
.pp-stand{width:calc(350px*var(--k));height:calc(306px*var(--k));border-radius:calc(18px*var(--k));background-image:url(/assets/demo/l6-resultats.jpg);background-position:calc(-20px*var(--k)) calc(-226px*var(--k));box-shadow:0 18px 44px rgba(80,40,10,.12);}
.pp-hero h1.pp-title{margin:0 auto;opacity:0;transform:translateY(18px);transition:opacity .6s ease .15s,transform .8s cubic-bezier(.2,1,.3,1) .15s;}
.pp-title .pp-hl{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.pp-replay{display:inline-flex;align-items:center;gap:6px;margin:12px auto 0;border:0;background:none;font:600 13px "DM Sans",sans-serif;color:var(--ink2);cursor:pointer;opacity:0;visibility:hidden;transition:opacity .4s ease .6s;}
.pp-replay svg{width:14px;height:14px;}
/* États (ajoutés un à un par assets/pricing.js) */
.s-a .pp-ra{visibility:visible;}.s-a .pp-rwi{transform:none;}
.s-a2 .pp-rg{clip-path:inset(0 0 0 0);}.s-a2 .pp-hl .pp-rwi{animation:ppPop .55s ease;}
.s-b .pp-ra{opacity:0;transform:translateY(-34px);filter:blur(8px);}
.s-b .pp-rb{visibility:visible;}.s-b .pp-rl{opacity:1;transform:none;}
.s-b2 .pp-swoosh path{stroke-dashoffset:0;}
.s-c1 .pp-ra{visibility:hidden;}.s-c1 .pp-rb{opacity:0;transform:scale(1.12);}
.s-c2 .pp-rb{visibility:hidden;}
.s-c3 .pp-card1{opacity:1;}
.s-c4 .pp-rf{opacity:1;transform:none;}
.s-c5 .pp-card2{opacity:1;}.s-c5 .pp-rf{opacity:0;transform:scale(.8);}
.s-d .pp-rc{opacity:0;transform:translateX(-44px);}
.s-d .pp-rstd{visibility:visible;opacity:1;transform:none;}
.s-end .pp-rstd{opacity:0;transform:translateY(-14px);transition:opacity .4s ease,transform .4s ease;}
.s-end .pp-reel{visibility:hidden;transition:visibility 0s .5s;}
.s-end h1.pp-title{opacity:1;transform:none;}
.s-end .pp-replay{opacity:1;visibility:visible;}
.pp-stage.pp-reset *{transition:none !important;animation:none !important;}
@keyframes ppPop{0%,100%{transform:none;}45%{transform:scale(1.09) rotate(-2deg);}}

/* Terrain 3D : le vrai terrain de l'app (SVG), vu de près avec un filet, puis à plat dans la carte */
.pp-pb{display:none;}
.pp-rcourt{position:absolute;left:calc(1px*var(--k));top:calc(52px*var(--k));width:calc(348px*var(--k));height:calc(160px*var(--k));transform-style:preserve-3d;
  transform:translateY(calc(70px*var(--k))) rotateX(66deg) rotateZ(-86deg) scale(2.3);transition:transform 1.25s cubic-bezier(.3,.7,.3,1);}
.pp-rcourt>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;}
.pp-net{position:absolute;left:50%;top:calc(7px*var(--k));height:calc(146px*var(--k));width:0;transform-style:preserve-3d;transition:opacity .5s ease;}
.pp-netm{position:absolute;left:0;top:0;bottom:0;width:calc(27px*var(--k));transform-origin:0 50%;transform:rotateY(-90deg);
  background:repeating-linear-gradient(0deg,rgba(26,18,8,.5) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(26,18,8,.5) 0 1px,transparent 1px 3px);
  border-right:calc(2.2px*var(--k)) solid #FF3B6B;border-left:1px solid rgba(26,18,8,.45);}
.pp-netm::before,.pp-netm::after{content:"";position:absolute;left:-1px;right:calc(-2.2px*var(--k));height:calc(3px*var(--k));background:#FF3B6B;border-radius:2px;}
.pp-netm::before{top:calc(-2px*var(--k));}.pp-netm::after{bottom:calc(-2px*var(--k));}
.s-c1 .pp-rc{visibility:visible;}
/* Filet vu à plat (même tracé que dans l'app) : prend le relais du filet debout pendant l'aplatissement */
.pp-net::before{content:"";position:absolute;left:calc(-2.6px*var(--k));width:calc(5.2px*var(--k));top:0;bottom:0;background:rgba(255,59,107,.95);opacity:0;transition:opacity .5s ease .4s;}
.pp-net::after{content:"";position:absolute;left:calc(-4.35px*var(--k));width:calc(8.7px*var(--k));top:calc(-4.35px*var(--k));bottom:calc(-7.8px*var(--k));opacity:0;transition:opacity .5s ease .4s;
  background:radial-gradient(circle at 50% calc(4.35px*var(--k)),#FF3B6B calc(4.3px*var(--k)),transparent calc(4.6px*var(--k))),radial-gradient(circle at 50% calc(100% - 4.35px*var(--k)),#FF3B6B calc(4.3px*var(--k)),transparent calc(4.6px*var(--k)));}

/* Trophée : se pose à côté du nom de la gagnante */
.pp-rstd{}.pp-sbox{position:relative;}
.pp-troph{position:absolute;left:calc(50px*var(--k));top:calc(31px*var(--k));width:calc(28px*var(--k));height:calc(28px*var(--k));opacity:0;transform:translateY(calc(-70px*var(--k))) rotate(-30deg) scale(1.6);color:#E9A100;}
.pp-troph svg{width:100%;height:100%;display:block;filter:drop-shadow(0 2px 4px rgba(233,161,0,.45));}
.pp-troph i{position:absolute;left:50%;top:50%;width:calc(3px*var(--k));height:calc(9px*var(--k));margin:calc(-4.5px*var(--k)) 0 0 calc(-1.5px*var(--k));border-radius:2px;background:#FFBF00;opacity:0;}
.pp-glow{position:absolute;left:0;top:calc(1px*var(--k));width:100%;height:calc(70px*var(--k));border-radius:calc(14px*var(--k));box-shadow:0 0 0 2px rgba(255,191,0,.75),0 0 26px rgba(255,191,0,.45);opacity:0;transition:opacity .5s ease .5s;}
.s-d2 .pp-troph{animation:ppTroph .7s cubic-bezier(.3,1.4,.5,1) forwards;}
.s-d2 .pp-troph i{animation:ppSpark .55s ease-out .55s forwards;}
.s-d2 .pp-glow{opacity:1;}
@keyframes ppTroph{0%{opacity:0;transform:translateY(calc(-70px*var(--k))) rotate(-30deg) scale(1.6);}60%{opacity:1;transform:translateY(calc(4px*var(--k))) rotate(8deg) scale(1);}100%{opacity:1;transform:none;}}
@keyframes ppSpark{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scaleY(.4);}100%{opacity:0;transform:rotate(var(--a)) translateY(calc(-22px*var(--k))) scaleY(1);}}
@media (prefers-reduced-motion:reduce){.pp-reel{display:none;}}
/* Comparaison Ligue / Ligue+ : repliée sous les forfaits */
.pp-cmpd{max-width:820px;margin:30px auto 0;}
.pp-cmpd summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:700;color:var(--o);font-size:16px;padding:8px;}
.pp-cmpd summary::-webkit-details-marker{display:none;}
.pp-cmpd summary::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .25s ease;}
.pp-cmpd[open] summary::after{transform:translateY(2px) rotate(-135deg);}
.pp-cmpd[open] .pp-cmp{margin-top:14px;animation:ppDrop .35s ease;}
@keyframes ppDrop{from{opacity:0;transform:translateY(-8px);}to{opacity:1;transform:none;}}

/* « Là » / « Pas là » : montrés comme les boutons de l'app */
.pp-act{display:inline-block;padding:0 9px;border-radius:999px;font-weight:700;font-size:.86em;line-height:1.65;border:1.5px solid currentColor;white-space:nowrap;vertical-align:baseline;}
.pp-act-in{color:#14915A;background:rgba(20,145,90,.09);}
.pp-act-out{color:#E04848;background:rgba(224,72,72,.08);}

/* Le fondu se fait sur toute la scène : un fondu sur le terrain lui-même aplatirait le filet */
.pp-rc{opacity:0;}.s-c1 .pp-rc{opacity:1;}.s-d .pp-rc{opacity:0;}
/* Cellulaire : l'animation occupe l'écran, le texte passe en dessous */
@media (max-width:760px){.pp-stage{height:max(calc(372px*var(--k)),calc(100svh - 250px));}}

/* Mouvement de caméra continu : la scène pivote (orbite) pendant que la caméra descend vers la vue du dessus */
.s-c1 .pp-cbox{animation:ppTilt 2s cubic-bezier(.42,0,.28,1) both;}
.s-c1 .pp-rcourt{animation:ppOrbit 2s cubic-bezier(.36,0,.3,1) both;}
@keyframes ppTilt{from{transform:translateY(calc(64px*var(--k))) rotateX(66deg) scale(2.2);}to{transform:translateY(0) rotateX(0deg) scale(1);}}
@keyframes ppOrbit{from{transform:rotateZ(-96deg);}to{transform:rotateZ(0deg);}}
/* Filet synchronisé sur la caméra : le filet debout laisse place au filet vu de haut */
.s-c1 .pp-netm{animation:ppNetUp 2s linear both;}
.s-c1 .pp-net::before,.s-c1 .pp-net::after{animation:ppNetFlat 2s linear both;}
@keyframes ppNetUp{0%,55%{opacity:1;}76%,100%{opacity:0;}}
@keyframes ppNetFlat{0%,38%{opacity:0;}58%,100%{opacity:1;}}
/* Safari (iPhone) trie la scène 3D par profondeur : chaque couche a sa propre profondeur
   (sinon le terrain, le filet à plat et la carte se disputent l'avant-plan et clignotent) */
.pp-cbox,.pp-rcourt{will-change:transform;}
.pp-net::before,.pp-net::after{transform:translateZ(.6px);}
.pp-card1{transform:translateZ(2px);}.pp-card2{transform:translateZ(3px);}.pp-rf{transform:translateZ(4px) scale(1.5);}
.s-c4 .pp-rf{transform:translateZ(4px);}.s-c5 .pp-rf{transform:translateZ(4px) scale(.8);}
/* Version anglaise : extraits des captures de l'app en anglais */
.pp-stage[data-lang="en"] .pp-card1{background-image:url(/assets/demo/en/l4-matchs.jpg);}
.pp-stage[data-lang="en"] .pp-card2{background-image:url(/assets/demo/en/l5-matchs-scores.jpg);}
.pp-stage[data-lang="en"] .pp-stand{background-image:url(/assets/demo/en/l6-resultats.jpg);}

/* ═══ Tarifs v2 (grille du 3 novembre 2026) : interrupteur mensuel / annuel, Club ou Association ═══ */
.pp-trial{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;width:max-content;max-width:100%;box-sizing:border-box;margin:-8px auto 20px;padding:9px 16px;border-radius:999px;background:rgba(0,196,122,0.10);color:#00804F;font-size:15px;text-align:center;}
.pp-trial svg{flex:none;width:18px;height:18px;color:#00A86B;}
.pp-period{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin:0 0 30px;}
.pp-seg{display:inline-flex;gap:4px;padding:4px;border:1.5px solid var(--line);border-radius:999px;background:rgba(255,255,255,0.7);}
.pp-seg button{border:0;background:none;padding:8px 18px;border-radius:999px;font:700 15px "DM Sans",sans-serif;color:var(--ink2);cursor:pointer;}
.pp-seg button[aria-pressed="true"]{background:var(--grad);color:#fff;box-shadow:0 4px 12px rgba(255,80,80,0.25);}
.pp-save{font-size:14px;font-weight:700;color:var(--o);}
.pp-price2{display:flex;align-items:baseline;gap:4px;font-family:"Syne",sans-serif;font-weight:800;color:var(--o);}
.pp-price2 b{font-size:28px;letter-spacing:-0.5px;}
.pp-price2 small{font:600 15px "DM Sans",sans-serif;color:var(--ink2);}
.pp-eq{margin:2px 0 16px;font-size:13.5px;color:var(--ink2);min-height:1.4em;}
#forfaits .pp-pa{display:none;}
#forfaits.pp-yearly .pp-pa{display:inline;}
#forfaits.pp-yearly .pp-pm{display:none;}
.pp-plan .pp-btn{margin-top:auto;}
.pp-plan > ul{flex:1;}
.pp-soon{display:inline-block;font-style:normal;font-size:11.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--o);background:rgba(255,107,53,0.10);border-radius:999px;padding:2px 8px;margin-left:2px;vertical-align:1px;}
.pp-tl{margin:0 0 8px;font-size:12.5px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--ink2);}
.pp-org .pp-seg{display:flex;width:100%;box-sizing:border-box;margin-bottom:14px;}
.pp-org .pp-seg button{flex:1;padding:7px 0;font-size:14px;}
.pp-tier{display:none;margin-bottom:16px;}
.pp-org[data-tier="s"] .pp-tier[data-t="s"],.pp-org[data-tier="m"] .pp-tier[data-t="m"],.pp-org[data-tier="l"] .pp-tier[data-t="l"],.pp-org[data-tier="xl"] .pp-tier[data-t="xl"],.pp-org[data-tier="plus"] .pp-tier[data-t="plus"]{display:block;}
.pp-tmax{margin:0 0 6px;font-size:14.5px;font-weight:600;}
.pp-tq{margin:0 0 12px;font-size:14.5px;}
.pp-org > ul{margin-bottom:14px;}
.pp-inv{margin:0;font-size:13.5px;color:var(--ink2);}
.pp-inv a{color:var(--o);font-weight:700;text-decoration:none;}
.pp-tax{margin:18px 0 0;font-size:14px;color:var(--ink2);}
.pp-club-msg{max-width:620px;margin:16px auto 0;padding:12px 16px;border-radius:14px;background:#fff;border:1px solid var(--line);text-align:center;font-size:15px;}
.pp-cmp3{max-width:980px;}
.pp-cmpd:has(.pp-cmp3){max-width:980px;}
.pp-cmp3 td:not(:first-child){font-size:14.5px;}
.pp-faq p a{color:var(--o);font-weight:700;}
/* Pied de page : nom légal et liens */
.pp-foot-legal{display:flex;flex-wrap:wrap;gap:6px 14px;}
.pp-foot-legal a{color:inherit;}
/* Mise en page B : Joueur en bandeau, Ligue et Ligue+ côte à côte, Club ou Association en pleine largeur */
.pp-plans4{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
@media (max-width:760px){.pp-plans4{grid-template-columns:1fr;}}
.pp-plans4 .pp-plan{min-width:0;}
.pp-plans4 .pp-who{min-height:0;}
.pp-plans4 .pp-btn{margin-top:auto;}
.pp-club-btns{margin-top:auto;}
@media (min-width:761px){
  .pp-plans4 .pp-plan:first-child{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;column-gap:28px;align-items:center;padding:20px 24px;}
  .pp-plans4 .pp-plan:first-child h3{grid-column:1;grid-row:1;}
  .pp-plans4 .pp-plan:first-child .pp-who{grid-column:1;grid-row:2;margin:2px 0 0;}
  .pp-plans4 .pp-plan:first-child .pp-price2,.pp-plans4 .pp-plan:first-child .pp-eq{display:none;}
  .pp-plans4 .pp-plan:first-child h3 .pp-free{display:inline;}
  .pp-plans4 .pp-plan:first-child ul{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;margin:0;font-size:14.5px;}
  .pp-plans4 .pp-plan:first-child .pp-btn{grid-column:3;grid-row:1/3;width:auto;margin:0;padding:12px 22px;}
  .pp-plans4 .pp-org{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:36px;align-items:start;padding:26px 28px;}
  .pp-plans4 .pp-org > h3,.pp-plans4 .pp-org > .pp-who,.pp-plans4 .pp-org > .pp-tl,.pp-plans4 .pp-org > .pp-seg,.pp-plans4 .pp-org > .pp-tier:not(.pp-tier-btn){grid-column:1;}
  .pp-plans4 .pp-org > ul{grid-column:2;grid-row:1/5;margin:6px 0 0;}
  .pp-plans4 .pp-org > .pp-inv{grid-column:2;grid-row:5;align-self:end;}
  .pp-plans4 .pp-org > .pp-tier-btn{grid-column:2;grid-row:6;}
  .pp-plans4 .pp-org .pp-seg{max-width:380px;}
}
.pp-free{display:none;color:var(--o);}
.pp-plans4 .pp-plan h3{overflow-wrap:break-word;}
.pp-org .pp-inv{margin-bottom:14px;}
.pp-tier-btn{margin:0;}
.pp-org .pp-seg{border-radius:16px;}
.pp-org .pp-seg button{display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 2px 6px;border-radius:12px;line-height:1.15;}
.pp-org .pp-seg button b{font:800 15px "DM Sans",sans-serif;}
.pp-org .pp-seg button small{font:600 11.5px "DM Sans",sans-serif;opacity:.75;}
.pp-tmax b{color:var(--o);}
/* Section Monte-descend (tarifs v2) : fond dégradé de la marque, texte blanc */
.pp-ladder{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,#E2552B 0%,#D8394F 55%,#C9304F 100%);color:#fff;}
/* Effet verre, comme les bandeaux de manche de l’app : lustre en haut et lueur douce */
.pp-ladder::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(120% 70% at 15% -10%,rgba(255,255,255,.22),rgba(255,255,255,0) 55%),radial-gradient(80% 60% at 95% 110%,rgba(255,170,120,.18),rgba(255,170,120,0) 60%);}
.pp-ladder::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:rgba(255,255,255,.35);}
.pp-ladder .pp-kicker{color:#fff;opacity:.85;}
.pp-ladder h2{color:#fff;}
.pp-ladder .pp-ladder-lede{color:rgba(255,255,255,.88);margin:0 0 18px;font-size:17px;}
.pp-ladder .pp-dsteps li{color:#fff;}
.pp-ladder .pp-dsteps h4{color:#fff;}
.pp-ladder .pp-dsteps p{color:rgba(255,255,255,.9);}
.pp-ladder .pp-dsteps b{background:#fff;color:#FF4A55;box-shadow:0 6px 16px rgba(120,20,20,.25);}
.pp-ladder .pp-dsteps li{opacity:.78;}
.pp-ladder .pp-dsteps li.on{opacity:1;background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,.10));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 10px 26px rgba(110,20,30,.22);}
.pp-ladder .pp-dsteps li.on{border-color:rgba(255,255,255,.45);}
.pp-ladder{padding:64px 0 70px;margin-top:80px;}

/* Page v2 : Interclubs caché pour l’instant (pas en production); la section après le monte-descend reste claire */
.pp-ladder ~ .pp-ic-band{display:none;}
/* FAQ : installer Rallyz sur l'écran d'accueil */
.pp-install .pp-igrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:4px 0 14px;}
@media (max-width:640px){.pp-install .pp-igrid{grid-template-columns:1fr;}}
.pp-icol{background:rgba(255,107,53,0.05);border:1px solid var(--line);border-radius:14px;padding:14px 14px 6px;}
.pp-icol h5{margin:0 0 10px;font:800 12px "DM Sans",sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink2);}
.pp-icol ol{list-style:none;counter-reset:ist;padding:0;margin:0;}
.pp-icol li{counter-increment:ist;position:relative;padding:0 0 12px 30px;}
.pp-icol li::before{content:counter(ist);position:absolute;left:0;top:7px;width:22px;height:22px;border-radius:50%;background:var(--grad);color:#fff;font:800 12px "DM Sans",sans-serif;display:flex;align-items:center;justify-content:center;}
.pp-icol li p{margin:6px 0 0;font-size:14.5px;color:var(--ink2);}
.pp-icol li p b{color:var(--ink);}
.pp-ichip{display:inline-flex;align-items:center;gap:7px;vertical-align:middle;padding:5px 11px 5px 6px;border-radius:12px;background:#fff;border:1px solid rgba(26,18,8,.12);box-shadow:0 2px 6px rgba(26,18,8,.06);font-size:13.5px;}
.pp-ichip i{display:inline-flex;width:24px;height:24px;border-radius:7px;align-items:center;justify-content:center;color:#0A84FF;background:rgba(10,132,255,.08);}
.pp-ichip i svg{width:17px;height:17px;}
.pp-ichip b{font-weight:600;color:var(--ink);}
.pp-icol li p .pp-ichip{padding:2px 4px;margin:0 2px;box-shadow:none;}
.pp-icol li p .pp-ichip i{width:18px;height:18px;}
.pp-icol li p .pp-ichip i svg{width:14px;height:14px;}
.pp-ishot{display:block;width:100%;max-width:260px;height:auto;margin:10px 0 2px;border-radius:16px;border:1px solid rgba(26,18,8,.12);box-shadow:0 6px 18px rgba(26,18,8,.10);}

@media(max-width:420px){.pp-ra,.pp-rb{font-size:clamp(28px,8.4vw,36px);padding:0 16px;}}

/* Cellulaire : l'animation est sous la liste; les étapes restent lisibles et une légende
   sous le téléphone indique l'étape montrée. */
.pp-capnow{display:none;}
@media (max-width:860px){
  .pp-dsteps li,.pp-ladder .pp-dsteps li{opacity:1;}
  .pp-capnow{display:flex;order:2;align-items:center;justify-content:center;gap:10px;margin:-28px auto 0;min-height:30px;font:700 16px "DM Sans",sans-serif;color:var(--ink);text-align:center;}
  .pp-capnow b{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--grad);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:"Syne",sans-serif;font-size:14px;}
  .pp-ladder .pp-capnow{color:#fff;}.pp-ladder .pp-capnow b{background:#fff;color:#FF4A55;}
}
/* Forfaits : de l'air sous la section Monte-Descend; crochet de l'essai gratuit toujours à gauche du texte */
.pp-ladder ~ #forfaits{margin-top:72px;}
.pp-trial{flex-wrap:nowrap;}
.pp-trial span{min-width:0;}
@media (max-width:860px){
  .pp-ladder ~ #forfaits{margin-top:56px;}
  .pp-trial{justify-content:flex-start;text-align:left;border-radius:18px;padding:12px 16px;gap:10px;}
}
/* Carte Joueur sur iPad (761 à 1099 px) : titre et bouton en haut, liste sur deux colonnes en dessous */
@media (min-width:761px) and (max-width:1099px){
  .pp-plans4 .pp-plan:first-child{grid-template-columns:1fr auto;row-gap:0;}
  .pp-plans4 .pp-plan:first-child .pp-btn{grid-column:2;grid-row:1/3;}
  .pp-plans4 .pp-plan:first-child ul{grid-column:1/-1;grid-row:3;margin:16px 0 0;}
}
/* Ancre #forfaits : ne pas passer sous l'en-tête collant */
#forfaits{scroll-margin-top:84px;}
/* « Bientôt disponible » : boutons d'abonnement tant que le paiement n'est pas actif */
#pp-soon{position:fixed;inset:0;z-index:1000;background:rgba(26,18,8,.45);display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;}
#pp-soon .pp-soon-box{position:relative;background:#FBF8F5;border-radius:22px;padding:28px 22px 22px;width:100%;max-width:400px;box-sizing:border-box;text-align:center;box-shadow:0 18px 50px rgba(0,0,0,.2);}
#pp-soon h2{font-family:'Syne',sans-serif;font-weight:800;font-size:26px;margin:6px 0 10px;color:#1A1208;}
#pp-soon p{font-size:15.5px;line-height:1.5;color:rgba(26,18,8,.72);margin:0 0 18px;}
#pp-soon .pp-soon-ic{display:flex;justify-content:center;color:#FF6B35;}
#pp-soon .pp-btn{display:block;width:100%;box-sizing:border-box;text-align:center;margin-top:10px;}
#pp-soon .pp-soon-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;border:1px solid rgba(26,18,8,.12);background:#fff;color:#1A1208;display:flex;align-items:center;justify-content:center;cursor:pointer;}
/* « Images réelles de l'app » : sous le cellulaire animé, dans sa colonne */
.pp-devcol{display:flex;flex-direction:column;align-items:center;min-width:0;}
.pp-devcol .pp-real-note{margin:18px 0 0;text-align:center;}
@media (max-width:860px){.pp-demo .pp-devcol{order:1;}.pp-demo .pp-devcol .pp-phone{order:0;}.pp-devcol .pp-capnow{order:1;margin:12px auto 0;}.pp-devcol .pp-real-note{order:2;}}
.pp-plan .pp-incl{margin:14px 0 -2px;font-size:13px;font-weight:800;letter-spacing:.3px;color:var(--ink);}
.pp-plan ul:not(:last-of-type){flex:0 0 auto;margin-bottom:0;}
@media (min-width:761px){
  .pp-plans4 .pp-org > .pp-incl{grid-column:2;grid-row:1;margin-top:6px;}
  .pp-plans4 .pp-org > ul{grid-row:2/5;margin-top:10px;}
}
/* Fiches Ligue et Ligue+ : fonctionnalités incluses, petite liste sur deux colonnes */
.pp-plan .pp-incl2{margin:2px 0 10px;padding-top:14px;border-top:1px solid rgba(26,18,8,.1);font:800 11px "DM Sans",sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink2);}
.pp-plan ul.pp-two{display:grid;grid-template-columns:1fr 1fr;gap:7px 14px;font-size:14px;color:var(--ink2);flex:0 0 auto;margin:0 0 20px;}
.pp-plan ul.pp-two li{display:block;position:relative;padding-left:14px;line-height:1.35;}
.pp-plan ul.pp-two li::before{content:"";position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:var(--o);}
@media (max-width:480px){.pp-plan ul.pp-two{grid-template-columns:1fr;gap:6px;}}
