    /* --- ALAPSTÍLUSOK & KONTÉNER --- */
    .vh-destinations-container {
        color: #1a1d24;
    }

    /* --- SZŰRŐSÁV --- */
    .vh-filter-bar {
        display: flex;
        gap: 30px;
        background: #ffffff;
        padding: 15px 25px;
        border-radius: 12px;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
        margin-bottom: 50px;
        align-items: center;
        border: 1px solid #f1f5f9;
        position: relative;
        z-index: 100;
    }

    .vh-search-wrapper {
        position: relative;
        flex: 2;
        display: flex;
        align-items: center;
        gap: 12px;
    }

    .vh-search-icon { color: #94a3b8; font-size: 20px; }

    .vh-search-input {
        width: 100%;
        padding: 8px 0;
        border: none;
        background: transparent;
        outline: none;
        border-bottom: 1px solid #e2e8f0;
        font-size: 15px;
        color: #1a1d24;
        transition: border-color 0.3s ease;
    }

    .vh-search-input:focus { border-bottom: 1px solid #7dd5e5; }

    /* --- DROPDOWN --- */
    .vh-dropdown-container { position: relative; flex: 1; min-width: 250px; }

    .vh-dropdown-btn {
        width: 100%;
        padding: 10px 15px;
        background: transparent;
        border: 1px solid #f1f5f9;
        border-radius: 8px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        cursor: pointer;
        font-weight: 500;
        color: #64748b;
        font-size: 14px;
        transition: all 0.3s ease;
    }

    .vh-dropdown-menu {
        position: absolute;
        top: calc(100% + 8px);
        right: 0;
        width: 280px;
        background: #ffffff;
        border-radius: 12px;
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
        padding: 15px;
        z-index: 1000;
        display: none;
        border: 1px solid #e5e7eb;
    }

    .vh-dropdown-menu.active { display: block; animation: vhFadeIn 0.2s ease-out; }

    .vh-dropdown-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-bottom: 10px;
        border-bottom: 1px solid #f1f5f9;
        margin-bottom: 10px;
        font-size: 11px;
        font-weight: 600;
        color: #94a3b8;
    }

    /* --- GRID ÉS KÁRTYÁK --- */
    .vh-grid-layout {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 30px;
    }

    .vh-card {
        background: #ffffff;
        border-radius: 12px;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        border: 1px solid #e5e7eb;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
        transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
        height: 100%;
    }

    .vh-card:hover { box-shadow: 0 15px 35px rgba(125, 213, 229, 0.25); border-color: #7dd5e5; }

    .vh-card-image { height: 220px; position: relative; overflow: hidden; background: #f1f5f9; }
    .vh-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
    .vh-card:hover .vh-card-image img { transform: scale(1.03); }

    .vh-placeholder-wrapper { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: #cbd5e1; }
    .vh-placeholder-wrapper span { font-size: 64px !important; }

    .vh-card-badge {
        position: absolute;
        top: 12px;
        right: 12px;
        background: rgba(255, 255, 255, 0.95);
        backdrop-filter: blur(4px);
        padding: 4px 10px;
        border-radius: 9999px;
        font-size: 10px;
        font-weight: 700;
        text-transform: uppercase;
        color: #1a1d24;
        display: flex;
        align-items: center;
        gap: 5px;
        box-shadow: 0 2px 5px rgba(0,0,0,0.1);
        z-index: 10;
    }

    .vh-card-content { padding: 24px; flex-grow: 1; display: flex; flex-direction: column; }
    .vh-card-header h3 { font-size: 19px; margin: 0 0 10px 0 !important; font-weight: 700; line-height: 1.3; }
    .vh-excerpt { color: #64748b; font-size: 14px; line-height: 1.5; margin-bottom: 15px; font-weight: 300; }

    .vh-meta-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 24px; margin-top: auto; }
    .vh-meta-tags span { background: #f8f9fa; border: 1px solid #f1f5f9; padding: 3px 8px; border-radius: 6px; font-size: 11px; font-weight: 500; color: #64748b; }

    .vh-itinerary-btn {
        width: 100%; padding: 10px; background: transparent; color: #5bc2d4; border: 1px solid #7dd5e5; border-radius: 8px;
        display: flex; justify-content: center; align-items: center; gap: 8px; font-weight: 700; font-size: 14px; text-decoration: none; transition: 0.3s;
    }

    .vh-itinerary-btn:hover { background: #7dd5e5; color: #ffffff; }

    /* --- LAPOZÁS --- */
    .vh-pagination { display: flex; justify-content: center; align-items: center; gap: 8px; margin-top: 40px; }
    .vh-page-num { width: 38px; height: 38px; border-radius: 50%; border: 1px solid #e5e7eb; background: #ffffff; cursor: pointer; transition: 0.3s; font-weight: 600; color: #64748b; display: flex; align-items: center; justify-content: center; font-size: 14px; }
    .vh-page-num.active { background: #7dd5e5; color: #ffffff; border-color: #7dd5e5; }
    .vh-pagination-dots { color: #94a3b8; font-weight: 600; padding: 0 5px; }

    /* --- RESPONSIVE SZABÁLYOK --- */
    @media (max-width: 1024px) { 
        .vh-grid-layout { grid-template-columns: repeat(2, 1fr); }
    }

    @media (max-width: 640px) {
        .vh-grid-layout { grid-template-columns: 1fr; gap: 20px; }
        .vh-filter-bar { flex-direction: column; align-items: stretch; padding: 15px; gap: 20px; }
        .vh-dropdown-container { min-width: 100%; }
        .vh-card-image { height: 200px; }
    }

    @keyframes vhFadeIn { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }