.fg{--fg-cols:3;--fg-icon-bg:var(--color-manila);--fg-icon-ink:var(--color-primary)}.fg--cols-2{--fg-cols:2}.fg--cols-4{--fg-cols:4}.fg--icon-primary{--fg-icon-bg:var(--color-primary);--fg-icon-ink:var(--btn-primary-color)}.fg--icon-accent{--fg-icon-bg:var(--color-accent);--fg-icon-ink:var(--btn-on-dark-primary-color)}.fg-grid{display:grid;gap:var(--grid-gap);grid-template-columns:repeat(var(--fg-cols),minmax(0,1fr));list-style:none;margin:0;padding:0}.fg .fg-card{align-items:flex-start;background:var(--color-surface-raised);border:var(--card-border-width) solid var(--card-border-color);border-radius:var(--card-border-radius);color:var(--color-text);display:flex;flex-direction:column;margin:0;padding:var(--space-3xl)}.fg .fg-card--soft{background:var(--color-card-bg)}.fg .fg-card--tint{background:var(--color-manila);border-color:var(--color-manila)}.fg .fg-card--dark{background:var(--color-ground-dark);border-color:var(--color-ground-dark);color:var(--color-on-dark)}.fg .fg-card--accent{background:var(--color-accent);border-color:var(--color-accent);color:var(--btn-on-dark-primary-color)}.fg .fg-card--none{background:none;border:0;padding:0}.bg-dark .fg .fg-card--dark{background:var(--color-surface-on-dark);border-color:var(--color-border-on-dark)}.bg-dark .fg .fg-card--none{color:var(--color-on-dark)}.fg--icon-tint .fg-card--tint{--fg-icon-bg:var(--color-surface-raised);--fg-icon-ink:var(--color-primary)}.fg--icon-tint .fg-card--dark{--fg-icon-bg:var(--color-surface-on-dark);--fg-icon-ink:var(--color-accent)}.fg--icon-accent .fg-card--accent{--fg-icon-bg:var(--btn-on-dark-primary-color);--fg-icon-ink:var(--color-accent)}.bg-dark .fg--icon-tint .fg-card--none{--fg-icon-bg:var(--color-surface-on-dark);--fg-icon-ink:var(--color-accent)}.fg-grid:has(.fg-card--none){column-gap:var(--space-3xl);row-gap:var(--space-4xl)}.fg-icon{background:var(--fg-icon-bg);border-radius:var(--radius-md);color:var(--fg-icon-ink);display:grid;height:var(--btn-height-sm);margin-bottom:var(--space-2xl);place-items:center;width:var(--btn-height-sm)}.fg-icon .theme-icon{color:inherit}.fg-icon svg{height:var(--icon-size);width:var(--icon-size)}.fg--icon-plain .fg-icon{background:none;border-radius:0;color:var(--color-primary);height:auto;width:auto}.fg--icon-plain .fg-icon svg{height:var(--icon-size-mark);width:var(--icon-size-mark)}.bg-dark .fg--icon-plain .fg-card--none .fg-icon,.fg--icon-plain .fg-card--dark .fg-icon{color:var(--color-accent)}.fg--icon-plain .fg-card--accent .fg-icon{color:var(--btn-on-dark-primary-color)}.fg .fg-card .fg-title{color:var(--color-heading);font-size:var(--font-size-h4);line-height:var(--line-height-snug);margin:0 0 var(--space-md)}.fg .fg-card .fg-text{color:inherit;font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.fg .fg-card--soft .fg-text,.fg .fg-card--tint .fg-text,.fg .fg-card--white .fg-text{color:var(--color-text)}.fg .fg-card--dark .fg-title{color:var(--color-background)}.fg .fg-card--dark .fg-text{color:var(--color-muted-on-dark)}.fg .fg-card--accent .fg-text,.fg .fg-card--accent .fg-title{color:var(--btn-on-dark-primary-color)}.bg-dark .fg .fg-card--none .fg-title{color:var(--color-background)}.bg-dark .fg .fg-card--none .fg-text{color:var(--color-muted-on-dark)}.fg-link{align-items:center;color:var(--color-primary);display:inline-flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);gap:var(--space-sm);margin-top:auto;padding-top:var(--space-xl);text-decoration:none;transition:color var(--transition-fast)}.fg-link svg{height:var(--icon-size-tick);transition:translate var(--transition-fast);width:var(--icon-size-tick)}.fg-link:hover{color:var(--color-card-on-dark)}.fg-link:hover svg{translate:var(--space-2xs) 0}.bg-dark .fg-card--none .fg-link,.fg-card--dark .fg-link{color:var(--color-accent)}.fg-card--accent .fg-link{color:var(--btn-on-dark-primary-color)}.fg--center .fg-card{align-items:center;text-align:center}.fg--center .fg-actions{text-align:center}.fg-actions{margin-top:var(--stack-content)}.bg-dark .fg .pl-head p{color:var(--color-muted-on-dark)}@media (max-width:1100px){.fg--cols-3,.fg--cols-4{--fg-cols:2}}@media (max-width:767px){.fg--cols-2,.fg--cols-3,.fg--cols-4{--fg-cols:1}.fg-grid{gap:var(--grid-gap-mobile)}.fg .fg-card{padding:var(--space-2xl)}.fg .fg-card--none{padding:0}}