@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,600&family=Source+Sans+3:wght@300;400;600;700&display=swap');

/* ======================================================
   LP1c-bis — NETSENIOR PALETTE 2026
   Identité modernisée : bleu pétrole / terracotta / ivoire crème
   Conserve l'ADN netsenior.fr (famille bleu + orange/chaleur)
   sans le cyan flashy ni l'orange agressif de 2010
   ====================================================== */
:root {
  /* ── Palette principale ── */
  --r-petrol:    #1A6B7C;   /* Bleu pétrole — remplace le cyan flash */
  --r-petrol-dk: #124f5c;   /* Version sombre pour hover/dark bg    */
  --r-terra:     #C84E28;   /* Terracotta vif — WCAG AA ≥4.5:1 sur blanc */
  --r-terra-dk:  #A03A1A;   /* Terracotta sombre pour hover          */
  --r-terra-lt:  #E07848;   /* Terracotta clair — sur fonds sombres  */
  --r-ivory:     #F7FAFB;   /* Blanc légèrement bleuté — propre, sans voile jaune */
  --r-blue-lt:   #EAF4F7;   /* Bleu très clair — sections alternées               */
  --r-text:      #1E2D35;   /* Gris anthracite — texte principal                  */
  --r-muted:     #3D5560;   /* Texte secondaire — assombri pour lisibilité seniors */
  --r-border:    #D9ECF0;   /* Bordures douces dérivées du bleu                   */
  --r-dark:      #0F2229;   /* Fond footer                                        */
  --r-warm:      #EBF3F6;   /* Sections alternées — famille pétrole, pas de jaune */
}

/* ── BASE ── */
.lp1c-bis { font-family:'Source Sans 3',system-ui,sans-serif; background:var(--r-ivory); color:var(--r-text); font-size:16px; line-height:1.65; }

/* Wrapper plein-écran : header + hero = exactement 100dvh */
.r-fold { height:100vh; height:100dvh; display:flex; flex-direction:column; overflow:hidden; }
.lp1c-bis h1,.lp1c-bis h2,.lp1c-bis h3 { font-family:'Playfair Display',Georgia,serif; line-height:1.18; }
.lp1c-bis * { box-sizing:border-box; margin:0; padding:0; }
.lp1c-bis a { text-decoration:none; }

/* ══════════════════════════════════════
   HEADER
══════════════════════════════════════ */
.r-header { border-bottom:1px solid var(--r-border); background:var(--r-ivory); position:sticky; top:0; z-index:100; }

/* Bandeau supérieur bleu pétrole — remplace l'ancien cyan */
.r-header__top {
  background: var(--r-petrol);
  padding: 8px 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.r-header__tagline { font-size:14px; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.9); }
