/* PRC78 — styles des pages intérieures et ajustements responsive */
:root { --page-space: 48px; }

/* Bannières : proportions homogènes sur toutes les pages intérieures */
body:not(.home) .page-hero { padding: 42px 0 40px; }
.page-hero .eyebrow { margin: 0 0 12px; color: #c4d5df; font-size: 11px; letter-spacing: .22em; }
.page-hero h1 { margin: 0 0 12px; font-size: clamp(34px, 4vw, 52px); line-height: 1.09; }
.page-hero p { margin: 0; max-width: 690px; line-height: 1.6; font-size: 14px; }
.page-hero .eyebrow h2 { font-size: inherit; font-weight: inherit; margin: 0; }
.page-hero p h3 { font-size: inherit; margin: 0; }

/* Sections : espaces maîtrisés, sans affecter la page d'accueil */
main > .section { padding-top: var(--page-space); padding-bottom: var(--page-space); }
main > .section + .section { padding-top: 42px; }
main > .section .section-heading { margin-bottom: 28px; }
main > .section .section-head { margin-bottom: 26px; }
main > .section .section-head h2 { margin: 6px 0 12px; }
main > .section .section-head p { color: var(--muted); line-height: 1.7; }

/* Rénovation : conserver la disposition compacte validée */
main > .section.renovation-intro { padding-top: 28px; padding-bottom: 22px; }
main > .section.renovation-services { padding-top: 28px; padding-bottom: 30px; }
main > .section.coaching-travaux { padding-top: 30px; padding-bottom: 36px; }

/* Climatisation : supprimer les grandes bandes vides entre les blocs */
main > .section.climate-installation { padding-top: 42px; padding-bottom: 36px; }
main > .section.climate-maintenance { padding-top: 42px; padding-bottom: 42px; }
.climate-installation .climate-note { margin-top: 20px; }
.climate-maintenance .maintenance-cta { margin-top: 22px; }

/* Appels à l'action : tailles identiques et confortables */
main .dark-btn, main .quote-button, main .maintenance-cta a,
main .coaching-prices a.dark-btn { display: inline-block; font-size: 16px; font-weight: 700; line-height: 1.3; padding: 15px 25px; text-align: center; }
main .coaching-prices .dark-btn { background: #fff; color: #123f68; }
main > .cta .quote-button { font-size: 16px; padding: 15px 27px; }

/* Lisibilité des éléments secondaires */
.climate-note, .table-note { font-size: 12px; line-height: 1.65; }
.section-heading p, .section-head p { line-height: 1.65; }
.realisations-seven-gallery { margin-top: 24px; }

/* Avis : invitation réelle, sans témoignages fictifs */
.reviews-invitation { max-width: 760px; margin: 0 auto; padding: 34px; background: #fff; border: 1px solid var(--line); border-radius: 16px; text-align: center; }
.reviews-invitation h2 { margin: 0 0 12px; font-size: clamp(24px, 3vw, 32px); }
.reviews-invitation p { color: var(--muted); line-height: 1.75; margin: 0 0 22px; }

@media (max-width: 720px) {
  :root { --page-space: 32px; }
  body:not(.home) .page-hero { padding: 34px 0 32px; }
  .page-hero h1 { font-size: clamp(30px, 8vw, 39px); }
  .page-hero p { font-size: 13px; }
  main > .section + .section { padding-top: 28px; }
  main > .section.climate-installation, main > .section.climate-maintenance { padding-top: 30px; padding-bottom: 30px; }
  main > .section.renovation-intro, main > .section.renovation-services, main > .section.coaching-travaux { padding-top: 25px; padding-bottom: 25px; }
  main .dark-btn, main .quote-button, main .maintenance-cta a { font-size: 15px; }
  .reviews-invitation { padding: 24px; }
}

/* Formulaire de contact : champ anti-robot et information de confidentialité */
.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-privacy{font-size:12px;line-height:1.5;color:#586775;margin:0}

/* Pages réalisations et contact : navigation HTML/CSS */
.realisations-seven-gallery .realisation-card-link{display:block;color:inherit;text-decoration:none;border-radius:12px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.realisations-seven-gallery .realisation-card-link:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(16,37,48,.14)}
.realisations-seven-gallery .realisation-card-link figure{margin:0;height:100%}
.realisation-more{display:block;padding:0 15px 17px;font-size:13px;font-weight:700;color:#087dcc}
.project-hero{padding-top:115px;padding-bottom:48px}
.project-section{padding-top:40px}
.project-back{display:inline-block;margin-bottom:28px;color:#087dcc;font-weight:700;text-decoration:none}
.project-intro{max-width:760px;color:#5b6670}
.project-photo-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:12px 0 18px;max-width:100%;-webkit-overflow-scrolling:touch}
.project-photo{margin:0;flex:0 0 min(100%,780px);scroll-snap-align:start;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.08)}
.project-photo img{display:block;width:100%;height:auto;max-height:510px;object-fit:cover}
.project-photo figcaption{padding:12px 16px;font-weight:600}
.project-photo-note{font-size:13px;color:#65717a;margin:8px 0 36px}
.project-contact{display:inline-block;margin-top:22px;padding:15px 23px;background:#16313e;color:#fff;text-decoration:none;border-radius:7px;font-weight:700}
.contact-direct{display:flex;flex-direction:column;gap:18px;justify-content:center}
.contact-direct-link{display:flex;align-items:center;gap:18px;padding:24px;background:#fff;border:1px solid #e2e8ed;border-radius:12px;text-decoration:none;color:#16313e;box-shadow:0 5px 18px rgba(0,0,0,.04)}
.contact-direct-icon{font-size:28px;color:#087dcc}.contact-direct-link small{display:block;color:#60717b;margin-bottom:5px}.contact-direct-link strong{font-size:20px;overflow-wrap:anywhere}
@media(max-width:720px){.project-hero{padding-top:115px;padding-bottom:35px}.project-photo{flex-basis:100%}.contact-direct-link{padding:18px}}
