/* Service pages — 9 distinct layouts */
.page-content--service .page-hero{padding-bottom:1.5rem;}
.page-content--service .page-faq{max-width:var(--container-max,1200px);margin:0 auto;padding:0 1.25rem;}
.svc{background:#fff;}
.svc-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--color-brand);}
.svc-icon .material-symbols-outlined{font-size:1.35rem;}
.svc-icon--round{width:2.75rem;height:2.75rem;background:var(--color-primary-light);border-radius:0.65rem;}
.svc-icon--brand{background:rgba(242,140,40,0.12);}

/* Shared */
.svc-hero--split{display:grid;grid-template-columns:1.1fr 0.9fr;gap:0;max-width:var(--container-max,1200px);margin:0 auto 2rem;padding:0 1.25rem;}
.svc-hero-media{margin:0;border-radius:1rem;overflow:hidden;border:1px solid var(--color-border);box-shadow:0 20px 40px rgba(15,76,92,0.1);}
.svc-hero-media img{width:100%;aspect-ratio:3/2;object-fit:cover;}
.svc-hero-body{display:flex;align-items:center;padding:1.5rem 0 1.5rem 2rem;}
.svc-hero-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.25rem;}
.svc-hero-points li{display:flex;gap:1rem;align-items:flex-start;}
.svc-hero-points strong{display:block;margin-bottom:0.25rem;font-size:0.95rem;color:var(--color-primary);}
.svc-hero-points span{font-size:0.88rem;line-height:1.55;color:var(--color-ink-muted);}
.svc-stats--inline{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;padding:1.5rem 1.25rem 2.5rem;border-bottom:1px solid var(--color-border);}
.svc-stat{text-align:center;}
.svc-stat strong{display:block;font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--color-brand);}
.svc-stat span{font-size:0.82rem;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:0.04em;}
.svc-depth{max-width:var(--container-max,1200px);margin:0 auto;padding:2.5rem 1.25rem;display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem 1.75rem;}
.svc-depth-block{padding:1.35rem 1.5rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:0.75rem;}
.svc-depth-block h3{margin:0 0 0.75rem;font-size:1rem;font-weight:700;color:var(--color-primary);}
.svc-depth-block p{margin:0 0 0.75rem;font-size:0.92rem;line-height:1.65;color:var(--color-ink-muted);}
.svc-depth-block p:last-child{margin-bottom:0;}
.svc-depth-block ul{margin:0.5rem 0 0;padding:0 0 0 1.1rem;font-size:0.9rem;color:var(--color-ink-muted);}
.svc-case{padding:2.5rem 1.25rem;background:var(--color-surface-alt);border-top:1px solid var(--color-border);}
.svc-case-inner{display:grid;grid-template-columns:0.95fr 1.05fr;gap:2rem;align-items:center;max-width:var(--container-max,1200px);margin:0 auto;}
.svc-case-media{margin:0;border-radius:1rem;overflow:hidden;border:1px solid var(--color-border);}
.svc-case-media img{width:100%;aspect-ratio:4/3;object-fit:cover;}
.svc-case-body h2{margin:0 0 0.75rem;font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:var(--color-primary);}
.svc-case-body p{margin:0 0 1rem;font-size:0.95rem;line-height:1.65;color:var(--color-ink-muted);}
.svc-case-details{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0.5rem;}
.svc-case-details li{padding:0.35rem 0.75rem;font-size:0.8rem;font-weight:600;background:#fff;border:1px solid var(--color-border);border-radius:999px;color:var(--color-primary);}
.svc-cta{padding:2.5rem 1.25rem 3rem;background:var(--color-primary);}
.svc-cta-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;max-width:var(--container-max,1200px);margin:0 auto;}
.svc-cta-inner p{margin:0;max-width:40rem;font-size:0.92rem;line-height:1.6;color:rgba(255,255,255,0.88);}

