.wp-block-korespa-menu-grafico.kgm-menu { width: 100%; box-sizing: border-box; }
.kgm-menu.kgm-menu .kgm-grid { display: grid; grid-template-columns: repeat(var(--kgm-columns, 4), minmax(0, 1fr)); align-items: start; gap: var(--kgm-gap, 20px); }
.kgm-menu.kgm-menu .kgm-card { position: relative; display: flex; min-width: 0; color: inherit; text-align: var(--kgm-text-align, left); text-decoration: none; flex-direction: column; align-items: stretch; }
.kgm-menu.kgm-menu .kgm-card--linked { transition: transform .2s ease, filter .2s ease; }
.kgm-menu.kgm-menu .kgm-card--linked:hover { filter: brightness(1.04); transform: translateY(-3px); }
.kgm-menu.kgm-menu .kgm-card--linked:focus-visible { outline: 3px solid currentColor; outline-offset: 5px; }
.kgm-menu.kgm-menu .kgm-card__image { position: relative; display: block; width: 100%; aspect-ratio: 1; overflow: hidden; background: #e7e7e7; }
.kgm-menu.kgm-menu .kgm-card__image img,
.kgm-menu.kgm-menu .kgm-card__placeholder { display: block; width: 100%; height: 100%; }
.kgm-menu.kgm-menu .kgm-card__image img { max-width: none; margin: 0; object-fit: cover; }
.kgm-menu.kgm-menu .kgm-card__placeholder { background: linear-gradient(135deg, #eeeeee, #d6d6d6); }
.kgm-menu.kgm-menu .kgm-shape-rounded { border-radius: 24px; }
.kgm-menu.kgm-menu .kgm-shape-circle { border-radius: 50%; }
.kgm-menu.kgm-menu .kgm-shape-landscape { aspect-ratio: 16 / 9; border-radius: 12px; }
.kgm-menu.kgm-menu .kgm-shape-portrait { aspect-ratio: 3 / 4; border-radius: 12px; }
.kgm-menu.kgm-menu .kgm-shape-hexagon { clip-path: polygon(25% 6.7%, 75% 6.7%, 100% 50%, 75% 93.3%, 25% 93.3%, 0 50%); }
.kgm-menu.kgm-menu .kgm-card__overlay { display: none; }
.kgm-menu.kgm-menu .kgm-card__content { position: relative; z-index: 2; display: flex; width: 100%; box-sizing: border-box; flex-direction: column; text-align: var(--kgm-text-align, left); }
.kgm-menu.kgm-menu .kgm-card__title { display: block; margin: 0; color: var(--kgm-title-color, #111111); font-size: var(--kgm-title-size, 20px); font-weight: 700; line-height: 1.12; }
.kgm-menu.kgm-menu .kgm-card__text { display: block; margin-top: 7px; color: var(--kgm-text-color, #3c434a); font-size: .9rem; line-height: 1.4; }

.kgm-menu.kgm-layout-overlay .kgm-card { overflow: hidden; background: #252525; color: #fff; isolation: isolate; }
.kgm-menu.kgm-layout-overlay .kgm-card-shape-rounded { border-radius: 24px; }
.kgm-menu.kgm-layout-overlay .kgm-card-shape-circle { border-radius: 50%; }
.kgm-menu.kgm-layout-overlay .kgm-card-shape-landscape,
.kgm-menu.kgm-layout-overlay .kgm-card-shape-portrait { border-radius: 12px; }
.kgm-menu.kgm-layout-overlay .kgm-card-shape-hexagon { clip-path: polygon(25% 6.7%, 75% 6.7%, 100% 50%, 75% 93.3%, 25% 93.3%, 0 50%); }
.kgm-menu.kgm-layout-overlay .kgm-card__image { border-radius: 0; clip-path: none; }
.kgm-menu.kgm-layout-overlay .kgm-card__overlay { position: absolute; z-index: 1; inset: 0; display: block; pointer-events: none; }
.kgm-menu.kgm-layout-overlay.kgm-text-bottom .kgm-card__overlay { background: linear-gradient(to top, rgba(0,0,0,var(--kgm-overlay-opacity, .58)) 0%, rgba(0,0,0,var(--kgm-overlay-opacity, .58)) 26%, transparent 84%); }
.kgm-menu.kgm-layout-overlay.kgm-text-top .kgm-card__overlay { background: linear-gradient(to bottom, rgba(0,0,0,var(--kgm-overlay-opacity, .58)) 0%, rgba(0,0,0,var(--kgm-overlay-opacity, .58)) 26%, transparent 84%); }
.kgm-menu.kgm-layout-overlay.kgm-text-center .kgm-card__overlay { background: rgba(0,0,0,var(--kgm-overlay-opacity, .58)); }
.kgm-menu.kgm-layout-overlay .kgm-card__content { position: absolute; inset: 0; padding: clamp(14px, 7%, 25px); justify-content: flex-end; }
.kgm-menu.kgm-layout-overlay.kgm-text-top .kgm-card__content { justify-content: flex-start; }
.kgm-menu.kgm-layout-overlay.kgm-text-center .kgm-card__content { justify-content: center; }
.kgm-menu.kgm-layout-overlay .kgm-card__title { color: var(--kgm-title-color, #ffffff); text-shadow: 0 1px 3px rgba(0,0,0,.55); }
.kgm-menu.kgm-layout-overlay .kgm-card__text { color: var(--kgm-text-color, #ffffff); text-shadow: 0 1px 2px rgba(0,0,0,.55); }

.kgm-menu.kgm-layout-below .kgm-card__content { padding-top: 13px; }
.kgm-menu.kgm-layout-below .kgm-card__title { color: var(--kgm-title-color, #111111); }
.kgm-menu.kgm-layout-below .kgm-card__text { color: var(--kgm-text-color, #3c434a); }
.kgm-menu.kgm-fixed-height .kgm-card__image { height: var(--kgm-card-height); aspect-ratio: auto; }

@media (max-width: 900px) {
	.kgm-menu.kgm-menu .kgm-grid { grid-template-columns: repeat(var(--kgm-columns-tablet, 3), minmax(0, 1fr)); }
}
.kgm-menu.kgm-fixed-width .kgm-grid { grid-template-columns: repeat(var(--kgm-item-columns, 1), var(--kgm-card-width)); justify-content: start; overflow-x: auto; }
@media (max-width: 640px) {
	.kgm-menu.kgm-menu .kgm-grid { grid-template-columns: repeat(var(--kgm-columns-mobile, 2), minmax(0, 1fr)); }
	.kgm-menu.kgm-fixed-width .kgm-grid { grid-template-columns: repeat(var(--kgm-columns-mobile, 2), minmax(0, 1fr)); overflow-x: visible; }
	.kgm-menu.kgm-menu .kgm-card__title { font-size: min(var(--kgm-title-size, 20px), 22px); }
}
@media (max-width: 380px) {
	.kgm-menu.kgm-menu .kgm-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
	.kgm-menu.kgm-menu .kgm-card--linked { transition: none; }
}
