/* Compléments communs aux pages publiques de Réception24h. */
.home-nav { display:flex; align-items:center; gap:24px; font-size:14px; font-weight:650; }
.home-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:32px; }
.action-primary,.action-secondary { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 22px; border:2px solid #4f46e5; border-radius:11px; font-size:15px; font-weight:750; line-height:1.3; text-align:center; }
.action-primary { color:white; background:#4f46e5; }
.action-primary:hover { background:#4338ca; }
.action-secondary { color:#4338ca; background:white; }
.action-secondary:hover { background:#eef2ff; }
.home-section { padding:78px 0; }
.home-section h2 { max-width:760px; margin:0 0 32px; }
.section-eyebrow { color:#4f46e5; font-size:12px; font-weight:800; letter-spacing:1px; text-transform:uppercase; }
.info-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.info-grid article { padding:26px; border:1px solid #e2e8f0; border-radius:18px; background:white; }
.info-grid h3 { margin:12px 0 8px; color:#0f172a; font-size:20px; line-height:1.3; }
.info-grid p { color:#475569; font-size:15px; margin:0; }
.step-label { color:#4f46e5; font-size:13px; font-weight:750; }
.home-pricing { display:flex; gap:32px; align-items:center; justify-content:space-between; margin-top:36px; padding:30px; border-radius:18px; background:#f6f5fd; }
.home-pricing h3 { margin:0 0 8px; font-size:23px; }
.home-pricing p { max-width:650px; color:#475569; margin:0 0 10px; }
.home-pricing .section-eyebrow { color:#4f46e5; }
.home-pricing .action-secondary { flex-shrink:0; }
.home-data-link a,.inline-data-link a,.privacy-link { color:#4338ca; text-decoration:underline; text-underline-offset:4px; }
.home-data-link { margin:26px 0 0; }
.demo-invite { display:flex; justify-content:space-between; align-items:center; gap:28px; margin-top:28px; padding:26px 30px; border:1px solid #c7d2fe; border-radius:18px; background:#eef2ff; }
.demo-invite h3 { margin:0 0 6px; font-size:22px; color:#0f172a; }
.demo-invite p { margin:0; color:#475569; font-size:15px; max-width:650px; }
.demo-invite .btn { flex-shrink:0; }
.example-caption { color:#64748b; font-size:13px; margin:20px 0 0; }
.offer-details { display:flex; flex-wrap:wrap; gap:8px 24px; padding:0; margin:25px 0 0; color:#475569; list-style:none; font-size:14px; }
.offer-details li::before { content:'✓'; color:#4f46e5; margin-right:7px; }
.pricing-block { margin-top:56px; scroll-margin-top:100px; }
.pricing-block h2 { margin-bottom:24px; }
.pricing-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.pricing-card { padding:30px; border:1px solid #c7d2fe; border-radius:18px; background:#fff; }
.pricing-card h3 { margin:0 0 18px; color:#0f172a; font-size:22px; line-height:1.3; }
.pricing-card .plan-price { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px; margin:0 0 16px; color:#0f172a; }
.plan-price strong { color:#4338ca; font-size:42px; font-weight:800; line-height:1.2; letter-spacing:-1.3px; white-space:nowrap; }
.plan-price span { color:#475569; font-size:15px; white-space:nowrap; }
.pricing-card .plan-detail { color:#475569; font-size:15px; line-height:1.6; margin:8px 0 0; }
.pricing-card .plan-detail strong { color:#0f172a; }
.pricing-installation { margin:22px 0 0; padding:20px 24px; border-radius:14px; color:#475569; background:#f6f5fd; font-size:15px; line-height:1.65; }
.pricing-installation strong { color:#0f172a; }
.pricing-actions { margin-top:24px; }
.inline-data-link { color:#475569; font-size:14px; margin-top:24px; }
.public-footer { padding:34px 0 24px; background:#080e20; color:#cbd5e1; }
.footer-brand { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; }
.public-footer .footer-logo { color:white; font-size:20px; font-weight:800; }
.public-footer .footer-nav { display:flex; flex-wrap:wrap; justify-content:flex-start; gap:8px 24px; margin-top:22px; padding:0; min-height:0; border:0; }
.public-footer a { min-height:36px; display:inline-flex; align-items:center; font-size:14px; }
.public-footer a:hover { color:white; text-decoration:underline; text-underline-offset:4px; }
.public-footer .footer-fine { text-align:center; font-size:12px; color:#94a3b8; margin:24px 20px 0; }
.nav-menu { gap:18px; }
.nav-links { gap:18px; }
.nav-links a,.nav-menu>a { white-space:nowrap; }
.nav-inner { gap:18px; }
.site-header .sector-label { display:none; }
.legal-main { max-width:820px; padding-top:64px; padding-bottom:70px; }
.legal-main h1 { margin:12px 0 18px; font-size:clamp(34px,5vw,48px); line-height:1.13; letter-spacing:-1.2px; }
.legal-main h2 { font-size:23px; line-height:1.3; margin:35px 0 12px; letter-spacing:-.3px; }
.legal-main p,.legal-main li { color:#475569; }
.legal-main li { margin:8px 0; }
.legal-main a:not(.action-primary):not(.action-secondary) { color:#4338ca; text-decoration:underline; text-underline-offset:4px; }
.legal-lead { font-size:18px; }
.legal-notice { padding:22px; background:#f6f5fd; border-radius:16px; }
.legal-notice p { margin:0; }
.preference-status { font-size:14px; min-height:24px; }
@media(max-width:1190px) {
  .site-header .menu-toggle { display:inline-flex; }
  .site-header .nav-inner { min-height:68px; }
  .site-header .nav-menu { position:absolute; top:calc(100% + 1px); left:0; right:0; display:none; align-items:stretch; padding:18px 20px 22px; background:white; border-bottom:1px solid #e2e8f0; box-shadow:0 18px 30px rgba(15,23,42,.08); }
  .site-header.menu-open .nav-menu { display:grid; gap:17px; }
  .site-header .nav-links { display:grid; gap:0; }
  .site-header .nav-links a { padding:11px 3px; border-bottom:1px solid #f1f5f9; }
  .site-header .sector-switch { width:fit-content; }
  .site-header .nav-cta { width:100%; }
}
@media(max-width:760px) {
  .info-grid { grid-template-columns:1fr; }
  .pricing-grid { grid-template-columns:1fr; gap:16px; }
  .pricing-card { padding:24px; }
  .pricing-installation { padding:20px; }
  .home-pricing,.demo-invite { flex-direction:column; align-items:stretch; padding:24px; }
  .home-section { padding:56px 0; }
  .home-nav { gap:14px; font-size:12px; }
  .public-footer .footer-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 16px; }
  .public-footer .footer-fine { text-align:left; margin-left:16px; }
  .legal-main { padding-top:40px; }
}
@media(max-width:380px) {
  .home-nav>a:first-child { display:none; }
  .public-footer .footer-nav { grid-template-columns:1fr; }
}
