/* ------------------------------------------------------------------
   Parole d'entrepreneur, feuille de style du site.
   Le design vit ici, les textes vivent dans Elementor.
   Fichier gere par le mu-plugin pde-assets, ne pas editer depuis wp-admin.

   Ordre important : d'abord on neutralise Elementor, ensuite viennent les
   regles de la maquette, toutes prefixees par .pde pour repasser devant.
   ------------------------------------------------------------------ */

.pde .elementor-widget-container{margin:0;padding:0}
.pde .elementor-widget:not(:last-child){margin-block-end:0}
.pde .elementor-element{--widgets-spacing:0px 0px}
.pde .e-con,.pde .e-con-inner{padding:0;margin:0;
 --padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;
 --margin-top:0px;--margin-bottom:0px;--gap:0px;--row-gap:0px;--column-gap:0px;
 --width:100%;max-width:none;display:block}
.pde h1,.pde h2,.pde h3,.pde h4,.pde p,.pde ul,.pde ol,.pde figure{margin:0;padding:0}
.pde ul{list-style:none}
.pde img{max-width:100%;height:auto}
body.pde{overflow-x:hidden}

:root{
  --serif:"Instrument Serif",Georgia,serif;
  --sans:"Gabarito",Helvetica,Arial,sans-serif;
  --bleu:#3D6FD6;
  --bleu-p:#EAF0FC;
  --bleu-f:#24448A;
  --ambre:#F0A32C;
  --ambre-f:#D4890F;
  --ambre-p:#FBF0DB;
  --ambre-t:#7A520F;
  --encre:#16181C;
  --encre-2:#4E535D;
  --papier:#F7F7F5;
  --gris:#8C919B;
  --filet:#DCDCD7;
  --max:1180px;
  --marge:190px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body.pde{background:var(--papier);color:var(--encre);font-family:var(--sans);font-size:18px;font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased}
.pde .wrap{max-width:var(--max);margin:0 auto;padding:0 34px}
.pde h1, .pde h2{font-family:var(--serif);font-weight:400;line-height:.98;letter-spacing:-0.015em;text-wrap:balance}
.pde h1{font-size:clamp(32px,3.9vw,52px)}
.pde h2{font-size:clamp(28px,3.4vw,46px)}
.pde h3{font-family:var(--sans);font-weight:700;font-size:19px;line-height:1.25;letter-spacing:-0.01em}
.pde p{color:var(--encre-2)}
.pde strong{color:var(--encre);font-weight:600}
.pde em.it{font-family:var(--serif);font-style:italic;font-weight:400}
.pde .num{font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gris)}
.pde section{padding:96px 0}
.pde /* feuille avec marge annotable */
.sheet{display:grid;grid-template-columns:var(--marge) 1fr;gap:52px;align-items:start}
.pde .marg{position:sticky;top:110px}
.pde .note{font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.35;color:var(--bleu);
 border-top:2px solid var(--bleu);padding-top:12px}
.pde .note + .note{margin-top:26px}
.pde /* header */
header{position:sticky;top:0;z-index:30;background:rgba(247,247,245,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--filet)}
.pde .hd{max-width:var(--max);margin:0 auto;padding:15px 34px;display:flex;align-items:center;gap:24px}
.pde .hd img{height:40px;width:auto;display:block}
.pde .hd .sp{flex:1}
.pde .hd .z{display:flex;align-items:center;gap:11px;padding-right:20px;margin-right:2px;
 border-right:1px solid var(--filet)}
.pde .hd .z img{height:34px;width:auto;display:block;flex:0 0 auto}
.pde .hd .z span{font-size:13px;font-weight:600;line-height:1.25;color:var(--encre-2);letter-spacing:-.005em;white-space:nowrap}
.pde .btn{display:inline-block;font-family:var(--sans);font-weight:600;font-size:16px;
 background:var(--ambre);color:var(--encre);text-decoration:none;padding:13px 24px;border:0;
 border-radius:8px;cursor:pointer;transition:background .15s,transform .1s}
