/* HOMAZEK — composants optionnels Pages CMS, isolés du design existant */
.hom-cms-section {padding-block: clamp(2.2rem, 4vw, 4rem); background: #f4f8f6;}
.hom-cms-section:nth-of-type(even) {background:#fff;}
.hom-cms-section-heading {max-width:760px;margin:0 0 1.3rem;}
.hom-cms-section-heading h2{color:#15585b;font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.17;margin:0 0 .6rem;}
.hom-cms-section-heading p{max-width:62ch;line-height:1.6;}
.hom-cms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:.9rem;}
.hom-cms-card {min-width:0;overflow:hidden;border-radius:14px;background:#fff;border:1px solid #dce7e4;box-shadow:0 8px 24px rgba(11,59,60,.045);}
.hom-cms-photo{width:100%;height:200px;object-fit:cover;display:block;}
.hom-cms-card-body{padding:clamp(.9rem,1.8vw,1.3rem);}
.hom-cms-card-body h3{font-size:1.25rem;line-height:1.3;color:#15585b;margin:.2rem 0 .75rem;}
.hom-cms-card-body p{margin:.35rem 0 .8rem;line-height:1.65;overflow-wrap:anywhere;}
.hom-cms-tag{color:#33666a;font-size:.88rem;font-weight:700;}
.hom-cms-details{margin:1rem 0;border-top:1px solid #dce7e4;padding-top:.8rem;}
.hom-cms-details summary{cursor:pointer;font-weight:700;color:#15585b;}
.hom-cms-details h4{font-size:1rem;color:#15585b;margin:1.2rem 0 .35rem;}
.hom-cms-rich :is(p,ul,ol){margin:.5rem 0;line-height:1.65;}
.hom-cms-rich ul,.hom-cms-rich ol{padding-left:1.3rem;}
.hom-cms-documents{list-style:none;padding:0;margin:.8rem 0;}
.hom-cms-documents a,.hom-cms-link{color:#15585b;text-underline-offset:3px;overflow-wrap:anywhere;font-weight:650;}
.hom-cms-link{display:inline-block;margin-top:.9rem;}
@media(max-width:560px){.hom-cms-section{padding-block:2rem}.hom-cms-photo{height:190px}}
