/* Only plugin-rendered grids. The original hero, CTA, theme and Elementor remain untouched. */
.lft-scope { background: #050505; color: #e5e5e5; padding: 24px; }
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid[data-lft-grid] {
    display: grid;
    grid-template-columns: repeat(var(--lft-mobile, 1), minmax(0, 1fr));
    gap: clamp(1rem, 2.5vw, 1.5rem);
}
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid[data-lft-grid],
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid[data-lft-grid] * { box-sizing: border-box; }
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lft-card {
    margin: 0; padding: 0; min-width: 0; border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, .1); background: rgba(255, 255, 255, .03);
    overflow: hidden; transition: background .3s, border-color .3s, transform .3s, box-shadow .3s;
}
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lft-card:not(.lft-card--pending):hover {
    background: rgba(255, 255, 255, .06); border-color: rgba(56, 189, 248, .3);
    transform: translateY(-3px); box-shadow: 0 18px 35px rgba(0, 0, 0, .35);
}
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lft-card--pending:hover {
    background: rgba(255, 255, 255, .03); border-color: rgba(255, 255, 255, .1);
    transform: none; box-shadow: none;
}
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lusso-ft-2025-card-link {
    display: flex; flex-direction: column; height: 100%; padding: clamp(.85rem, 2vw, 1.1rem);
    color: inherit; text-decoration: none;
}
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lusso-ft-2025-card-media {
    overflow: hidden; aspect-ratio: 1; margin-bottom: .85rem; border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, .08); background: #0a0a0a;
}
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lusso-ft-2025-img {
    display: block; width: 100%; height: 100%; object-fit: cover; object-position: center;
}
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lusso-ft-2025-card-h {
    margin: 0 0 .65rem; flex: 1; font-size: .9375rem; font-weight: 700; line-height: 1.35;
    color: #fff; text-align: center; overflow-wrap: anywhere;
}
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lusso-ft-2025-card-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: .35rem; margin-top: auto;
    font-size: .8125rem; font-weight: 600; color: #21bfa2; text-align: center;
}
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lusso-ft-2025-card-btn::after { content: '\203A'; font-size: 1rem; line-height: 1; }
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lft-card--pending .lusso-ft-2025-card-btn { color: #b5b5b5; }
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lft-card--pending .lusso-ft-2025-card-btn::after { content: none; }
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid a:focus-visible { outline: 3px solid #7dd3fc; outline-offset: -4px; }
:is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lft-placeholder {
    display: flex; height: 100%; align-items: center; justify-content: center;
    color: #b5b5b5; font-size: 2rem; font-weight: 700; letter-spacing: .1em;
}
@media (min-width: 641px) {
    :is(#lusso-ft-2025-root, .lft-scope) .lft-grid[data-lft-grid] { grid-template-columns: repeat(var(--lft-compact, 2), minmax(0, 1fr)); }
}
@media (min-width: 768px) {
    :is(#lusso-ft-2025-root, .lft-scope) .lft-grid[data-lft-grid] { grid-template-columns: repeat(var(--lft-tablet, 3), minmax(0, 1fr)); }
}
@media (min-width: 1100px) {
    :is(#lusso-ft-2025-root, .lft-scope) .lft-grid[data-lft-grid] { grid-template-columns: repeat(var(--lft-desktop, 4), minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
    :is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lft-card,
    :is(#lusso-ft-2025-root, .lft-scope) .lft-grid .lusso-ft-2025-img { transition: none; transform: none; }
}
