/**
 * Elementor Widgets Styles
 * RTL-first design with site color scheme
 * 
 * Color scheme:
 * --e-global-color-primary: #2A3140 (כחול כהה - כותרות)
 * --e-global-color-secondary: #FFFFFF (לבן)
 * --e-global-color-text: #000000 (טקסט)
 * --e-global-color-accent: #D69600 (זהב - הדגשות)
 * --e-global-color-823b90b: #F6F6EE (קרם - רקע)
 */

/* ===== CSS Variables Fallback ===== */
:root {
    --vm-color-primary: var(--e-global-color-primary, #2A3140);
    --vm-color-secondary: var(--e-global-color-secondary, #FFFFFF);
    --vm-color-text: var(--e-global-color-text, #000000);
    --vm-color-accent: var(--e-global-color-accent, #D69600);
    --vm-color-bg: var(--e-global-color-823b90b, #F6F6EE);
}

/* ===== Property Grid ===== */
.vm-property-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    direction: rtl;
}

/* ===== Property Card ===== */
.vm-property-card {
    display: block;
    background: var(--vm-color-secondary);
    /* מראה מיושר - ללא עיגול */
    border-radius: 0;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    transition: transform 0.3s, box-shadow 0.3s;
    border: 1px solid rgba(42, 49, 64, 0.1);
    
}

.vm-property-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(42, 49, 64, 0.15);
}

.vm-card-image {
    position: relative;
    padding-top: 66.67%;
    background-size: cover;
    background-position: center;
    background-color: var(--vm-color-bg);
}

.vm-card-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    padding: 6px 14px;
    /* מראה מיושר */
    border-radius: 0;
    font-size: 12px;
    font-weight: 600;
    color: var(--vm-color-secondary);
    
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.vm-badge-sale { background: var(--vm-color-accent); color: #fff; } /* Gold for sale */
.vm-badge-rent { background: #28a745; color: #fff; } /* Green for rent */
.vm-badge-sold { background: var(--vm-color-primary); color: #fff; } /* Dark for sold/rented */

.vm-archive-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    padding: 6px 14px;
    border-radius: 0;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 2;
}

.vm-card-content {
    padding: 16px;
}

.vm-card-price {
    font-size: 20px;
    font-weight: 700;
    color: var(--vm-color-accent);
    margin-bottom: 8px;
    
}

.vm-card-title {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 8px;
    color: var(--vm-color-primary);
    
}

.vm-card-neighborhood {
    font-size: 14px;
    color: var(--vm-color-text);
    opacity: 0.7;
    margin-bottom: 10px;
}

.vm-card-specs {
    display: flex;
    gap: 14px;
    font-size: 13px;
    color: var(--vm-color-text);
    opacity: 0.7;
    padding-top: 12px;
    border-top: 1px solid rgba(42, 49, 64, 0.1);
}

.vm-spec {
    display: flex;
    align-items: center;
    gap: 5px;
}

/* ===== Single Property Card - Horizontal ===== */
.vm-single-property-card.vm-card-horizontal {
    display: flex;
    max-width: 600px;
    /* מראה מיושר */
    border-radius: 0;
}

.vm-card-horizontal .vm-card-image {
    width: 40%;
    padding-top: 0;
    min-height: 200px;
}

.vm-card-horizontal .vm-card-body {
    flex: 1;
    padding: 20px;
}

.vm-card-link {
    display: inline-block;
    margin-top: 12px;
    color: var(--vm-color-accent);
    font-weight: 600;
    text-decoration: none;
    transition: color 0.3s;
}

.vm-card-link:hover {
    color: var(--vm-color-primary);
}

/* ===== Neighborhood Section ===== */
.vm-neighborhood-section {
    margin-bottom: 40px;
    
}

.vm-section-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
    color: var(--vm-color-primary);
}

.vm-section-content {
    font-size: 16px;
    line-height: 1.8;
    color: var(--vm-color-text);
}

.vm-section-content p {
    margin-bottom: 16px;
}

.vm-character-quote {
    padding: 20px 24px;
    background: var(--vm-color-bg);
    /* מראה מיושר */
    border-right: 4px solid var(--vm-color-accent);
    border-radius: 0;
    font-size: 18px;
    font-style: italic;
    margin: 20px 0;
    
    color: var(--vm-color-primary);
}

.vm-local-secret {
    background: rgba(214, 150, 0, 0.1);
    border: 1px solid var(--vm-color-accent);
    padding: 16px;
    /* מראה מיושר */
    border-radius: 0;
    margin-top: 16px;
}

.vm-popular-street,
.vm-weekend {
    margin-top: 16px;
    padding: 12px 16px;
    background: var(--vm-color-bg);
    /* מראה מיושר */
    border-radius: 0;
}

/* ===== Personal Tip ===== */
.vm-personal-tip {
    background: linear-gradient(135deg, var(--vm-color-primary), #3d4a5e);
    color: var(--vm-color-secondary);
    padding: 24px;
    /* מראה מיושר */
    border-radius: 0;
    margin: 24px 0;
    position: relative;
}

.vm-personal-tip::before {
    content: '"';
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 60px;
    opacity: 0.2;
    font-family: serif;
}

.vm-personal-tip-label {
    font-size: 13px;
    font-weight: 600;
    color: var(--vm-color-accent);
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.vm-personal-tip-content {
    font-size: 16px;
    line-height: 1.7;
    position: relative;
}

/* ===== FAQ ===== */
.vm-faq-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.vm-faq-item {
    background: var(--vm-color-bg);
    /* מראה מיושר */
    border-radius: 0;
    padding: 20px;
    border: 1px solid rgba(42, 49, 64, 0.1);
}

.vm-faq-question {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 12px;
    color: var(--vm-color-primary);
    
}

.vm-faq-answer {
    font-size: 15px;
    color: var(--vm-color-text);
    line-height: 1.7;
    opacity: 0.85;
}

/* ===== Quick Search ===== */
.vm-quick-search {
    display: flex;
    gap: 12px;
    padding: 20px;
    background: var(--vm-color-secondary);
    /* מראה מיושר */
    border-radius: 0;
    box-shadow: 0 4px 20px rgba(42, 49, 64, 0.1);
    border: 1px solid rgba(42, 49, 64, 0.1);
    
}

.vm-quick-search.vm-search-vertical {
    flex-direction: column;
}

.vm-search-field {
    flex: 1;
    padding: 12px 16px;
    border: 1px solid rgba(42, 49, 64, 0.15);
    /* מראה מיושר */
    border-radius: 0;
    font-size: 15px;
    min-width: 120px;
    
}

.vm-search-field:focus {
    outline: none;
    border-color: var(--vm-color-accent);
    box-shadow: 0 0 0 2px rgba(214, 150, 0, 0.2);
}

.vm-search-btn {
    padding: 12px 24px;
    background: var(--vm-color-accent);
    color: var(--vm-color-secondary);
    border: none;
    /* מראה מיושר */
    border-radius: 0;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.3s;
    white-space: nowrap;
    
}

.vm-search-btn:hover {
    background: var(--vm-color-primary);
}

/* ===== Lead Form ===== */
.vm-lead-form {
    padding: 30px;
    background: var(--vm-color-secondary);
    /* מראה מיושר */
    border-radius: 0;
    box-shadow: 0 4px 20px rgba(42, 49, 64, 0.1);
    border: 1px solid rgba(42, 49, 64, 0.1);
    
}

.vm-form-title {
    font-size: 24px;
    font-weight: 600;
    margin: 0 0 8px;
    text-align: center;
    color: var(--vm-color-primary);
    
}

.vm-form-subtitle {
    font-size: 15px;
    color: var(--vm-color-text);
    opacity: 0.7;
    margin: 0 0 24px;
    text-align: center;
}

.vm-form-field {
    margin-bottom: 16px;
}

.vm-form-field input,
.vm-form-field select,
.vm-form-field textarea {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid rgba(42, 49, 64, 0.15);
    /* מראה מיושר */
    border-radius: 0;
    font-size: 15px;
    
}

.vm-form-field input:focus,
.vm-form-field select:focus,
.vm-form-field textarea:focus {
    outline: none;
    border-color: var(--vm-color-accent);
    box-shadow: 0 0 0 2px rgba(214, 150, 0, 0.2);
}

.vm-lead-form .vm-submit-btn {
    width: 100%;
    padding: 14px;
    background: var(--vm-color-accent);
    color: var(--vm-color-secondary);
    border: none;
    /* מראה מיושר */
    border-radius: 0;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.3s;
    
}

.vm-lead-form .vm-submit-btn:hover {
    background: var(--vm-color-primary);
}

.vm-lead-form .vm-submit-btn:disabled {
    background: #9ca3af;
    cursor: not-allowed;
}

.vm-form-message {
    margin-top: 16px;
    text-align: center;
    font-size: 14px;
}

.vm-form-message.success {
    color: #10b981;
}

.vm-form-message.error {
    color: #ef4444;
}

/* ===== Neighborhood Map ===== */
.vm-neighborhood-map {
    width: 100%;
    height: 400px;
    background: var(--vm-color-bg);
    /* מראה מיושר */
    border-radius: 0;
    overflow: hidden;
    border: 1px solid rgba(42, 49, 64, 0.1);
}

.vm-neighborhood-map iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.vm-map-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--vm-color-text);
    opacity: 0.5;
    font-size: 16px;
}

/* ===== No Results ===== */
.vm-no-results {
    text-align: center;
    padding: 60px 20px;
    color: var(--vm-color-text);
    opacity: 0.6;
    background: var(--vm-color-bg);
    
}

/* ===== Responsive ===== */
@media (max-width: 1024px) {
    .vm-property-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .vm-property-grid {
        grid-template-columns: 1fr;
    }
    
    .vm-quick-search {
        flex-direction: column;
    }
    
    .vm-single-property-card.vm-card-horizontal {
        flex-direction: column;
    }
    
    .vm-card-horizontal .vm-card-image {
        width: 100%;
        padding-top: 56.25%;
    }
    
    .vm-section-title {
        font-size: 24px;
    }
    
    .vm-neighborhood-map {
        height: 300px;
    }
}
