/* Autoservice — recentrage visite technique et visibilité locale */

:root{
  --muted:var(--silver);
  --body:var(--anthracite);
  --accent:var(--sky);
  --heading:var(--marine);
  --surface:var(--paper);
}

.skip-link{
  position:fixed;left:16px;top:10px;z-index:1200;padding:10px 14px;
  background:var(--white);color:var(--marine);font-weight:bold;
  transform:translateY(-160%);transition:transform .2s var(--ease);
}
.skip-link:focus{transform:translateY(0)}

.hero-strip.hero-strip-simple{grid-template-columns:repeat(3,minmax(0,1fr))}
.hero-location{display:inline-flex;align-items:center;gap:8px}
.hero-location::before{content:"";width:7px;height:7px;background:var(--sky);transform:rotate(45deg)}

.journey-band{background:var(--paper);border-bottom:1px solid var(--hairline)}
.journey-band .container{display:grid;grid-template-columns:repeat(3,1fr)}
.journey-item{padding:26px 28px;border-right:1px solid var(--hairline);display:flex;gap:16px;align-items:center}
.journey-item:first-child{border-left:1px solid var(--hairline)}
.journey-item .num{font-size:11px;letter-spacing:.18em;color:var(--sky);font-weight:bold}
.journey-item strong{display:block;color:var(--marine);font-size:15px}
.journey-item span:last-child{font-size:12px;color:var(--silver)}

.focus-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}
.focus-photo{position:relative;min-height:520px;background:var(--paper-deep);overflow:hidden}
.focus-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.focus-photo::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.3);margin:18px;pointer-events:none}
.focus-copy-list{display:grid;gap:0;margin-top:34px;border-top:1px solid var(--hairline)}
.focus-copy-item{display:grid;grid-template-columns:48px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid var(--hairline)}
.focus-copy-item .num{font-size:11px;color:var(--sky);font-weight:bold;letter-spacing:.16em;padding-top:3px}
.focus-copy-item strong{display:block;color:var(--marine);font-size:15px;margin-bottom:4px}
.focus-copy-item p{margin:0;font-size:13px;line-height:1.55;color:var(--anthracite)}

.timeline.timeline-three{grid-template-columns:repeat(3,1fr);max-width:980px}
.timeline.timeline-three::before{right:8%}
.timeline.timeline-three .step{padding-right:56px}
.timeline.timeline-three .step p{max-width:30ch}

.inspection-scope{background:var(--marine);color:var(--white)}
.inspection-scope .h2{color:var(--white)}
.inspection-scope .lede{color:#D8E2EC}
.scope-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;border-top:1px solid rgba(255,255,255,.18);border-left:1px solid rgba(255,255,255,.18)}
.scope-card{padding:28px;border-right:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);min-height:168px}
.scope-card .num{font-size:10px;letter-spacing:.2em;color:var(--sky-soft);font-weight:bold}
.scope-card h3{color:var(--white);font-size:17px;margin:14px 0 8px}
.scope-card p{color:#C8D2DD;font-size:13px;line-height:1.55;margin:0}

.location-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:48px}
.location-card{background:var(--white);border:1px solid var(--hairline);padding:34px;position:relative}
.location-card.official{border-top:4px solid var(--marine)}
.location-card.partner{border-top:4px solid var(--sky)}
.location-label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--silver);font-weight:bold}
.location-card h3{font-size:25px;color:var(--marine);margin:10px 0 8px}
.location-card .status{font-size:13px;color:var(--anthracite);margin:0 0 24px;line-height:1.6}
.location-card dl{display:grid;grid-template-columns:110px 1fr;gap:10px 18px;margin:0;padding-top:20px;border-top:1px solid var(--hairline)}
.location-card dt{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--silver);font-weight:bold}
.location-card dd{margin:0;font-size:14px;color:var(--anthracite)}
.location-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.status-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;background:var(--paper);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--marine);font-weight:bold}
.status-badge::before{content:"";width:7px;height:7px;background:var(--sky);border-radius:50%}

.booking-context{padding:14px 16px;background:var(--paper);border-left:3px solid var(--sky);font-size:13px;line-height:1.55;margin:0 0 24px}
.booking-context a{font-weight:bold;text-decoration:underline}
.form-card input[type="hidden"]{display:none}

.page-intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;align-items:start}
.page-intro-grid .summary{font-size:18px;line-height:1.65;color:var(--anthracite);margin:0}
.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:42px}
.info-card{border:1px solid var(--hairline);padding:28px;background:var(--white)}
.info-card h3{font-size:18px;color:var(--marine);margin:0 0 10px}
.info-card p,.info-card li{font-size:14px;line-height:1.65;color:var(--anthracite)}
.info-card ul{padding-left:20px;margin:12px 0 0}

.partner-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;padding:40px;background:var(--paper);border-top:4px solid var(--sky);align-items:start}
.partner-mark{min-height:180px;background:var(--white);border:1px dashed var(--hairline-strong);display:flex;align-items:center;justify-content:center;text-align:center;padding:24px}
.partner-mark strong{font-size:26px;color:var(--marine);display:block}
.partner-mark span{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--silver);margin-top:8px}
.pending-list{list-style:none;padding:0;margin:24px 0 0}
.pending-list li{padding:12px 0 12px 24px;border-bottom:1px solid var(--hairline);position:relative;font-size:14px}
.pending-list li::before{content:"";width:7px;height:7px;background:var(--sky);position:absolute;left:0;top:20px;transform:rotate(45deg)}

.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;margin-top:44px}
.contact-card{padding:34px;border:1px solid var(--hairline);background:var(--white)}
.contact-card.primary{border-top:4px solid var(--marine)}
.contact-card h2{font-size:24px;margin:0 0 10px}
.contact-list{display:grid;gap:16px;margin-top:28px}
.contact-row{padding-top:16px;border-top:1px solid var(--hairline)}
.contact-row span{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--silver);font-weight:bold;margin-bottom:5px}
.contact-row strong,.contact-row a{font-size:15px;color:var(--marine)}

.cookie-save{margin-top:24px;display:flex;justify-content:flex-end}

@media(max-width:900px){
  .focus-grid,.page-intro-grid,.partner-panel,.contact-grid{grid-template-columns:1fr;gap:36px}
  .focus-photo{min-height:420px;order:-1}
  .scope-grid{grid-template-columns:repeat(2,1fr)}
  .timeline.timeline-three{grid-template-columns:1fr;gap:24px}
  .timeline.timeline-three::before{display:none}
  .timeline.timeline-three .step{padding-right:0}
  .journey-band .container{grid-template-columns:1fr}
  .journey-item,.journey-item:first-child{border-left:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
}

@media(max-width:640px){
  .scope-grid,.location-grid,.info-grid{grid-template-columns:1fr}
  .location-card,.contact-card,.partner-panel{padding:24px}
  .location-card dl{grid-template-columns:1fr;gap:4px}
  .location-card dd{margin-bottom:10px}
  .hero-strip.hero-strip-simple{grid-template-columns:1fr;gap:18px}
  .hero-strip.hero-strip-simple > div + div{padding-left:0;border-left:0}
}