.r-header__social { display:flex; gap:8px; align-items:center; color:#fbbf24; font-size:14px; }

.r-header__main { max-width:1280px; margin:0 auto; padding:0 40px; height:68px; display:flex; align-items:center; gap:32px; }
.r-logo { display:inline-flex; align-items:center; align-self:center; flex-shrink:0; text-decoration:none; line-height:0; }
.r-logo img { height:34px; width:auto; display:block; vertical-align:middle; transform:translateY(-2px); }
.r-nav { display:flex; align-items:center; gap:28px; flex:1; }
.r-nav a {
  font-size:16px;
  line-height:1.2;
  color:var(--r-muted);
  transition:color .2s;
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:10px 2px;
}
.r-nav a:hover { color:var(--r-petrol); }
.r-header__ctas { display:flex; align-items:center; gap:12px; margin-left:auto; }
.r-header__login {
  font-size:16px;
  color:var(--r-muted);
  padding:10px 0;
  transition:color .2s;
  display:inline-flex;
  align-items:center;
  min-height:44px;
}
.r-header__login:hover { color:var(--r-petrol); }

/* Bouton header — terracotta chaleureux */
.r-header__btn {
  background: var(--r-terra);
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  padding: 12px 24px;
  border-radius: 4px;
  letter-spacing: .03em;
  transition: background .2s;
  display:inline-flex;
  align-items:center;
  min-height:44px;
}
.r-header__btn:hover { background: var(--r-terra-dk); }

/* ══════════════════════════════════════
   HERO SPLIT
══════════════════════════════════════ */
.r-hero { flex:1; min-height:0; display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr; overflow:hidden; }

/* Photo gauche */
.r-hero__photo { position:relative; overflow:hidden; }
.r-hero__photo img { width:100%; height:100%; object-fit:cover; object-position:40% top; display:block; }
.r-hero__photo-caption {
  position: absolute; bottom:0; left:0; right:0;
  padding: 56px 28px 28px;
  background: linear-gradient(to top, rgba(10,29,40,.92) 0%, rgba(10,29,40,.6) 55%, transparent 100%);
}
.r-hero__photo-caption blockquote { font-family:'Playfair Display',serif; font-style:italic; font-size:16px; color:#fff; line-height:1.6; margin-bottom:8px; }
.r-hero__photo-caption cite { font-size:16px; color:rgba(255,255,255,.88); font-style:normal; line-height:1.5; }

/* Contenu droite */
.r-hero__content { padding:80px 72px; display:flex; flex-direction:column; justify-content:center; background:var(--r-ivory); overflow:hidden; }

/* Label "Numéro 1" — bleu pétrole */
.r-label {
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--r-petrol);
  background: rgba(26,107,124,.09);
  padding: 8px 16px;
  border-radius: 2px;
  margin-bottom: 24px;
}

/* Titre hero */
.r-hero__title { font-size:clamp(38px,4vw,60px); color:var(--r-text); margin-bottom:20px; }
/* "jamais sa retraite" — terracotta chaleureux, remplace l'or */
.r-hero__title em { font-style:italic; color:var(--r-terra); }
.r-hero__sub { font-size:18px; color:var(--r-text); font-weight:400; margin-bottom:40px; line-height:1.7; max-width:520px; }

/* ── Formulaire inline ── */
.r-form {
  background: #fff;
  border: 1px solid var(--r-border);
  border-radius: 8px;
  padding: 28px 32px;
  max-width: 560px;
  box-shadow: 0 4px 24px rgba(26,107,124,.08);
}
.r-form__title { font-size:15px; font-weight:700; color:var(--r-text); margin-bottom:16px; text-transform:uppercase; letter-spacing:.05em; }
.r-form__row { display:flex; gap:10px; margin-bottom:12px; flex-wrap:wrap; }
.r-form__chip {
  border: 1.5px solid var(--r-border);
  background: #fff;
  color: var(--r-text);
  font-family: 'Source Sans 3',sans-serif;
  font-size: 14px;
  font-weight: 600;
  padding: 9px 18px;
  border-radius: 4px;
  cursor: pointer;
  transition: all .18s;
  flex: 1;
  min-width: 140px;
  text-align: center;
}
/* Chip sélectionné — bleu pétrole */
.r-form__chip:hover,
.r-form__chip--sel {
  background: var(--r-petrol);
  border-color: var(--r-petrol);
  color: #fff;
}

/* Bouton CTA formulaire — terracotta */
.r-form__submit {
  display: block;
  width: 100%;
  text-align: center;
  background: var(--r-terra);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  padding: 15px;
  border-radius: 4px;
  margin-top: 16px;
  transition: background .2s, transform .15s;
  letter-spacing: .02em;
}
.r-form__submit:hover { background: var(--r-terra-dk); transform: translateY(-1px); }
.r-form__note { font-size:15px; color:var(--r-muted); text-align:center; margin-top:10px; }

/* ══════════════════════════════════════
   QUIZ 3 ÉTAPES (Prelinker multi-steps)
══════════════════════════════════════ */
.r-quiz {
  background: #fff;
  border: 1px solid var(--r-border);
  border-radius: 8px;
  padding: 28px 32px;
  max-width: 560px;
  box-shadow: 0 4px 24px rgba(26,107,124,.08);
  min-height: 490px;
}
/* Anti-CLS : le wrapper reste caché jusqu'à ce que le JS soit prêt */
/* display:none est posé en inline style PHP, retiré par JS après showStep(0) */

/* ── Titre du formulaire ── */
.r-quiz__title { font-size:18px; font-weight:700; color:var(--r-text); margin-bottom:18px; font-family:'Playfair Display',serif; }

/* ── Tabs étapes ── */
.r-quiz__steps { display:flex; gap:0; margin-bottom:24px; border-radius:6px; overflow:hidden; border:1px solid var(--r-border); }
.r-quiz__step { flex:1; padding:10px 14px; font-size:14px; font-weight:700; text-align:center; cursor:pointer; transition:background .2s,color .2s; color:var(--r-muted); background:#fff; border-right:1px solid var(--r-border); }
.r-quiz__step:last-child { border-right:none; }
.r-quiz__step--active { background:var(--r-petrol); color:#fff; }
.r-quiz__step--done { background:rgba(26,107,124,.1) !important; color:var(--r-petrol) !important; }
.r-quiz__step--done .r-quiz__step-num::after { content:" ✓"; font-size:14px; }
.r-quiz__step-num { display:block; font-size:20px; font-family:'Playfair Display',serif; color:inherit; margin-bottom:2px; }

/* ── Label étape ── */
.r-quiz__label { font-size:14px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--r-muted); margin-bottom:10px; }

/* ── Pills genre ── */
.r-quiz__options { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:20px; }
.r-quiz__opt { border:1.5px solid var(--r-border); background:#fff; color:var(--r-text); font-family:'Source Sans 3',sans-serif; font-size:16px; font-weight:600; padding:12px 24px; border-radius:4px; cursor:pointer; transition:all .18s; }
.r-quiz__opt:hover,.r-quiz__opt--selected { background:var(--r-petrol); border-color:var(--r-petrol); color:#fff; }

/* ── Bouton Suivant / Submit ── */
.r-quiz__next,.r-quiz__cta {
  display:block; width:100%; text-align:center;
  background:var(--r-terra); color:#fff;
  font-size:16px; font-weight:700; font-family:'Source Sans 3',sans-serif;
  padding:15px; border:none; border-radius:4px;
  cursor:pointer; letter-spacing:.03em;
  transition:background .2s,transform .15s;
}
.r-quiz__next:hover,.r-quiz__cta:hover { background:var(--r-terra-dk); transform:translateY(-1px); }

/* ── Note légale bas ── */
.r-quiz__legal { font-size:14px; color:var(--r-muted); text-align:center; margin-top:12px; line-height:1.6; }

/* ── Masquage des étapes cachées ── */
.plnk-hidden { display:none !important; }

/* ── Reset Prelinker wrapper ── */
#formregisterhome-rencpro-defmultistep .ptprelinker--box { background:none !important; border:none !important; box-shadow:none !important; padding:0 !important; margin:0 !important; }
#formregisterhome-rencpro-defmultistep .ptprelinker-content,
#formregisterhome-rencpro-defmultistep .ptprelinker-content-inner,
#formregisterhome-rencpro-defmultistep .ptprelinker-content-content { padding:0 !important; margin:0 !important; background:transparent !important; }

/* ── Inputs Prelinker ── */
#formregisterhome-rencpro-defmultistep input[type="text"],
#formregisterhome-rencpro-defmultistep input[type="email"],
#formregisterhome-rencpro-defmultistep input[type="number"] {
  width:100%; padding:14px 16px; border:1.5px solid var(--r-border); border-radius:4px;
  font-size:17px; font-family:'Source Sans 3',sans-serif; color:var(--r-text);
  background:#fff; transition:border-color .2s; box-sizing:border-box; margin-bottom:12px;
}
#formregisterhome-rencpro-defmultistep input:focus { outline:none; border-color:var(--r-petrol); }
/* Masquer spinners number input */
#formregisterhome-rencpro-defmultistep input[type="number"]::-webkit-inner-spin-button,
#formregisterhome-rencpro-defmultistep input[type="number"]::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
#formregisterhome-rencpro-defmultistep input[type="number"] { -moz-appearance:textfield; appearance:textfield; }

/* ── Submit Prelinker ── */
#formregisterhome-rencpro-defmultistep input[type="submit"],
#formregisterhome-rencpro-defmultistep button[type="submit"] {
  display:block; width:100%; background:var(--r-terra); color:#fff;
  font-size:16px; font-weight:700; padding:15px; border:none; border-radius:4px;
  cursor:pointer; transition:background .2s;
}
#formregisterhome-rencpro-defmultistep input[type="submit"]:hover,
#formregisterhome-rencpro-defmultistep button[type="submit"]:hover { background:var(--r-terra-dk); }

/* ── Label PSEUDO uniquement ── */
#formregisterhome-rencpro-defmultistep .ptprelinker-input-group:has(input[name="login"])::before {
  display:block; content:"Pseudo";
  font-size:13px; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  color:var(--r-muted); margin-bottom:6px;
}

/* ── Checkbox CGU ── */
#formregisterhome-rencpro-defmultistep .ptprelinker-label-checkbox { font-size:15px; color:var(--r-muted); line-height:1.6; margin-bottom:14px; }
#formregisterhome-rencpro-defmultistep .ptprelinker-label-checkbox a { color:var(--r-petrol); text-decoration:underline; }

/* ── Erreurs ── */
#formregisterhome-rencpro-defmultistep .error-register {
  color:var(--r-terra); font-size:13px; font-weight:600;
  padding:10px 14px; text-align:center; margin-bottom:10px;
  background:rgba(200,78,40,.08); border-radius:6px;
  border:1px solid rgba(200,78,40,.25);
}

