/* Demande de devis : habillage uniquement, formulaire et validation existants. */
.hdr-devis-page .hdr-kicker,.hdrd-reference { font: 400 .6875rem/1.6 ui-monospace,Consolas,monospace; letter-spacing: .05em; text-transform: uppercase; }
.hdr-devis-page .hdr-kicker::before { content: ''; display: inline-block; width: 24px; height: 1px; margin-right: 12px; vertical-align: middle; background: currentColor; }
.hdr-devis-page .hdr-breadcrumb { font: 400 .6875rem/1.5 ui-monospace,Consolas,monospace; }
.hdrd-opening { display: grid; grid-template-columns: 1.4fr .6fr; gap: clamp(40px,7vw,112px); padding-block: clamp(40px,5vw,80px); align-items: center; }
.hdr-devis-page .hdrd-opening h1 { font-size: clamp(2.75rem,4.5vw,4.75rem); margin-bottom: 28px; }
.hdrd-opening h1 span { display: block; color: var(--hdr-blue); font: italic 400 1em/1.1 Georgia,serif; }
.hdrd-intro { color: var(--hdr-muted); max-width: 740px; }
.hdrd-intro p { margin-bottom: 18px; }
.hdrd-intro p:first-child { color: var(--hdr-ink); font-size: 1.125rem; }
.hdrd-opening .hdr-button { margin-top: 12px; }
.hdrd-note { padding: clamp(28px,3vw,48px); background: var(--hdr-blue); color: #fff; }
.hdrd-reference { display: block; margin-bottom: 32px; }
.hdrd-note > p { font-size: clamp(2rem,3.5vw,3.5rem); line-height: 1.15; letter-spacing: -.045em; margin-bottom: 32px; }
.hdrd-note em { font-family: Georgia,serif; font-weight: 400; }
.hdrd-note > span:last-of-type { display: block; font-size: .8125rem; }
.hdr-devis-page .hdrd-note .hdr-text-link { color: #fff; margin-top: 20px; }
.hdrd-form-section { background: #f3f5fa; padding-block: clamp(40px,5vw,72px); }
.hdrd-form-inner { max-width: 1100px; margin-inline: auto; background: #fff; padding: clamp(24px,4vw,64px); }
.hdr-devis-page .hdrd-form-inner h2 { font-size: clamp(1.75rem,3vw,2.75rem); margin-bottom: 28px; }
.hdr-devis-page .hddd-wrap { --hddd-accent: var(--hdr-blue) !important; --hddd-ink: var(--hdr-ink); --hddd-muted: var(--hdr-muted); --hddd-line: var(--hdr-line); font-family: Arial,Helvetica,sans-serif; }
.hdr-devis-page .hddd-progress { margin-block: 24px 44px; }
.hdr-devis-page .hddd-progress li { font: 400 .75rem/1.5 ui-monospace,Consolas,monospace; }
.hdr-devis-page .hddd-progress b,.hdr-devis-page .hddd-progress li::after { border-radius: 0; }
.hdr-devis-page .hddd-step h3 { font: italic 400 clamp(1.5rem,2.5vw,2rem)/1.25 Georgia,serif; margin-bottom: 12px; letter-spacing: -.02em; }
.hdr-devis-page .hddd-space-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.hdr-devis-page .hddd-space-card { border-radius: 0; box-shadow: none; padding: 20px; min-height: 130px; justify-content: center; align-items: flex-start; text-align: left; }
.hdr-devis-page .hddd-space-card svg { display: none; }
.hdr-devis-page .hddd-space-card strong { font-size: 1rem; font-weight: 400; line-height: 1.3; }
.hdr-devis-page .hddd-space-card small { font-size: .8125rem; }
.hdr-devis-page .hddd-space-other > span { border-radius: 0; }
.hdr-devis-page .hddd-grid > label,.hdr-devis-page .hddd-form > section > label { font-weight: 400; }
.hdr-devis-page .hddd-form input:not([type="radio"]):not([type="checkbox"]):not([type="file"]),.hdr-devis-page .hddd-form select,.hdr-devis-page .hddd-form textarea { border-radius: 0; }
.hdr-devis-page .hddd-drop,.hdr-devis-page .hddd-actions button { border-radius: 0; }
.hdr-devis-page .hddd-actions button { min-height: 50px; font-weight: 600; }
.hdrd-process { padding-block: clamp(48px,6vw,88px); }
.hdr-devis-page .hdrd-process > h2 { font-size: clamp(2rem,3vw,3rem); margin-bottom: 40px; }
.hdrd-process .hdrd-columns { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 28px; counter-reset: hdrd-step; }
.hdrd-process .hdrd-column { border-top: 1px solid var(--hdr-line); padding-top: 20px; }
.hdrd-process .hdrd-column::before { counter-increment: hdrd-step; content: counter(hdrd-step,decimal-leading-zero); display: block; color: var(--hdr-blue); font: 400 .75rem/1.5 ui-monospace,Consolas,monospace; margin-bottom: 24px; }
.hdr-devis-page .hdrd-process h3 { font: italic 400 1.5rem/1.25 Georgia,serif; margin-bottom: 16px; }
.hdrd-process p { color: var(--hdr-muted); font-size: .9375rem; }
.hdrd-call { background: var(--hdr-ink); color: #fff; padding-block: clamp(40px,5vw,64px); }
.hdrd-call .hdrd-group { display: grid; grid-template-columns: 1.2fr .8fr; gap: 16px 64px; }
.hdr-devis-page .hdrd-call h2 { color: #fff; font-size: clamp(2rem,3vw,3rem); grid-column: 1; }
.hdrd-call .hdr-kicker { grid-column: 1 / -1; color: var(--hdr-accent-light); }
.hdrd-call p { grid-column: 1; color: #dce0e8; }
.hdrd-call .hdrd-phone { grid-column: 2; grid-row: 2; align-self: center; }
.hdrd-phone a { display: inline-block; font-size: clamp(1.75rem,3vw,3rem); border-bottom: 1px solid #ffffff60; min-height: 44px; letter-spacing: -.04em; color: #fff; }
.hdrd-reviews { background: #f3f5fa; padding-block: clamp(40px,5vw,72px); }
.hdr-devis-page .hd-testimonials { width: 100%; max-width: none; margin: 0; padding: 0; left: auto; right: auto; transform: none; background: transparent; --hd-testimonials-navy: var(--hdr-ink); --hd-testimonials-cyan: var(--hdr-blue); }
.hdr-devis-page .hd-testimonials__inner { width: 100%; max-width: none; padding: 0; }
.hdr-devis-page .hd-testimonials__header { text-align: left; margin-bottom: 32px; }
.hdr-devis-page .hd-testimonials__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
.hdr-devis-page .hd-testimonial { background: transparent; box-shadow: none; border-radius: 0; padding: 24px 0; border-top: 1px solid var(--hdr-line); }
.hdr-devis-page .hd-testimonial__quote { border: 0; padding: 0; }
.hdr-devis-page .hd-testimonial__quote::before { display: none; }
.hdr-devis-page .hd-testimonials__kicker { color: var(--hdr-blue); font: 400 .6875rem/1.6 ui-monospace,Consolas,monospace; }
@media (max-width: 1100px) { .hdrd-process .hdrd-columns { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 760px) {
 .hdrd-opening { grid-template-columns: 1fr; gap: 28px; padding-block: 32px 40px; }
 .hdr-devis-page .hdrd-opening h1 { font-size: clamp(2.25rem,8vw,3.5rem); }
 .hdrd-note { padding: 28px; }
 .hdrd-note > p { font-size: 2.5rem; }
 .hdrd-form-section > .hdr-shell { padding-inline: 0; }
 .hdrd-form-inner { padding: 28px var(--hdr-pad); }
 .hdr-devis-page .hddd-space-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .hdrd-process .hdrd-columns,.hdrd-call .hdrd-group,.hdr-devis-page .hd-testimonials__grid { grid-template-columns: 1fr; }
 .hdrd-call .hdrd-phone { grid-column: 1; grid-row: auto; }
 .hdrd-call p,.hdrd-call h2 { grid-column: 1; }
}
@media (max-width: 420px) { .hdr-devis-page .hddd-space-grid { grid-template-columns: 1fr; } }

/* 0.52 — fil d’Ariane aligné sur les pages piliers. */
.hdr-devis-page .hdr-breadcrumb { gap: 10px; color: var(--hdr-muted); font: 400 .75rem/1.6 ui-monospace,'SFMono-Regular',Consolas,monospace; letter-spacing: .015em; }
.hdr-devis-page .hdr-breadcrumb::before { content: ''; display: block; width: 8px; height: 8px; background: var(--hdr-blue); flex: 0 0 8px; margin-right: 4px; }
.hdr-devis-page .hdr-breadcrumb a { color: var(--hdr-muted); min-height: 36px; }
.hdr-devis-page .hdr-breadcrumb a:hover { color: var(--hdr-blue); text-decoration: underline; text-underline-offset: 4px; }
.hdr-devis-page .hdr-breadcrumb [aria-hidden] { color: var(--hdr-blue); }
.hdr-devis-page .hdr-breadcrumb [aria-current] { color: var(--hdr-ink); }
@media (max-width: 640px) { .hdr-devis-page .hdr-breadcrumb { font-size: .6875rem; gap: 8px; } }

/* Aperçu administrateur : rendu identique, validation locale clairement annoncée. */
.hdr-devis-page .hdrd-preview-fields { border: 0; margin: 0; padding: 0; min-width: 0; }
.hdr-devis-page .hdrd-preview-notice { padding: 14px 18px; margin-bottom: 24px; border-left: 2px solid var(--hdr-blue); background: #f3f5fa; color: var(--hdr-muted); font: 400 .75rem/1.6 ui-monospace,Consolas,monospace; }
.hdr-devis-page .hdrd-preview-return { min-height: 44px; padding: 12px 20px; border: 1px solid var(--hdr-blue); background: var(--hdr-blue); color: #fff; margin-top: 20px; }

.hdr-devis-page .hdrd-preview-fields > .hddd-step > label { display: block; min-width: 0; margin: 0; color: var(--hddd-ink); font-size: 14px; font-weight: 400; line-height: 1.35; }

/* « Pour » reste avec « votre », sans interdire les retours naturels sur mobile. */
.hdr-devis-page .hdrd-opening h1 .hdrd-title-prefix { color: var(--hdr-ink); font: normal 600 1em/1.08 Arial,Helvetica,sans-serif; letter-spacing: -.05em; }
