/* ============================================================
   Zento Loans — style chaleureux « main levée » (inspiré Première Moisson)
   Papier crème · encre brune · ambre · rose · traits dessinés
   Mêmes classes que la version précédente : seul le style change.
   ============================================================ */
:root{
  --encre:#2D1810;         /* encre brune (texte titres, traits) */
  --noir:#2D1810;
  --texte:#4D3520;         /* texte courant */
  --texte-doux:#6B4423;
  --ambre:#D97706;
  --ambre-fonce:#B45309;
  --jaune:#FCD34D;
  --jaune-pale:#FEF3C7;
  --rose:#F43F5E;
  --rose-fonce:#E11D48;
  --lime:#D9F99D;
  --vert-pale:#ECFCCB;
  --vert-olive:#4D7C0F;
  --creme:#FFFDF7;
  --ivoire:#FFF9ED;
  --ivoire-fonce:#FFF3DB;
  --bordure:#2D1810;
  --blanc:#FFFDF7;
  /* anciens noms conservés pour compatibilité */
  --vert:#D97706;
  --vert-fonce:#B45309;
  --vert-pale:#FEF3C7;
  --bleu:#D97706;
  --bleu-pale:#FEF3C7;
  /* bordures « dessinées » */
  --r-sketch:20px 120px 20px 120px/120px 20px 120px 20px;
  --r-sketch-sm:15px 255px 15px 225px/225px 15px 255px 15px;
  --r-sketch-2:15px 225px 15px 225px/225px 15px 225px 15px;
  --r-input:8px 24px 8px 24px/24px 8px 24px 8px;
  --ombre:5px 5px 0 #2D1810;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Kalam',cursive;font-size:18.5px;line-height:1.7;color:var(--texte);
  background-color:var(--creme);
  background-image:
    radial-gradient(circle at 18% 22%,rgba(217,119,6,.045) 0,transparent 45%),
    radial-gradient(circle at 82% 68%,rgba(180,83,9,.04) 0,transparent 45%),
    radial-gradient(circle at 50% 50%,rgba(101,163,13,.025) 0,transparent 70%);
  background-attachment:fixed;
}
h1,h2{font-family:'Permanent Marker',cursive;color:var(--encre);line-height:1.18;font-weight:400;letter-spacing:.01em}
h3,h4{font-family:'Kalam',cursive;color:var(--encre);line-height:1.25;font-weight:700}
img{max-width:100%;display:block}
a{color:var(--ambre-fonce);text-underline-offset:3px}
a:hover{color:var(--rose-fonce)}
strong{color:var(--encre)}
::selection{background:var(--jaune);color:var(--encre)}
.contenu{max-width:1180px;margin:0 auto;padding:0 22px}