/* ── Mise en avant locale sous le formulaire (1 ligne éditoriale) ── */
.r-hero__local-inline {
  margin-top: 22px;
  padding-top: 16px;
  border-top: 1px solid var(--r-border);
  max-width: 560px;
  font-size: 18px;
  line-height: 1.6;
  color: var(--r-muted);
  font-weight: 600;
}
.r-hero__local-city {
  color: var(--r-petrol);
  font-weight: 700;
}

/* ══════════════════════════════════════
   BANDEAU PRESSE
══════════════════════════════════════ */
.r-press {
  background: var(--r-blue-lt);
  padding: 16px 40px;
  display: flex;
  align-items: center;
  gap: 40px;
  border-top: 1px solid var(--r-border);
  border-bottom: 1px solid var(--r-border);
}
.r-press__label { font-size:14px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--r-petrol); flex-shrink:0; }
.r-press__logos { display:flex; gap:32px; flex-wrap:wrap; }
.r-press__logos span { font-family:'Playfair Display',serif; font-size:16px; color:var(--r-petrol); opacity:.65; }

/* ══════════════════════════════════════
   COMMENT ÇA MARCHE
══════════════════════════════════════ */
.r-how { padding:100px 0; background:var(--r-ivory); }
.r-how__inner { max-width:1280px; margin:0 auto; padding:0 40px; }

