/* entreprise.mrib.be — thème « Marine immersif » (modèle C, identique au nouveau multi-risk-insurance.be)
   Chargé APRÈS dossiers.css, uniquement sur les pages clients (base_client.html).
   L'espace de gestion du cabinet garde son apparence. */
:root{
  --nuit:#0d1630;--nuit-2:#111c3b;--surface:#17234a;--surface-2:#1d2b58;--champ:#0f1a38;
  --bord:#2a3966;--bord-2:#3a4a75;--turq:#25cdc7;--orange:#f39a1e;
  --texte:#dde4f3;--doux:#9fb0d4;
  /* variables de dossiers.css, redéfinies */
  --teal:#25cdc7;--teal-deep:#1fb8b3;--teal-dark:#08102a;--navy:#ffffff;--accent:#25cdc7;
  --mint:#111c3b;--mint-2:#2a3966;--gray:#9fb0d4;--line:#2a3966;--white:#17234a;
  --ok:#4ade80;--ok-bg:rgba(74,222,128,.14);--warn:#fbbf24;--warn-bg:rgba(251,191,36,.12);--err:#f87171;--err-bg:rgba(248,113,113,.13);
  --radius:22px;
}
html{background:var(--nuit)}
body{font-family:'Manrope',system-ui,sans-serif;color:var(--texte);background:var(--nuit);color-scheme:dark;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Manrope',system-ui,sans-serif;color:#fff;font-weight:800;letter-spacing:-.02em}
h1{text-transform:none;font-size:clamp(28px,3.4vw,40px);letter-spacing:-.03em}
a{color:var(--turq)} a:hover{color:#fff}
strong{color:#fff}
::selection{background:var(--turq);color:var(--nuit)}
:focus-visible{outline:3px solid var(--turq);outline-offset:3px}
.wrap{max-width:1260px}

/* En-tête : plus de coordonnées en haut (elles sont dans le pied de page) */
.topbar{background:#08102a;color:var(--doux)}
.topbar .wrap>span{display:none}
.topbar a.retour-site{background:none;border:0;color:#c9d3ea;padding:0;font-weight:600}
.topbar a.retour-site:hover{background:none;color:var(--turq)}
header.site{background:rgba(13,22,48,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(58,74,117,.5);position:sticky;top:0;z-index:50}
header.site .wrap{min-height:120px}
.logo{font-family:'Manrope',sans-serif;color:#fff;text-transform:none;letter-spacing:0;font-weight:800;font-size:17px}
.logo img{height:100px;width:auto;content:url("img/logo-mri-blanc.5cf52f423399.png")}
.logo .sep{background:var(--bord-2)}
.header-actions a:not(.btn){color:#c9d3ea;text-decoration:none;font-weight:600}
.header-actions a:not(.btn):hover{color:var(--turq)}

/* Boutons en pilule */
.btn{font:800 15px 'Manrope',sans-serif;border-radius:999px;padding:13px 26px;min-height:48px}
.btn-sm{padding:9px 18px;font-size:14px;min-height:40px}
.btn-teal,.btn-accent{background:var(--turq);color:var(--nuit)}
.btn-teal:hover,.btn-accent:hover{background:#fff;color:var(--nuit)}
.btn-dark{background:var(--surface-2);color:#fff}
.btn-dark:hover{background:var(--bord-2);color:#fff}
.btn-outline{background:transparent;color:#fff;border-color:var(--bord-2);font-weight:600}
.btn-outline:hover{border-color:var(--turq);color:var(--turq)}
.btn-link{color:var(--turq)}
.btn-danger{color:var(--err)}

/* Mise en page */
main{padding:40px 0 70px}
.card{background:var(--surface);border:1px solid var(--bord);border-radius:var(--radius);padding:30px}
.hero{background:var(--nuit);border-bottom:1px solid var(--bord);padding:56px 0 48px}
.hero p.lead{color:#c9d3ea;font-size:19px}
.hero-band{border-top:0}
.steps li{background:var(--surface);border:1px solid var(--bord);border-radius:var(--radius);padding:22px}
.steps li::before{background:none;color:var(--turq);font-size:34px;font-weight:800;width:auto;height:auto;display:block;margin-bottom:6px;place-items:initial}
.garantie{background:var(--surface);border-color:var(--bord)}
.muted{color:var(--doux)}

/* Messages et avis */
.messages li{background:var(--surface);border-color:var(--bord);color:var(--texte)}
.messages .success{background:var(--ok-bg);border-color:rgba(74,222,128,.4)}
.messages .error{background:var(--err-bg);border-color:rgba(248,113,113,.45)}
.notice{background:var(--warn-bg);border-color:rgba(251,191,36,.4);color:var(--texte)}
.notice.info{background:var(--nuit-2);border-color:var(--bord)}

/* Progression, sections, badges */
.progress{background:var(--bord)}
.progress span{background:var(--turq)}
.sections .titre a{color:#fff}
.sections .titre a:hover{color:var(--turq)}
.badge.vide{background:var(--nuit-2);color:var(--doux)}
.badge.statut{background:rgba(37,205,199,.15);color:var(--turq)}

/* Champs de formulaire */
input[type=text],input[type=url],input[type=tel],input[type=email],input[type=date],input[type=password],input[type=number],input[type=file],input:not([type]),select,textarea{
  font:15px 'Manrope',sans-serif;color:#fff;background:var(--champ);border:1.5px solid var(--bord-2);border-radius:12px;padding:12px 14px}
input::placeholder,textarea::placeholder{color:#7f8fb5}
input:focus,select:focus,textarea:focus{border-color:var(--turq);box-shadow:0 0 0 3px rgba(37,205,199,.25)}
input:disabled,select:disabled,textarea:disabled{background:var(--nuit-2);color:var(--doux)}
select option{background:var(--surface);color:#fff}
.form-row > label,.form-row .label{color:#fff}
.aide{color:var(--doux)}
.req{color:var(--orange)}
.choix input,.consent input{accent-color:var(--turq)}
.check-carte label{border-color:var(--bord-2);background:var(--champ)}
.check-carte label:has(input:checked){border-color:var(--turq);background:rgba(37,205,199,.12)}

/* Tableaux à lignes répétables */
.table-wrap{border-color:var(--bord)}
table.saisie th{background:var(--nuit-2);color:#fff}
table.saisie td{border-top-color:var(--bord)}
.btn-retirer{color:var(--doux)}

/* Récapitulatif et listes */
dl.recap dt{color:var(--doux)}
dl.recap dd.vide{color:#7f8fb5}
dl.recap dt.rubrique{font-family:'Manrope',sans-serif;color:var(--turq)}
table.liste th{color:var(--doux)}
table.liste tr:hover td{background:var(--nuit-2)}

/* Questionnaire par étapes */
.q-titre{color:var(--turq);border-bottom-color:var(--bord)}
.sommaire{background:var(--nuit-2)}
.sommaire a,.btn-carte{background:transparent;border-color:var(--bord-2);color:#fff}
.sommaire a:hover,.btn-carte:hover{border-color:var(--turq);color:var(--turq)}
.parcours-gauche{background:var(--nuit-2);border-right-color:var(--bord)}
.parcours-entete{background:var(--surface);border-bottom-color:var(--bord)}
.parcours-nav .pg-titre{font-family:'Manrope',sans-serif;color:#7f8fb5}
.parcours-nav .pg.ouvert .pg-titre{color:#fff}
.parcours-nav ul{border-left-color:var(--bord)}
.parcours-nav ul.pages{border-left-color:var(--turq)}
.parcours-nav li a{color:var(--doux)}
.parcours-nav li a:hover{background:var(--surface);color:#fff}
.parcours-nav li.courant>a{color:#fff}
.parcours-nav ul.pages li.courant a{background:var(--surface-2);color:var(--turq)}
.pt{border-color:var(--bord-2);background:var(--nuit-2)}
.pt.incomplet{background:var(--nuit-2);border-color:var(--err);box-shadow:none}
.q-lignes .q-bloc>.form-row{border-bottom-color:var(--bord)}
.q-lignes .q-bloc>.form-row>label,.q-lignes .q-bloc>.form-row>.label{color:#e7ecf7}
.q-lignes .q-bloc[data-si-champ]:not([hidden])>.form-row{background:linear-gradient(90deg,var(--turq) 0,var(--turq) 3px,transparent 3px)}
.barre-actions{background:rgba(23,35,74,.96);border-top-color:var(--bord)}

/* Pied de page */
footer.site-mri{background:#08102a;color:var(--doux);border-top:1px solid var(--bord);margin-top:20px}
footer.site-mri a{color:#dde4f3}
footer.site-mri a:hover{color:var(--turq)}
footer.site-mri h4{font-family:'Manrope',sans-serif;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#fff}
footer.site-mri li{font-family:'Manrope',sans-serif;font-weight:500;padding-left:0;letter-spacing:0}
footer.site-mri li::before{content:none}
.foot-contact .ico{color:var(--turq)}
.foot-social a{border-color:var(--bord-2)}
.foot-social a:hover{background:var(--turq);color:var(--nuit);border-color:var(--turq)}
.foot-bottom{border-top:1px solid var(--bord)}
.foot-bottom .foot-logo{content:url("img/logo-mri-blanc.5cf52f423399.png");background:none;padding:0;height:60px;width:auto}
.foot-legal{color:var(--doux);text-align:left}
.foot-legal a{color:#dde4f3;font-weight:600;text-decoration:none}
.foot-legal a:hover{color:var(--turq)}
.foot-legal .foot-note{color:#7f8fb5}

/* Catalogue /demande/ : la barre de menu collante se place sous l'en-tête collant */
.ch-menu{top:128px}

@media (max-width:760px){
  .logo img{height:64px}
  header.site .wrap{min-height:88px}
  .card{padding:20px}
  .foot-legal{text-align:center}
}
@media print{
  html,body{background:#fff;color:#000;color-scheme:light}
  h1,h2,h3,h4,strong,.form-row > label{color:#000}
  .card{background:#fff;border:none}
  dl.recap dt,.muted{color:#444}
}