/* Layout 1 — route (livraison chantier) */
.svc-route-timeline{max-width:var(--container-max,1200px);margin:0 auto;padding:0 1.25rem 2rem;}
.svc-route-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;list-style:none;margin:0;padding:0;}
.svc-route-steps li{position:relative;padding:1.25rem 1rem;background:#fff;border:1px solid var(--color-border);border-radius:0.75rem;text-align:center;}
.svc-route-num{display:block;margin-bottom:0.5rem;font-family:var(--font-display);font-size:0.75rem;font-weight:800;color:var(--color-brand);}
.svc-route-steps h3{margin:0.5rem 0 0.35rem;font-size:0.88rem;font-weight:700;color:var(--color-primary);}
.svc-route-steps p{margin:0;font-size:0.8rem;line-height:1.5;color:var(--color-ink-muted);}

/* Layout 2 — express */
.svc-express-band{background:linear-gradient(135deg,var(--color-brand),#e07a1a);padding:2.5rem 1.25rem;color:#fff;}
.svc-express-band-inner{display:grid;grid-template-columns:1.2fr 0.8fr;gap:2rem;align-items:center;max-width:var(--container-max,1200px);margin:0 auto;}
.svc-express-copy h2{margin:0 0 0.75rem;font-family:var(--font-display);font-size:clamp(1.35rem,3vw,1.85rem);font-weight:800;}
.svc-express-copy p{margin:0;font-size:0.95rem;line-height:1.6;opacity:0.92;}
.svc-express-copy .ptype-kicker{color:rgba(255,255,255,0.85);}
.svc-express-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0.75rem;}
.svc-express-stats li{padding:1rem;background:rgba(255,255,255,0.15);border-radius:0.65rem;text-align:center;}
.svc-express-stats strong{display:block;font-family:var(--font-display);font-size:1.35rem;font-weight:800;}
.svc-express-stats span{font-size:0.72rem;opacity:0.9;text-transform:uppercase;}
.svc-express-zigzag{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;max-width:var(--container-max,1200px);margin:0 auto;padding:2.5rem 1.25rem;}
.svc-express-media{margin:0;border-radius:1rem;overflow:hidden;border:1px solid var(--color-border);}
.svc-express-media img{width:100%;aspect-ratio:3/2;object-fit:cover;}
.svc-express-triggers h3{margin:0 0 1rem;font-size:1.1rem;color:var(--color-primary);}
.svc-express-triggers ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.75rem;}
.svc-express-triggers li{display:flex;gap:0.6rem;align-items:flex-start;font-size:0.9rem;color:var(--color-ink-muted);}
.svc-express-triggers .material-symbols-outlined{color:var(--color-brand);flex-shrink:0;}
.svc-express-sections{max-width:var(--container-max,1200px);margin:0 auto;padding:0 1.25rem 2rem;display:flex;flex-direction:column;gap:1rem;}
.svc-express-row{display:grid;grid-template-columns:auto 1fr;gap:1.25rem;padding:1.25rem 1.5rem;background:var(--color-surface-alt);border-radius:0.75rem;border:1px solid var(--color-border);}
.svc-express-row--reverse{direction:rtl;}
.svc-express-row--reverse .svc-express-row-body{direction:ltr;}
.svc-express-row-num{font-family:var(--font-display);font-size:1.75rem;font-weight:800;color:var(--color-brand);}
.svc-express-row-body h3{margin:0 0 0.5rem;font-size:1rem;color:var(--color-primary);}
.svc-express-row-body p{margin:0 0 0.5rem;font-size:0.9rem;line-height:1.6;color:var(--color-ink-muted);}
.svc-express-row-body p:last-child{margin-bottom:0;}

/* Layout 3 — nuit */
.svc-nuit-hero{position:relative;margin-bottom:2rem;}
.svc-nuit-hero-media{margin:0;}
.svc-nuit-hero-media img{width:100%;aspect-ratio:21/9;object-fit:cover;max-height:420px;}
.svc-nuit-hero-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:2.5rem 1.25rem;background:linear-gradient(to top,rgba(8,30,38,0.92) 0%,rgba(8,30,38,0.35) 55%,transparent 100%);color:#fff;}
.svc-nuit-hero-overlay h2{margin:0.5rem 0 0.75rem;font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);font-weight:800;max-width:var(--container-max,1200px);width:100%;margin-inline:auto;}
.svc-nuit-hero-overlay p{margin:0;max-width:36rem;font-size:0.95rem;line-height:1.6;opacity:0.9;}
.svc-nuit-hero-overlay .ptype-kicker{color:var(--color-brand);}
.svc-nuit-slots{max-width:var(--container-max,1200px);margin:0 auto;padding:0 1.25rem 2rem;}
.svc-nuit-slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0.75rem;list-style:none;margin:0 0 1rem;padding:0;}
.svc-nuit-slot-grid li{padding:1rem;background:#0f2d36;color:#fff;border-radius:0.65rem;text-align:center;}
.svc-nuit-time{display:block;margin-bottom:0.35rem;font-family:var(--font-display);font-size:1.1rem;font-weight:800;color:var(--color-brand);}
.svc-nuit-slot-grid strong{font-size:0.82rem;font-weight:600;}
.svc-nuit-zones{display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:center;}
.svc-nuit-zones span{padding:0.3rem 0.75rem;font-size:0.78rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:999px;color:var(--color-ink-muted);}
.svc-nuit-content .svc-depth{padding-top:0;}

/* Layout 4 — chauffeur */
.svc-chauffeur-spotlight{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;max-width:var(--container-max,1200px);margin:0 auto;padding:2rem 1.25rem;}
.svc-chauffeur-media{margin:0;border-radius:1rem;overflow:hidden;border:2px solid var(--color-brand);box-shadow:0 20px 40px rgba(242,140,40,0.15);}
.svc-chauffeur-media img{width:100%;aspect-ratio:4/3;object-fit:cover;}
.svc-chauffeur-intro h2{margin:0.5rem 0 0.75rem;font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--color-primary);}
.svc-chauffeur-intro p{margin:0 0 1rem;font-size:0.95rem;line-height:1.65;color:var(--color-ink-muted);}
.svc-chauffeur-for{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.5rem;}
.svc-chauffeur-for li{display:flex;gap:0.5rem;align-items:center;font-size:0.88rem;color:var(--color-ink-muted);}
.svc-chauffeur-for .material-symbols-outlined{color:var(--color-brand);font-size:1.1rem;}
.svc-chauffeur-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;list-style:none;margin:0 auto 2rem;padding:0 1.25rem;max-width:var(--container-max,1200px);}
.svc-chauffeur-cards li{padding:1.35rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:0.75rem;}
.svc-chauffeur-cards h3{margin:0.75rem 0 0.5rem;font-size:0.95rem;color:var(--color-primary);}
.svc-chauffeur-cards p{margin:0;font-size:0.85rem;line-height:1.55;color:var(--color-ink-muted);}

/* Layout 5 — autonome */
.svc-autonome-header{display:grid;grid-template-columns:1fr 0.9fr;gap:2rem;align-items:center;max-width:var(--container-max,1200px);margin:0 auto;padding:2rem 1.25rem;}
.svc-autonome-copy h2{margin:0.5rem 0 0.75rem;font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--color-primary);}
.svc-autonome-copy p{margin:0;font-size:0.95rem;line-height:1.65;color:var(--color-ink-muted);}
.svc-autonome-media{margin:0;border-radius:1rem;overflow:hidden;border:1px solid var(--color-border);}
.svc-autonome-media img{width:100%;aspect-ratio:4/3;object-fit:cover;}
.svc-autonome-split{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;max-width:var(--container-max,1200px);margin:0 auto 2rem;padding:0 1.25rem;}
.svc-autonome-caces,.svc-autonome-engins{padding:1.5rem;background:#fff;border:2px solid var(--color-primary);border-radius:0.75rem;}
.svc-autonome-caces h3,.svc-autonome-engins h3{margin:0 0 1rem;font-size:1rem;color:var(--color-primary);}
.svc-autonome-caces ul,.svc-autonome-engins ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.65rem;}
.svc-autonome-caces li{display:flex;gap:0.5rem;font-size:0.88rem;color:var(--color-ink-muted);}
.svc-autonome-caces .material-symbols-outlined{color:var(--color-primary);flex-shrink:0;}
.svc-autonome-engins a{display:flex;align-items:center;justify-content:space-between;padding:0.65rem 0.85rem;background:var(--color-surface-alt);border-radius:0.5rem;text-decoration:none;font-size:0.88rem;font-weight:600;color:var(--color-primary);}
.svc-autonome-engins a:hover{background:var(--color-primary-light);}