.pde .btn:hover{background:var(--ambre-f)}
.pde .btn:active{transform:translateY(1px)}
.pde .btn.lg{font-size:19px;padding:18px 34px}
.pde .btn.b{background:var(--ambre);color:var(--encre)}
.pde .btn.b:hover{background:var(--ambre-f)}
.pde .btn.w{background:#fff;color:var(--encre)}
.pde .btn.w:hover{background:var(--ambre);color:var(--encre)}
.pde /* B1 hero : aplat bleu massif */
.hero{color:#fff;padding:62px 0 58px;position:relative;
 background:linear-gradient(180deg,#2B53AF 0%,#3A6AD1 34%,#4E79DB 66%,#6E93E6 100%)}
.pde .hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;pointer-events:none;
 background:linear-gradient(180deg,rgba(110,147,230,0) 0%,rgba(234,240,252,.55) 100%)}
.pde .hero .wrap{position:relative;z-index:1}
.pde .hero .num{color:#FFFFFF;font-size:16px;font-weight:700;letter-spacing:.13em;margin-bottom:4px}
.pde .hero h1{color:#fff;margin:20px 0 0}
.pde .hero h1 em{font-style:italic;color:#BFD8FF}
.pde .hero-g{display:grid;grid-template-columns:1fr 428px;column-gap:56px;row-gap:0;
 margin-top:34px;align-items:start}
.pde .hero-intro{grid-column:1;grid-row:1}
.pde .hero-rest{grid-column:1;grid-row:2}
.pde .lead-form{grid-column:2;grid-row:1 / span 2}
.pde .hero-intro .lead{margin-top:24px}
.pde .hero-rest .lead{margin-top:0}
.pde .hero-rest{margin-top:15px}
.pde .hero p.lead{color:#DCE7FB;font-size:19px;max-width:50ch;line-height:1.4}
.pde .hero p.lead strong{color:#fff;font-weight:600}
.pde /* preuves du hero */
.proof{list-style:none;margin:28px 0 0;display:grid;gap:13px}
.pde .proof li{position:relative;padding-left:30px;font-size:17.5px;font-weight:500;color:#FFFFFF;line-height:1.4}
.pde .proof li:before{content:"";position:absolute;left:2px;top:7px;width:11px;height:6px;
 border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.pde .jump{display:inline-flex;align-items:center;gap:11px;margin-top:26px;padding:12px 20px;
 border:1.5px solid rgba(255,255,255,.48);border-radius:8px;color:#fff;text-decoration:none;
 font-size:15.5px;font-weight:600;letter-spacing:-.01em;transition:background .15s,color .15s,border-color .15s}
.pde .jump:hover{background:#fff;color:var(--bleu-f);border-color:#fff}
.pde .jump svg{width:15px;height:15px;flex:0 0 auto}
.pde /* signature sous le pitch */
.byline{display:flex;gap:16px;align-items:center;margin-top:32px;padding:16px 20px;
 background:rgba(20,32,68,.26);border:1px solid rgba(255,255,255,.20);border-radius:8px;
 backdrop-filter:blur(2px)}
.pde .byline img{width:64px;height:64px;border-radius:50%;flex:0 0 auto;
 object-fit:cover;object-position:54% 34%;border:2px solid rgba(255,255,255,.55)}
.pde .byline b{display:block;font-size:16px;font-weight:600;color:#fff;margin-bottom:3px}
.pde .byline span{display:block;font-size:14.5px;line-height:1.45;color:#DCE7FB}
.pde /* carte formulaire en haut a droite */
.lead-form{background:#fff;border-radius:10px;padding:28px;box-shadow:0 14px 38px rgba(10,25,60,.16);
 position:sticky;top:92px}
.pde .lf-t{font-family:var(--sans);font-size:25px;font-weight:700;letter-spacing:-.025em;
 line-height:1.15;color:var(--encre)}
.pde .lf-re{list-style:none;display:flex;flex-wrap:wrap;gap:9px 18px;margin-top:15px;padding-bottom:18px;
 border-bottom:1px solid var(--filet)}
.pde .lf-re li{position:relative;padding-left:21px;font-size:13.5px;font-weight:500;color:var(--encre-2)}
.pde .lf-re li:before{content:"";position:absolute;left:1px;top:6px;width:9px;height:5px;
 border-left:2px solid var(--ambre);border-bottom:2px solid var(--ambre);transform:rotate(-45deg)}
.pde .lf-badge{display:inline-flex;align-items:center;gap:9px;font-size:13.5px;font-weight:600;
 letter-spacing:0;text-transform:none;color:var(--ambre-t);background:var(--ambre-p);
 padding:9px 14px 9px 12px;border-radius:6px;border:1px solid #EFD8A9;margin-bottom:16px}
.pde .lf-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ambre);
 flex:0 0 auto;box-shadow:0 0 0 3px rgba(240,163,44,.22)}
.pde .lead-form form{margin-top:20px}
.pde .lead-form .f{margin-bottom:14px}
.pde .lead-form label{position:absolute;width:1px;height:1px;padding:0;margin:0;overflow:hidden;
 clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pde .lead-form input, .pde .lead-form select{padding:13px 13px;font-size:16px}
.pde .lead-form .btn{width:100%;margin-top:8px;font-size:17px;padding:15px 24px}
.pde .lf-note{font-size:13.5px;line-height:1.6;color:var(--gris);margin-top:14px;text-align:center}
.pde .lf-note b{color:var(--encre-2);font-weight:600}
.pde /* B2 chiffres geants */
/* B2 : bandeau chiffres sur fond sombre, .pde chiffre libre puis libelle au filet */
.nums{background:var(--encre)}
.pde .nums-g{display:grid;grid-template-columns:repeat(3,330px);justify-content:start;
 column-gap:0;padding-top:44px;padding-bottom:44px}
.pde .nums-g div{padding:2px 40px;border-left:1px solid #2A2E37}
.pde .nums-g div:first-child{border-left:0;padding-left:0}
.pde .nums .n{font-family:var(--serif);font-size:40px;line-height:1;color:#8FB4F5;letter-spacing:-.01em}
.pde .nums .t{font-size:14.5px;line-height:1.5;color:#9AA0AC;margin:10px 0 0}
.pde /* B3 : diptyque bord a bord, .pde clair a gauche, .pde sombre a droite */
.dip{display:grid;grid-template-columns:1fr 1fr}
.pde .dip .dip-col{padding:clamp(46px,5vw,84px) clamp(24px,3.4vw,58px)}
.pde /* on aligne le texte du diptyque sur la colonne de la page, .pde sinon il colle aux bords */
.dip .l{padding-left:max(clamp(24px,3.4vw,58px), calc((100vw - var(--max)) / 2 + 34px))}
.pde .dip .r{padding-right:max(clamp(24px,3.4vw,58px), calc((100vw - var(--max)) / 2 + 34px))}
.pde .dip .l .inner{padding-right:clamp(16px,2.4vw,40px)}
.pde .dip .inner{max-width:44ch}
.pde .dip .l{background:#fff}
.pde .dip .r{background:var(--encre);color:#fff}
.pde .dip .r h2{color:#fff}
.pde .dip .kick{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.2em;
 text-transform:uppercase;color:var(--bleu);margin-bottom:16px}
.pde .dip .r .kick{color:#FFFFFF;font-size:18px;font-weight:700;letter-spacing:.14em;margin-bottom:18px}
.pde .dip h2{font-size:clamp(28px,3.2vw,42px)}
.pde .dip .is{counter-reset:c;margin-top:30px}
.pde .dip .is li{list-style:none;position:relative;padding:16px 0 16px 40px;border-top:1px solid var(--filet);
 font-size:17.5px;color:var(--encre);line-height:1.45}
.pde .dip .is li:first-child{border-top:0}
.pde .dip .is li:before{content:counter(c,decimal-leading-zero);counter-increment:c;position:absolute;left:0;top:20px;
 font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.12em;color:var(--bleu)}
.pde .dip .is li:first-child:before{top:4px}
.pde .dip .isnt-lead{margin-top:22px;font-size:18px;font-weight:600;color:#fff;letter-spacing:-.01em}
.pde .dip .isnt{margin-top:16px;background:none;border:0;padding:0}
.pde .dip .isnt li{list-style:none;padding:16px 0;border-top:1px solid #2A2D34;font-size:17px;
 color:#A9AEB8;line-height:1.45}
.pde .dip .isnt li:first-child{border-top:0}
.pde /* B3 oui/non */
.is{margin-top:8px}
.pde .is li{list-style:none;font-size:18px;color:var(--encre);padding:18px 0;border-bottom:1px solid var(--filet);line-height:1.45}
.pde .isnt{margin-top:44px;background:#fff;border:1px solid var(--filet);border-radius:4px;padding:30px}
.pde .isnt h3{color:var(--gris);margin-bottom:16px}
.pde .isnt li{list-style:none;font-size:17px;color:var(--gris);padding:11px 0;border-top:1px solid var(--filet);line-height:1.4}
.pde .isnt li:first-of-type{border-top:0}
.pde /* B4 deroule facon carnet */
.tl{margin-top:10px}
.pde .tl-row{display:grid;grid-template-columns:96px 1fr;gap:28px;padding:24px 0;border-bottom:1px solid var(--filet)}
.pde .tl-min{font-family:var(--serif);font-size:21px;line-height:1.1;color:var(--bleu)}
.pde .bar{height:8px;background:var(--bleu);border-radius:99px;margin-bottom:15px}
.pde .bar.p{background:var(--filet)}
.pde .tl-row p{font-size:17px;max-width:64ch}
.pde .legend{font-size:13px;color:var(--gris);margin-top:18px;font-style:normal}
.pde .epf-quiz-wrap{background:var(--papier);padding:88px 0;border-bottom:1px solid var(--filet)}
@media (max-width:980px){
.pde .epf-quiz-wrap{padding:56px 20px}
}
.pde /* B5 pour qui */
.pick{background:#fff;border-top:1px solid var(--filet);border-bottom:1px solid var(--filet)}
.pde .pick-g{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.pde .crit{list-style:none;margin-top:26px}
.pde .crit li{padding:20px 0;border-top:1px solid var(--filet);font-size:17px;color:var(--encre-2);line-height:1.45}
.pde .crit li b{display:block;font-family:var(--serif);font-weight:400;font-size:23px;line-height:1.15;color:var(--encre);margin-bottom:6px}
.pde .geo{background:var(--bleu-p);border-radius:8px;padding:34px 36px}
.pde .geo .h{font-family:var(--serif);font-size:29px;line-height:1.08;color:var(--bleu-f);margin-bottom:26px}
.pde .geo-item{padding-top:18px;border-top:1px solid #CFDCF5}
.pde .geo-item:first-of-type{padding-top:0;border-top:0}
.pde .geo-item + .geo-item{margin-top:18px}
.pde .geo-item h4{font-family:var(--sans);font-size:15px;font-weight:700;letter-spacing:-.005em;
 color:var(--encre);margin:0 0 7px}
.pde .geo p{font-size:16.5px;line-height:1.55;color:#3A4762}
.pde .geo .geo-zone{margin-top:24px;padding-top:18px;border-top:1px solid #CFDCF5;
 font-size:15px;line-height:1.5;color:var(--bleu-f);font-weight:600}
.pde /* B6 applis */
.apps{margin-top:8px}
.pde .app{display:grid;grid-template-columns:64px 1fr 1.1fr;gap:30px;padding:24px 0;border-bottom:1px solid var(--filet);align-items:baseline}
.pde .app .ix{font-family:var(--serif);font-size:22px;color:var(--bleu);line-height:1}
.pde .app p{font-size:17px}
.pde /* B7 formulaire */
.form-sec{background:var(--bleu);color:#fff}
.pde .form-sec h2{color:#fff}
.pde .form-sec .num{color:#C3D5F6}
.pde .fg{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}
.pde form{background:#fff;border-radius:6px;padding:36px;color:var(--encre)}
.pde .f{margin-bottom:18px}
.pde .f2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pde label{display:block;font-size:13px;font-weight:600;color:var(--gris);margin-bottom:7px}
.pde input, .pde select, .pde textarea{width:100%;font-family:var(--sans);font-size:17px;color:var(--encre);padding:13px 14px;border:1px solid #D3D6DC;border-radius:4px;background:#fff}
.pde input:focus, .pde select:focus, .pde textarea:focus{border-color:var(--bleu)}
.pde textarea{min-height:100px;resize:vertical}
.pde .check{display:flex;gap:11px;align-items:flex-start;font-size:15px;font-weight:400;color:var(--encre-2);margin:14px 0;line-height:1.45}
.pde .check input{width:auto;margin-top:4px}
.pde .fnote{font-size:14px;line-height:1.6;color:var(--gris);margin-top:18px}
.pde /* B8 faq */
.faq{margin-top:8px}
.pde .q{padding:24px 0;border-bottom:1px solid var(--filet)}
.pde .q h3{margin-bottom:8px}
.pde .q p{font-size:17px;max-width:70ch}
.pde /* B9 : la cloture et le pied ne font plus qu'un bloc */
.end{background:var(--encre);color:#fff;padding:96px 0 34px;display:block}
.pde .end-g{display:grid;grid-template-columns:1fr 320px;gap:72px;align-items:start;
 padding-bottom:44px;border-bottom:1px solid #2A2D34}
.pde .end h2{color:#fff}
.pde .end h2 em{font-style:italic;color:#8FB4F5}
.pde .end p{color:#A9AEB8;font-size:20px;max-width:44ch;margin-top:22px}
.pde .end-txt .btn{margin-top:34px}
.pde .end-side{border-left:1px solid #2A2D34;padding-left:38px;display:grid;gap:16px;justify-items:start}
.pde .side-t{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#7C8494}
.pde .side-l{display:inline-flex;align-items:center;gap:11px;color:#fff;text-decoration:none;
 font-size:18px;font-weight:500;letter-spacing:-.01em;transition:color .15s}
.pde .side-l:hover{color:var(--ambre)}
.pde .side-l svg{width:18px;height:18px;flex:0 0 auto;color:var(--ambre)}
.pde .side-zone{display:flex;align-items:center;gap:12px;margin-top:10px;padding-top:18px;
 border-top:1px solid #2A2D34;width:100%}
.pde .side-zone img{height:38px;width:auto;display:block;flex:0 0 auto;background:#fff;border-radius:5px;padding:3px 4px}
.pde .side-zone span{font-size:15px;line-height:1.35;color:#A9AEB8}
.pde .side-ml{font-size:15px;color:#7C8494;text-decoration:none;border-bottom:1px solid #3A3F49;padding-bottom:1px}
.pde .side-ml:hover{color:#fff;border-bottom-color:#7C8494}
.pde .end-c{margin-top:26px;font-size:14px;color:#6B707A;text-align:right}
.pde .end-c a{color:#A9AEB8;text-decoration:none}
.pde .end-c a:hover{color:#fff}
.pde /* bandeau defilant, .pde palette du Carnet, .pde fondu sur les bords */
.ticker{background:var(--bleu-p);overflow:hidden;
 -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);
 mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.pde .tk-track{display:flex;align-items:center;white-space:nowrap;width:max-content;padding:14px 0;
 animation:tk 52s linear infinite}
.pde .ticker:hover .tk-track{animation-play-state:paused}
.pde .ticker span{font-size:13px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;
 color:var(--bleu-f);padding:0 24px}
.pde .ticker i{flex:0 0 auto;width:4px;height:4px;border-radius:50%;background:var(--bleu);opacity:.45}
@media (prefers-reduced-motion:reduce){
.pde .tk-track{animation:none}
}
.pde /* numeros discrets devant les lignes de B3 */
.is{counter-reset:c}
.pde .is li{padding-left:40px;position:relative}
.pde .is li:before{content:counter(c,decimal-leading-zero);counter-increment:c;position:absolute;left:0;top:22px;
 font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.12em;color:var(--bleu)}
.pde /* ce que ce n'est pas : bande sombre pleine largeur */
.notthis{background:var(--encre);color:#fff;padding:72px 0}
.pde .notthis h2{color:#fff;font-size:clamp(26px,3.1vw,40px)}
.pde .notthis .num{color:#7C8494}
.pde .notthis ul{list-style:none;margin-top:26px;max-width:70ch}
.pde .notthis li{font-size:18px;color:#A9AEB8;padding:16px 0;border-top:1px solid #2A2D34;line-height:1.45}
.pde .notthis li:first-child{border-top:0}
.pde /* barre d'action fixe, .pde uniquement sur petit ecran et une fois le formulaire depasse */
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;
 padding:11px 16px calc(11px + env(safe-area-inset-bottom,0px));
 background:rgba(255,255,255,.97);backdrop-filter:blur(10px);
 border-top:1px solid var(--filet);box-shadow:0 -6px 22px rgba(14,30,70,.08)}
.pde .mbar .btn{display:block;width:100%;text-align:center;font-size:17px;padding:15px 18px}
@media (max-width:980px){
.pde .mbar.on{display:block}
}
@media (max-width:600px){
.pde .contact{gap:12px 22px}
.pde .contact a{font-size:16.5px}
.pde .hd{gap:12px;padding:11px 16px}
.pde .hd img{height:31px}
.pde .hd .z{display:none}
.pde .btn{font-size:14px;padding:11px 15px;white-space:nowrap}
}
.pde a:focus-visible, .pde input:focus-visible, .pde select:focus-visible, .pde textarea:focus-visible{outline:2px solid var(--bleu);outline-offset:3px}
.pde button:focus-visible, .pde .btn:focus-visible{outline:3px solid var(--ambre-f);outline-offset:3px}
@media (max-width:980px){
body.pde{font-size:17px}
.pde section{padding:64px 0}
.pde .end{padding:60px 0 26px}
.pde .wrap, .pde .hd{padding-left:20px;padding-right:20px}
.pde .sheet{grid-template-columns:1fr;gap:26px}
.pde .marg{position:static}
.pde .note{font-size:19px}
.pde .hero-g, .pde .pick-g, .pde .fg, .pde .tl-row, .pde .app{grid-template-columns:1fr;gap:26px}
.pde .hero-intro{grid-column:1;grid-row:1}
.pde .lead-form{grid-column:1;grid-row:2}
.pde .hero-rest{grid-column:1;grid-row:3;margin-top:0}
.pde .hero-g{row-gap:26px}
.pde .end-g{grid-template-columns:1fr;gap:36px;padding-bottom:30px}
.pde .end-side{border-left:0;border-top:1px solid #2A2D34;padding-left:0;padding-top:28px}
.pde .end p{font-size:18px}
.pde .end-c{text-align:left}
.pde .dip{grid-template-columns:1fr}
.pde .dip .inner{max-width:none}
.pde .dip .l, .pde .dip .r{padding-left:20px;padding-right:20px}
.pde .dip .l .inner{padding-right:0}
.pde .lead-form{position:static;padding:22px}
.pde .byline{margin-top:24px}
.pde .hero{padding:60px 0 56px}
.pde .hero p{font-size:19px}
.pde .nums-g{grid-template-columns:1fr;justify-content:stretch;padding-top:30px;padding-bottom:30px;row-gap:22px}
.pde .nums-g div{padding:0;border-left:0}
.pde .nums .n{font-size:34px}
.pde .f2{grid-template-columns:1fr}
.pde .hd .z{border-right:0;padding-right:0}
.pde .hd .z span{display:none}
}

/* ------------------------------------------------------------------
   Elementor : ce que la maquette ne pouvait pas prevoir
   ------------------------------------------------------------------ */

/* Les conteneurs Elementor sont en flex, la neutralisation les remet en block.
   Il faut ensuite rendre leur mode d'affichage aux blocs qui en ont un.
   ATTENTION a l'ordre : un meme conteneur peut porter deux classes, par exemple
   "wrap hero-g". La derniere regle ecrite gagne, donc les grilles viennent en
   dernier, sinon .wrap remettrait .hero-g en block. */
.pde .hd,.pde .contact,.pde .act,.pde .byline,.pde .side-zone,.pde .lf-re{display:flex}
.pde .hero-g,.pde .dip,.pde .nums-g,.pde .pick-g,.pde .end-g,
.pde .tl-row,.pde .app,.pde .proof,.pde .end-side{display:grid}

/* le titre passe par le widget Heading, qui a sa propre classe */
.pde .elementor-heading-title{font-family:var(--serif);font-weight:400;
 line-height:.98;letter-spacing:-.015em;color:inherit}
.pde h1.elementor-heading-title{font-size:clamp(32px,3.9vw,52px)}
.pde h2.elementor-heading-title{font-size:clamp(28px,3.4vw,46px)}
.pde h3.elementor-heading-title{font-family:var(--sans);font-weight:700;font-size:19px;
 line-height:1.25;letter-spacing:-.01em}
.pde .hero h1.elementor-heading-title{color:#fff}
.pde .hero h1 em{font-style:italic;color:#BFD8FF}
.pde .dip h2.elementor-heading-title{font-size:clamp(28px,3.2vw,42px)}
.pde .dip .r h2.elementor-heading-title{color:#fff}
.pde .end h2.elementor-heading-title{color:#fff}
.pde .end h2 em{font-style:italic;color:#8FB4F5}
.pde .app h3.elementor-heading-title{font-size:19px}
.pde .q h3.elementor-heading-title,.pde .tl-row h3.elementor-heading-title{margin-bottom:8px}

/* le formulaire Elementor Pro reprend l'habillage de la carte */
.pde .lead-form-el .elementor-form-fields-wrapper{margin:0;display:block}
.pde .lead-form-el .elementor-field-group{width:100%;margin:0 0 14px;padding:0}
.pde .lead-form-el input:not([type=submit]),
.pde .lead-form-el select,.pde .lead-form-el textarea{
 width:100%;font-family:var(--sans);font-size:16px;color:var(--encre);
 padding:13px;border:1px solid #D3D6DC;border-radius:4px;background:#fff;
 min-height:0;line-height:1.4;box-shadow:none}
.pde .lead-form-el input::placeholder,.pde .lead-form-el textarea::placeholder{color:#AAB2BE;opacity:1}
.pde .lead-form-el input:focus,.pde .lead-form-el select:focus{border-color:var(--bleu);outline:none}
.pde .lead-form-el .elementor-field-type-submit{margin:4px 0 0}
.pde .lead-form-el button[type=submit],.pde .lead-form-el .elementor-button{
 width:100%;justify-content:center;background:var(--ambre);color:var(--encre);
 border:0;border-radius:8px;font-family:var(--sans);font-weight:600;font-size:17px;
 padding:15px 24px;letter-spacing:-.01em;transition:background .15s}
.pde .lead-form-el button[type=submit]:hover,.pde .lead-form-el .elementor-button:hover{
 background:var(--ambre-f);color:var(--encre)}
.pde .lead-form-el .elementor-message{font-size:14px;margin-top:10px}

/* Le style des sections etait ecrit sur la balise <section> dans la maquette.
   Elementor produit des <div>, donc ces marges ne s'appliquaient jamais et les
   blocs se collaient au haut de leur section. On les rend a la classe .sec. */
.pde .sec{padding:96px 0}
.pde .pick{padding:96px 0}
@media (max-width:980px){.pde .sec,.pde .pick{padding:64px 0}}

/* la note en marge respire par rapport au haut de la colonne */
.pde .marg .note{border-top:2px solid var(--bleu);padding-top:12px;margin-top:10px}

/* Espacements entre widgets.
   Dans la maquette, plusieurs respirations etaient portees par des styles en
   ligne sur les balises. En passant en widgets Elementor ces styles ont
   disparu : on les rend ici, en s'appuyant sur le fait que les widgets sont
   freres a l'interieur de leur conteneur. */
.pde .sheet-body > .elementor-widget-heading + .elementor-widget-text-editor,
.pde .pick-l > .elementor-widget-heading + .elementor-widget-text-editor,
.pde .end-txt > .elementor-widget-heading + .elementor-widget-text-editor{margin-top:22px}
.pde .sheet-body .tl{margin-top:34px}
.pde .sheet-body .apps{margin-top:30px}
.pde .sheet-body .faq{margin-top:32px}
.pde .pick-l > .elementor-widget-text-editor + .elementor-widget-text-editor{margin-top:26px}
.pde .hero-intro > .elementor-widget-heading{margin-top:0}

/* dans une ligne du deroule et dans la FAQ, le titre est deja espace par sa
   propre marge basse : on ne rajoute rien */
.pde .tl-body > .elementor-widget-heading + .elementor-widget-text-editor,
.pde .q > .elementor-widget-heading + .elementor-widget-text-editor,
.pde .app > .elementor-widget-heading + .elementor-widget-text-editor{margin-top:0}

/* le bouton natif de la cloture */
.pde .btn-end{margin-top:34px}
.pde .btn-end .elementor-button{background:var(--ambre);color:var(--encre);border-radius:8px;
 font-family:var(--sans);font-weight:600;font-size:19px;padding:18px 34px}
.pde .btn-end .elementor-button:hover{background:var(--ambre-f);color:var(--encre)}

/* ------------------------------------------------------------------
   Pages annexes : mentions legales et merci
   ------------------------------------------------------------------ */
.pde .ml-hd{background:#fff;border-bottom:1px solid var(--filet)}
.pde .ml-hd-in{max-width:820px;margin-inline:auto;padding:16px 28px;display:flex;align-items:center;gap:20px}
.pde .ml-hd img{height:38px;width:auto;display:block}
.pde .ml-hd .sp{flex:1}
.pde .ml-back{font-size:15px;font-weight:600;color:var(--encre-2);text-decoration:none}
.pde .ml-back:hover{color:var(--bleu)}
.pde .ml-main{background:var(--papier);padding:60px 0 76px}
.pde .ml-wrap{max-width:820px}
.pde .ml-h1 .elementor-heading-title{font-size:clamp(34px,5vw,52px);line-height:1.05}
.pde .ml-maj{font-size:14px;color:var(--gris);margin-top:12px}
.pde .ml-wrap section{margin-top:36px;padding-top:26px;border-top:1px solid var(--filet)}
.pde .ml-wrap h2{font-family:var(--sans);font-size:17px;font-weight:700;margin-bottom:10px;letter-spacing:-.005em}
.pde .ml-wrap p{color:var(--encre-2);font-size:17px;line-height:1.6}
.pde .ml-wrap p + p{margin-top:10px}
.pde .ml-wrap dt{font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--gris);margin-top:12px}
.pde .ml-wrap dd{color:var(--encre);margin-top:2px}
.pde .ml-wrap a{color:var(--bleu-f)}
.pde .ml-wrap a:hover{color:var(--bleu)}
.pde .ml-btn{margin-top:40px}
.pde .ml-btn .elementor-button{background:var(--ambre);color:var(--encre);border-radius:8px;
 font-family:var(--sans);font-weight:600;font-size:16px;padding:13px 24px}
.pde .ml-btn .elementor-button:hover{background:var(--ambre-f);color:var(--encre)}
.pde .ml-foot{background:var(--papier);border-top:1px solid var(--filet);padding:24px 0 40px}
.pde .ml-foot p{font-size:14px;color:var(--gris)}

.pde .merci{background:linear-gradient(180deg,#2B53AF 0%,#3A6AD1 40%,#4E79DB 100%);
 color:#fff;padding:84px 0 96px}
.pde .merci-wrap{max-width:820px}
.pde .merci .num{font-size:16px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#fff}
.pde .merci-h1 .elementor-heading-title{color:#fff;font-size:clamp(32px,4.2vw,54px);line-height:1.04;margin-top:18px}
.pde .merci-h1 em{font-style:italic;color:#BFD8FF}
.pde .merci .lead{color:#DCE7FB;font-size:19px;line-height:1.5;max-width:58ch;margin-top:22px}
.pde .merci-box{margin-top:34px;background:rgba(20,32,68,.26);border:1px solid rgba(255,255,255,.2);
 border-radius:10px;padding:26px 28px;max-width:60ch}
.pde .merci-box h4{font-family:var(--sans);font-size:16px;font-weight:700;color:#fff;margin-bottom:10px}
.pde .merci-box p{color:#DCE7FB;font-size:17px;line-height:1.55}
.pde .merci-box p + p{margin-top:14px}
.pde .merci .ml-btn .elementor-button{background:#fff;color:var(--encre)}
.pde .merci .ml-btn .elementor-button:hover{background:var(--ambre);color:var(--encre)}
@media (max-width:600px){
  .pde .ml-hd-in{padding:13px 20px}
  .pde .ml-main{padding:40px 0 56px}
  .pde .merci{padding:56px 0 64px}
}