/* ===== Barre-info ===== */
.barre-info{background:var(--encre);color:var(--jaune);font-size:15.5px;font-weight:700}
.barre-info .contenu{display:flex;align-items:center;justify-content:center;gap:18px;padding:8px 22px;flex-wrap:nowrap;white-space:nowrap;overflow:hidden}
.barre-texte::before{content:"\2665";color:var(--rose);margin-right:8px}
.barre-info a{color:var(--creme);text-decoration:none;font-weight:700}
.barre-info a:hover{color:var(--jaune)}
.barre-cta{display:none;background:var(--rose);color:#fff !important;padding:3px 16px;border:2px solid var(--creme);border-radius:var(--r-sketch-sm);font-size:14px;font-family:'Permanent Marker',cursive;font-weight:400 !important}
@media(max-width:920px){.barre-cta{display:inline-block}}
@media(max-width:480px){.barre-texte{display:none}}

/* ===== Nav ===== */
.nav-fixe{position:sticky;top:0;z-index:60;background:#FFFDF7;border-bottom:3px solid var(--encre)}
.nav{display:flex;align-items:center;gap:22px;padding:10px 22px;max-width:1260px;margin:0 auto}
.logo{display:flex;align-items:center;text-decoration:none;gap:12px}
.logo img{height:64px;width:auto;object-fit:contain}
.logo-repli{display:flex;align-items:center;gap:12px;text-decoration:none}
.logo-repli svg,.logo-repli img{width:52px;height:52px;transition:transform .3s}
.logo:hover .logo-repli svg,.logo:hover .logo-repli img{transform:rotate(-8deg) scale(1.05)}
.logo-nom{font-family:'Permanent Marker',cursive;color:var(--encre);font-size:23px;font-weight:400;line-height:1;letter-spacing:.02em}
.logo-nom small{display:block;font-family:'Kalam',cursive;font-size:13px;font-weight:700;color:var(--ambre-fonce);letter-spacing:.06em;margin-top:4px;text-transform:none}
.nav-liens{display:flex;align-items:center;gap:2px;list-style:none;margin-left:auto}
.nav-liens>li{position:static}
.nav-liens>li>a{display:block;padding:8px 14px;color:var(--texte);text-decoration:none;font-weight:700;font-size:17px;border-radius:10px;transition:background-color .2s,color .2s}
.nav-liens>li>a:hover{color:var(--ambre-fonce);background:var(--jaune-pale)}
.nav-liens>li>a[aria-current="page"]{color:var(--rose-fonce)}
.a-menu{position:static}
.fleche{display:inline-block;margin-left:4px;transition:transform .2s;font-size:12px}
.a-menu:hover .fleche{transform:rotate(180deg)}
.mega{position:absolute;left:50%;transform:translate(-50%,8px);top:100%;width:min(840px,94vw);background:var(--creme);border:3px solid var(--encre);border-radius:18px 40px 18px 40px/40px 18px 40px 18px;box-shadow:8px 10px 0 rgba(45,24,16,.15);padding:26px 30px;display:grid;grid-template-columns:1fr 1fr;gap:6px 30px;opacity:0;visibility:hidden;transition:.18s}
.a-menu:hover .mega,.a-menu:focus-within .mega{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mega-titre{grid-column:1/-1;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--ambre-fonce);font-weight:700;margin-bottom:6px;font-family:'Kalam',cursive}
.mega a{display:block;padding:9px 12px;text-decoration:none;color:var(--encre);font-weight:700;font-size:17px;border-radius:12px;border:2px solid transparent;transition:background-color .15s,border-color .15s}
.mega a small{display:block;font-weight:400;color:var(--texte-doux);font-size:14.5px;line-height:1.35}
.mega a:hover{background:var(--jaune-pale);border-color:var(--encre);color:var(--encre)}
.mega a.mega-cta{background:var(--vert-pale);border-color:var(--encre);color:var(--encre)}
.mega a.mega-cta:hover{background:var(--lime)}
.nav-bascule{display:flex;align-items:center;gap:0;margin-left:6px;border:2.5px solid var(--encre);border-radius:999px;padding:2px;background:var(--creme);font-family:'Permanent Marker',cursive;font-size:14px;line-height:1;transform:rotate(-2deg)}
.nav-bascule a{text-decoration:none;color:var(--encre);padding:6px 10px;border-radius:999px;transition:background-color .15s}
.nav-bascule a:hover{background:var(--jaune-pale);color:var(--encre)}
.nav-bascule a[aria-current="page"]{color:#fff;background:var(--rose)}

/* Boutons « feutre » */
.btn{display:inline-block;text-decoration:none;font-family:'Permanent Marker',cursive;font-weight:400;letter-spacing:.02em;padding:13px 28px;font-size:18px;line-height:1.3;text-align:center;border:3px solid var(--encre);border-radius:12px;box-shadow:4px 4px 0 var(--encre);transition:transform .15s,box-shadow .15s,background-color .15s;cursor:pointer}
.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--encre)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--encre)}
.btn-plein{background:var(--rose);color:#fff}
.btn-plein:hover{background:var(--rose-fonce);color:#fff}
.btn-contour{background:var(--creme);color:var(--encre)}
.btn-contour:hover{background:var(--jaune-pale);color:var(--encre)}
.btn-contour--blanc{background:transparent;color:var(--encre)}
.btn-contour--blanc:hover{background:var(--creme)}
.btn-blanc{background:var(--creme);color:var(--encre)}
.btn-blanc:hover{background:var(--jaune-pale);color:var(--encre)}
.btn[disabled]{opacity:.75;cursor:wait;transform:none;box-shadow:2px 2px 0 var(--encre)}
.btn:focus-visible,.choix button:focus-visible,.montants a:focus-visible{outline:3px solid var(--ambre);outline-offset:3px}

.hamburger{display:none;background:transparent;border:0;outline:0;box-shadow:none;-webkit-appearance:none;appearance:none;cursor:pointer;padding:8px;flex-direction:column;gap:6px}
.hamburger span{display:block;width:30px;height:3.5px;background:var(--encre);border-radius:3px;transition:.25s}
.hamburger span:nth-child(2){width:24px}
.hamburger:focus-visible{outline:3px solid var(--ambre)}
body.menu-ouvert .hamburger span:nth-child(1){transform:translateY(9.5px) rotate(45deg)}
body.menu-ouvert .hamburger span:nth-child(2){opacity:0}
body.menu-ouvert .hamburger span:nth-child(3){transform:translateY(-9.5px) rotate(-45deg)}
.nav-mobile-extra{display:none}

@media(max-width:920px){
  .logo img{height:52px}
  .logo-repli svg,.logo-repli img{width:44px;height:44px}
  .logo-nom{font-size:19px}
  .nav{gap:14px;padding:8px 16px}
  .nav-liens{position:fixed;inset:0;top:0;background:var(--ivoire);flex-direction:column;align-items:stretch;justify-content:flex-start;padding:110px 22px 40px;gap:8px;overflow:auto;transform:translateX(100%);transition:.25s;margin:0;z-index:-1}
  body.menu-ouvert .nav-liens{transform:none}
  .nav-liens>li>a{font-size:19px;padding:11px 16px;background:var(--creme);border:2.5px solid var(--encre);border-radius:12px}
  .nav-liens>li>a:hover{background:var(--jaune-pale)}
  .mega{position:static;transform:none !important;width:100% !important;opacity:1;visibility:visible;box-shadow:none;border:0;background:transparent;padding:6px 0 6px 10px;display:none;grid-template-columns:1fr}
  .a-menu.deplie .mega{display:grid}
  .a-menu.deplie>a{background:var(--jaune-pale)}
  .nav-btns{display:none}
  .nav-bascule{margin-left:auto;order:2}
  .hamburger{display:flex;order:3}
  .nav-mobile-extra{display:flex;flex-direction:column;gap:14px;margin-top:22px}
  .nav-mobile-extra .btn{border-radius:12px !important;padding:13px 20px !important;font-size:18px !important}
  .nav-mobile-extra .btn-plein{background:var(--rose) !important;color:#fff !important}
}

/* ===== Hero accueil ===== */
.hero{position:relative;overflow:hidden;border-bottom:3px solid var(--encre)}
.hero::before,.entete-page::before{content:"";position:absolute;width:46px;height:46px;left:4%;top:36px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 4 L23 16 L36 18 L25 24 L28 36 L20 28 L12 36 L15 24 L4 18 L17 16Z' fill='%23FCD34D' stroke='%232D1810' stroke-width='2.2' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;transform:rotate(-12deg);opacity:.9;pointer-events:none}
.hero::after,.entete-page::after{content:"";position:absolute;width:40px;height:40px;right:3%;bottom:30px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 12 C14 2 2 8 20 34 C38 8 26 2 20 12Z' fill='none' stroke='%23F43F5E' stroke-width='2.6' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;transform:rotate(10deg);pointer-events:none}
.hero-grille{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding:60px 22px 72px;position:relative;z-index:1}
.hero h1{font-size:clamp(34px,5vw,56px)}
.hero h1 em,.entete-page h1 em,h2 em{font-style:normal;color:var(--ambre);position:relative;display:inline-block;white-space:nowrap}
.hero h1 em::after,.entete-page h1 em::after,h2 em::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 10' preserveAspectRatio='none'%3E%3Cpath d='M2,6 Q50,1 100,5 T198,5' stroke='%23D97706' stroke-width='3.2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/100% 100%}
.hero p{margin:22px 0 30px;font-size:20px;max-width:54ch}
.hero-btns{display:flex;gap:16px;flex-wrap:wrap}
.hero-points{display:flex;gap:10px 14px;margin-top:32px;flex-wrap:wrap;font-size:16px;font-weight:700;color:var(--encre)}
.hero-points span{display:flex;align-items:center;gap:6px;background:var(--vert-pale);border:2.5px solid var(--encre);border-radius:var(--r-sketch-sm);padding:4px 14px 4px 10px}
.hero-points span:nth-child(2){background:var(--jaune-pale)}
.hero-points span:nth-child(3){background:#FFE4E6}
.photo-hero{position:relative;aspect-ratio:4/3;border:3px solid var(--encre);border-radius:var(--r-sketch);overflow:hidden;background:var(--ivoire);box-shadow:8px 10px 0 rgba(45,24,16,.16);transform:rotate(1.2deg);transition:transform .35s}
.photo-hero:hover{transform:rotate(-.6deg) translateY(-4px)}
.photo-hero img,.photo-hero svg{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:920px){
  .hero-grille{grid-template-columns:1fr;padding:40px 22px 56px;gap:38px}
  .photo-hero{max-width:540px;width:100%}
}

/* ===== Bannières intérieures ===== */
.entete-page{position:relative;overflow:hidden;padding:46px 0 56px;border-bottom:3px solid var(--encre)}
.entete-page-seul{max-width:860px;text-align:center;position:relative;z-index:1}
.entete-page-grille{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center;text-align:left;position:relative;z-index:1}
.entete-page--photo{padding:48px 0 60px}
@media(max-width:920px){.entete-page-grille{grid-template-columns:1fr;gap:34px}.entete-page-grille .photo-hero{max-width:500px}}
.dessin-entete{width:200px;height:auto;margin:0 auto 6px;transform:rotate(-2deg)}
.fil{display:inline-block;font-size:15px;font-weight:700;color:#3F6212;background:var(--lime);border:2.5px solid var(--encre);border-radius:var(--r-sketch-sm);padding:2px 14px;margin-bottom:16px}
.fil a{color:#3F6212;text-decoration:underline;text-underline-offset:2px}
.fil a:hover{color:var(--rose-fonce)}
.entete-page h1{font-size:clamp(32px,4.4vw,48px)}
.sous-banniere{margin-top:16px;font-size:19.5px;max-width:60ch}
.entete-page-seul .sous-banniere{margin-left:auto;margin-right:auto}

/* ===== Sections ===== */
section{padding:76px 0;position:relative}
.section-ivoire{background:var(--jaune-pale);border-top:3px solid var(--encre);border-bottom:3px solid var(--encre)}
.section-ivoire+section,.section-ivoire+.section-ivoire{border-top:0}
.sur-titre{display:inline-block;color:#3F6212;background:var(--lime);border:2.5px solid var(--encre);border-radius:var(--r-sketch-sm);font-weight:700;letter-spacing:.03em;font-size:15px;padding:2px 16px;margin-bottom:16px;transform:rotate(-1.2deg)}
.section-ivoire .sur-titre{background:var(--creme);color:var(--ambre-fonce)}
h2{font-size:clamp(28px,3.6vw,42px);margin-bottom:16px}
h3{font-size:22px}
.intro-section{max-width:70ch;margin-bottom:40px;font-size:19px}
.grille-2{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.grille-3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.grille-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
@media(max-width:920px){.grille-3,.grille-4{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.grille-2,.grille-3,.grille-4{grid-template-columns:1fr}}

/* Cartes dessinées */
.carte,.pret-carte,.etape{background:#FFFBEB;border:3px solid var(--encre);border-radius:var(--r-sketch);transition:transform .3s ease,box-shadow .3s ease}
.carte{padding:28px}
.carte:hover,.pret-carte:hover{transform:translateY(-6px) rotate(-.5deg);box-shadow:8px 10px 0 rgba(45,24,16,.15)}
.grille-4 .carte:nth-child(even),.grille-3 .pret-carte:nth-child(even){border-radius:120px 20px 120px 20px/20px 120px 20px 120px}
.carte h3{margin:16px 0 8px}
.carte p{font-size:16.5px}
.picto{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--jaune);border:2.5px solid var(--encre);border-radius:12px;transform:rotate(-4deg);box-shadow:3px 3px 0 var(--encre)}
.picto svg{width:26px;height:26px}
.carte:nth-child(4n+2) .picto,.pret-carte:nth-child(6n+2) .picto{background:var(--lime);transform:rotate(3deg)}
.carte:nth-child(4n+3) .picto,.pret-carte:nth-child(6n+3) .picto{background:#FECDD3;transform:rotate(-2deg)}
.carte:nth-child(4n+4) .picto,.pret-carte:nth-child(6n+4) .picto{background:var(--vert-pale);transform:rotate(5deg)}
.pret-carte:nth-child(6n+5) .picto{background:#FED7AA}

/* Étapes « comment ça marche » */
.etape{position:relative;padding:44px 26px 28px;text-align:center}
.grille-3 .etape,.grille-4 .etape{padding-top:112px}
.etape::after{content:"";position:absolute;left:50%;top:38px;width:66px;height:66px;margin-left:-33px;background:no-repeat center/contain;transform:rotate(-4deg)}
.etape:nth-child(even)::after{transform:rotate(5deg)}
.grille-3 .etape:nth-child(1)::after,.grille-4 .etape:nth-child(1)::after{background-image:url("../img/dessins/picto-telephone.svg")}
.grille-3 .etape:nth-child(2)::after,.grille-4 .etape:nth-child(2)::after{background-image:url("../img/dessins/picto-cadenas.svg")}
.grille-3 .etape:nth-child(3)::after,.grille-4 .etape:nth-child(3)::after{background-image:url("../img/dessins/picto-argent.svg")}
.grille-3 .etape:nth-child(4)::after,.grille-4 .etape:nth-child(4)::after{background-image:url("../img/dessins/picto-pousse.svg")}
.etape-num{position:absolute;top:-26px;left:50%;margin-left:-26px;width:52px;height:52px;background:var(--jaune);color:var(--encre);border:3px solid var(--encre);border-radius:12px;box-shadow:4px 4px 0 var(--encre);font-family:'Permanent Marker',cursive;font-weight:400;display:flex;align-items:center;justify-content:center;font-size:24px;transform:rotate(-4deg)}
.etape:nth-child(2) .etape-num{transform:rotate(3deg);background:var(--lime)}
.etape:nth-child(3) .etape-num{transform:rotate(-2deg);background:#FECDD3}
.etape h3{margin:8px 0 8px;font-family:'Caveat',cursive;font-size:30px;line-height:1.1}
.etape p{font-size:16.5px}

.liste-coches{list-style:none;display:grid;gap:13px;margin:22px 0}
.liste-coches li{display:flex;gap:12px;align-items:flex-start;font-size:18px}
.liste-coches svg{flex:0 0 auto;margin-top:3px;background:var(--vert-pale);border:2px solid var(--encre);border-radius:8px;padding:2px;width:26px;height:26px}
.encadre{border-radius:0 14px 14px 0;padding:20px 24px;margin-top:26px;font-size:17px;color:var(--encre)}
.encadre--attention{background:var(--jaune-pale);border-left:6px solid var(--ambre);color:var(--encre)}
.section-ivoire .encadre--attention{background:var(--creme)}
.encadre--vert{background:var(--vert-pale);border-left:6px solid var(--vert-olive)}
.deux-col{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:start}
@media(max-width:920px){.deux-col{grid-template-columns:1fr}}
.montants{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 30px}
.montants a{text-decoration:none;font-family:'Permanent Marker',cursive;font-size:20px;color:var(--encre);background:var(--creme);border:2.5px solid var(--encre);border-radius:var(--r-input);padding:8px 20px;transition:transform .15s,background-color .15s,box-shadow .15s}
.montants a:nth-child(odd){transform:rotate(-1.5deg)}
.montants a:nth-child(even){transform:rotate(1.5deg)}
.montants a:hover{background:var(--jaune);transform:translateY(-3px) rotate(0);box-shadow:3px 3px 0 var(--encre)}
.citation{position:relative;background:var(--vert-pale);border:3px solid var(--encre);border-radius:var(--r-sketch-2);padding:22px 30px 22px 64px;margin:36px 0;font-family:'Caveat',cursive;font-weight:700;font-size:28px;color:var(--encre);line-height:1.3}
.citation::before{content:"\201C";position:absolute;left:18px;top:2px;font-family:'Permanent Marker',cursive;font-size:56px;color:var(--ambre)}
.article{max-width:820px}
.article h2{font-size:clamp(25px,3vw,33px);margin-top:46px}
.article h2:first-child{margin-top:0}
.article p{margin-bottom:16px}
.article ul,.article ol{margin:0 0 16px 24px}
.article li{margin-bottom:6px}
.article li::marker{color:var(--ambre-fonce);font-weight:700}

/* Cartes de prêts */
.pret-carte{display:flex;flex-direction:column;padding:28px;text-decoration:none;color:var(--texte)}
.pret-carte h3{margin:16px 0 8px;font-family:'Caveat',cursive;font-size:30px;line-height:1.1}
.pret-carte p{font-size:16.5px;color:var(--texte);flex:1}
.pret-carte .lien{margin-top:18px;font-size:16px;font-weight:700;color:var(--ambre-fonce)}
.pret-carte:hover .lien{color:var(--rose-fonce)}
.pret-carte--noir{background:var(--rose);justify-content:center;box-shadow:6px 6px 0 var(--encre)}
.pret-carte--noir::before{content:"";width:64px;height:64px;margin-bottom:10px;background:url("../img/dessins/picto-pousse.svg") no-repeat center/contain;transform:rotate(-6deg)}
.pret-carte--noir h3{color:#fff;margin-top:0;font-family:'Permanent Marker',cursive;font-size:26px}
.pret-carte--noir p{color:#FFF1F2}
.pret-carte--noir .lien{color:#fff;font-family:'Permanent Marker',cursive;font-weight:400;font-size:18px}
.pret-carte--noir:hover .lien{color:var(--jaune)}

/* FAQ */
details{background:var(--creme);border:2.5px solid var(--encre);border-radius:12px 28px 12px 28px/28px 12px 28px 12px;margin-bottom:14px;overflow:hidden;transition:box-shadow .2s,background-color .2s}
details:hover{box-shadow:4px 4px 0 var(--encre)}
details[open]{background:#FFFBEB;box-shadow:5px 5px 0 var(--encre)}
summary{cursor:pointer;list-style:none;padding:16px 22px;font-weight:700;color:var(--encre);font-size:18.5px;display:flex;justify-content:space-between;gap:16px;align-items:center}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";flex:0 0 34px;height:34px;display:flex;align-items:center;justify-content:center;font-family:'Permanent Marker',cursive;font-size:22px;color:var(--encre);background:var(--jaune);border:2.5px solid var(--encre);border-radius:10px;transform:rotate(-4deg);line-height:1}
details[open] summary::after{content:"\2013";background:var(--lime);transform:rotate(4deg)}
details p{padding:0 22px 20px;font-size:17px}
.section-ivoire details{background:var(--creme)}

/* Bandeau CTA */
.bandeau-cta{position:relative;overflow:hidden;background:var(--rose);color:#fff;border:3px solid var(--encre);border-radius:24px 60px 24px 60px/60px 24px 60px 24px;box-shadow:8px 8px 0 var(--encre);padding:50px 48px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.bandeau-cta::before{content:"";position:absolute;right:-34px;top:-44px;width:130px;height:130px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='50' r='20' fill='%23FCD34D' stroke='%232D1810' stroke-width='3'/%3E%3Cg stroke='%23FEF3C7' stroke-width='4' stroke-linecap='round'%3E%3Cpath d='M50 18V8M50 92V82M18 50H8M92 50H82M27 27l-7-7M80 80l-7-7M27 73l-7 7M80 20l-7 7'/%3E%3C/g%3E%3C/svg%3E") no-repeat center/contain;opacity:.9}
.bandeau-cta::after{content:"";position:absolute;left:26px;bottom:14px;width:42px;height:42px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 12 C14 2 2 8 20 34 C38 8 26 2 20 12Z' fill='none' stroke='%23FFE4E6' stroke-width='2.6' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;transform:rotate(-12deg)}
.bandeau-cta>div{position:relative;z-index:1}
.bandeau-cta h2{color:#fff;margin-bottom:8px}
.bandeau-cta h2 em{color:var(--jaune)}
.bandeau-cta h2 em::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 10' preserveAspectRatio='none'%3E%3Cpath d='M2,6 Q50,1 100,5 T198,5' stroke='%23FCD34D' stroke-width='3.2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")}
.bandeau-cta p{color:#FFF1F2;max-width:56ch;font-size:18.5px}
.bandeau-btns{display:flex;gap:14px;flex-wrap:wrap}
@media(max-width:600px){.bandeau-cta{padding:38px 24px}}

/* ===== Assistant (formulaire par étapes) ===== */
.zone-form{background:var(--jaune-pale);border-bottom:3px solid var(--encre);padding:0 0 84px}
.assistant{max-width:740px;margin:-30px auto 0;background:var(--creme);border:3px solid var(--encre);border-radius:20px 60px 20px 60px/60px 20px 60px 20px;box-shadow:8px 10px 0 rgba(45,24,16,.18);padding:42px 46px 44px;position:relative}
.assistant::before{content:"";position:absolute;right:26px;top:-34px;width:62px;height:62px;background:url("../img/dessins/picto-cadenas.svg") no-repeat center/contain;transform:rotate(10deg)}
@media(max-width:600px){.assistant{padding:30px 20px 32px;margin-left:14px;margin-right:14px}.assistant::before{width:48px;height:48px;top:-26px;right:16px}}
.progres{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px;font-size:15px;font-weight:700;color:var(--ambre-fonce);letter-spacing:.04em;text-transform:uppercase}
.progres-barre{height:16px;background:var(--creme);border:2.5px solid var(--encre);border-radius:999px;overflow:hidden;margin-bottom:32px}
.progres-barre div{height:100%;border-right:2.5px solid var(--encre);background:var(--jaune) repeating-linear-gradient(-45deg,transparent 0 8px,rgba(217,119,6,.35) 8px 13px);transition:width .35s;width:20%}
.etape-form{display:none}
.etape-form.active{display:block;animation:apparait .25s ease}
@keyframes apparait{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.etape-form h2{font-size:clamp(24px,3vw,31px);margin-bottom:8px}
.etape-form .sous-q{font-size:17px;color:var(--texte);margin-bottom:22px}
.choix{display:grid;gap:12px;margin-top:22px}
.choix--montants{grid-template-columns:repeat(3,1fr)}
@media(max-width:600px){.choix--montants{grid-template-columns:repeat(2,1fr)}}
.choix button{display:block;width:100%;text-align:left;background:var(--creme);border:2.5px solid var(--encre);border-radius:var(--r-input);padding:13px 18px;font-family:'Kalam',cursive;font-size:18px;font-weight:700;color:var(--encre);cursor:pointer;transition:transform .14s,box-shadow .14s,background-color .14s;-webkit-appearance:none;appearance:none;outline:0}
.choix--montants button{text-align:center;font-family:'Permanent Marker',cursive;font-weight:400;font-size:22px;color:var(--encre);padding:14px 10px}
.choix button:hover{background:var(--jaune);transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--encre)}
.choix button:active{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--encre)}
.assistant-pied{display:flex;justify-content:space-between;align-items:center;margin-top:28px;gap:14px}
.btn-retour{background:transparent;border:2px dashed transparent;outline:0;box-shadow:none;-webkit-appearance:none;appearance:none;color:var(--texte-doux);font-family:'Kalam',cursive;font-size:16px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:7px;padding:6px 14px;border-radius:999px}
.btn-retour:hover{background:var(--jaune-pale);border-color:var(--encre);color:var(--encre)}
.securite{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--texte-doux);margin-top:28px;justify-content:center;text-align:center}

/* Refus */
.refus{display:none}
.refus.active{display:block;animation:apparait .25s ease}
.refus-icone{width:70px;height:70px;background:var(--jaune);border:3px solid var(--encre);border-radius:var(--r-sketch-sm);box-shadow:4px 4px 0 var(--encre);display:flex;align-items:center;justify-content:center;margin:0 auto 22px;transform:rotate(-4deg)}
.refus h2{text-align:center;font-size:clamp(23px,3vw,29px);margin-bottom:18px}
.refus p{font-size:17px;margin-bottom:14px}
.refus ul{margin:0 0 14px 24px;font-size:17px}
.refus li{margin-bottom:6px}
.refus li::marker{color:var(--ambre-fonce)}
.note{background:var(--vert-pale);border-left:6px solid var(--vert-olive);border-radius:0 12px 12px 0;padding:16px 20px;font-size:16.5px;margin:20px 0;color:var(--encre)}
.refus-btns{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:28px}

/* Champs */
.champs{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
@media(max-width:600px){.champs{grid-template-columns:1fr}}
.champ{display:flex;flex-direction:column;gap:6px}
.champ--large{grid-column:1/-1}
.champ label{font-size:16px;font-weight:700;color:var(--encre)}
.champ input,.champ select,.champ textarea{font-family:'Kalam',cursive;font-size:18px;padding:11px 15px;border:2.5px solid var(--encre);border-radius:var(--r-input);color:var(--encre);background:var(--creme);-webkit-appearance:none;appearance:none;outline:0;width:100%;transition:box-shadow .2s,border-color .2s}
.champ select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232D1810' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:40px}
.champ input:focus,.champ select:focus,.champ textarea:focus{border-color:var(--ambre);box-shadow:3px 3px 0 var(--ambre)}
.champ input::placeholder,.champ textarea::placeholder{color:#A8896B}
.consent{display:flex;gap:11px;align-items:flex-start;margin-top:20px;font-size:15.5px;color:var(--texte)}
.consent input{width:22px;height:22px;margin-top:3px;accent-color:var(--rose);flex:0 0 auto}
.envoyer{width:100%;margin-top:24px;font-size:20px;padding:16px 24px}

/* ===== Page merci ===== */
.page-merci{background:var(--jaune-pale);min-height:60vh;padding:52px 0 64px}
.carte-merci{position:relative;max-width:660px;margin:0 auto;background:var(--creme);border:3px solid var(--encre);border-radius:20px 60px 20px 60px/60px 20px 60px 20px;box-shadow:8px 10px 0 rgba(45,24,16,.18);padding:46px 44px;text-align:center}
@media(max-width:600px){.carte-merci{margin:0 14px;padding:32px 20px}}
.carte-merci .dessin-merci{width:220px;margin:-10px auto 6px}
.coche-anim{width:86px;height:86px;margin:0 auto 24px}
.coche-anim circle{stroke:var(--encre);stroke-width:2.6;fill:var(--vert-pale);stroke-dasharray:166;stroke-dashoffset:166;animation:trait .7s ease forwards}
.coche-anim path{stroke:var(--vert-olive);stroke-width:3.4;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:48;stroke-dashoffset:48;animation:trait .5s .55s ease forwards}
@keyframes trait{to{stroke-dashoffset:0}}
.carte-merci h1{font-size:clamp(27px,4vw,36px);margin-bottom:12px}
.carte-merci .msg{max-width:46ch;margin:0 auto 30px}
.carte-merci table{width:100%;border-collapse:collapse;margin:0 0 28px;text-align:left;font-size:17px}
.carte-merci th,.carte-merci td{padding:10px 14px;border-bottom:1.5px dashed rgba(45,24,16,.3)}
.carte-merci th{color:var(--encre);font-weight:700;white-space:nowrap;width:42%;font-size:15px}
.carte-merci .encadre{background:var(--vert-pale);border-left:6px solid var(--vert-olive);border-radius:0 12px 12px 0;padding:18px 22px;text-align:left;font-size:16.5px;margin:0 0 30px}
.carte-merci .btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ===== Tableaux ===== */
.tableau{width:100%;border-collapse:separate;border-spacing:0;margin:26px 0;font-size:17px;background:var(--creme);border:3px solid var(--encre);border-radius:14px;overflow:hidden}
.tableau th,.tableau td{border-bottom:1.5px solid rgba(45,24,16,.18);padding:12px 16px;text-align:left;vertical-align:top}
.tableau tr:last-child th,.tableau tr:last-child td{border-bottom:0}
.tableau th{background:var(--jaune);color:var(--encre);font-size:16px;font-weight:700;border-right:2px solid var(--encre)}
.tableau thead th{border-bottom:2.5px solid var(--encre)}
.tableau tbody tr:nth-child(even) td{background:#FFFBEB}

/* ===== Footer ===== */
footer{position:relative;background:var(--encre);color:#E7D6C3;padding:64px 0 30px;font-size:16.5px;border-top:3px solid var(--encre)}
footer::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 18' preserveAspectRatio='none'%3E%3Cpath d='M0 10 Q15 2 30 9 T60 9 T90 9 T120 10 V18 H0Z' fill='%232D1810'/%3E%3C/svg%3E") repeat-x;background-size:240px 18px}
.pied-grille{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px;margin-bottom:44px}
@media(max-width:920px){.pied-grille{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.pied-grille{grid-template-columns:1fr}}
footer h4{color:var(--jaune);font-size:26px;margin-bottom:12px;font-family:'Caveat',cursive;font-weight:700}
footer ul{list-style:none;display:grid;gap:8px}
footer a{color:#E7D6C3;text-decoration:none}
footer a:hover{color:var(--jaune);text-decoration:underline}
.pied-logo{display:flex;align-items:center;gap:13px;margin-bottom:16px}
.pied-logo svg,.pied-logo img{width:48px;height:48px}
.pied-nom{font-family:'Permanent Marker',cursive;color:var(--creme);font-size:22px;font-weight:400;line-height:1;letter-spacing:.02em}
.pied-nom small{display:block;font-family:'Kalam',cursive;font-size:13px;font-weight:700;color:var(--jaune);letter-spacing:.06em;margin-top:4px}
.pied-legal{border-top:1.5px dashed rgba(254,243,199,.25);padding-top:24px;font-size:14.5px;color:#BFA88F;line-height:1.7}
.pied-legal p{margin-bottom:10px}

@media(max-width:600px){.hero::before,.entete-page::before{left:auto;right:14px;top:12px;width:32px;height:32px}.hero::after,.entete-page::after{display:none}.photo-hero{transform:rotate(.6deg)}}
@media(prefers-reduced-motion:reduce){*{transition:none !important;animation:none !important}}
