/* Accueil uniquement : images et composition validées. */

/* À propos : démarche collective et parcours du fondateur. */
.home-page .about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:start}
.home-page .about-intro h2{margin-bottom:24px}
.home-page .about-intro p + p,.home-page .about-founder p + p{margin-top:16px}
.home-page .about-founder{padding:30px;background:var(--soft);border:1px solid var(--line);border-top:4px solid var(--brand);border-radius:10px}
.home-page .about-founder h3{font-size:1.35rem;margin-bottom:20px}
.home-page .about-commitments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:40px}
.home-page .about-commitments article{border-top:2px solid var(--brand);padding-top:20px}
.home-page .about-commitments h3{font-size:1.08rem;margin-bottom:12px}
.home-page .about-commitments p{font-size:.92rem}
@media(max-width:900px){.home-page .about-grid{grid-template-columns:1fr;gap:28px}}
@media(max-width:720px){.home-page .about-commitments{grid-template-columns:1fr;gap:24px}.home-page .about-founder{padding:24px}}

.home-page .hero-grid{grid-template-columns:1.15fr .85fr;gap:64px}
.home-page .welcome-photo{margin:0;position:relative;border-radius:14px;overflow:hidden;background:#eef2f4}
.home-page .welcome-photo img{width:100%;height:520px;object-fit:cover;object-position:50% 40%}
.home-page .welcome-photo figcaption{position:absolute;inset:auto 0 0;background:#162331;color:#f5f7fa;padding:14px 20px;font-size:.85rem}
.home-page .nav-wrap{gap:16px}
.home-page .main-nav{gap:16px}
.home-page .header-phone{white-space:nowrap;gap:8px;flex-shrink:0;color:#0c1218}
.home-page .header-phone img{filter:brightness(0);flex-shrink:0}
.home-page .phone-mobile{display:none}
@media(max-width:1150px){.home-page .phone-desktop{display:none}.home-page .main-nav .phone-mobile{display:inline-flex;color:#0c1218;flex-shrink:0}.home-page .nav-wrap{gap:0}}
.home-page .prediagnostic-section{padding-block:32px 0}
.home-page .prediagnostic-panel{display:grid;grid-template-columns:1fr 1fr;gap:14px 40px;padding:28px 32px}
.home-page .prediagnostic-panel .eyebrow{grid-column:1/-1;margin:0}
.home-page .prediagnostic-panel ol{grid-column:2;grid-row:2/5;margin:0}
.home-page .prediagnostic-panel h2{margin:0}
.home-page .project-photo{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.home-page .project-copy h3{margin-top:0}
.home-page .contact-details{display:grid;gap:12px;margin-top:28px;font-style:normal;color:#445462}
.home-page .contact-details a{font-size:1.5rem;font-weight:650;color:#162331;text-decoration:underline;text-underline-offset:5px}
@media(max-width:900px){.home-page .hero-grid{grid-template-columns:1fr;gap:28px}.home-page .welcome-photo img{height:440px;object-position:50% 32%}}
@media(max-width:720px){.home-page .welcome-photo img{height:380px}.home-page .prediagnostic-panel{grid-template-columns:1fr;padding:24px}.home-page .prediagnostic-panel ol{grid-column:auto;grid-row:auto}.home-page .prediagnostic-panel .eyebrow{grid-column:auto}}

/* Champ piège antispam, exclu du clavier et des lecteurs d’écran. */
.attachment-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.attachment-list li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid #cbd5df;border-radius:8px}
.attachment-list span{min-width:0;overflow-wrap:anywhere}
.attachment-preview{display:flex;align-items:center;justify-content:center;width:64px;height:64px;overflow:hidden;border-radius:6px;background:#edf2f6;color:#36485b;font-size:.65rem;font-weight:700}
.attachment-preview img{display:block;width:100%;height:100%;object-fit:contain}
.attachment-pdf{background:#fff5d6;border:1px solid #dfc46a;font-size:.85rem;position:relative}
.attachment-pdf::after{content:'';position:absolute;top:0;right:0;border-top:12px solid #dfc46a;border-left:12px solid transparent}
.attachment-details{min-width:0;display:grid;gap:4px}
.attachment-details small{color:#526478;font-size:.8rem}
@media(max-width:600px){.attachment-list li{grid-template-columns:64px minmax(0,1fr)}.attachment-list button{grid-column:2;justify-self:start}}
.attachment-list button{flex-shrink:0;min-height:44px;padding:8px 12px;border:1px solid #526478;border-radius:6px;background:#fff;color:#162331;cursor:pointer;font:inherit}
.attachment-list button:focus-visible{outline:3px solid #162331;outline-offset:3px}
.attachment-add{min-height:44px;padding:10px 16px;border:1px solid #526478;border-radius:6px;background:#fff;color:#162331;cursor:pointer;font:inherit}
.attachment-add:focus-visible{outline:3px solid #162331;outline-offset:3px}
#attachment-status:empty,.attachment-list:empty{display:none}
.home-page .form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
