/* Charte 2026 : couche commune qui aligne les pages (vidéos, blog, ressources, rendez-vous, pages légales, bêta)
   sur le style de l'accueil et de la page Fonctionnalités. Se charge après site.css ou beta.css. */
:root{--ocre:#E8A33D;--ocre-l:#F4C982;--fh:'Fraunces',Georgia,serif}
.serif{font-family:var(--fh);font-style:italic;font-weight:600;letter-spacing:-.01em}
.sapin-bg .serif,.hero .serif,.final .serif,.lhero .serif{color:var(--ocre-l)}
.prog{position:fixed;top:0;left:0;height:3px;width:100%;background:var(--ocre);transform-origin:0 50%;transform:scaleX(0);z-index:70;pointer-events:none}
/* halo ocre des en-têtes verts, comme sur l'accueil */
.sapin-bg::before{content:"";position:absolute;right:-220px;top:-260px;width:720px;height:720px;border-radius:50%;background:radial-gradient(circle,rgba(232,163,61,.22),transparent 65%);pointer-events:none}
.sapin-bg>*{position:relative}
.sapin-bg .kicker{color:var(--ocre-l)}
.vhero h1,.res-hero h1,.lhero h1{text-wrap:balance}
/* cartes : coins et survol homogènes */
.res-card,.vcard,.post-card{transition:transform .3s ease,box-shadow .3s ease}
.res-card:hover,.vcard:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(31,61,54,.12)}
/* bloc final vert arrondi (même que l'accueil) */
.final2{margin:30px 22px 0;border-radius:40px;background:#1F3D36;color:#fff;text-align:center;padding:76px 22px;position:relative;overflow:hidden}
.final2::before{content:"";position:absolute;left:50%;top:-50%;width:900px;height:900px;margin-left:-450px;background:radial-gradient(circle,rgba(232,163,61,.25),transparent 60%);pointer-events:none}
.final2 h2{position:relative;font-size:clamp(32px,4.6vw,56px);line-height:1.05;font-weight:800;letter-spacing:-.03em;margin:0}
.final2 .serif{color:var(--ocre-l)}
.final2 p{position:relative;color:#CFE0DA;margin:16px 0 28px;font-size:17px}
.final2 .ctas{position:relative;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
@media (max-width:560px){.final2{margin:24px 12px 0;border-radius:30px;padding:56px 20px}}
.appb{display:inline-flex;align-items:center;gap:10px;background:#000;color:#fff;border-radius:14px;padding:8px 16px;text-decoration:none;line-height:1.1}
.appb small{display:block;font-size:11px;opacity:.85}.appb b{font-size:19px;font-weight:600}
/* en-tête vert compact des pages ressources et légales */
.rhero{padding:30px 0 120px}.rhero .intro{max-width:860px;margin:0 auto;padding:30px 24px 0;display:flex;flex-direction:column;gap:14px}
.rhero h1{font-size:clamp(32px,4.4vw,54px);line-height:1.06;font-weight:800;letter-spacing:-.03em;margin:0}
.rhero p{font-size:18px;color:#CFE0DA;margin:0}.rhero .crumb a,.rhero .crumb{color:#A9C2B9;font-size:14px;text-decoration:none}
.rhero .meta{color:#A9C2B9;font-size:14px}
.lift{position:relative;margin-top:-80px}
.lift-card{background:#fff;border-radius:32px;box-shadow:0 30px 70px rgba(31,61,54,.12);padding:44px clamp(20px,4vw,52px)}
@media (max-width:560px){.lift-card{border-radius:24px;padding:28px 18px}}
.legal table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media (max-width:560px){.legal table,.legal tbody,.legal tr,.legal td{display:block;width:auto;min-width:0}.legal thead{display:none}.legal tr{padding:12px 0;border-bottom:1px solid #EDE6DA}.legal table td{padding:3px 0;border:0;background:none}.legal table td:first-child{font-weight:700;font-size:16px}}
/* parcours bêta (beta.css) : en-tête vert du site et pied de page complet */
.bhero{padding:0 0 100px}
.bhero .in{position:relative;max-width:720px;margin:0 auto;padding:34px 16px 0;display:flex;flex-direction:column;gap:14px}
.bhero h1{font-size:clamp(32px,5.4vw,52px);line-height:1.05;font-weight:800;letter-spacing:-.03em;color:#fff;margin:0}
.bhero p{color:#CFE0DA;font-size:17px;max-width:36rem;margin:0}
footer.foot{max-width:none;margin:40px 0 0;padding:0;display:block;font-size:inherit;color:var(--ink);text-align:left}
footer.foot .wrap{max-width:1200px;margin:0 auto;padding-inline:24px}
footer.foot a{text-decoration:none}
