.mobile-label{display:none}
.retrieve-nav{color:#8f2638;font-weight:650}
.retrieve-wrap{padding-bottom:80px}
.retrieve-hero p{max-width:720px}
.retrieve-card{display:grid;grid-template-columns:90px 1fr;gap:34px;max-width:900px;margin:0 auto 38px;padding:48px;border:1px solid #e8e2df;border-radius:24px;background:linear-gradient(145deg,#fff,#f6f1ee)}
.retrieve-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:#94273a;color:#fff;font-size:32px}
.retrieve-card h2{margin-bottom:34px}
.retrieve-card ol{list-style:none;margin:0;padding:0}
.retrieve-card li{display:grid;grid-template-columns:45px 1fr;gap:18px;padding:22px 0;border-top:1px solid #ddd6d2}
.retrieve-card li>span{font-size:12px;letter-spacing:1px;color:#94273a;font-weight:700}
.retrieve-card strong{font-size:17px}
.retrieve-card li p{margin:5px 0 0;color:#6d6968;font-size:14px}
.retrieve-help{max-width:900px;margin:auto;padding:48px;display:flex;justify-content:space-between;align-items:center;gap:40px;border-radius:24px;background:#232424;color:#fff}
.retrieve-help h2{font-size:34px}
.retrieve-help p{max-width:480px;color:#c7c7c7}
.retrieve-help .actions{flex-direction:column;align-items:flex-start;min-width:260px}
.retrieve-help .link{color:#fff}
.client-journey{max-width:820px;margin:0 auto;padding:clamp(24px,5vw,56px);border-radius:28px}
.journey-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:42px}
.journey-progress span{padding:10px 8px;border-bottom:3px solid rgba(15,23,42,.14);color:#6b7280;font-size:.86rem;font-weight:700}
.journey-progress span.is-active{border-color:#e31e24;color:#111827}
.journey-progress span.is-complete{border-color:#111827;color:#111827}
.journey-step{display:none}.journey-step.is-active{display:block;animation:journeyIn .28s ease both}
.journey-step h2{max-width:680px;margin:8px 0 14px;font-size:clamp(1.7rem,4vw,2.7rem);line-height:1.08}
.journey-step>p{max-width:650px;color:#4b5563}
.rating-field{margin:30px 0 24px;padding:0;border:0}
.rating-field legend,.field-label{display:block;margin-bottom:10px;font-weight:800;color:#111827}.field-label{margin-top:22px}
.field-label span,.field-help{font-size:.88rem;font-weight:500;color:#6b7280}
.star-rating{display:flex;gap:7px}.star-rating button{padding:0;border:0;background:transparent;color:#cbd0d8;font-size:clamp(2.35rem,8vw,3.4rem);line-height:1;cursor:pointer;transition:color .15s ease,transform .15s ease}
.star-rating button:hover,.star-rating button:focus-visible,.star-rating button.is-selected{color:#f6b91a;transform:translateY(-2px)}
.client-journey textarea,.client-journey input{box-sizing:border-box;width:100%;border:1px solid rgba(15,23,42,.2);border-radius:14px;background:rgba(255,255,255,.82);padding:14px 16px;color:#111827;font:inherit;outline:none}
.client-journey textarea:focus,.client-journey input:focus{border-color:#e31e24;box-shadow:0 0 0 3px rgba(227,30,36,.12)}
.client-journey .journey-next{margin-top:24px}.client-journey .journey-next:disabled{cursor:not-allowed;opacity:.42}
.google-review-button{display:inline-flex;margin:12px 0 8px;padding:13px 17px;border:1px solid rgba(15,23,42,.18);border-radius:999px;background:#fff;color:#111827;font-weight:800;text-decoration:none}
.pending-payment{display:flex;flex-direction:column;gap:4px;margin:24px 0;padding:18px;border-left:4px solid #e31e24;border-radius:6px 14px 14px 6px;background:rgba(227,30,36,.07)}
.pending-payment span,.privacy-note{color:#5f6875}.privacy-note{max-width:820px;margin:18px auto 0;text-align:center;font-size:.9rem}
@keyframes journeyIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.nav{padding-left:20px;padding-right:20px}.navlinks{gap:18px}.desktop-label{display:none}.mobile-label{display:inline}}
@media(max-width:760px){.navlinks>a[data-route="/accueil/nos-diagnostics"],.navlinks>a[data-route="/accueil/nos-offres"]{display:none}.retrieve-card{grid-template-columns:1fr;padding:30px 24px}.retrieve-icon{width:58px;height:58px}.retrieve-help{display:block;padding:36px 24px}.retrieve-help .actions{margin-top:28px;align-items:stretch}.retrieve-help .button{white-space:normal;text-align:center}.retrieve-wrap{padding-bottom:48px}.client-journey{padding:24px 18px;border-radius:20px}.journey-progress{margin-bottom:30px}.journey-progress span{font-size:.72rem}}
.client-journey.glass-tile{background:#94273a;color:#fff;border:2px solid #94273a;box-shadow:0 18px 38px rgba(148,39,58,.18),inset 0 0 0 1px rgba(148,39,58,.24)}
.client-journey.glass-tile::after{border-color:rgba(148,39,58,.42);box-shadow:inset 0 1px 1px rgba(148,39,58,.18),inset 0 -1px 2px rgba(148,39,58,.08)}
.client-journey.glass-tile:hover{box-shadow:0 24px 48px rgba(148,39,58,.24),inset 0 0 0 1px rgba(148,39,58,.28)}
.client-journey.glass-tile .journey-progress span,.client-journey.glass-tile .journey-progress span.is-active,.client-journey.glass-tile .journey-progress span.is-complete,.client-journey.glass-tile .journey-step h2,.client-journey.glass-tile .rating-field legend,.client-journey.glass-tile .field-label,.client-journey.glass-tile .pending-payment strong{color:#fff}
.client-journey.glass-tile .journey-progress span{border-bottom-color:rgba(255,255,255,.3)}
.client-journey.glass-tile .journey-step>p,.client-journey.glass-tile .eyebrow,.client-journey.glass-tile .field-label span,.client-journey.glass-tile .field-help,.client-journey.glass-tile .pending-payment span,.client-journey.glass-tile .privacy-note,.client-journey.glass-tile .link{color:rgba(255,255,255,.84)}
/* Functional client portal */
[data-portal] [hidden]{display:none!important}.portal-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:24px}.portal-secondary{padding:10px 0;border:0;background:none;color:#fff;text-decoration:underline;font:inherit;cursor:pointer}.portal-dossier{margin:20px 0;padding:24px;border:1px solid rgba(255,255,255,.35);border-radius:18px;background:rgba(255,255,255,.07);overflow-wrap:anywhere}.portal-dossier h3{font-size:1.35rem;margin:0 0 8px}.portal-dossier p{margin:8px 0;color:rgba(255,255,255,.92)}.portal-amount{font-size:1.4rem;font-weight:700}.portal-message{margin-top:24px;border-top:1px solid rgba(255,255,255,.4);padding-top:16px;color:#fff!important}.portal-dossier .button{margin-top:12px;background:#fff;color:#94273a}.portal-dossier .button:disabled{opacity:.7;cursor:not-allowed}.privacy-note a{color:inherit}#payment-mode{padding:14px;border:1px solid rgba(255,255,255,.6);border-radius:12px;color:white}

/* Mobile navigation: every destination stays visible without horizontal scrolling. */
@media(max-width:1050px){
  header{height:auto}
  header .nav{height:auto;min-height:76px;flex-wrap:wrap;justify-content:center;gap:8px;padding:8px 16px 12px}
  header .nav .brand-logo{width:112px}
  header .navlinks{width:100%;min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  header .navlinks>a:not(.button){display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:8px 4px;font-size:13px;line-height:1.3;text-align:center;white-space:normal;overflow-wrap:anywhere;border-radius:10px;background:#f6f1ee}
  header .navlinks>a[aria-current=page]{background:#94273a;color:#fff}
  header .navlinks .retrieve-nav{grid-column:span 2;background:#f1e2e5;color:#842538}
  header .navlinks .button.small{display:none}
  header .navlinks a:focus-visible{outline-offset:1px}
}
@media(max-width:360px){header .navlinks>a:not(.button){font-size:12px}}
