.card-grid{display:grid;font-family:Nunito Sans,sans-serif;gap:24px;grid-template-columns:repeat(var(--fo-cols,3),minmax(0,1fr));margin-bottom:30px}@media (max-width:1024px){.card-grid[data-columns="3"],.card-grid[data-columns="4"]{grid-template-columns:repeat(1,minmax(0,1fr))}}@media (max-width:600px){.card-grid{grid-template-columns:1fr}}.card-grid__item{align-items:var(--fo-flex-align);background:var(--fo-card-bg);border:1px solid var(--fo-card-border);border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:28px 24px;text-align:var(--fo-text-align);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.card-grid__item:hover{border-color:var(--fo-card-border-hover);box-shadow:0 18px 38px -20px rgba(9,32,58,.42);transform:translateY(-2px)}.card-grid__icon-wrap{align-items:center;border-radius:10px;display:inline-flex;flex-shrink:0;height:56px;justify-content:center;transition:transform .25s cubic-bezier(.22,.8,.3,1);width:56px}.card-grid__item:hover .card-grid__icon-wrap{transform:scale(1.07) rotate(-3deg)}.card-grid__heading{color:var(--fo-heading);font-size:18px;font-weight:700;line-height:1.3;margin:0}.card-grid__description{color:var(--fo-text);flex-grow:1;font-size:15px;line-height:1.6;width:100%}.card-grid__description p{color:inherit;margin:0}.card-grid__link{align-items:center;color:var(--fo-link);display:inline-flex;font-size:15px;font-weight:600;gap:6px;margin-top:4px;text-decoration:none}.card-grid__link:hover{filter:brightness(1.15);text-decoration:underline}.card-grid__arrow{display:inline-block;transition:transform .2s ease}.card-grid__link:hover .card-grid__arrow{transform:translateX(3px)}.card-grid__media{border-radius:10px;flex-shrink:0;line-height:0;overflow:hidden;transform:translateZ(0);transition:transform .25s cubic-bezier(.22,.8,.3,1)}.card-grid__img{display:block;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,.8,.3,1);width:100%}.card-grid__media--tile{height:56px;width:56px}.card-grid__item:hover .card-grid__media--tile{transform:scale(1.07) rotate(-3deg)}.card-grid__media--banner{aspect-ratio:16/9;border-radius:12px 12px 0 0;margin:-28px -24px 4px;width:calc(100% + 48px)}.card-grid__item:hover .card-grid__media--banner .card-grid__img{transform:scale(1.045)}.card-grid__btn{border:1px solid transparent;border-radius:9px;display:inline-block;font-size:14.5px;font-weight:700;line-height:1.3;margin-top:8px;padding:11px 22px;text-align:center;text-decoration:none;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.card-grid__btn--primary{background-color:var(--fo-link);color:var(--fo-btn-text,#fff)}.card-grid__btn--primary:hover{box-shadow:0 12px 28px -12px var(--fo-link);filter:brightness(1.1);transform:translateY(-2px)}.card-grid__btn--outline{background-color:transparent;border-color:var(--fo-card-border-hover);color:var(--fo-link)}.card-grid__btn--outline:hover{background-color:color-mix(in srgb,var(--fo-link) 9%,transparent);border-color:var(--fo-link);transform:translateY(-2px)}.card-grid__btn:active{transform:translateY(0)}.card-grid__item:has(.card-grid__btn) .card-grid__description{margin-bottom:4px}@media (max-width:600px){.card-grid__btn{display:block;width:100%}}@media (prefers-reduced-motion:reduce){.card-grid__arrow,.card-grid__btn,.card-grid__icon-wrap,.card-grid__img,.card-grid__item,.card-grid__media{transition:none}.card-grid__btn:hover,.card-grid__item:hover,.card-grid__item:hover .card-grid__icon-wrap,.card-grid__item:hover .card-grid__media--banner .card-grid__img,.card-grid__item:hover .card-grid__media--tile{transform:none}}