/* Styles limités à la page colocation. */
.coloc-page { color:var(--bleu); }
.coloc-page .service-hero { padding:64px 0; }
.coloc-page .service-title { font-size:clamp(2rem,3.4vw,3rem);line-height:1.15; }
.coloc-page .coloc-promise { font-size:1.35rem;line-height:1.4;margin:20px 0;color:var(--bleu); }
.coloc-page .service-subtitle { font-size:1.05rem;line-height:1.75; }
.coloc-page .hero-buttons { display:flex;flex-wrap:wrap;gap:14px;margin-top:26px; }
.coloc-page .btn { white-space:normal;text-align:center; }
.coloc-page .btn-secondary { color:var(--bleu);background:transparent;border:2px solid var(--bleu); }
.coloc-page .btn-secondary:hover { color:white;background:var(--bleu); }
.coloc-page .coloc-section { padding:64px 0; }
.coloc-page .coloc-tinted { background:var(--beige); }
.coloc-page .coloc-heading { max-width:800px;margin-bottom:32px; }
.coloc-page .coloc-heading h2,.coloc-page .coloc-contact h2 { font-size:clamp(1.7rem,2.6vw,2.3rem);line-height:1.25;margin:12px 0 18px; }
.coloc-page p,.coloc-page li { line-height:1.7; }
.coloc-page .coloc-eyebrow { font-size:.82rem;letter-spacing:.08em;font-weight:700;color:#a94235; }
.coloc-page .coloc-benefits { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px; }
.coloc-page .coloc-benefit { background:var(--beige);padding:24px;border-radius:18px; }
.coloc-page .coloc-benefit img { width:88px;height:88px;object-fit:contain;margin-bottom:12px; }
.coloc-page .coloc-benefit h3 { font-size:1.15rem;line-height:1.35;margin:0 0 14px; }
.coloc-page .coloc-plans { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px; }
.coloc-page .coloc-plan { display:flex;flex-direction:column;align-items:flex-start;gap:14px;background:#fff;border:2px solid transparent;border-radius:20px;padding:32px; }
.coloc-page .coloc-plan h3 { font-size:1.5rem;margin:0; }
.coloc-page .coloc-plan p { margin:0; }
.coloc-page .coloc-plan-featured { border-color:var(--orange); }
.coloc-page .coloc-label { color:#a94235;font-size:.78rem;font-weight:700;letter-spacing:.04em; }
.coloc-page .coloc-price { font-size:2.8rem;font-weight:700;line-height:1.2; }
.coloc-page .coloc-price span { font-size:1rem; }
.coloc-page .coloc-plan ul { padding-left:20px;margin:0 0 12px; }
.coloc-page .coloc-plan li { margin-bottom:8px; }
.coloc-page .coloc-plan .btn { margin-top:auto; }
.coloc-page .coloc-note { font-size:.95rem;margin:24px 0;max-width:1000px; }
.coloc-page .coloc-text-link,.coloc-page .coloc-related a { color:var(--bleu);font-weight:600;text-underline-offset:4px; }
.coloc-page .coloc-details details { border-bottom:1px solid #bac5c7;background:#fff;padding:0 22px; }
.coloc-page .coloc-details summary { cursor:pointer;padding:20px 0;font-weight:600;line-height:1.5; }
.coloc-page .coloc-details details p { padding-bottom:20px;margin:0; }
.coloc-page .coloc-details ul { padding:0 0 20px 24px; }
.coloc-page .coloc-details .pricing-list li::before { content:none; }
.coloc-page .coloc-details .pricing-list li { list-style:disc;padding-left:0;margin:8px 0; }
.coloc-page .coloc-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;list-style:none;padding:0; }
.coloc-page .coloc-steps span { font-size:2rem;color:#a94235;font-weight:700; }
.coloc-page .coloc-steps h3 { margin:10px 0;font-size:1.2rem; }
.coloc-page .coloc-contact { text-align:center; }
.coloc-page .coloc-contact p { max-width:700px;margin:0 auto; }
.coloc-page .coloc-contact .hero-buttons { justify-content:center;margin-bottom:28px; }
.coloc-page .coloc-related { font-size:.9rem; }
.coloc-page #tarifs { scroll-margin-top:110px; }
.coloc-page :is(a,summary,button):focus-visible { outline:3px solid var(--bleu);outline-offset:4px; }
.coloc-page .service-title,.coloc-page .service-subtitle { opacity:1!important;transform:none!important;animation:none!important; }
@media(max-width:1050px) { .coloc-page .coloc-benefits { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:768px) { .coloc-page .coloc-plans,.coloc-page .coloc-steps { grid-template-columns:1fr; } .coloc-page .coloc-section,.coloc-page .service-hero { padding:40px 0; } .coloc-page .coloc-plan { padding:24px; } }
@media(max-width:480px) { .coloc-page .coloc-benefits { grid-template-columns:1fr; } .coloc-page .hero-buttons .btn { width:100%; } }
@media(prefers-reduced-motion:reduce) { .coloc-page *, .coloc-page *::before,.coloc-page *::after { animation:none!important;transition:none!important;scroll-behavior:auto!important; } }
/* Lisibilité du bandeau bleu et cadrage de l’illustration existante. */
.coloc-page .service-hero .coloc-promise { color:#fff; }
.coloc-page .service-hero .coloc-eyebrow { color:var(--beige); }
.coloc-page .service-hero .btn-secondary { color:#fff;border-color:#fff; }
.coloc-page .service-hero .btn-secondary:hover { background:#fff;color:var(--bleu); }
.coloc-page .service-hero-layout { max-width:1200px;width:100%;margin:auto;padding:0 24px;box-sizing:border-box; }
.coloc-page .service-hero-content,.coloc-page .service-hero-illustration { min-width:0; }
.coloc-page .service-hero-illustration img { max-width:100%;width:100%;height:auto;transform:none; }

/* Ajustements de la composition et des accordéons GeCo. */
.coloc-page .service-hero-layout { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:center; }
.coloc-page .service-hero-illustration { overflow:hidden;align-self:center;aspect-ratio:1.15;margin:0; }
.coloc-page .service-hero-illustration img { width:165%;max-width:none;max-height:none;flex-shrink:0;height:auto; }
.coloc-page .service-hero + .coloc-section { background:#fff url('assets/queue-geco-bleu.jpg') no-repeat top right;background-size:auto 750px;padding-top:100px; }
.coloc-page .service-hero + .coloc-section .coloc-heading { max-width:760px;padding-right:24px; }
.coloc-page .coloc-details { display:grid;gap:14px; }
.coloc-page .coloc-details details { border:1px solid #e4dad0;border-radius:22px;padding:0 24px;box-shadow:0 3px 12px rgba(0,53,74,.035); }
.coloc-page .coloc-details summary { display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;padding:22px 0; }
.coloc-page .coloc-details summary::-webkit-details-marker { display:none; }
.coloc-page .coloc-details summary::after { content:"+";display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:var(--beige);color:var(--bleu);font-size:1.35rem;font-weight:400; }
.coloc-page .coloc-details details[open] { border-color:#bdcbd0; }
.coloc-page .coloc-details details[open] summary::after { content:"−";background:var(--bleu);color:white; }
.coloc-page .coloc-details summary:hover { color:#a94235; }
.coloc-page .coloc-details details[open] summary { margin-bottom:16px;border-bottom:1px solid var(--beige); }
@media(max-width:900px) {
 .coloc-page .service-hero-layout { grid-template-columns:1fr;gap:12px; }
 .coloc-page .service-hero-illustration { width:min(100%,500px);justify-self:center;aspect-ratio:1.5;padding:0; }
 .coloc-page .service-hero + .coloc-section { background-size:auto 500px;padding-top:100px; }
 .coloc-page .service-hero + .coloc-section .coloc-heading { padding-right:0; }
}
@media(max-width:480px) {
 .coloc-page .service-hero-illustration { aspect-ratio:1.4; }
 .coloc-page .service-hero + .coloc-section { background-size:auto 430px;padding-top:84px; }
 .coloc-page .coloc-details details { padding:0 18px;border-radius:20px; }
 .coloc-page .coloc-details summary { gap:12px;padding:18px 0; }
}
