/* Hiérarchie des ouvertures : échelle commune, compositions propres à chaque page. */
body.hdr-pilot {
 --hdr-title-home: clamp(2.5rem,4.3vw,4.375rem);
 --hdr-title-page: clamp(2.5rem,4.1vw,4.25rem);
 --hdr-title-portfolio: clamp(2.25rem,3.8vw,4rem);
}
body.hdr-home-page .hdrh-opening { max-width: 740px; }
body.hdr-home-page .hdrh-opening h1 { font-size: var(--hdr-title-home); }
body.hdr-contact-page .hdrc-opening h1,
body.hdr-devis-page .hdrd-opening h1,
body.hdr-about-page .hdra-opening h1,
body.hdr-blog-page .hdrb-opening h1 { font-size: var(--hdr-title-page); }
body.hdr-portfolio-page .hdr-portfolio-intro h1 { font-size: var(--hdr-title-portfolio); line-height: 1.1; letter-spacing: -.04em; }
body.hdr-portfolio-page .hdr-portfolio-title-accent { color: var(--hdr-blue); font: italic 400 1em/1.1 Georgia,serif; letter-spacing: -.025em; }
body.hdr-portfolio-page .hdr-portfolio-intro .hdr-lead { font-size: 1.0625rem; line-height: 1.75; }
@media (max-width: 900px) {
 body.hdr-home-page .hdrh-opening { max-width: none; }
 body.hdr-portfolio-page .hdr-portfolio-intro .hdr-lead { padding-top: 0; }
}
@media (max-width: 760px) {
 body.hdr-pilot {
  --hdr-title-home: clamp(2.25rem,9vw,3.25rem);
  --hdr-title-page: clamp(2.125rem,8vw,3rem);
  --hdr-title-portfolio: clamp(2.125rem,8vw,3rem);
 }
}

/* 0.62 — un seul format et un seul rythme pour les repères d’ouverture.
   Classes dédiées : les sur-titres des sections restent propres à leur contenu. */
body.hdr-pilot {
 --hdr-breadcrumb-space: 24px;
 --hdr-opening-kicker-space: 16px;
}
body.hdr-pilot main .hdr-breadcrumb.hdr-opening-breadcrumb {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 gap: 8px 10px;
 margin: 0;
 padding: var(--hdr-breadcrumb-space) 0;
 color: var(--hdr-muted);
 font: 400 .75rem/1.6 ui-monospace,'SFMono-Regular',Consolas,monospace;
 letter-spacing: .015em;
 text-transform: none;
}
body.hdr-pilot main .hdr-breadcrumb.hdr-opening-breadcrumb::before {
 content: '';
 display: block;
 width: 8px;
 height: 8px;
 flex: 0 0 8px;
 margin: 0 4px 0 0;
 background: var(--hdr-blue);
 transform: none;
}
body.hdr-pilot main .hdr-breadcrumb.hdr-opening-breadcrumb a {
 display: inline-flex;
 align-items: center;
 min-height: 36px;
 padding: 0;
 color: var(--hdr-muted);
 text-decoration: none;
}
body.hdr-pilot main .hdr-breadcrumb.hdr-opening-breadcrumb a:hover {
 color: var(--hdr-blue);
 text-decoration: underline;
 text-underline-offset: 4px;
}
body.hdr-pilot main .hdr-breadcrumb.hdr-opening-breadcrumb [aria-hidden] { color: var(--hdr-blue); }
body.hdr-pilot main .hdr-breadcrumb.hdr-opening-breadcrumb [aria-current] {
 color: var(--hdr-ink);
 min-width: 0;
 overflow-wrap: anywhere;
}
/* L’espace sous le fil d’Ariane ne s’additionne plus à celui du bloc suivant. */
body.hdr-pilot main .hdr-opening-breadcrumb + :is(.hdrc-opening,.hdrd-opening,.hdrb-opening,.hdra-opening,.hdr-pillar-opening,.hdr-portfolio-intro,.hdre-opening) {
 padding-top: 0;
 margin-top: 0;
 align-items: start;
}
body.hdr-pilot main :is(.hdrc-opening-copy,.hdra-opening-copy,.hdr-pillar-opening-copy) {
 align-self: start;
 padding-top: 0;
}
/* Le panneau translucide des fiches conserve ses côtés et son fond. */
body.hdr-pilot main .hdr-hero-card { padding-top: 0; }
body.hdr-pilot main .hdr-kicker.hdr-opening-kicker {
 display: flex;
 align-items: baseline;
 gap: 12px;
 margin: 0 0 var(--hdr-opening-kicker-space);
 padding: 0;
 color: var(--hdr-blue);
 font: 400 .6875rem/1.6 ui-monospace,'SFMono-Regular',Consolas,monospace;
 letter-spacing: .035em;
 text-transform: uppercase;
}
body.hdr-pilot main .hdr-kicker.hdr-opening-kicker::before {
 content: '';
 display: block;
 width: 24px;
 height: 2px;
 flex: 0 0 24px;
 margin: 0;
 background: currentColor;
 transform: translateY(-3px);
}
body.hdr-pilot main .hdr-opening-kicker + h1 { margin-top: 0; }
/* Les métadonnées ne s’insèrent plus entre sur-titre et titre sur mobile. */
body.hdr-pilot main .hdre-heading-bar {
 display: grid;
 grid-template-columns: minmax(0,1fr) auto;
 align-items: start;
 gap: 0 32px;
 margin: 0;
}
body.hdr-pilot main .hdre-heading-bar > .hdr-opening-kicker { grid-column: 1; grid-row: 1; }
body.hdr-pilot main .hdre-heading-bar > .hdre-meta { grid-column: 2; grid-row: 1; margin: 0; }
body.hdr-pilot main .hdre-heading-bar > h1 { grid-column: 1 / -1; grid-row: 2; margin: 0; }
@media (max-width: 760px) {
 body.hdr-pilot { --hdr-breadcrumb-space: 16px; }
 body.hdr-pilot main .hdr-breadcrumb.hdr-opening-breadcrumb { font-size: .6875rem; gap: 8px; }
 body.hdr-pilot main .hdre-heading-bar { grid-template-columns: minmax(0,1fr); }
 body.hdr-pilot main .hdre-heading-bar > .hdre-meta { grid-column: 1; grid-row: 3; margin-top: 16px; }
}