/* Layout 6 — duree */
.svc-duree-hero{max-width:var(--container-max,1200px);margin:0 auto;padding:2rem 1.25rem 1rem;}
.svc-duree-media{margin:0 0 1.5rem;border-radius:1rem;overflow:hidden;}
.svc-duree-media img{width:100%;aspect-ratio:16/7;object-fit:cover;}
.svc-duree-intro h2{margin:0.5rem 0 0.75rem;font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--color-primary);}
.svc-duree-intro p{margin:0;font-size:0.95rem;line-height:1.65;color:var(--color-ink-muted);}
.svc-duree-bands{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;list-style:none;margin:0 auto 1.5rem;padding:0 1.25rem;max-width:var(--container-max,1200px);}
.svc-duree-bands li{padding:1.25rem;background:linear-gradient(180deg,var(--color-primary-light),#fff);border:1px solid var(--color-border);border-radius:0.75rem;text-align:center;}
.svc-duree-weeks{display:block;margin-bottom:0.5rem;font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--color-brand);}
.svc-duree-bands strong{display:block;margin-bottom:0.35rem;font-size:0.95rem;color:var(--color-primary);}
.svc-duree-bands p{margin:0;font-size:0.82rem;line-height:1.5;color:var(--color-ink-muted);}
.svc-duree-included{display:flex;flex-wrap:wrap;justify-content:center;gap:0.75rem 1.25rem;list-style:none;margin:0 auto 2rem;padding:0 1.25rem;max-width:var(--container-max,1200px);}
.svc-duree-included li{display:flex;align-items:center;gap:0.35rem;font-size:0.88rem;font-weight:600;color:var(--color-primary);}
.svc-duree-included .material-symbols-outlined{color:var(--color-brand);}
.svc-duree-editorial{max-width:42rem;margin:0 auto;padding:0 1.25rem 2rem;}
.svc-duree-editorial article{margin-bottom:1.75rem;}
.svc-duree-editorial h3{margin:0 0 0.65rem;font-size:1.05rem;color:var(--color-primary);}
.svc-duree-editorial p{margin:0 0 0.65rem;font-size:0.92rem;line-height:1.7;color:var(--color-ink-muted);}

/* Layout 7 — cadre */
.svc-cadre-banner{display:grid;grid-template-columns:1.2fr 0.8fr;gap:2rem;align-items:center;padding:2.5rem 1.25rem;background:var(--color-primary);color:#fff;}
.svc-cadre-banner-inner{max-width:calc(var(--container-max,1200px) * 0.55);margin-left:auto;padding-right:1rem;}
.svc-cadre-banner h2{margin:0.5rem 0 0.75rem;font-family:var(--font-display);font-size:1.65rem;font-weight:800;}
.svc-cadre-banner p{margin:0;font-size:0.92rem;line-height:1.6;opacity:0.9;}
.svc-cadre-banner .ptype-kicker{color:var(--color-brand);}
.svc-cadre-threshold{margin-top:1rem!important;font-size:0.85rem!important;}
.svc-cadre-banner-media{margin:0;max-width:480px;border-radius:1rem;overflow:hidden;border:2px solid rgba(255,255,255,0.2);}
.svc-cadre-banner-media img{width:100%;aspect-ratio:3/2;object-fit:cover;}
.svc-cadre-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;list-style:none;margin:0 auto;padding:2.5rem 1.25rem;max-width:var(--container-max,1200px);}
.svc-cadre-pillars li{padding:1.25rem;background:#fff;border:1px solid var(--color-border);border-radius:0.75rem;text-align:center;}
.svc-cadre-pillars h3{margin:0.75rem 0 0.5rem;font-size:0.92rem;color:var(--color-primary);}
.svc-cadre-pillars p{margin:0;font-size:0.82rem;line-height:1.5;color:var(--color-ink-muted);}

/* Layout 8 — panne */
.svc-panne-alert{display:grid;grid-template-columns:1.1fr 0.9fr;gap:2rem;align-items:center;padding:2rem 1.25rem;background:linear-gradient(135deg,#fff5f5,#fff);border-bottom:3px solid #c62828;}
.svc-panne-alert-inner{max-width:var(--container-max,1200px);margin:0 auto;padding-left:calc((100vw - var(--container-max,1200px))/2 + 1.25rem);}
.svc-panne-badge{display:inline-flex;align-items:center;gap:0.35rem;padding:0.35rem 0.85rem;font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:#fff;background:#c62828;border-radius:999px;}
.svc-panne-alert h2{margin:1rem 0 0.75rem;font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:#1a1a1a;}
.svc-panne-alert>p{margin:0 0 1.25rem;font-size:0.92rem;line-height:1.6;color:var(--color-ink-muted);}
.svc-panne-sla{display:flex;flex-wrap:wrap;gap:1rem;list-style:none;margin:0;padding:0;}
.svc-panne-sla li{display:flex;flex-direction:column;align-items:center;gap:0.25rem;padding:0.85rem 1.1rem;background:#fff;border:1px solid var(--color-border);border-radius:0.65rem;min-width:7rem;text-align:center;}
.svc-panne-sla strong{font-family:var(--font-display);font-size:1rem;color:#c62828;}
.svc-panne-sla span{font-size:0.72rem;color:var(--color-ink-muted);}
.svc-panne-media{margin:0;border-radius:1rem;overflow:hidden;border:1px solid var(--color-border);max-width:520px;}
.svc-panne-media img{width:100%;aspect-ratio:4/3;object-fit:cover;}
.svc-panne-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;list-style:none;margin:0 auto;padding:2rem 1.25rem;max-width:var(--container-max,1200px);counter-reset:panne;}
.svc-panne-flow li{position:relative;padding:1.25rem 1rem 1rem 3rem;background:var(--color-surface-alt);border-left:3px solid #c62828;border-radius:0 0.65rem 0.65rem 0;}
.svc-panne-step-num{position:absolute;left:0.85rem;top:1rem;font-family:var(--font-display);font-size:1.25rem;font-weight:800;color:#c62828;}
.svc-panne-flow h3{margin:0 0 0.35rem;font-size:0.9rem;color:var(--color-primary);}
.svc-panne-flow p{margin:0;font-size:0.82rem;line-height:1.5;color:var(--color-ink-muted);}

/* Layout 9 — conseil */
.svc-conseil-hero{display:grid;grid-template-columns:1fr 0.95fr;gap:2rem;align-items:center;max-width:var(--container-max,1200px);margin:0 auto;padding:2rem 1.25rem;}
.svc-conseil-copy h2{margin:0.5rem 0 0.75rem;font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--color-primary);}
.svc-conseil-copy p{margin:0 0 1rem;font-size:0.95rem;line-height:1.65;color:var(--color-ink-muted);}
.svc-conseil-inputs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0.5rem;}
.svc-conseil-inputs li{display:flex;gap:0.4rem;align-items:center;font-size:0.85rem;color:var(--color-ink-muted);}
.svc-conseil-inputs .material-symbols-outlined{color:var(--color-brand);font-size:1.1rem;}
.svc-conseil-media{margin:0;border-radius:1rem;overflow:hidden;border:1px solid var(--color-border);}
.svc-conseil-media img{width:100%;aspect-ratio:4/3;object-fit:cover;}
.svc-conseil-matrix-wrap{max-width:var(--container-max,1200px);margin:0 auto;padding:0 1.25rem 2rem;}
.svc-conseil-matrix{width:100%;border-collapse:collapse;font-size:0.88rem;}
.svc-conseil-matrix th,.svc-conseil-matrix td{padding:0.85rem 1rem;text-align:left;border-bottom:1px solid var(--color-border);}
.svc-conseil-matrix th{font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-ink-muted);background:var(--color-surface-alt);}
.svc-conseil-matrix td strong{color:var(--color-primary);}
.svc-conseil-matrix a{font-weight:700;color:var(--color-brand);text-decoration:none;}
.svc-conseil-matrix a:hover{text-decoration:underline;}

@media (max-width:1024px){
.svc-hero--split,.svc-express-band-inner,.svc-express-zigzag,.svc-chauffeur-spotlight,.svc-autonome-header,.svc-autonome-split,.svc-cadre-banner,.svc-panne-alert,.svc-conseil-hero,.svc-case-inner,.svc-depth,.svc-route-steps,.svc-chauffeur-cards,.svc-duree-bands,.svc-cadre-pillars,.svc-panne-flow,.svc-nuit-slot-grid{grid-template-columns:1fr;}
.svc-hero-body{padding:1.5rem 0 0;}
.svc-express-row--reverse{direction:ltr;}
.svc-cadre-banner-inner{max-width:none;margin:0;padding:0 1.25rem;}
.svc-panne-alert-inner{padding-left:1.25rem;}
.svc-conseil-inputs{grid-template-columns:1fr;}
}
@media (max-width:640px){
.svc-express-stats{grid-template-columns:1fr;}
.svc-nuit-hero-media img{aspect-ratio:16/10;max-height:280px;}
}
