/* Cabin, servie par le plugin (fonts/cabin-latin.woff2, police variable
   400 à 700, caractères latins) : plus d'aller-retour vers Google Fonts. */
@font-face{ font-family:'Cabin'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('fonts/cabin-latin.woff2') format('woff2'); }
/* Encart Liesel de la page d'accueil (assets/rt-liesel.js). Styles limités à
   l'encart et à son panneau : rien d'autre de l'accueil n'est touché. */
.rt-liesel{
  --s:#9c4a1c;
  position:relative; box-sizing:border-box; margin:0 6px 24px; padding:16px 138px 16px 18px; min-height:150px;
  background:#fff; border-radius:20px; border-top:4px solid var(--s); box-shadow:0 8px 20px rgba(43,31,26,.10);
  font-family:"Cabin",-apple-system,sans-serif; color:#262220; text-align:left;
}
.rt-liesel *{ box-sizing:border-box; }
.rt-liesel-titre{ display:block; margin:0; font-size:18px; font-weight:700; line-height:1.2; }
.rt-liesel-texte{ margin:6px 0 0; font-size:13.5px; line-height:1.4; color:#5b5650; }
.rt-liesel button.rt-liesel-bouton{
  display:inline-flex; flex-direction:column; align-items:flex-start; margin:12px 0 0; padding:9px 18px; border:none; border-radius:22px;
  background:var(--s); color:#fff; font:700 14px/1.2 "Cabin",-apple-system,sans-serif; cursor:pointer; text-transform:none; letter-spacing:normal;
  box-shadow:none; -webkit-tap-highlight-color:transparent;
}
.rt-liesel button.rt-liesel-bouton:hover, .rt-liesel button.rt-liesel-bouton:focus{ background:var(--s); color:#fff; filter:brightness(1.08); }
.rt-liesel-bouton small{ display:block; margin-top:1px; font-weight:500; font-size:11.5px; opacity:.88; }
.rt-liesel-rond{
  position:absolute; right:14px; bottom:14px; width:112px; height:112px; border-radius:50%;
  background:radial-gradient(circle at 50% 70%, color-mix(in srgb, var(--s) 30%, #fff), color-mix(in srgb, var(--s) 12%, #fff));
}
.rt-liesel-rond img{
  position:absolute; left:50%; bottom:0; width:150px; height:auto; max-width:none; transform:translateX(-50%);
  clip-path:inset(-40px 0 0 0 round 0 0 56px 56px);
}
@media (min-width:768px){ .rt-liesel{ max-width:728px; margin-left:auto; margin-right:auto; } }

/* Panneau qui monte du bas avec le formulaire officiel */
.rt-liesel-fond{
  position:fixed; inset:0; z-index:5000; display:flex; align-items:flex-end; justify-content:center;
  background:rgba(38,34,32,.45); opacity:0; transition:opacity .2s;
}
.rt-liesel-fond.ouvert{ opacity:1; }
.rt-liesel-panneau{
  position:relative; width:100%; max-width:640px; max-height:92vh; overflow-y:auto; -webkit-overflow-scrolling:touch;
  background:#faf8f2; border-radius:24px 24px 0 0; padding:18px 14px calc(18px + env(safe-area-inset-bottom));
  font-family:"Cabin",-apple-system,sans-serif; color:#262220; transform:translateY(100%); transition:transform .28s ease;
}
.rt-liesel-fond.ouvert .rt-liesel-panneau{ transform:none; }
.rt-liesel-tete{ display:flex; align-items:center; gap:12px; margin:0 46px 12px 4px; }
.rt-liesel-tete img{ flex:none; width:52px; height:52px; border-radius:50%; object-fit:cover; object-position:50% 20%; background:color-mix(in srgb, var(--s) 15%, #fff); }
.rt-liesel-tete strong{ display:block; font-size:18px; line-height:1.2; }
.rt-liesel-tete small{ display:block; font-size:13px; color:#5b5650; }
.rt-liesel-panneau button.rt-liesel-fermer{
  position:absolute; top:14px; right:14px; width:38px; height:38px; border-radius:50%; border:none; padding:0;
  background:#262220; color:#fff; font:600 20px/1 "Cabin",sans-serif; cursor:pointer;
}
.rt-liesel-form{ background:#fff; border:1px solid #e4dfd4; border-radius:18px; padding:4px; }
.rt-liesel-form iframe{ display:block; width:100%; min-height:520px; border:0; }
.rt-liesel-note{ margin:10px 4px 0; font-size:12.5px; color:#5b5650; }
