/* LECLERC Services-conseils · ajustements du 2026-11-03
   Complète style.css et bibliotheque.css sans les modifier. */

/* Lisibilité : textes secondaires portés à 14-15 px */
.small{font-size:14px}
.service-card p,.case p,.sector-card p,.step p{font-size:15px}
.trust b{font-size:14px}.trust span{font-size:13.5px}
.footer p{font-size:14px}.footer a{font-size:14px}
a.inline{text-decoration:underline;text-underline-offset:3px}

/* Pied de page : libellés de colonnes (remplacent les H3) */
.footer .footer-title{color:#dce5eb;font-size:12px;text-transform:uppercase;letter-spacing:.11em;font-weight:750;margin:0 0 14px}
.footer .footer-brand{margin-bottom:18px}
.footer a.inline{display:inline;margin:0}

/* Héros : un exemple de livrable remplace le second logo */
.hero-grid{padding-block:96px 100px}
.hero-visual.livrable{margin:0;justify-self:center;max-width:330px;padding:0}
.hero-visual.livrable img{aspect-ratio:auto;width:100%;border:1px solid rgba(214,224,231,.35);box-shadow:0 24px 50px rgba(0,0,0,.35)}
.hero-visual.livrable figcaption{margin-top:12px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#aebfcb;text-align:center}

/* Pages internes : bandeau d'introduction plus compact */
.page-hero{padding:58px 0 60px}
.page-hero h1{font-size:clamp(34px,4.4vw,56px)}

/* Formats d'entrée */
.format-card{background:#fff;border:1px solid var(--line);padding:28px 26px;display:flex;flex-direction:column}
.format-card p{color:var(--muted);font-size:15px}
.format-card dl{margin:auto 0 0;border-top:1px solid var(--line);padding-top:16px;font-size:14px}
.format-card dt{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:750;color:#5c7b8c;margin-top:10px}
.format-card dt:first-child{margin-top:0}
.format-card dd{margin:3px 0 0;color:var(--ink2)}
.format-more{margin:22px 0 0;font-size:14px;font-weight:700;color:#2b5677}

.table-wrap{overflow-x:auto;margin:6px 0 18px}
.format-table{width:100%;border-collapse:collapse;background:#fff;font-size:15px;min-width:640px}
.format-table th,.format-table td{border:1px solid var(--line);padding:14px 16px;text-align:left;vertical-align:top}
.format-table thead th{background:#e8eef2;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#304857}
.format-table tbody th{font-weight:700;width:24%}

/* Bandeaux */
.banner-light{background:#fff;border:1px solid var(--line)}
.section-last{padding-bottom:95px}

/* Services */
.service-blocks .content-block:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.content-block .lead{color:var(--ink2)}
.sector-card h3{margin-top:14px}

/* Cadre des mandats */
.cadre-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:10px 0 22px}
.cadre-col{background:#fff;border:1px solid var(--line);padding:28px}
.cadre-col:first-child{border-top:3px solid var(--accent)}
.cadre-col:last-child{border-top:3px solid #9aa9b3}
.cadre-col ul{margin:0}.cadre-col li{font-size:15px;margin-bottom:10px}

/* Contact */
.contact-steps{list-style:none;counter-reset:etape;padding:0;margin:8px 0 26px}
.contact-steps li{counter-increment:etape;position:relative;padding:14px 0 14px 46px;border-bottom:1px solid var(--line)}
.contact-steps li:before{content:counter(etape);position:absolute;left:0;top:14px;width:30px;height:30px;border:1px solid #9dafbd;display:grid;place-items:center;font-size:13px;font-weight:700;color:#365c77}
.contact-steps b{display:block;font-size:15px}.contact-steps span{display:block;color:var(--muted);font-size:14px}
.email-card h3{margin-bottom:8px}.email-card p{color:var(--muted);font-size:15px}
.email-card .btn{overflow-wrap:anywhere}
.form-or{margin:26px 0 18px;padding-top:22px;border-top:1px solid var(--line);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#627786}
.form-status{font-size:14px;color:#36566c;margin:14px 0 0}
.form-status[data-state="error"]{color:#8a3c32}
.hp-field{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}

/* Confidentialité */
.policy{max-width:780px}
.policy h2{font-size:clamp(22px,2.4vw,28px);margin:38px 0 12px}
.policy h2:first-child{margin-top:0}
.policy p{color:var(--ink2)}

.banner .btn{white-space:nowrap}
.banner-actions{display:flex;flex-direction:column;gap:10px;flex-shrink:0}
.banner-actions .btn-outline{background:#fff}

/* Mobile */
@media(max-width:800px){
  .two-panel{gap:20px}
  .service-card{min-height:0;padding:24px 22px 18px}
  .service-card .index{margin-bottom:14px}
  .sector-card{min-height:0;padding:26px}
  .banner .btn{white-space:normal}
  .banner-actions{width:100%}
  .contact-grid{gap:34px}
  .contact-grid>.contact-panel{order:-1}
  .hero-visual.livrable{display:none}
  .hero-grid{padding-block:64px 66px}
  .cadre-grid{grid-template-columns:1fr}
  .footer a{padding:9px 0;margin-bottom:2px}
  .case a,.format-more a,.service-card .arrow{display:inline-block;padding:10px 0}
  .section-last{padding-bottom:65px}
}
@media(max-width:540px){
  .section-last{padding-bottom:51px}
  .footer-cols{grid-template-columns:1fr 1fr;gap:26px 20px}
  .footer-cols>div:first-child{grid-column:1/-1}
}

/* Tableau des formats : cartes empilées sur mobile */
@media(max-width:640px){.table-wrap{overflow:visible}.format-table{min-width:0;border:0;background:none}.format-table thead{display:none}.format-table,.format-table tbody,.format-table tr,.format-table th,.format-table td{display:block;width:100%}.format-table tr{background:#fff;border:1px solid var(--line);margin-bottom:12px}.format-table th,.format-table td{border:0;border-bottom:1px solid var(--line);padding:11px 15px}.format-table tbody th{width:100%;font-size:16px;background:#e8eef2}.format-table td:last-child{border-bottom:0}.format-table td:before{content:attr(data-label);display:block;font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:#5c7b8c;margin-bottom:3px}}
