.card-grid{background:var(--module-bg);color:var(--module-fg);padding:var(--spacing-section-y) 0}.card-grid__header{max-width:720px;margin-bottom:clamp(2.5rem,5vw,4rem);display:flex;flex-direction:column;gap:1rem}.card-grid__eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-sans);font-size:.8rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--module-fg)}.card-grid__eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--turquoise);display:inline-block;animation:badgePulse 2s ease-in-out infinite;flex-shrink:0}.card-grid__heading{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--module-fg);line-height:1.1;margin:0;letter-spacing:-.015em;max-width:24ch}.card-grid__heading p{margin:0}.card-grid__heading em{font-style:italic;font-family:var(--font-serif);font-weight:400}.card-grid__intro{font-size:clamp(.95rem,1.1vw,1.05rem);color:var(--module-fg-sec);line-height:1.7;margin:0;max-width:60ch}.card-grid__intro p{margin:0 0 .6rem}.card-grid__intro p:last-child{margin-bottom:0}.card-grid__grid{display:grid;gap:clamp(1rem,1.8vw,1.5rem);align-items:stretch;padding-bottom:clamp(2rem,5vw,4rem)}.card-grid--cols-2 .card-grid__grid{grid-template-columns:repeat(2,1fr)}.card-grid--cols-3 .card-grid__grid{grid-template-columns:repeat(3,1fr)}.card-grid--cols-4 .card-grid__grid{grid-template-columns:repeat(4,1fr)}.card-grid--aligned .card-grid__grid{padding-bottom:0}.card-grid--staggered.card-grid--cols-2 .card-grid__card:nth-child(2n){transform:translateY(clamp(2rem,5vw,4rem))}.card-grid--staggered.card-grid--cols-3 .card-grid__card:nth-child(3n+2){transform:translateY(clamp(2rem,5vw,4rem))}.card-grid--staggered.card-grid--cols-4 .card-grid__card:nth-child(4n+2),.card-grid--staggered.card-grid--cols-4 .card-grid__card:nth-child(4n+4){transform:translateY(clamp(2rem,5vw,4rem))}.card-grid__card{background:var(--module-surface);border:1px solid var(--module-border);border-radius:var(--radius-card);padding:clamp(1.75rem,2.5vw,2.25rem);display:flex;flex-direction:column;gap:.85rem;transition:transform .35s var(--ease-out-expo),border-color .35s ease,box-shadow .35s ease}.card-grid__card:hover{transform:translateY(-4px);border-color:#4dd9c066;box-shadow:0 16px 36px #050f1e14}.card-grid--staggered.card-grid--cols-2 .card-grid__card:nth-child(2n):hover{transform:translateY(calc(clamp(2rem,5vw,4rem) - 4px))}.card-grid--staggered.card-grid--cols-3 .card-grid__card:nth-child(3n+2):hover{transform:translateY(calc(clamp(2rem,5vw,4rem) - 4px))}.card-grid--staggered.card-grid--cols-4 .card-grid__card:nth-child(4n+2):hover,.card-grid--staggered.card-grid--cols-4 .card-grid__card:nth-child(4n+4):hover{transform:translateY(calc(clamp(2rem,5vw,4rem) - 4px))}.section--theme-dark .card-grid__card:hover{box-shadow:0 16px 36px #0000004d}.card-grid__icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:var(--module-icon-bg, rgba(77, 217, 192, .1));color:var(--turquoise-deep);margin-bottom:.3rem}.section--theme-dark .card-grid__icon{color:var(--turquoise)}.card-grid__tag{align-self:flex-start;display:inline-flex;align-items:center;gap:.45rem;padding:.3rem .75rem;border-radius:var(--radius-pill);font-family:var(--font-sans);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--turquoise-deep);background:#40bab21f;border:1px solid rgba(64,186,178,.25);margin-bottom:.3rem}.card-grid__tag--with-icon{padding-left:.65rem}.card-grid__tag-icon{display:block;flex-shrink:0}.card-grid__tag-text{line-height:1}.section--theme-dark .card-grid__tag{color:var(--turquoise);background:#4dd9c024;border-color:#4dd9c04d}.card-grid__card-title{font-family:var(--font-display);font-size:clamp(1.15rem,1.5vw,1.35rem);font-weight:700;color:var(--module-fg);line-height:1.2;margin:0;letter-spacing:-.005em}.card-grid__card-desc{font-size:.95rem;color:var(--module-fg-sec);line-height:1.65;margin:0}.card-grid__card-desc p{margin:0 0 .55rem}.card-grid__card-desc p:last-child{margin-bottom:0}.card-grid__capabilities{list-style:none;margin:.4rem 0 0;padding:.85rem 0 0;border-top:1px solid var(--module-border);display:flex;flex-direction:column;gap:.4rem}.card-grid__capability{display:flex;align-items:flex-start;gap:.55rem;font-family:var(--font-sans);font-size:.88rem;color:var(--module-fg-sec);line-height:1.5}.card-grid__capability-dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--turquoise-deep);flex-shrink:0;margin-top:.55rem}.section--theme-dark .card-grid__capability-dot{background:var(--turquoise)}.card-grid__card--decorative{--card-grid-decorative-offset-y: 0px;background:transparent;border:none;border-radius:0;padding:clamp(1.5rem,3vw,2.5rem);min-height:clamp(200px,24vw,280px);display:flex;align-items:center;justify-content:center;transition:none;box-shadow:none}.card-grid__card--align-h-left{justify-content:flex-start}.card-grid__card--align-h-center{justify-content:center}.card-grid__card--align-h-right{justify-content:flex-end}.card-grid__card--align-v-top{align-items:flex-start}.card-grid__card--align-v-center{align-items:center}.card-grid__card--align-v-bottom{align-items:flex-end}.card-grid__card--decorative:hover{transform:none;border-color:transparent;box-shadow:none}.card-grid--staggered.card-grid--cols-2 .card-grid__card--decorative:nth-child(2n):hover,.card-grid--staggered.card-grid--cols-3 .card-grid__card--decorative:nth-child(3n+2):hover,.card-grid--staggered.card-grid--cols-4 .card-grid__card--decorative:nth-child(4n+2):hover,.card-grid--staggered.card-grid--cols-4 .card-grid__card--decorative:nth-child(4n+4):hover{transform:translateY(clamp(2rem,5vw,4rem))}.section--theme-dark .card-grid__card--decorative:hover{box-shadow:none}.card-grid__decorative-image{display:block;max-width:70%;width:auto;height:auto;object-fit:contain;transform:translateY(var(--card-grid-decorative-offset-y, 0px))}@media (max-width: 1024px){.card-grid--cols-3 .card-grid__grid,.card-grid--cols-4 .card-grid__grid{grid-template-columns:repeat(2,1fr)}.card-grid--staggered .card-grid__card:nth-child(3n+2),.card-grid--staggered .card-grid__card:nth-child(4n+2),.card-grid--staggered .card-grid__card:nth-child(4n+4){transform:none}.card-grid--staggered .card-grid__card:nth-child(2n){transform:translateY(clamp(1.5rem,4vw,3rem))}.card-grid--staggered .card-grid__card:nth-child(2n):hover{transform:translateY(calc(clamp(1.5rem,4vw,3rem) - 4px))}.card-grid--staggered .card-grid__card--decorative:nth-child(2n):hover{transform:translateY(clamp(1.5rem,4vw,3rem))}}@media (max-width: 560px){.card-grid--cols-2 .card-grid__grid,.card-grid--cols-3 .card-grid__grid,.card-grid--cols-4 .card-grid__grid{grid-template-columns:1fr;padding-bottom:0}.card-grid--staggered .card-grid__card:nth-child(3n+2),.card-grid--staggered .card-grid__card:nth-child(4n+2),.card-grid--staggered .card-grid__card:nth-child(4n+4),.card-grid--staggered .card-grid__card:nth-child(2n){transform:none}.card-grid--staggered .card-grid__card:nth-child(3n+2):hover,.card-grid--staggered .card-grid__card:nth-child(4n+2):hover,.card-grid--staggered .card-grid__card:nth-child(4n+4):hover,.card-grid--staggered .card-grid__card:nth-child(2n):hover{transform:translateY(-4px)}.card-grid--staggered .card-grid__card--decorative:nth-child(3n+2):hover,.card-grid--staggered .card-grid__card--decorative:nth-child(4n+2):hover,.card-grid--staggered .card-grid__card--decorative:nth-child(4n+4):hover,.card-grid--staggered .card-grid__card--decorative:nth-child(2n):hover{transform:none}}