/* Tag section — bleu pétrole */
.r-section-tag {
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--r-petrol);
  margin-bottom: 12px;
}
.r-section-tag--light { color: rgba(255,255,255,.8); }

.r-section-h2 { font-size:clamp(28px,3vw,42px); color:var(--r-text); margin-bottom:56px; }
.r-how__steps { display:grid; grid-template-columns:repeat(3,1fr); gap:48px; }

/* Numéros — terracotta clair direct, pas d'opacity (évite couleur lavée) */
.r-how-step__num {
  font-family: 'Playfair Display',serif;
  font-size: 64px;
  color: var(--r-terra-lt);
  line-height: 1;
  margin-bottom: 16px;
}
.r-how-step__img { border-radius:6px; overflow:hidden; margin-bottom:24px; aspect-ratio:4/3; }
.r-how-step__img img { width:100%; height:100%; object-fit:cover; display:block; }
.r-how-step h3 { font-size:21px; color:var(--r-text); margin-bottom:12px; }
.r-how-step p { font-size:16px; color:var(--r-text); line-height:1.75; }

/* ══════════════════════════════════════
   FONCTIONNALITÉS
══════════════════════════════════════ */
.r-features { padding:100px 0; background:#fff; }
.r-features__inner { max-width:1280px; margin:0 auto; padding:0 40px; }
.r-features__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:32px; }
.r-feature { padding:40px 28px; border:1px solid var(--r-border); border-radius:12px; text-align:center; transition:box-shadow .3s,transform .3s; background:#fff; }
.r-feature:hover { box-shadow:0 10px 36px rgba(26,107,124,.12); transform:translateY(-4px); }
.r-feature__icon { width:80px; height:80px; margin:0 auto 28px; display:flex; align-items:center; justify-content:center; background:rgba(26,107,124,.08); border-radius:50%; color:var(--r-petrol); }
.r-feature__icon svg { width:44px; height:44px; display:block; flex-shrink:0; }
.r-feature h3 { font-size:18px; color:var(--r-text); margin-bottom:12px; font-weight:700; }
.r-feature p { font-size:15px; color:#666; line-height:1.75; }

/* ══════════════════════════════════════
   LABEL DE VERSION (debug/comparaison)
══════════════════════════════════════ */
.r-version-label { display:inline-block; background:#ffed80; color:#333; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; padding:4px 10px; border-radius:4px; margin-bottom:20px; }

/* ══════════════════════════════════════
   VERSION A — BENTO GRID
══════════════════════════════════════ */
.r-bento { padding:100px 0; background:#fff; }
.r-bento__inner { max-width:1280px; margin:0 auto; padding:0 40px; }
.r-bento__grid { display:grid; grid-template-columns:repeat(3,1fr); grid-template-rows:auto auto; gap:20px; margin-top:52px; }
.r-bento__cell { border-radius:16px; overflow:hidden; position:relative; }
.r-bento__cell--large { grid-column:span 2; min-height:380px; }
.r-bento__cell--photo { min-height:380px; }
.r-bento__cell--large img,
.r-bento__cell--photo img { width:100%; height:100%; object-fit:cover; display:block; }
.r-bento__overlay { position:absolute; inset:0; background:linear-gradient(160deg,rgba(26,107,124,.75) 0%,rgba(0,0,0,.55) 100%); display:flex; flex-direction:column; justify-content:flex-end; padding:36px 36px 32px; }
.r-bento__overlay--bottom { background:linear-gradient(to top,rgba(0,0,0,.72) 0%,transparent 60%); justify-content:flex-end; padding:24px 28px; }
.r-bento__badge { display:inline-flex; align-items:center; gap:6px; background:#c8614a; color:#fff; font-size:13px; font-weight:700; padding:6px 14px; border-radius:20px; margin-bottom:16px; align-self:flex-start; }
.r-bento__overlay h3 { font-size:24px; font-weight:700; color:#fff; margin-bottom:10px; line-height:1.3; }
.r-bento__overlay--bottom h3 { font-size:18px; margin-bottom:0; }
.r-bento__overlay p { font-size:15px; color:rgba(255,255,255,.88); line-height:1.7; }
.r-bento__cell--text { padding:36px 32px; display:flex; flex-direction:column; justify-content:center; }
.r-bento__cell--petrol { background:var(--r-petrol); }
.r-bento__cell--petrol h3 { font-size:20px; font-weight:700; color:#fff; margin-bottom:12px; }
.r-bento__cell--petrol p { font-size:15px; color:rgba(255,255,255,.78); line-height:1.7; }
.r-bento__cell--ivory { background:#faf8f5; border:1px solid #ece9e3; }
.r-bento__cell--ivory h3 { font-size:20px; font-weight:700; color:var(--r-petrol); margin-bottom:12px; }
.r-bento__cell--ivory p { font-size:15px; color:#666; line-height:1.7; }
.r-bento__cell--terra { background:#c8614a; }
.r-bento__cell--terra h3 { font-size:20px; font-weight:700; color:#fff; margin-bottom:12px; }
.r-bento__cell--terra p { font-size:15px; color:rgba(255,255,255,.85); line-height:1.7; }
@media(max-width:900px){ .r-bento__grid { grid-template-columns:1fr 1fr; } .r-bento__cell--large { grid-column:span 2; } }
@media(max-width:600px){ .r-bento__grid { grid-template-columns:1fr; } .r-bento__cell--large { grid-column:span 1; min-height:260px; } .r-bento__cell--photo { min-height:220px; } }

/* ══════════════════════════════════════
   VERSION B — CHECKLIST + GRANDE PHOTO
══════════════════════════════════════ */
.r-checklist { padding:100px 0; background:#faf8f5; }
.r-checklist__inner { max-width:1280px; margin:0 auto; padding:0 40px; }
.r-checklist__layout { display:grid; grid-template-columns:1fr 1fr; gap:120px; align-items:stretch; margin-top:20px; }
.r-checklist__list { list-style:none; padding:0; margin:32px 0 0; display:flex; flex-direction:column; gap:28px; }
.r-checklist__list li { display:flex; gap:26px; align-items:flex-start; }
.r-check { flex-shrink:0; width:32px; height:32px; border-radius:50%; background:#c8614a; color:#fff; font-size:15px; font-weight:700; display:flex; align-items:center; justify-content:center; margin-top:2px; }
.r-checklist__list strong { display:block; font-size:17px; font-weight:700; color:var(--r-petrol); margin-bottom:6px; }
.r-checklist__list p { font-size:15px; color:#666; line-height:1.75; margin:0; }
.r-checklist__reassurance { margin-top:36px; font-size:14px; color:#555; line-height:1.7; font-style:italic; padding-top:24px; border-top:1px solid #ece9e3; }
.r-checklist__photo { border-radius:16px; overflow:hidden; box-shadow:0 20px 60px rgba(26,107,124,.18); align-self:stretch; }
.r-checklist__photo img { width:100%; height:100%; object-fit:cover; object-position:20% center; display:block; min-height:400px; }
.r-checklist .r-section-h2 { font-size:clamp(32px,3.8vw,52px); }
@media(max-width:900px){ .r-checklist__layout { grid-template-columns:1fr; gap:48px; } }

/* ══════════════════════════════════════
   VERSION C — Z-PATTERN ALTERNANT
══════════════════════════════════════ */
.r-zpattern { padding:100px 0; background:#fff; }
.r-zpattern__inner { max-width:1280px; margin:0 auto; padding:0 40px; }
.r-zpattern__inner > .r-section-tag,
.r-zpattern__inner > .r-section-h2 { display:block; }
.r-zpattern__inner > .r-section-h2 { margin-bottom:72px; }
.r-zrow { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center; margin-bottom:80px; }
.r-zrow:last-child { margin-bottom:0; }
.r-zrow__img { border-radius:16px; overflow:hidden; box-shadow:0 16px 48px rgba(26,107,124,.12); }
.r-zrow__img img { width:100%; object-fit:cover; display:block; aspect-ratio:3/2; }
.r-zrow__text h3 { font-size:28px; font-weight:700; color:var(--r-petrol); margin-bottom:20px; line-height:1.25; }
.r-zrow__text h3::before { content:''; display:block; width:40px; height:3px; background:#c8614a; border-radius:2px; margin-bottom:20px; }
.r-zrow__text p { font-size:16px; color:#555; line-height:1.85; }
.r-zrow--reverse { direction:rtl; }
.r-zrow--reverse > * { direction:ltr; }
@media(max-width:900px){ .r-zrow { grid-template-columns:1fr; gap:32px; direction:ltr; } .r-zrow--reverse { direction:ltr; } }

/* ══════════════════════════════════════
   NOTRE HISTOIRE — fond bleu pétrole
   (remplace l'ardoise foncé #2d3b4f)
══════════════════════════════════════ */
.r-about { padding:110px 0; background:var(--r-petrol); }
.r-about__inner { max-width:1280px; margin:0 auto; padding:0 40px; display:grid; grid-template-columns:480px 1fr; gap:80px; align-items:stretch; }
.r-about__title { font-size:clamp(30px,3.5vw,48px); color:#fff; margin-bottom:24px; }
.r-about__intro { font-size:19px; color:rgba(255,255,255,.92); line-height:1.75; margin-bottom:20px; font-weight:300; }
.r-about__text p { font-size:16px; color:rgba(255,255,255,.82); line-height:1.75; margin-bottom:16px; }
.r-about__values { margin-top:40px; display:flex; flex-direction:column; gap:24px; }
.r-about__value { display:flex; gap:16px; }
.r-about__value-icon { display:none; }
.r-about__value strong { display:block; font-size:17px; font-weight:700; color:#fff; margin-bottom:4px; }
.r-about__value p { font-size:15px; color:rgba(255,255,255,.82); line-height:1.6; }

/* Stack photos */
.r-about__photo-stack { position:relative; height:460px; margin-bottom:32px; }
.r-about__card { border-radius:6px; object-fit:cover; box-shadow:0 20px 60px rgba(0,0,0,.35); position:absolute; }
.r-about__card--back { width:72%; height:100%; left:0; top:0; filter:brightness(.75); }
/* Bordure terracotta sur la photo de devant */
.r-about__card--front { width:65%; height:85%; right:0; bottom:0; border:4px solid var(--r-terra); }
/* Photo unique — variante sans stack */
.r-about__single-img { width:100%; height:100%; object-fit:cover; object-position:center top; border-radius:10px; box-shadow:0 24px 64px rgba(0,0,0,.45); display:block; border:3px solid rgba(255,255,255,.15); }
.r-about__visual { display:flex; }

/* Stats grid (fond translucide blanc sur pétrole) */
.r-about__stats-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(255,255,255,.1); border-radius:6px; overflow:hidden; margin-top:0; }
.r-about__divider { border-top:1px solid rgba(250,248,245,.25); margin:40px 0; }
.r-about__stat { background:rgba(255,255,255,.05); padding:20px 24px; text-align:center; }
/* Chiffres clés — blanc sur fond pétrole pour contraste WCAG */
.r-about__stat strong { display:block; font-family:'Playfair Display',serif; font-size:36px; font-weight:700; color:#fff; }
.r-about__stat span { font-size:13px; text-transform:uppercase; letter-spacing:.08em; color:rgba(255,255,255,.75); }

/* ══════════════════════════════════════
   TÉMOIGNAGES — fond warm crème
══════════════════════════════════════ */
.r-testis { padding:100px 0; background:var(--r-warm); }
.r-testis__inner { max-width:1280px; margin:0 auto; padding:0 40px; }
.r-testis__title { font-size:clamp(28px,3vw,40px); color:var(--r-text); margin-bottom:56px; max-width:600px; }
.r-testis__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; }
.r-testi-card { background:#fff; border-radius:8px; padding:36px 32px; border:1px solid var(--r-border); transition:box-shadow .3s,transform .3s; }
.r-testi-card:hover { box-shadow:0 8px 28px rgba(26,107,124,.1); transform:translateY(-3px); }
/* Bordure photo — terracotta */
.r-testi-card img { width:84px; height:84px; border-radius:50%; object-fit:cover; margin-bottom:18px; border:3px solid var(--r-terra); }
.r-testi-card__stars { color:#f59e0b; font-size:17px; letter-spacing:3px; margin-bottom:14px; }
.r-testi-card blockquote { font-family:'Playfair Display',serif; font-style:italic; font-size:16px; color:var(--r-text); line-height:1.75; margin-bottom:14px; }
.r-testi-card cite { font-size:16px; font-weight:700; color:var(--r-muted); font-style:normal; }

/* ══════════════════════════════════════
   BLOG
══════════════════════════════════════ */
.r-blog { padding:80px 0; background:var(--r-blue-lt); border-top:1px solid var(--r-border); }
.r-blog__inner { max-width:1280px; margin:0 auto; padding:0 40px; }
.r-blog__header { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:36px; }
.r-blog__title { font-family:'Playfair Display',Georgia,serif; font-size:clamp(24px,3vw,36px); color:var(--r-text); }
.r-blog__more {
  color:var(--r-petrol);
  font-size:16px;
  font-weight:600;
  transition:opacity .2s;
  min-height:44px;
  display:inline-flex;
  align-items:center;
}
.r-blog__more:hover { opacity:.7; }
.r-blog__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.r-bcard { background:var(--r-ivory); border:1px solid var(--r-border); border-radius:14px; overflow:hidden; transition:box-shadow .25s,transform .25s; }
.r-bcard:hover { box-shadow:0 10px 36px rgba(26,107,124,.12); transform:translateY(-4px); }
.r-bcard__img { height:180px; overflow:hidden; }
.r-bcard__img img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.r-bcard:hover .r-bcard__img img { transform:scale(1.06); }
.r-bcard__body { padding:20px; display:flex; flex-direction:column; gap:8px; }
/* Catégorie article — terracotta */
.r-bcard__cat { font-size:14px; color:var(--r-terra); font-weight:700; letter-spacing:.06em; text-transform:uppercase; text-decoration:none; }
a.r-bcard__cat:hover { opacity:.75; }
.r-bcard__title a { color:var(--r-text); font-family:'Playfair Display',serif; font-size:17px; font-weight:600; line-height:1.3; transition:color .2s; }
.r-bcard__title a:hover { color:var(--r-petrol); }
.r-bcard__date { font-size:15px; color:var(--r-muted); }

/* ══════════════════════════════════════
   CTA FINAL — fond bleu pétrole
   Supporte une photo de fond optionnelle via style inline
══════════════════════════════════════ */
.r-cta {
  padding: 90px 40px;
  background: var(--r-petrol);
  background-size: cover;
  background-position: center top;
  text-align: center;
  position: relative;
}
/* Overlay sombre quand une photo de fond est présente */
.r-cta::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(15, 34, 41, 0.50);
  pointer-events: none;
}
.r-cta__inner { max-width:640px; margin:0 auto; position:relative; z-index:1; }
.r-cta h2 { font-size:clamp(28px,3.5vw,44px); color:#fff; margin-bottom:16px; }
.r-cta p { color:rgba(255,255,255,.75); font-size:17px; margin-bottom:36px; }

/* Bouton CTA final — terracotta sur fond pétrole */
.r-cta__btn {
  display: inline-block;
  background: var(--r-terra);
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  padding: 18px 52px;
  border-radius: 4px;
  transition: background .2s, transform .2s, box-shadow .2s;
  box-shadow: 0 4px 18px rgba(200,92,56,.35);
  position: relative;
  overflow: hidden;
}
.r-cta__btn:hover { background: var(--r-terra-dk); transform: translateY(-2px); box-shadow: 0 8px 28px rgba(200,92,56,.5); }
.r-cta__btn::after { content:''; position:absolute; inset:0; background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.18) 50%,transparent 70%); transform:translateX(-100%); transition:transform .5s; }
.r-cta__btn:hover::after { transform:translateX(100%); }
.r-cta__note { font-size:15px; color:rgba(255,255,255,.82); margin-top:16px; }

/* ══════════════════════════════════════
   FOOTER — fond très sombre dérivé pétrole
══════════════════════════════════════ */
.r-footer { background:var(--r-dark); padding:56px 0 24px; }
.r-footer__inner { max-width:1280px; margin:0 auto; padding:0 40px; display:grid; grid-template-columns:2fr 1fr 1fr; gap:48px; padding-bottom:32px; border-bottom:1px solid rgba(255,255,255,.07); }
.r-footer__logo { display:inline-flex; line-height:0; margin-bottom:14px; }
.r-footer__logo img { height:30px; width:auto; display:block; filter:brightness(0) invert(1); opacity:.9; }
.r-footer__brand p { color:rgba(255,255,255,.65); font-size:15px; line-height:1.6; }
.r-footer__col h4 { font-size:13px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.7); margin-bottom:16px; }
.r-footer__col ul { list-style:none; display:flex; flex-direction:column; gap:10px; }
.r-footer__col ul a {
  color:rgba(255,255,255,.8);
  font-size:15px;
  transition:color .2s;
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:4px 0;
}
.r-footer__col ul a:hover { color:var(--r-terra-lt); }
.r-footer__bottom { max-width:1280px; margin:0 auto; padding-top:20px; text-align:center; }
.r-footer__bottom p { color:rgba(255,255,255,.58); font-size:14px; }

/* ══════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════ */
@media(max-width:1100px) {
  .r-hero { grid-template-columns:1fr 1fr; }
  .r-hero__content { padding:60px 48px; }
  .r-about__inner { grid-template-columns:1fr 380px; gap:56px; }
}
@media(max-width:900px) {
  /* Lever le fold plein-écran en mobile : le contenu s'affiche en hauteur naturelle */
  .r-fold { height:auto; overflow:visible; }
  .r-hero { grid-template-columns:1fr; grid-template-rows:auto; overflow:visible; }
  .r-hero__photo { min-height:400px; }
  .r-hero__content { padding:48px 32px; overflow:visible; }
  .r-how__steps { grid-template-columns:1fr; gap:48px; }
  .r-about__inner { grid-template-columns:1fr; }
  .r-about__photo-stack { height:320px; }
  .r-testis__grid { grid-template-columns:1fr; }
  .r-features__grid { grid-template-columns:1fr 1fr; gap:24px; }
  .r-footer__inner { grid-template-columns:1fr; gap:32px; }
  .r-header__main { padding:12px 20px; }
  .r-nav { display:none; }
  .r-press { flex-direction:column; gap:12px; align-items:flex-start; }
  .r-blog__grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:640px) {
  .r-hero__content { padding:32px 20px; }
  .r-how__inner,.r-testis__inner,.r-about__inner,.r-features__inner,.r-cta { padding-left:20px; padding-right:20px; }
  .r-features__grid { grid-template-columns:1fr; }
  .r-hero__local-inline { margin-top:18px; font-size:17px; padding-top:14px; }
  .r-footer { padding:40px 20px 20px; }
  .r-footer__inner { padding:0 0 24px; }
  .r-footer__col ul a { min-height:44px; padding:10px 0; }
  .r-blog { padding:56px 0; }
  .r-blog__inner { padding:0 20px; }
  .r-blog__grid { grid-template-columns:1fr; }
}

/* ── Burger mobile (LP1c-bis – fond ivoire, accents pétrole/terracotta) ── */
@media(max-width:768px) {
  .r-header__top, .r-nav, .r-header__login { display:none; }
  .r-header__main { justify-content:space-between; }
  .lp1c-bis .sb-burger { color:var(--r-text); background:transparent; border-radius:6px; }
  .lp1c-bis .sb-burger:hover { background:var(--r-blue-lt); color:var(--r-petrol); }
  .sb-drawer a,
  .sb-mobile-drawer a,
  .sb-mobile-drawer__secondary a,
  .r-topbar a {
    font-size:16px;
    min-height:44px;
    display:inline-flex;
    align-items:center;
    padding-top:10px;
    padding-bottom:10px;
  }
  .sb-mobile-drawer__secondary li > a {
    font-size:14px !important;
    min-height:44px !important;
    display:inline-flex !important;
    align-items:center !important;
    padding:10px 14px !important;
  }
}
@media(max-width:560px) {
  .r-header__ctas { display:none; }
}
