.cir-home{display:grid;gap:48px;min-width:0}
.cir-home section{min-width:0}
.cir-home h2{margin:0 0 24px}
.cir-home .cir-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.cir-home .cir-card{min-width:0;overflow-wrap:anywhere}
.cir-home-carousel .cir-cards{display:flex;overflow-x:auto;gap:22px;scroll-snap-type:x mandatory;padding:4px 0 18px}
.cir-home-carousel .cir-card{flex:0 0 calc((100% - 66px)/4);scroll-snap-align:start;box-sizing:border-box}
.cir-carousel-controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.cir-carousel-controls[hidden]{display:none}
.cir-carousel-controls button{border:1px solid var(--cir-button,#2f6b3f);border-radius:6px;padding:10px 16px;min-height:44px;background:var(--cir-button,#2f6b3f);color:var(--cir-button-text,#fff);cursor:pointer}
.cir-carousel-controls button:focus-visible,.cir-home a:focus-visible{outline:3px solid #2f6b3f;outline-offset:3px}
@media(max-width:860px){.cir-home .cir-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.cir-home-carousel .cir-card{flex-basis:calc((100% - 22px)/2)}}
@media(max-width:540px){.cir-home .cir-cards{grid-template-columns:minmax(0,1fr)}.cir-home-carousel .cir-card{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.cir-home .cir-card{transition:none}}

.cir-related{margin-top:40px}
