/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 22 2026 | 15:20:38 */
/* =========================================
1. LOCAL FONT DEFINITIONS
========================================= */
@font-face {
font-family: 'Assistant';
src: url('https://www.francophilesanonymes.com/wp-content/uploads/2026/01/Assistant-Regular.woff2') format('woff2');
font-weight: normal;
font-style: normal;
font-display: swap;
}

@font-face {
font-family: 'Heebo';
src: url('https://www.francophilesanonymes.com/wp-content/uploads/2026/01/Heebo-Medium.woff2') format('woff2');
font-weight: 500;
font-style: normal;
font-display: swap;
}

/* =========================================
2. VARIABLES & GLOBAL SETTINGS
========================================= */
:root {
--color-link: #4F64B0;
--color-link-hover: #15399B;
--color-quote-border: #4F64B0;
--bg-quote: #F4F8FC;
--accent-red: #CF3834;
--sb-bg: #ffffff;
--sb-border: #e0e0e0;
--sb-scroll-thumb: #3b5998;
--sb-scroll-track: #f1f1f1;
--color-code-text: #89E3E4;
--bg-code: #0B0515;
--color-text-main: #333;
--font-heading: 'Heebo', sans-serif;
--font-body: 'Assistant', sans-serif;
--header-brand-blue: #0066cc;
--fs-body: clamp(18px, 2vw + 0.5rem, 20px);
--fs-h1:   clamp(40px, 5vw + 1rem, 61px);
--fs-h2:   clamp(32px, 4vw + 0.5rem, 48px);
--fs-h3:   clamp(28px, 3vw + 0.5rem, 39px);
--fs-h4:   clamp(24px, 2vw + 0.5rem, 31px);
--fs-h5:   clamp(20px, 1.5vw + 0.5rem, 25px);
}

/* =========================================
3. GLOBAL TYPOGRAPHY
========================================= */
body {
font-family: 'Assistant', sans-serif;
font-size: 19px;
line-height: 1.7;
color: #333;
}

p, li, label, input, textarea, blockquote, figcaption, div, span, a, button {
font-family: inherit;
}

h1, h2, h3, h4, h5, h6, .entry-title {
font-family: 'Heebo', sans-serif;
text-align: right;
font-weight: 500;
}

h1, h3, h5, .entry-title {
color: var(--color-link);
}

h2, h4, h6 {
color: var(--accent-red);
}

p {
font-size: 20px;
margin-bottom: 32px;
line-height: 1.8;
max-width: 100%;
box-sizing: border-box;
}

.wp-block-image img,
.entry-content img {
border-radius: 8px;
box-shadow: 0 4px 20px rgba(0,0,0,0.08);
height: auto;
max-width: 100%;
}

p a {
color: var(--color-link);
font-weight: 600;
text-decoration: none;
border-bottom: 2px solid rgba(79, 100, 176, 0.3);
transition: all 0.2s ease;
}

p a:hover {
color: var(--color-link-hover);
border-bottom-color: var(--color-link-hover);
background-color: rgba(79, 100, 176, 0.1);
}

h1, .entry-title {
font-size: 50px;
line-height: 1.2;
margin-bottom: 25px;
}

h2 {
font-size: 38px;
line-height: 1.3;
margin-top: 80px;
margin-bottom: 30px;
padding-bottom: 10px;
border-bottom: 2px solid rgba(79, 100, 176, 0.1);
}

h3 {
font-size: 28px;
line-height: 1.3;
margin-top: 50px;
margin-bottom: 20px;
font-weight: 600;
}

@media (max-width: 768px) {
body, p, li { font-size: 18px; line-height: 1.65; }
h1, .entry-title { font-size: 34px; }
h2 { font-size: 28px; }
h3 { font-size: 24px; }
}

figcaption, .wp-caption-text, .wp-block-image figcaption {
font-family: 'Assistant', sans-serif;
font-weight: 400;
font-size: 0.9rem;
line-height: 1.4;
margin-top: 8px;
color: #666;
text-align: center;
}

ul, ol { margin-top: 20px; margin-bottom: 20px; padding-right: 20px; }
li { margin-bottom: 10px; }

/* =========================================
4. LAYOUT & HEADER
========================================= */
#site-header, .site-header { display: none !important; }

.entry-header, .ast-single-header-bar, header.entry-header {
background-color: var(--bg-quote);
padding: 30px 20px; margin-bottom: 40px; border-bottom: 4px solid var(--color-link);
}

.main-container { max-width: 1100px; margin: 0 auto; padding: 0 20px 60px 20px; }

.intro-text {
font-size: 1.2rem; margin-bottom: 50px; margin-top: 20px;
text-align: center; max-width: 800px; margin-left: auto;
margin-right: auto; line-height: 1.8;
}

.menu-item-button a {
display: inline-block; padding: 20px 35px;
background-color: #CF3834;
color: #ffffff;
text-decoration: none; border-radius: 5px; transition: background-color 0.3s ease;
}

.menu-item-button a:hover { background-color: #FF002B; color: #ffffff; }


/* =========================================
5. BLOCKQUOTE
========================================= */
blockquote, .wp-block-quote {
background-color: var(--bg-quote);
border-right: 5px solid var(--color-link);
margin: 40px auto;
padding: 30px 40px;
border-radius: 8px 0 0 8px;
font-family: 'Assistant', sans-serif;
font-size: 1.25rem;
font-weight: 600;
font-style: italic;
line-height: 1.6;
color: #2c3e50;
position: relative;
}

blockquote::before, .wp-block-quote::before {
content: "\201D";
font-family: 'Heebo', sans-serif;
font-size: 120px;
line-height: 1;
position: absolute;
top: -20px;
right: 10px;
color: var(--color-link);
opacity: 0.15;
pointer-events: none;
}

/* =========================================
6. BUTTONS & GRID SYSTEM (UPDATED FIX)
========================================= */
body a.fa-btn-book, body a.zvi-ticket-btn {
box-sizing: border-box;
background-color: #ffffff;
color: var(--color-link);
border: 2px solid var(--color-link);
text-decoration: none;
border-radius: 50px;
padding: 10px 25px;
display: inline-block;
width: 100%;
text-align: center;
transition: all 0.3s;
}

body a.fa-btn-book:hover, body a.zvi-ticket-btn:hover {
background-color: var(--color-link);
color: #ffffff;
}

/* --- מעבר לשיטת CSS Grid לפתרון בעיות הריווח --- */
.zvi-flex-grid {
    display: grid;
    /* מגדיר 3 עמודות שוות באופן קשיח */
    grid-template-columns: repeat(3, 1fr); 
    /* הקטנתי מעט את הרווח ל-20 כדי לאפשר ל-3 כרטיסים להיכנס גם במסכים צרים */
    gap: 20px; 
    margin: 40px 0;
    direction: rtl;
    width: 100%;
    box-sizing: border-box;
}

/* ביטול הגדרות רוחב קשיחות לכרטיסים שנמצאים בתוך הגריד */
.zvi-flex-grid .zvi-hotel-card,
.zvi-flex-grid .fa-product-card,
.zvi-flex-grid .scroll-card,
.zvi-flex-grid .zvi-ticket-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important; /* זה התיקון הקריטי - מאפשר לכרטיס להתכווץ */
    margin: 0 !important;
    flex: none !important; 
}

/* ביטול השפעת תגיות P של וורדפרס בתוך הגריד */
.zvi-flex-grid > p {
    display: contents;
}

/* התאמה לטאבלטים ומסכים בינוניים (בין 600 ל-900 פיקסל) */
@media (max-width: 900px) {
    .zvi-flex-grid {
        /* בדפים צרים מאוד, 3 כרטיסים יהיו צפופים מדי, כאן זה עובר ל-2 */
        grid-template-columns: repeat(2, 1fr); 
    }
}

/* התאמה למובייל */
@media (max-width: 600px) {
    .zvi-flex-grid {
        /* הוספתי !important כדי לדרוס את ה-style Inline שבקוד ה-HTML */
        grid-template-columns: 1fr !important; 
    }
}


/* =========================================
7. CUSTOM ELEMENTS
========================================= */
.family-top-3-box {
background: #fff;
border: 2px solid #e0e0e0;
border-radius: 12px;
padding: 25px;
margin: 40px 0;
box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.family-top-3-box h3 { margin-top: 0; border-bottom: 1px solid #eee; padding-bottom: 15px; margin-bottom: 20px; }
.hotel-row { display: flex; align-items: center; gap: 15px; padding: 15px 0; border-bottom: 1px solid #f0f0f0; }
.hotel-row:last-child { border-bottom: none; }
.hotel-icon { font-size: 2rem; min-width: 40px; text-align: center; }
.hotel-details { flex-grow: 1; }
.hotel-title { font-weight: bold; font-size: 1.1rem; color: var(--color-link); }
.hotel-desc { font-size: 0.95rem; color: #555; }
.hotel-btn {
background: var(--color-link); color: white; text-decoration: none;
padding: 8px 15px; border-radius: 50px;
font-size: 0.9rem; white-space: nowrap; transition: background 0.2s;
display: inline-block;
text-align: center;
min-width: 150px;
box-sizing: border-box;
}
.hotel-btn:hover { background: var(--color-link-hover); color: white; }

/* תיקון מובייל ל-family-top-3-box */
@media (max-width: 768px) {
    .hotel-row {
        flex-direction: column;
        text-align: center;
        gap: 10px;
    }
    .hotel-btn {
        width: 100%;
        box-sizing: border-box;
        text-align: center;
        margin-top: 5px;
        display: block;
    }
}

/* TOC - Updated for SEO (UL/LI Structure) */
.toc-container-box, .zvi-toc-container {
background: #f4f8fc; padding: 30px; border-radius: 16px; margin: 40px auto 60px auto;
border: 1px solid #dcebf7; max-width: 800px; box-shadow: 0 4px 15px rgba(79, 100, 176, 0.05); text-align: center;
}
.toc-title, .zvi-toc-title { margin-top: 0; margin-bottom: 20px; font-weight: bold; font-size: 1.2rem; }

/* איפוס רשימה ל-SEO */
.toc-grid, .zvi-toc-grid {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 10px;
list-style: none !important; /* ביטול בולטים */
padding: 0 !important;       /* ביטול הזחה */
margin: 0 !important;        /* ביטול שוליים */
}

/* טיפול ב-LI בתוך הגריד */
.toc-grid li, .zvi-toc-grid li {
margin: 0;
padding: 0;
}

.toc-grid a, .zvi-toc-grid a {
display: inline-block; padding: 10px 15px; background-color: #fff;
border: 1px solid #dcebf7;
color: var(--color-link);
border-radius: 50px; text-decoration: none;
font-size: 1rem; transition: all 0.3s ease;
}
.toc-grid a:hover, .zvi-toc-grid a:hover { background-color: var(--color-link); color: #fff; transform: translateY(-2px); }

/* Hotel Card Container */
.hotel-card-container {
border: 1px solid #eee;
box-shadow: 0 4px 6px rgba(0,0,0,0.05);
border-radius: 12px; padding: 30px; margin-bottom: 50px; background-color: #fff; position: relative; overflow: hidden;
}
.hotel-card-container h3 { margin-top: 0; color: var(--color-link); }

/* =========================================
8. GUIDE ELEMENTS
========================================= */
.comparison-table {
width: 100%; border-collapse: collapse; margin: 40px 0;
box-shadow: 0 4px 15px rgba(0,0,0,0.05); border-radius: 12px; overflow: hidden;
}
.comparison-table th, .comparison-table td { padding: 20px; text-align: center; border-bottom: 1px solid #eee; font-size: 1.15rem; }
.comparison-table th { background-color: var(--color-link); color: white; font-size: 1.4rem; }
.comparison-table tr:nth-child(even) { background-color: #f8f9fa; }

.tip-box, .fr-tip-box {
background-color: #fff9e6; border: 1px solid #ffeeba; border-right: 6px solid #fbc02d;
border-radius: 8px; padding: 25px; margin: 40px 0; font-size: 1.15rem; line-height: 1.8; color: #333;
display: block; box-shadow: 0 4px 10px rgba(0,0,0,0.03);
position: relative; font-family: 'Assistant', sans-serif;
}
.fr-tip-title {
font-weight: 800; color: #e65100; font-size: 1.3rem; display: block;
margin-bottom: 15px; border-bottom: 1px dashed #ffe0b2; padding-bottom: 10px;
font-family: 'Heebo', sans-serif;
}
.fr-tip-title::first-letter { font-size: 1.5rem; margin-left: 5px; }

.coupon-box {
text-align: center; background: #f0f4ff; padding: 40px;
border-radius: 12px; margin-top: 50px; border: 2px dashed var(--color-link);
}
.coupon-code {
background: #fff; padding: 10px 20px; border: 1px solid #ccc; border-radius: 6px;
font-family: 'Heebo', sans-serif; font-size: 1.6em;
color: var(--accent-red); letter-spacing: 1px; display: inline-block; margin: 15px 0;
font-weight: bold;
}
.hotels-rec-box {
background: #fff; border: 2px solid #f0f0f0;
border-radius: 12px; padding: 30px; margin-top: 60px; text-align: center;
}
.hotels-links-container { display: flex; justify-content: center; gap: 15px; flex-wrap: wrap; margin-top: 20px; }
.hotel-link-btn {
background: #f4f8fc; color: var(--color-link);
padding: 10px 25px; border-radius: 50px; border: 1px solid #dcebf7; text-decoration: none;
transition: all 0.2s; font-weight: 600;
}
.hotel-link-btn:hover { background: var(--color-link); color: #fff; }

a.cta-button, a.cta-button:visited {
background-color: var(--accent-red);
color: white;
padding: 15px 40px;
border-radius: 50px; font-size: 1.3rem; font-weight: 700; display: inline-flex; justify-content: center; align-items: center;
text-decoration: none; transition: transform 0.2s;
}

a.cta-button:hover, a.cta-button:active, a.cta-button:focus {
background-color: #b02a27;
color: white;
transform: translateY(-3px);
}

a.cta-button-small {
background-color: var(--color-link);
color: white; padding: 10px 25px; border-radius: 50px;
font-size: 1.1rem; text-decoration: none; display: inline-block; margin-top: 15px; transition: background 0.2s;
}
a.cta-button-small:hover { background-color: var(--color-link-hover); color: white; }

.zvi-faq-container { margin-bottom: 30px; }
.zvi-faq-item, .zvi-faq-clean details {
background: #fff; border: 1px solid #e0e0e0; border-radius: 8px; margin-bottom: 15px; overflow: hidden;
}

.zvi-faq-item summary, .zvi-faq-clean summary {
padding: 20px; cursor: pointer; color: var(--color-link); font-size: 18px;
background-color: #fcfcfc; font-family: 'Assistant', sans-serif; font-weight: 600;
list-style: none; outline: none; display: flex;
justify-content: space-between; align-items: center;
}

.zvi-faq-item summary::after, .zvi-faq-clean summary::after {
content: '+'; color: var(--accent-red); font-size: 24px; font-weight: 400;
margin-right: 15px; transition: transform 0.3s ease; line-height: 1;
}

.zvi-faq-item[open] summary::after, .zvi-faq-clean[open] summary::after { transform: rotate(45deg); }
.zvi-faq-content, .zvi-faq-clean.zvi-faq-content {
padding: 25px; border-top: 1px solid #eee; color: #555; line-height: 1.6;
}

/* =========================================
9. UNIFIED SLIDER SYSTEM & CARDS (FIXED)
========================================= */
.zvi-hotels-scroller, .scroll-slider, .zvi-district-scroller {
display: flex;
overflow-x: auto;
gap: 30px;
padding: 15px 5px 40px 5px;
scroll-snap-type: x mandatory;
-webkit-overflow-scrolling: touch;
margin-top: 50px;
scrollbar-color: var(--color-link) #f0f0f0;
align-items: stretch;
}

.zvi-hotels-scroller::-webkit-scrollbar, .scroll-slider::-webkit-scrollbar { height: 8px; }
.zvi-hotels-scroller::-webkit-scrollbar-thumb, .scroll-slider::-webkit-scrollbar-thumb { background: var(--color-link); border-radius: 10px; }
.zvi-hotels-scroller::-webkit-scrollbar-track, .scroll-slider::-webkit-scrollbar-track { background: #f0f0f0; border-radius: 4px; }

/* Card Definitions - הגדלת הכרטיס וטיפול בתוכן */
.zvi-hotel-card, .scroll-card, .floor-card, .fa-product-card {
background: #fff;
border: 1px solid #e0e0e0;
border-radius: 16px;
overflow: visible;
display: flex;
flex-direction: column;
box-shadow: 0 4px 15px rgba(0,0,0,0.05);
transition: transform 0.3s ease, box-shadow 0.3s ease;
position: relative;
margin-bottom: 0; /* מבוטל כי הגריד מטפל בזה */
height: 100%; /* ממלא את הגריד */
padding-bottom: 20px; /* מרווח פנימי כדי שהכפתור לא ייחתך */
}

.zvi-hotel-card:hover, .scroll-card:hover, .fa-product-card:hover {
transform: translateY(-8px);
box-shadow: 0 12px 30px rgba(0,0,0,0.12);
}

div.zvi-hotel-img, div.fa-card-img-elem {
width: 100%;
height: 220px;
min-height: 220px;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
flex-shrink: 0;
display: block;
margin: 0;
padding: 0;
border: none;
transition: transform 0.3s ease;
border-radius: 16px 16px 0 0;
}

.zvi-icon-container, .fa-card-image {
width: 100%;
height: 220px;
position: relative;
overflow: hidden;
background-color: #f4f8fc;
display: block;
flex-shrink: 0;
min-height: 220px;
border-radius: 16px 16px 0 0;
}

.zvi-icon-container > a, .zvi-icon-container > div, .fa-card-image > a {
display: block; width: 100%; height: 100%; margin: 0; padding: 0; border-radius: 16px 16px 0 0;
}

.scroll-card img, .zvi-icon-container img, .zvi-icon-container iframe,
.fa-card-image img, .img.fa-card-img-elem {
width: 100%; height: 100%; object-fit: cover;
border: none; display: block; margin: 0; padding: 0;
transition: transform 0.3s ease; opacity: 1; border-radius: 16px 16px 0 0;
}

.zvi-hotel-card:hover div.zvi-hotel-img, .zvi-hotel-card:hover img, .fa-product-card:hover.fa-card-img-elem {
transform: scale(1.05);
}

.zvi-icon-placeholder {
height: 220px; width: 100%; background-color: #f4f8fc;
display: flex; align-items: center; justify-content: center;
font-size: 80px; color: var(--color-link); flex-shrink: 0; border-radius: 16px 16px 0 0;
}

.zvi-hotel-card .fa-badge-lived,
.zvi-hotel-card .zvi-badge-bestseller,
.zvi-hotel-card .zvi-badge-premium,
.zvi-hotel-card .zvi-badge-warning,
.zvi-hotel-card .zvi-badge-stayed {
position: absolute !important;
top: 20px !important;
right: 20px !important;
z-index: 99;
margin: 0 !important;
padding: 4px 12px;
font-weight: bold;
font-size: 0.85rem;
border-radius: 20px;
box-shadow: 0 2px 4px rgba(0,0,0,0.2);
font-family: 'Heebo', sans-serif;
letter-spacing: 0.5px;
line-height: 1.2;
}

.zvi-hotel-card p:has(.zvi-badge-stayed),
.zvi-hotel-card p:has(.fa-badge-lived),
.zvi-hotel-card p:has(.zvi-badge-bestseller),
.zvi-hotel-card p:has(.zvi-badge-premium),
.zvi-hotel-card p:has(.zvi-badge-warning) {
display: contents !important;
margin: 0 !important;
padding: 0 !important;
height: 0 !important;
}

.zvi-hotel-card .zvi-badge-bestseller { background-color: #CF3834; color: #fff; }
.zvi-hotel-card .zvi-badge-premium { background-color: #2c3e50; color: #ffd700; border: 1px solid #ffd700; }
.zvi-hotel-card .zvi-badge-warning { background-color: #e67e22; color: #fff; }
.zvi-hotel-card .fa-badge-lived { background: #FFD700; color: #000; }
.zvi-hotel-card .zvi-badge-stayed { background-color: #CF3834; color: #ffffff; border: none; }

.zvi-hotel-content, .scroll-card-content, .fa-card-content {
padding: 20px; text-align: right;
flex-grow: 1; /* דוחף את הפוטר למטה */
display: flex; flex-direction: column; justify-content: space-between;
}

.zvi-hotel-title, .scroll-card h4, .fa-card-title {
font-family: 'Heebo', sans-serif; font-size: 1.6rem;
margin: 0 0 10px 0; color: var(--color-link); line-height: 1.1; font-weight: 500;
}

.zvi-hotel-desc, .fa-card-desc {
font-size: 0.95rem; color: #555; margin-bottom: 15px; line-height: 1.5;
}

.zvi-btn-group, .fa-card-footer, .zvi-btns-container {
display: flex; flex-direction: column; gap: 10px; margin-top: auto;
width: 100%; padding-top: 15px; border-top: 1px solid #f0f0f0;
}

.zvi-secondary-btn, .fa-btn-outline, .zvi-outline-btn {
box-sizing: border-box;
display: block; width: 100%;
background-color: #ffffff;
color: var(--color-link);
border: 2px solid var(--color-link);
padding: 10px 0; border-radius: 50px;
font-size: 16px; font-weight: 600; text-decoration: none;
transition: all 0.3s; text-align: center;
}
.zvi-secondary-btn:hover, .fa-btn-outline:hover, .zvi-outline-btn:hover {
background-color: #f0f4ff;
}

.zvi-ticket-btn, .fa-btn-book, a.zvi-ticket-btn,
.zvi-ticket-btn:visited, .fa-btn-book:visited {
box-sizing: border-box;
display: block; width: 100%;
background-color: var(--color-link);
color: #ffffff;
border: 2px solid var(--color-link);
padding: 10px 0; border-radius: 50px;
font-size: 16px; font-weight: 600; text-decoration: none;
transition: all 0.3s; text-align: center; box-shadow: none; opacity: 1; white-space: nowrap;
}

.zvi-ticket-btn:hover, .fa-btn-book:hover, a.zvi-ticket-btn:hover {
background-color: var(--color-link-hover);
border-color: var(--color-link);
color: #ffffff;
transform: translateY(-2px);
box-shadow: 0 4px 10px rgba(79, 100, 176, 0.3);
}

.fa-trust-text {
display: block; font-size: 0.75rem; color: #7f8c8d;
text-align: center; margin-top: 2px;
}

.zvi-hotel-card > p,
.zvi-hotel-card > br {
display: none !important;
}

.hotel-card-container ul, .fa-pros-cons ul {
list-style: none; padding: 0; margin: 0;
}

.fa-pros-cons {
margin-bottom: 15px; background: #f9f9f9; padding: 10px;
border-radius: 6px; flex-grow: 1;
}

.hotel-card-container li, .fa-pros-cons li {
margin-bottom: 6px; position: relative; padding-right: 25px;
font-family: 'Assistant', sans-serif; font-size: 0.9rem;
line-height: 1.6; color: #444; text-align: right;
}

.hotel-card-container li strong, .fa-pro { font-weight: normal; }

.hotel-card-container li strong::before, .fa-pro::before {
content: '✓'; color: #27ae60; position: absolute; right: 0; font-weight: bold;
}
.fa-con::before {
content: "✕"; color: #c0392b; position: absolute; right: 0; font-weight: bold;
}

.tickets-widget-wrapper {
background-color: #F4F8FC; padding: 40px 20px;
border-radius: 16px; margin: 40px 0; border-top: 4px solid var(--accent-red); box-shadow: 0 8px 20px rgba(0,0,0,0.05);
}
.zvi-tickets-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; margin-top: 30px; }

@media (max-width: 900px) {
.zvi-tickets-grid {
display: flex; overflow-x: auto; gap: 20px; padding-bottom: 20px;
scroll-snap-type: x mandatory; grid-template-columns: none;
}
}
.zvi-ticket-card {
background: #fff; border: 1px solid #e0e0e0;
border-radius: 12px; padding: 30px 20px;
text-align: center; display: flex; flex-direction: column; justify-content: space-between;
transition: transform 0.2s; height: 100%; min-width: 280px; scroll-snap-align: center;
}
.zvi-ticket-card:hover { transform: translateY(-5px); box-shadow: 0 12px 25px rgba(0,0,0,0.08); }
.zvi-ticket-icon { font-size: 3.5rem; margin-bottom: 15px; }
.zvi-ticket-title {
font-family: 'Heebo', sans-serif; font-size: 1.8rem; margin-bottom: 15px;
color: var(--color-link); line-height: 1.1; font-weight: 500;
}
.zvi-ticket-desc { font-size: 1rem; color: #666; margin-bottom: 25px; font-weight: 400; }
.zvi-coupon-box {
background: #fff; border: 1px dashed #ccc;
color: #333; padding: 10px; margin-bottom: 15px; font-size: 1rem;
cursor: pointer; border-radius: 8px; width: 100%; display: flex; justify-content: center; align-items: center;
gap: 8px; font-weight: 400; transition: all 0.2s;
}
.zvi-coupon-box:hover { background: #f9f9f9; border-color: var(--accent-red); }

.sticky-mobile-cta {
display: none;
position: fixed; bottom: 0; left: 0; width: 100%; z-index: 9999;
background: white; border-top: 3px solid var(--accent-red);
padding: 10px; padding-bottom: calc(10px + env(safe-area-inset-bottom));
box-sizing: border-box;
}

@media (max-width: 768px) {
.sticky-mobile-cta { display: block !important; }
}

.emoji-icon { font-size: 1.4em; vertical-align: middle; margin-left: 5px; display: inline-block; }
.comparison-table td.emoji-icon { font-size: 1.6em; }

#zvi-header-root {
all: initial; font-family: 'Assistant', sans-serif !important;
display: block; position: relative !important; width: 100% !important; z-index: 99999 !important;
background: #fff; opacity: 1; visibility: visible;
direction: rtl; box-sizing: border-box;
}
#zvi-header-root * { box-sizing: border-box; font-family: 'Assistant', sans-serif; }

.zvi-top-bar {
width: 100%; background-color: var(--color-link); position: relative; z-index: 10000002;
height: 45px; display: flex; align-items: center; justify-content: flex-start; overflow: hidden;
}
.zvi-top-links-container {
width: 100%; max-width: 1200px; margin: 0 auto;
padding: 0 20px; display: flex; justify-content: center; align-items: center; gap: 25px; height: 100%; overflow-x: auto;
}
.zvi-top-links-container::-webkit-scrollbar { display: none; }
.zvi-top-link {
color: #ffffff; text-decoration: none; font-size: 15px; font-weight: 400;
transition: opacity 0.2s; white-space: nowrap; flex-shrink: 0;
}
.zvi-top-link:hover { opacity: 0.8; }

.zvi-white-header {
width: 100%; height: 70px; border-bottom: 1px solid #f0f0f0; display: flex;
align-items: center; justify-content: center; background: #fff; position: relative; z-index: 10000001;
}
.zvi-inner-container {
width: 100%; max-width: none; padding: 0 10px; display: flex;
align-items: center; justify-content: space-between; height: 100%;
}

#sticky-toc-wrapper {
background: #ffffff; border-bottom: 1px solid #e0e0e0; width: 100%;
display: none; height: 56px; position: relative; z-index: 99999; transition: box-shadow 0.3s ease;
}

#sticky-toc-wrapper.is-locked-toc {
position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important; width: 100% !important;
box-shadow: 0 4px 10px rgba(0,0,0,0.1); animation: slideDown 0.3s ease forwards;
background-color: #ffffff !important; opacity: 1 !important; z-index: 999999;
}

body.admin-bar #sticky-toc-wrapper.is-locked-toc { top: 32px !important; }
@media screen and (max-width: 782px) {
body.admin-bar #sticky-toc-wrapper.is-locked-toc { top: 46px !important; }
}
@keyframes slideDown { from { transform: translateY(-100%); } to { transform: translateY(0); } }

#zvi-toc-placeholder { display: none; width: 100%; height: 56px; background: transparent; }
.toc-container {
width: 100%; max-width: none; margin: 0; display: flex; align-items: center; height: 100%;
padding: 0 10px; gap: 15px;
}
#sticky-toc-slider {
flex-grow: 1; display: flex; align-items: center; overflow-x: auto; white-space: nowrap; gap: 25px;
scroll-behavior: smooth; -ms-overflow-style: none; scrollbar-width: none; height: 100%; padding: 0 5px;
}
#sticky-toc-slider::-webkit-scrollbar { display: none; }
.toc-link {
text-decoration: none; color: #333; font-weight: 400; font-size: 16px;
height: 100%; display: flex; align-items: center; border-bottom: 3px solid transparent;
transition: all 0.2s ease; flex-shrink: 0; cursor: pointer; box-sizing: border-box; padding-top: 3px;
}
.toc-link:hover { color: #000; }
.toc-link.active { color: var(--header-brand-blue); font-weight: 700; border-bottom-color: var(--header-brand-blue); }
.toc-link.home-btn {
font-weight: 800; color: #000; margin-left: 25px; position: relative; padding-left: 5px;
}
.toc-link.home-btn::after {
content: ""; position: absolute; left: -12px; height: 24px; width: 1px; background: #ccc; opacity: 0.6;
}
.slider-arrow {
flex-shrink: 0; width: 34px; height: 34px; border-radius: 50%; background-color: var(--header-arrow-bg);
border: none; cursor: pointer; display: flex; align-items: center;
justify-content: center; color: #444; font-size: 14px; font-weight: bold; transition: all 0.2s ease;
}
.slider-arrow:hover { background-color: var(--header-arrow-hover); color: #000; }

@media (max-width: 768px) {
.slider-arrow { display: none; }
.toc-container { gap: 0; padding: 0 15px; }
.zvi-inner-container { padding: 0 15px; }
#sticky-toc-slider { padding: 0 10px; }
}

.zvi-right-group { display: flex; align-items: center; gap: 15px; flex-shrink: 0; }
.zvi-left-group { display: flex; align-items: center; flex-shrink: 0; }
#zvi-logo-link { display: block; border: none; line-height: 0; margin: 0; }
#zvi-logo-img { height: 50px; width: auto; display: block; margin: 0; }
#zvi-main-hamburger {
background: transparent; border: none; cursor: pointer; padding: 0; margin: 0;
display: flex; align-items: center; justify-content: center; color: #333333; width: 44px; height: 44px;
}
#zvi-main-hamburger svg { width: 32px; height: 32px; fill: #333333; }
.zvi-search-btn {
background: transparent; border: none; cursor: pointer; padding: 0; display: flex;
align-items: center; justify-content: center; color: var(--color-link); width: 40px; height: 40px; text-decoration: none;
}
.zvi-search-btn svg { width: 26px; height: 26px; fill: currentColor; }
.zvi-gtranslate-area { display: flex; align-items: center; justify-content: center; margin: 0 10px; }
.zvi-action-btn {
display: flex; align-items: center; justify-content: center; text-decoration: none; border: none;
cursor: pointer; padding: 8px 18px; border-radius: 50px; font-size: 15px;
font-weight: 400; white-space: nowrap; transition: opacity 0.2s; height: 40px; color: #ffffff;
}
.zvi-action-btn:hover { opacity: 0.9; }
.zvi-action-btn svg { width: 18px; height: 18px; fill: #ffffff; margin-left: 6px; }
.zvi-action-btn span { color: #ffffff; }
.zvi-bg-blue { background-color: var(--color-link); }
.zvi-bg-red { background-color: var(--accent-red); }

@media (max-width: 1100px) {
.zvi-top-bar { display: block; white-space: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.zvi-top-links-container { justify-content: flex-start; padding: 0; gap: 0; width: auto; display: inline-flex; }
.zvi-top-link {
padding: 0 15px; height: 45px; display: flex; align-items: center; border-left: 1px solid rgba(255,255,255,0.2);
font-size: 14px;
}
.desktop-only { display: none !important; }
.zvi-white-header { height: 60px; }
.zvi-right-group { gap: 8px; }
#zvi-logo-img { height: 40px; }
}

#zvi-drawer-overlay {
position: fixed; top: 0; right: 0; bottom: 0; left: 0; background: rgba(255,255,255,0.98); z-index: 2147483646;
display: none; opacity: 0; transition: opacity 0.3s;
}
#zvi-drawer-wrapper {
position: fixed; top: 0; right: 0; bottom: 0; left: 0;
width: 100vw; height: 100vh; height: 100dvh; background: #ffffff !important; z-index: 2147483647;
transform: translateY(-100%); transition: transform 0.3s ease-out; display: flex;
flex-direction: column; visibility: hidden;
}
body.zvi-menu-active { overflow: hidden !important; }
#zvi-drawer-wrapper.is-open { transform: translateY(0) !important; visibility: visible !important; }
#zvi-drawer-overlay.is-open { display: block !important; opacity: 1 !important; }

.zvi-drawer-header {
height: 60px; display: flex; align-items: center; justify-content: space-between; padding: 0 20px;
background-color: var(--color-link) !important; border-bottom: 1px solid #3e53a0; flex-shrink: 0;
}
#zvi-drawer-title {
font-size: 18px !important; color: #ffffff !important; font-weight: 700 !important;
margin: 0; font-family: 'Heebo', sans-serif;
}
.zvi-nav-icon-btn {
background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.3); border-radius: 50%;
cursor: pointer; display: flex; align-items: center; justify-content: center; width: 36px; height: 36px;
padding: 0; color: #ffffff;
}
.zvi-nav-icon-btn svg { width: 20px; height: 20px; fill: #ffffff; }
#zvi-back-btn { visibility: hidden; }
#zvi-drawer-body {
flex-grow: 1; overflow-y: auto; -webkit-overflow-scrolling: touch;
background: #ffffff; width: 100%; max-width: 600px; margin: 0 auto; padding: 10px 0; display: block;
}

.zvi-level { display: none; flex-direction: column; width: 100%; animation: fadeIn 0.2s ease; }
.zvi-level.active { display: flex !important; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }

.zvi-level ul, .zvi-level li { padding: 0; margin: 0; list-style: none; width: 100%; }
.zvi-unified-item {
    display: flex; justify-content: space-between; align-items: center; width: 100%; 
    padding: 10px 20px; /* הוקטן מ-14px למראה רזה יותר */
    background-color: #ffffff; border: none; border-bottom: 1px solid #f5f5f5;
    font-size: 16px; font-weight: 400; text-align: right; cursor: pointer; margin: 0;
    color: #333333; line-height: 1.2; 
    min-height: 44px; /* הוקטן מ-50px */
    text-decoration: none;
    box-sizing: border-box; /* הפתרון הקריטי לאחידות בין הכפתורים לקישורים */
}
.zvi-unified-item span { flex-grow: 1; text-align: right; color: #333333; }
.zvi-unified-item:hover { background-color: #f9f9f9; }
.zvi-unified-item:hover span { color: var(--color-link); }
.zvi-unified-item svg {
width: 16px; height: 16px; fill: #999999; transform: rotate(90deg); margin-right: 10px; flex-shrink: 0;
}
.zvi-unified-item:hover svg { fill: var(--color-link); }

.zvi-drawer-footer {
flex-shrink: 0; padding: 15px 20px; padding-bottom: max(15px, env(safe-area-inset-bottom));
border-top: 1px solid #e0e0e0; background: #ffffff !important; display: flex;
flex-direction: row; gap: 10px; width: 100%; max-width: 600px; margin: 0 auto;
}
.zvi-drawer-full-btn {
display: flex !important; align-items: center; justify-content: center;
width: 100%; flex: 1; padding: 10px; border-radius: 6px; font-size: 15px; font-weight: 600;
text-decoration: none; border: none; gap: 6px; color: #ffffff !important; cursor: pointer; white-space: nowrap;
}
.zvi-drawer-full-btn svg { width: 18px; height: 18px; fill: #ffffff; }

#sticky-bar-v3 { display: none; }
body > #sticky-bar-v3 {
display: block !important; position: fixed !important; top: 0; left: 0; width: 100%; height: 70px; background: var(--sb-bg);
z-index: 9999999; box-shadow: 0 2px 10px rgba(0,0,0,0.1); border-bottom: 1px solid var(--sb-border);
transform: translateY(-100%); transition: transform 0.3s ease-in-out;
}
body > #sticky-bar-v3.show-bar { transform: translateY(0); }

.sb-container {
max-width: 100%; height: 100%; display: flex !important; align-items: center; justify-content: space-between;
padding: 0 10px;
}
.sb-slider-wrapper { flex: 1; display: flex; align-items: center; overflow: hidden; margin-left: 15px; }
#sb-slider-content {
flex-grow: 1; display: flex; align-items: center; overflow-x: auto; white-space: nowrap; gap: 25px;
padding-bottom: 12px; margin-bottom: -5px; scrollbar-width: thin; scrollbar-color: var(--sb-scroll-thumb) var(--sb-scroll-track);
cursor: grab;
}
#sb-slider-content::-webkit-scrollbar { height: 6px; }
#sb-slider-content::-webkit-scrollbar-track { background: var(--sb-scroll-track); border-radius: 10px; margin: 0 5px; }
#sb-slider-content::-webkit-scrollbar-thumb { background: var(--sb-scroll-thumb); border-radius: 10px; }
#sb-slider-content::-webkit-scrollbar-thumb:hover { background: #2d4373; }

.sb-toc-link {
text-decoration: none; color: #444; font-size: 15px; font-weight: 500; cursor: pointer;
transition: all 0.2s; font-family: 'Assistant', sans-serif; flex-shrink: 0; position: relative; padding-top: 5px;
}
.sb-toc-link:hover, .sb-toc-link.active { color: var(--sb-scroll-thumb); font-weight: 800; }
.sb-home-btn { font-weight: 800 !important; }
.sb-actions { display: flex; align-items: center; gap: 8px; flex-shrink: 0; padding-bottom: 5px; }
.sb-btn {
display: inline-flex !important; align-items: center; gap: 5px; padding: 5px 12px; border-radius: 50px;
color: white !important; font-size: 13px; font-weight: bold; text-decoration: none; line-height: 1.2; white-space: nowrap;
}
.sb-btn-red { background-color: #d32f2f; }
.sb-btn-blue { background-color: #3b5998; }
.sb-btn:hover { opacity: 0.9; }

.sb-langs { display: flex; align-items: center; gap: 5px; padding-right: 10px; border-right: 1px solid #eee; margin-right: 5px; }
.sb-langs img { width: 20px; height: 15px; display: block; cursor: pointer; }
@media (max-width: 850px) { .sb-actions { display: none !important; } }

.mobile-sticky-footer-bar {
display: none; position: fixed; bottom: 0; left: 0; right: 0; background-color: #f5f5f5;
box-shadow: 0 -2px 10px rgba(0,0,0,0.1); z-index: 9999; height: auto; min-height: 65px;
padding-top: 8px; padding-bottom: calc(5px + env(safe-area-inset-bottom));
justify-content: space-around; align-items: flex-start; direction: rtl; border-top: 1px solid #e0e0e0;
}
.sticky-item {
flex: 1; display: flex; flex-direction: column; align-items: center;
justify-content: center; text-decoration: none; color: inherit; padding: 0 5px;
}
.sticky-icon { width: 24px; height: 24px; margin-bottom: 4px; }
.sticky-icon svg { width: 100%; height: 100%; display: block; }
.sticky-text { font-family: 'Assistant', sans-serif; font-size: 13px; line-height: 1.2; text-align: center; font-weight: 600; }
.red-theme { color: var(--accent-red); fill: var(--accent-red); }
.blue-theme { color: var(--color-link); fill: var(--color-link); }

@media (max-width: 768px) {
.mobile-sticky-footer-bar { display: flex; }
body { padding-bottom: 70px; }
}

.custom-site-footer {
background-color: #f9f9f9; color: #333333;
font-family: 'Assistant', sans-serif; border-top: 5px solid var(--color-link); padding-top: 40px;
direction: rtl; font-size: 16px;
}
.footer-inner-container {
max-width: 1200px; margin: 0 auto;
padding: 0 20px; display: flex; flex-wrap: wrap; justify-content: space-between;
}
.footer-column { flex: 1; min-width: 180px; margin-bottom: 30px; padding-left: 15px; }
.footer-column h3 {
color: var(--color-link); font-size: 22px; font-weight: 400; margin-bottom: 20px; margin-top: 0;
font-family: 'Heebo', sans-serif; border-bottom: 2px solid #e0e0e0; padding-bottom: 10px; display: inline-block;
}
.footer-column ul { list-style: none; padding: 0; margin: 0; }
.footer-column ul li { margin-bottom: 10px; line-height: 1.5; }
.footer-column ul li a {
color: #555555; text-decoration: none; font-size: 16px; font-weight: 400; transition: all 0.3s ease;
}
.footer-column ul li a:hover { color: var(--accent-red); padding-right: 5px; }

.contact-row { display: flex; align-items: center; margin-bottom: 15px; gap: 10px; }
.contact-icon-box {
width: 40px; height: 40px; background-color: var(--color-link); border-radius: 50%;
display: flex; align-items: center; justify-content: center; transition: background-color 0.3s;
}
.contact-icon-box:hover { background-color: var(--accent-red); }
.contact-icon-box svg { width: 20px; height: 20px; fill: white; }
.contact-text { color: #333; font-weight: 400; }

.footer-bottom-section {
background-color: #fff; padding: 40px 20px; text-align: center; margin-top: 20px; border-top: 1px solid #eee;
}
.google-box {
max-width: 600px; margin: 0 auto 40px auto; border: 1px solid #e0e0e0; border-radius: 8px;
padding: 20px; box-shadow: 0 4px 10px rgba(0,0,0,0.05); display: flex; flex-direction: column; align-items: center;
}
.google-header { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.g-logo svg { width: 24px; height: 24px; }
.brand-name { font-weight: 400; font-size: 18px; color: #333; }
.rating-display { margin-bottom: 5px; }
.rating-score { font-size: 20px; font-weight: bold; color: #333; }
.stars { color: #FFD700; font-size: 20px; letter-spacing: 2px; }
.review-count { color: #777; font-size: 14px; margin-bottom: 20px; }
.google-buttons { display: flex; gap: 15px; flex-wrap: wrap; justify-content: center; }
.g-btn {
background-color: var(--color-link); color: #ffffff !important; padding: 10px 30px;
border-radius: 50px; text-decoration: none; font-weight: 400; font-size: 16px;
transition: background-color 0.3s; border: 2px solid var(--color-link);
}
.g-btn:hover { background-color: #384a8c; border-color: #384a8c; color: #ffffff !important; }
.g-btn.write-review { background-color: transparent; color: var(--color-link) !important; }
.g-btn.write-review:hover { background-color: var(--color-link); color: #ffffff !important; }

.social-section { margin-bottom: 30px; }
.social-section h3 { font-size: 22px; color: #000; font-weight: 400; margin-bottom: 15px; font-family: 'Heebo', sans-serif; }
.social-icons-list { display: flex; justify-content: center; gap: 15px; padding: 0; list-style: none; }
.social-icon-item a { display: block; transition: transform 0.2s; }
.social-icon-item a:hover { transform: scale(1.1); }
.social-icon-item svg { width: 40px; height: 40px; }
.footer-disclaimer {
max-width: 1000px; margin: 0 auto; font-size: 14px; color: #333;
line-height: 1.6; text-align: center; padding-top: 20px; border-top: 1px solid #eee;
}
@media (max-width: 768px) {
.footer-column { flex: 100%; text-align: center; border-bottom: 1px solid #eaeaea; padding-bottom: 20px; padding-left: 0; }
.contact-row { justify-content: center; }
.footer-column h3 { border-bottom: none; }
}

.franco-related-wrapper { margin-top: 50px; border-top: 1px solid #eee; padding-top: 30px; }
.franco-related-title {
font-family: 'Heebo', sans-serif; color: var(--color-link); text-align: center;
font-size: 32px; font-weight: 700; margin-bottom: 25px;
}

.zvi-section-spacer { margin-bottom: 80px; }
.wp-block-heading { margin-bottom: 30px; text-align: center; }

.fa-product-card {
display: flex; flex-direction: column; border: 1px solid #e0e0e0;
border-radius: 12px; overflow: hidden; background: #fff;
box-shadow: 0 2px 5px rgba(0,0,0,0.05); transition: transform 0.2s ease;
height: auto; min-height: 100%; min-width: 300px; max-width: 300px; position: relative;
}
.fa-product-card:hover { transform: translateY(-5px); box-shadow: 0 5px 15px rgba(0,0,0,0.1); }

.fa-card-image { position: relative; overflow: hidden; height: 200px; flex-shrink: 0; }
.fa-card-img-elem { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.3s ease; }
.fa-product-card:hover.fa-card-img-elem { transform: scale(1.05); }

.zvi-icon-placeholder {
height: 200px; width: 100%; background-color: #f4f8fc;
display: flex; align-items: center; justify-content: center; font-size: 80px; flex-shrink: 0;
}

.fa-card-content {
padding: 20px; display: flex; flex-direction: column; flex: 1 0 auto;
text-align: right; justify-content: space-between;
}
.fa-card-title {
margin: 0 0 10px 0; font-size: 1.6rem; color: #4F64B0;
font-weight: 500; font-family: 'Heebo', sans-serif; line-height: 1.1; min-height: 1.2em;
}
.fa-card-desc { font-size: 0.95rem; color: #555; margin-bottom: 15px; line-height: 1.5; }

.fa-pros-cons {
margin-bottom: 15px; background: #f9f9f9; padding: 10px;
border-radius: 6px; flex-grow: 1; min-height: 155px;
display: flex; flex-direction: column; justify-content: center;
}
.fa-pros-cons ul { list-style: none; padding: 0; margin: 0; }
.fa-pros-cons li {
margin-bottom: 6px; position: relative; padding-right: 25px;
font-size: 0.9rem; color: #444; text-align: right;
}
.fa-pros-cons li:last-child { margin-bottom: 0; }

.fa-pro::before { content: "✓"; color: #27ae60; position: absolute; right: 0; font-weight: bold; }
.fa-con::before { content: "✕"; color: #c0392b; position: absolute; right: 0; font-weight: bold; }

.fa-card-footer {
display: flex; flex-direction: column; gap: 10px; margin-top: auto; padding-top: 15px; border-top: 1px solid #f0f0f0;
}

.fa-btn-outline {
background-color: #ffffff; color: var(--color-link);
border: 2px solid var(--color-link); text-decoration: none;
padding: 8px 15px; border-radius: 50px; font-size: 0.9rem;
text-align: center; display: block; transition: all 0.3s;
}
.fa-btn-outline:hover { background: #f0f4ff; }

.fa-btn-book {
background-color: var(--color-link); color: #ffffff; border: 2px solid var(--color-link);
}

.fr-top-5-box {
background-color: #f9f9f9; border: 1px solid #e0e0e0; border-radius: 12px;
padding: 30px; margin-bottom: 60px; box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.fr-top-5-box h3 {
text-align: center; color: #4F64B0; margin-bottom: 35px;
font-size: 42px; margin-top: 0; font-family: 'Heebo', sans-serif;
}
.fr-museum-row {
display: flex; align-items: center; justify-content: space-between;
background: #fff; padding: 20px; margin-bottom: 15px; border-radius: 8px;
border-right: 4px solid #CF3834; transition: transform 0.2s; gap: 20px;
}
.fr-museum-row:hover { transform: translateY(-2px); box-shadow: 0 6px 15px rgba(0,0,0,0.08); }
.fr-att-icon { font-size: 36px; width: 50px; text-align: center; flex-shrink: 0; }
.fr-att-details { flex-grow: 1; text-align: right; }
.fr-att-title { font-size: 32px; color: #4F64B0; display: block; margin-bottom: 6px; font-family: 'Heebo', sans-serif; }
.fr-att-desc { font-size: 16px; color: #666; display: block; line-height: 1.5; }

.fr-att-btn, .fr-att-btn:visited {
background-color: #CF3834; color: #fff; padding: 10px 25px;
border-radius: 50px; font-size: 16px; font-weight: 700;
text-decoration: none; transition: background 0.3s; white-space: nowrap;
}
.fr-att-btn:hover, .fr-att-btn:focus, .fr-att-btn:active { background-color: #b02a27; color: #fff; }
.att-sub-link { display: block; margin-top: 5px; font-size: 14px; color: #CF3834; text-decoration: underline; }

.zvi-special-tip-box {
background-color: #f9f9f9; border: 2px solid #4F64B0; padding: 40px;
margin: 60px 0; border-radius: 12px; position: relative; text-align: center;
}
.zvi-special-tip-title {
color: #4F64B0; font-size: 2.2rem; display: block; margin-bottom: 20px; font-family: 'Heebo', sans-serif;
}
.zvi-ticket-btn-red {
background-color: #CF3834; color: #fff; padding: 12px 30px;
border-radius: 50px; font-size: 18px; text-decoration: none; display: inline-block; transition: background 0.3s;
}

.zvi-pass-card {
background: linear-gradient(135deg, #ffffff 0%, #f4f8fc 100%);
border: 2px solid #4F64B0; border-radius: 16px; padding: 35px;
margin: 60px 0; box-shadow: 0 10px 30px rgba(79, 100, 176, 0.1);
display: flex; align-items: center; gap: 30px; direction: rtl;
}
.zvi-pass-icon {
font-size: 60px; background: #fff; width: 100px; height: 100px;
border-radius: 50%; display: flex; align-items: center; justify-content: center;
box-shadow: 0 4px 15px rgba(0,0,0,0.08); flex-shrink: 0; border: 1px solid #e0e0e0;
}
.zvi-pass-content { flex-grow: 1; text-align: right; }
.zvi-pass-title { color: #4F64B0; font-size: 38px; margin-bottom: 10px; margin-top: 0; font-family: 'Heebo', sans-serif; }

.fa-sticky-footer {
position: fixed; bottom: 0; left: 0; width: 100%;
background-color: #ffffff; box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
padding: 12px 15px; z-index: 9999; border-top: 3px solid #e74c3c;
display: none; box-sizing: border-box;
}
.fa-sticky-content { display: flex; justify-content: space-between; align-items: center; max-width: 100%; }
.fa-sticky-info { display: flex; flex-direction: column; text-align: right; }
.fa-sticky-title { font-weight: bold; font-size: 0.95rem; color: #333; }
.fa-sticky-price { font-size: 0.8rem; color: #7f8c8d; }
.fa-sticky-btn {
background-color: #e74c3c; color: white; text-decoration: none;
padding: 8px 20px; border-radius: 4px; font-weight: bold; font-size: 0.9rem;
}

@media (max-width: 768px) {
.fa-sticky-footer { display: block; }
body { padding-bottom: 70px; }
.fa-product-card { min-width: 100%; max-width: 100%; width: 100%; }
.fr-museum-row { flex-direction: column; text-align: center; border-right: none; border-top: 4px solid #CF3834; }
.fr-att-details { text-align: center; }
.fr-att-btn { width: 100%; }
.zvi-pass-card { flex-direction: column; text-align: center; }
.zvi-pass-content { text-align: center; }
}

#wpadminbar { z-index: 9999999 !important; top: 0 !important; position: fixed !important; width: 100% !important; }
body.admin-bar { margin-top: 32px !important; }
@media screen and (max-width: 782px) { body.admin-bar { margin-top: 46px !important; } }

#zvi-main-hamburger.in-sticky-toc {
height: 45px !important; width: 70px !important; padding: 0 10px !important;
margin-left: 15px !important; margin-top: 0 !important;
background-color: #4b65a5 !important; border: none !important;
box-shadow: none !important; border-radius: 0 !important;
cursor: pointer; display: flex !important; align-items: center;
justify-content: center; order: -1;
}

#zvi-main-hamburger.in-sticky-toc svg,
#zvi-main-hamburger.in-sticky-toc svg path {
width: 30px !important; height: 30px !important;
fill: #ffffff !important; stroke: #ffffff !important;
}

.zvi-header-wrapper-root {
--z-bg-color: #15399B;
--z-text-main: #ffffff;
--z-border: rgba(255,255,255,0.3);
--z-brand-blue: #4F64B0;
}

.zvi-header-wrapper {
font-family: 'Assistant', sans-serif;
background-color: var(--z-bg-color); color: #ffffff;
padding: 40px 30px; margin-bottom: 30px; direction: rtl;
text-align: right; border-radius: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.1);
font-weight: 400; overflow: hidden;
}

.zvi-inner-content { max-width: 1200px; margin: 0 auto; position: relative; }
.zvi-flex-container { display: flex; align-items: center; justify-content: space-between; gap: 50px; }
.zvi-content-side { flex: 1; min-width: 0; }
.zvi-image-side { flex: 0 0 480px; max-width: 50%; }

.zvi-hero-img {
width: 100%; height: auto; aspect-ratio: 16/10; object-fit: cover;
border-radius: 12px; box-shadow: 0 10px 25px rgba(0,0,0,0.25);
border: 2px solid rgba(255,255,255,0.1); display: block;
}

.zvi-breadcrumbs, .rank-math-breadcrumb, .rank-math-breadcrumb span, .rank-math-breadcrumb a {
font-family: 'Assistant', sans-serif; color: #ffffff;
font-size: 14px; font-weight: 400; text-decoration: none;
margin-bottom: 15px; display: inline-block;
}
.zvi-breadcrumbs a:hover, .rank-math-breadcrumb a:hover { text-decoration: underline; }

.zvi-dynamic-h1, .zvi-sub-title {
font-family: 'Heebo', sans-serif; font-weight: 400;
color: #ffffff; margin: 0 0 15px 0; line-height: 1.2;
}
.zvi-dynamic-h1 { font-size: clamp(28px, 5vw, 46px); text-shadow: 0 2px 4px rgba(0,0,0,0.1); }
.zvi-sub-title { font-size: clamp(24px, 4vw, 32px); }

.zvi-cat-description, .zvi-cat-description p {
font-family: 'Assistant', sans-serif; color: #ffffff;
font-size: 18px; line-height: 1.6; font-weight: 400;
}

.zvi-meta-strip {
font-family: 'Assistant', sans-serif; display: flex; flex-wrap: wrap;
align-items: center; gap: 15px; font-size: 15px; padding-top: 20px;
border-top: 1px solid var(--z-border); margin-top: 25px; color: #ffffff;
}
.zvi-meta-strip span, .zvi-meta-strip div, .zvi-meta-strip a { color: #ffffff; text-decoration: none; }
.zvi-meta-link { border-bottom: 1px solid transparent; transition: 0.2s; }
.zvi-meta-link:hover { border-bottom-color: #ffffff; }
.zvi-icon { width: 16px; height: 16px; fill: #ffffff; opacity: 0.9; margin-left: 5px; position: relative; top: 2px; }
.zvi-divider { color: #ffffff; opacity: 0.6; }
.zvi-meta-item { display: flex; align-items: center; }

a.zvi-tag {
font-family: 'Assistant', sans-serif;
background: #fff; border: 1px solid #fff; color: var(--z-brand-blue);
padding: 4px 14px; border-radius: 20px; font-size: 13px; font-weight: 400;
text-decoration: none; transition: 0.2s;
}
a.zvi-tag:hover { background: var(--z-brand-blue); color: #ffffff; border-color: #ffffff; }

@media (max-width: 900px) {
.zvi-header-wrapper { padding: 30px 20px; }
.zvi-flex-container { flex-direction: column; gap: 25px; }
.zvi-image-side { width: 100%; max-width: 100%; flex: none; }
.zvi-hero-img { aspect-ratio: 16/9; }
.zvi-dynamic-h1 { font-size: 30px; }
}

.hotel-card-container ul { display: flex; flex-direction: column; gap: 15px; }
.hotel-card-container li {
background-color: #fff; border: 1px solid #f0f0f0; border-radius: 8px;
padding: 20px; margin-bottom: 0; box-shadow: 0 2px 5px rgba(0,0,0,0.03);
display: flex; flex-direction: column; align-items: flex-start; transition: transform 0.2s ease;
}
.hotel-card-container li:hover {
transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0,0,0,0.08); border-color: #dcebf7;
}
.hotel-card-container li strong::before { content: none; }
.hotel-card-container li strong {
font-family: 'Heebo', sans-serif; font-size: 1.2rem; color: var(--color-link);
margin-bottom: 10px; display: block; width: 100%; border-bottom: 1px solid #f5f5f5; padding-bottom: 10px;
}
.hotel-card-container li strong.emoji-icon { font-size: 1.4rem; margin-left: 10px; }
.hotel-card-container.hotel-link-btn {
margin-top: 15px; align-self: flex-end; font-size: 0.95rem;
background-color: #f4f8fc; border: 1px solid #dcebf7;
}
.hotel-card-container.hotel-link-btn:hover {
background-color: var(--color-link); border-color: var(--color-link);
}

#zvi-header-root img, #zvi-logo-img { height: 50px !important; width: auto !important; max-width: none !important; }
#zvi-header-root svg, #zvi-main-hamburger svg, .zvi-search-btn svg,
.zvi-nav-icon-btn svg, .zvi-action-btn svg {
width: 24px !important; height: 24px !important; max-width: 24px !important; max-height: 24px !important;
}
#zvi-main-hamburger svg { width: 32px !important; height: 32px !important; }
.zvi-search-btn svg { width: 26px !important; height: 26px !important; }

.icon-nav-section { background-color: #f9f9f9; padding-top: 60px; padding-bottom: 60px; }

/* Unified Grid System for Homepage Icons */
.icon-nav-grid, .zvi-nav-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px; /* Increased gap for better row separation */
    max-width: 900px;
    margin: 0 auto;
    direction: rtl;
    justify-items: center;
}

.icon-box, .zvi-nav-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    padding: 20px;
    width: 100%;
    box-sizing: border-box;
    transition: transform 0.2s ease;
}

.icon-box:hover, .zvi-nav-box:hover { transform: translateY(-5px); }
.icon-box img, .zvi-nav-box img { width: 80px; height: 80px; margin-bottom: 15px; }

.icon-title, .zvi-nav-title {
    font-family: 'Heebo', sans-serif; font-size: 1.25rem; font-weight: 700;
    color: var(--color-link); margin: 0; text-align: center;
}

@media (max-width: 768px) {
    .icon-nav-grid, .zvi-nav-grid { grid-template-columns: 1fr; gap: 20px; }
}

.lectures-section { padding: 80px 20px; background-color: #ffffff; width: 100%; box-sizing: border-box; }
.lectures-grid {
display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center;
justify-content: space-between; gap: 60px; max-width: 1150px; margin: 0 auto; direction: rtl;
}
.lectures-text-col { flex: 1; text-align: right; min-width: 0; }
.lectures-img-col { flex: 1; min-width: 0; }
.lectures-img-col img {
width: 100%; height: auto; border-radius: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.15); display: block;
}
@media (max-width: 900px) {
.lectures-grid { flex-direction: column-reverse; text-align: center; gap: 30px; }
.lectures-text-col { text-align: center; }
}

@media (max-width: 768px) {
.zvi-hotels-scroller, .scroll-slider, .zvi-district-scroller {
padding-right: 20px !important; padding-left: 20px !important; gap: 15px !important;
}
.zvi-hotel-card, .scroll-card, .floor-card, .fa-product-card {
flex: 0 0 100% !important; max-width: 100% !important; min-width: 100% !important;
width: 100% !important; margin-left: 0 !important;
}
}

.section-gray-bg { background-color: #f9f9f9; padding-top: 60px; padding-bottom: 60px; }
.facebook-card-custom {
padding: 25px; text-decoration: none; text-align: center;
align-items: center; justify-content: center; height: 100%; display: flex; flex-direction: column;
}

@media (max-width: 900px) {
.zvi-right-group { gap: 2px !important; }
.zvi-right-group.zvi-gtranslate-area {
display: flex !important; align-items: center !important; justify-content: center !important;
width: auto !important; margin: 0 !important; padding: 0 !important;
}
.zvi-gtranslate-area.gtranslate_wrapper, .zvi-gtranslate-area > div {
display: flex !important; align-items: center !important; gap: 0 !important;
}
.zvi-gtranslate-area img, .zvi-gtranslate-area svg, div.gtranslate_wrapper img {
width: 19px !important; height: 19px !important; min-width: 19px !important; max-width: 19px !important;
margin: 0 2px !important; padding: 0 !important; object-fit: cover !important; display: block !important; border-radius: 2px;
}
.zvi-gtranslate-area a { display: block !important; margin: 0 !important; padding: 0 !important; border: none !important; font-size: 0 !important; }
}

/* Single Post Styles */

@media (min-width: 769px) {
body.single .entry-content,
body.single-post .entry-content {
padding-right: 0 !important;
padding-left: 0 !important;
width: 100%;
max-width: 820px !important;
margin-right: auto !important;
margin-left: auto !important;
}
}

.zvi-content-body { max-width: 800px; margin: 0 auto; }
.site-main, .entry-content { overflow-x: hidden; max-width: 100vw; }
.main-container { box-sizing: border-box; }

.zvi-author-wrapper { display: flex; justify-content: center; align-items: center; width: 100%; margin: 40px auto; }
.zvi-author-wrapper > div { margin-right: auto; margin-left: auto; max-width: 1000px; width: 100%; }

.zvi-articles-wrapper { font-family: var(--font-body); margin-bottom: 50px; direction: rtl; width: 100%; }
.zvi-articles-scroller {
display: flex; overflow-x: auto; gap: 20px; padding: 10px 5px 30px 5px;
scrollbar-width: thin; scrollbar-color: var(--color-link) #f0f0f0; -webkit-overflow-scrolling: touch;
}
.zvi-articles-scroller::-webkit-scrollbar { height: 8px; }
.zvi-articles-scroller::-webkit-scrollbar-track { background: #f1f1f1; border-radius: 4px; }
.zvi-articles-scroller::-webkit-scrollbar-thumb { background: var(--color-link); border-radius: 4px; }

.zvi-article-card {
flex: 0 0 260px; background: #fdfdfd; border: 1px solid #eee; border-radius: 8px;
padding: 20px; text-align: center; transition: transform 0.2s; display: flex;
flex-direction: column; justify-content: space-between; text-decoration: none;
}
.zvi-article-card:hover { transform: translateY(-3px); border-color: var(--color-link); }
.zvi-art-icon { font-size: 40px; margin-bottom: 10px; display: block; }
.zvi-art-title {
font-family: var(--font-heading); font-size: 24px; color: var(--accent-red);
margin-bottom: 10px; line-height: 1.1; font-weight: normal;
}
.zvi-art-desc { font-size: 15px; color: #000; margin-bottom: 15px; line-height: 1.3; flex-grow: 1; font-weight: 400; }
.zvi-art-btn {
background: #fff; color: var(--color-link); border: 2px solid var(--color-link);
padding: 8px 15px; border-radius: 50px; text-decoration: none; font-weight: 700;
display: inline-block; transition: all 0.3s; font-size: 16px;
}
.zvi-article-card:hover.zvi-art-btn { background-color: var(--color-link); color: #fff; }

#zvi-social-unique-wrapper {
background-color: #f4f4f4; padding: 50px 20px; margin: 40px 0; text-align: center;
direction: rtl; box-sizing: border-box; width: 100%; font-family: var(--font-body);
}
#zvi-social-unique-wrapper.zvi-headers { margin-bottom: 30px; }
#zvi-social-unique-wrapper.zvi-sub-text {
font-family: var(--font-heading); font-size: 32px; color: #333; margin: 0 0 5px 0;
line-height: 1; text-align: center; display: block; font-weight: 400;
}
#zvi-social-unique-wrapper.zvi-main-text {
font-family: var(--font-heading); font-size: 50px; color: var(--color-link); margin: 0 0 30px 0;
line-height: 1; font-weight: 700; padding: 0; text-align: center; display: block;
}
#zvi-social-unique-wrapper.zvi-flex-row {
display: flex; flex-direction: row; justify-content: space-between; align-items: stretch;
gap: 20px; max-width: 1140px; margin: 0 auto; width: 100%;
}
#zvi-social-unique-wrapper a.zvi-item {
display: flex; flex-direction: column; align-items: center; justify-content: center;
background-color: #ffffff; padding: 30px 10px; border-radius: 4px; border: 1px solid #eee;
text-decoration: none; box-shadow: 0 4px 15px rgba(0,0,0,0.05);
transition: transform 0.3s ease, box-shadow 0.3s ease; flex: 1 1 0px; width: auto; min-width: 0; margin: 0;
}
#zvi-social-unique-wrapper a.zvi-item:hover {
transform: translateY(-5px); box-shadow: 0 8px 25px rgba(0,0,0,0.1); border-color: var(--color-link);
}
#zvi-social-unique-wrapper.icon-box {
width: 60px; height: 60px; margin-bottom: 15px; display: flex; align-items: center;
justify-content: center; color: var(--color-link); transition: color 0.3s ease;
}
#zvi-social-unique-wrapper svg { width: 45px; height: 45px; min-width: 45px; max-width: 45px; fill: currentColor; display: block; }
#zvi-social-unique-wrapper a.zvi-item:hover.icon-box { color: var(--accent-red); }
#zvi-social-unique-wrapper.text-label {
font-family: var(--font-body); font-size: 18px; color: var(--color-link);
font-weight: 400; line-height: 1.2; text-align: center; width: 100%;
}
#zvi-social-unique-wrapper a.zvi-item:hover.text-label { color: var(--accent-red); }

@media (max-width: 768px) {
#zvi-social-unique-wrapper.zvi-flex-row { flex-direction: column; gap: 15px; }
#zvi-social-unique-wrapper a.zvi-item { flex-direction: row; justify-content: flex-start; padding: 15px 20px; width: 100%; }
#zvi-social-unique-wrapper.icon-box { margin-bottom: 0; margin-left: 20px; width: 40px; height: 40px; }
#zvi-social-unique-wrapper svg { width: 30px; height: 30px; min-width: 30px; }
#zvi-social-unique-wrapper.text-label { text-align: right; font-size: 16px; width: auto; }
.zvi-content-body { padding-right: 20px; padding-left: 20px; width: 100%; box-sizing: border-box; }
.zvi-author-wrapper > div { width: 90%; }
}

@media screen and (max-width: 768px) {
html, body { overflow-x: hidden; width: 100%; max-width: 100%; position: relative; }
*, *:before, *:after { box-sizing: border-box; }
img, video, iframe { max-width: 100%; height: auto; }
}
@media only screen and (max-width: 600px) {
.glink img { height: 20px !important; }
}

body a.fa-btn-book, body a.zvi-ticket-btn, body a.fa-btn-book:visited, body a.zvi-ticket-btn:visited {
background-color: var(--color-link); color: #ffffff; border: 2px solid var(--color-link);
text-decoration: none; opacity: 1;
}
body a.fa-btn-book:hover, body a.zvi-ticket-btn:hover, body a.fa-btn-book:focus, body a.zvi-ticket-btn:focus, body a.fa-btn-book:active, body a.zvi-ticket-btn:active {
background-color: var(--color-link-hover); color: #ffffff; border-color: var(--color-link);
}

.zvi-flex-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 30px;
margin: 40px 0;
direction: rtl;
width: 100%;
}

.zvi-flex-grid > p {
display: contents;
}

@media (max-width: 900px) {
.zvi-flex-grid {
grid-template-columns: 1fr;
}
}

.zvi-flex-item {
width: 100%;
min-width: 0;
}

@media (max-width: 768px) {
.zvi-flex-grid { gap: 20px; padding: 0 5px; }
}

#zvi_ajax_grid, .zvi_ajax_grid { display: flex; flex-wrap: wrap; gap: 30px; width: 100%; direction: rtl; }
#zvi_ajax_grid > article, #zvi_ajax_grid > div, .zvi_ajax_grid > article, .zvi_ajax_grid > div {
flex: 0 0 calc(50% - 15px); max-width: calc(50% - 15px); box-sizing: border-box; margin-bottom: 0;
}
@media (max-width: 768px) {
#zvi_ajax_grid > article, #zvi_ajax_grid > div, .zvi_ajax_grid > article, .zvi_ajax_grid > div {
flex: 0 0 100%; max-width: 100%;
}
}

.zvi-filter-nav { display: flex; justify-content: center; margin-bottom: 30px; width: 100%; }
.zvi-filter-dropdown {
appearance: none; -webkit-appearance: none; background-color: #fff;
border: 1px solid #e0e0e0; border-radius: 8px; padding: 12px 40px 12px 20px;
font-size: 18px; color: #333; cursor: pointer; outline: none; min-width: 250px; max-width: 100%;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 8.825L1.175 4 2.238 2.938 6 6.7l3.763-3.762L10.825 4z'/%3E%3C/svg%3E");
background-repeat: no-repeat; background-position: left 15px center;
box-shadow: 0 2px 5px rgba(0,0,0,0.05); transition: all 0.3s ease;
}
.zvi-filter-dropdown:hover, .zvi-filter-dropdown:focus {
border-color: var(--color-link); box-shadow: 0 4px 8px rgba(79, 100, 176, 0.15);
}

.zvi-load-more-container { text-align: center; margin-top: 40px; width: 100%; }
.zvi-load-more-btn {
display: inline-block; padding: 12px 30px; background-color: var(--color-link); color: #fff;
font-size: 18px; font-weight: bold; border-radius: 4px; text-decoration: none; cursor: pointer;
transition: background 0.3s; border: none;
}
.zvi-load-more-btn:hover { background-color: var(--color-link-hover); color: #fff; }
.zvi-load-more-btn.hidden { display: none; }

.zvi-spinner {
display: none; width: 30px; height: 30px; border: 3px solid rgba(0,0,0,0.1);
border-radius: 50%; border-top-color: var(--color-link); animation: zvi-spin 1s ease-in-out infinite; margin: 20px auto;
}
@keyframes zvi-spin { to { transform: rotate(360deg); } }

@media screen and (max-width: 768px) {
.zvi-top-links-container {
flex-wrap: nowrap !important; justify-content: flex-start !important;
overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: 5px;
scrollbar-width: none; -ms-overflow-style: none;
}
.zvi-top-links-container::-webkit-scrollbar { display: none; }
.zvi-top-link { flex: 0 0 auto; white-space: nowrap; margin-left: 15px; }
}
/* תיקון גלישת תמונה על טקסט בכרטיסי דירות */
.zvi-hotel-card .zvi-hotel-img img {
width: 100%;
height: 220px; /* מקבע את הגובה שמוגדר בקוד שלך */
object-fit: cover; /* חותך את התמונה בצורה חכמה במקום למתוח אותה */
object-position: center;
display: block;
}

/* הבטחת גובה אחיד למכולה של התמונה */
div.zvi-hotel-img {
height: 220px;
overflow: hidden;
border-radius: 16px 16px 0 0;
}

/* תיקון שבירת כרטיסי רובעים - הופך את הספאנים לבלוקים */
.zvi-ticket-card .zvi-ticket-icon,
.zvi-ticket-card .zvi-ticket-title,
.zvi-ticket-card .zvi-ticket-desc {
display: block;
width: 100%;
}

/* וידוא שהאייקון נשאר גדול */
.zvi-ticket-card .zvi-ticket-icon {
font-size: 3.5rem; /* או הגודל שהיה לך במקור */
margin-bottom: 15px;
}

/* =========================================
10. DESKTOP CARD SIZING FIX
Forces max 3 cards per row on desktop for sliders
========================================= */
@media (min-width: 901px) {
.zvi-hotels-scroller > .zvi-hotel-card,
.zvi-hotels-scroller > .fa-product-card,
.scroll-slider > .scroll-card,
.zvi-district-scroller > .zvi-ticket-card {
flex: 0 0 calc((100% - 60px) / 2);
width: calc((100% - 60px) / 2);
max-width: calc((100% - 60px) / 2);
}
}
/* =========================================
11. Mobile margins
========================================= */
@media (max-width: 768px) {
/* הוספת ריפוד פנימי לכל איזור התוכן במובייל */
.separate-containers .inside-article {
padding-right: 20px !important;
padding-left: 20px !important;
box-sizing: border-box;
}
}
/* --- תיקון גלילה אופקית ומרווח עליון (מובייל) --- */

html, body {
/* נועל את הרוחב לרוחב המסך בלבד ומונע תזוזה לצדדים */
overflow-x: hidden !important;
max-width: 100vw !important;
width: 100%;
margin: 0;
padding: 0;
}

/* תיקון ספציפי למרווח הלבן למעלה במובייל */
@media screen and (max-width: 782px) {
html {
margin-top: 0 !important;
}
body.admin-bar {
/* מבטל את הריווח שוורדפרס שומרת לבר הניהול במובייל */
/* שים לב: זה עלול להסתיר את בר הניהול כשאתה מחובר מהנייד, אבל יסדר את התצוגה לגולשים */
margin-top: 0 !important;
}

/* וידוא שההדר נצמד לקצה העליון */
#zvi-header-root {
top: 0;
margin-top: 0;
}
}
/* =========================================
   ZVI DASHBOARD (New for 2026)
   ========================================= */
.zvi-dashboard-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 16px;
    padding: 20px;
    margin: 30px 0;
    box-shadow: 0 4px 15px rgba(0,0,0,0.03);
    direction: rtl;
}

.zvi-dash-item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 10px;
    background: #f9f9f9;
    border-radius: 12px;
    transition: transform 0.2s ease;
}

.zvi-dash-item:hover {
    transform: translateY(-2px);
    background: #f0f4ff;
}

.zvi-dash-icon {
    font-size: 2rem;
    background: #fff;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
    flex-shrink: 0;
}

.zvi-dash-content {
    display: flex;
    flex-direction: column;
}

.zvi-dash-title {
    font-family: 'Heebo', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    color: var(--color-link);
    line-height: 1.1;
    margin-bottom: 3px;
}

.zvi-dash-text {
    font-family: 'Assistant', sans-serif;
    font-size: 0.9rem;
    color: #555;
    line-height: 1.2;
}

.zvi-dash-link {
    text-decoration: none;
    color: inherit;
    display: flex;
    align-items: center;
    width: 100%;
}

@media (max-width: 768px) {
    .zvi-dashboard-container {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 15px;
    }
}

/* =========================================
   NEW CRUISE CARDS DESIGN (E-COMMERCE STYLE)
   ========================================= */

/* קונטיינר הגריד - מסדר את הכרטיסים */
.zvi-cruise-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 30px;
    margin-bottom: 40px;
}

/* הכרטיס עצמו */
.zvi-cruise-card {
    background: #fff;
    border: 1px solid #e1e1e1;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.zvi-cruise-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.12);
    border-color: var(--color-link);
}

/* איזור המדיה (תמונה/וידאו) בראש הכרטיס */
.zvi-cruise-header {
    position: relative;
    width: 100%;
    height: 200px; /* גובה אחיד לכל המדיה */
    background: #f0f0f0;
    overflow: hidden;
}

/* עיצוב התגית (Badge) על התמונה */
.zvi-cruise-badge {
    position: absolute;
    top: 15px;
    right: 15px;
    background-color: var(--accent-red);
    color: #ffffff;
    padding: 5px 15px;
    border-radius: 25px;
    font-family: var(--font-heading, 'Heebo', sans-serif);
    font-size: 0.85rem;
    font-weight: 700;
    z-index: 10;
    box-shadow: 0 2px 6px rgba(0,0,0,0.15);
    pointer-events: none;
}

.zvi-cruise-header img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.zvi-cruise-card:hover .zvi-cruise-header img {
    transform: scale(1.05);
}

/* התאמת וידאו בתוך ההדר */
.zvi-cruise-header iframe {
    width: 100%;
    height: 100%;
    border: none;
}

/* גוף הכרטיס */
.zvi-cruise-body {
    padding: 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.zvi-cruise-title {
    font-family: var(--font-heading, 'Heebo', sans-serif);
    font-size: 1.25rem;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 10px;
    color: var(--color-text-main, #333);
    line-height: 1.3;
}

.zvi-cruise-desc {
    font-size: 0.95rem;
    color: #666;
    margin-bottom: 15px;
    line-height: 1.5;
    flex-grow: 1;
}

/* עיצוב רשימת יתרונות/חסרונות קומפקטית */
.zvi-cruise-features {
    background: #f9f9f9;
    padding: 10px;
    border-radius: 8px;
    margin-bottom: 15px;
    font-size: 0.85rem;
}

.zvi-cruise-features ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.zvi-cruise-features li {
    margin-bottom: 5px;
    position: relative;
    padding-right: 20px;
}

.zvi-cruise-features li.pro::before {
    content: '✓';
    color: green;
    position: absolute;
    right: 0;
    font-weight: bold;
}

.zvi-cruise-features li.con::before {
    content: '✕';
    color: red;
    position: absolute;
    right: 0;
    font-weight: bold;
}

/* הכפתור בתחתית */
.zvi-cruise-btn {
    display: block;
    width: 100%;
    padding: 12px 0;
    background-color: var(--color-link);
    color: #fff !important;
    text-align: center;
    text-decoration: none !important;
    font-weight: 600;
    border-radius: 6px;
    transition: background 0.3s;
    font-family: var(--font-heading, sans-serif);
}

.zvi-cruise-btn:hover {
    background-color: var(--color-link-hover);
}

/* התאמה למובייל */
@media (max-width: 768px) {
    .zvi-cruise-grid {
        grid-template-columns: 1fr; /* כרטיס אחד בשורה */
    }
    .zvi-cruise-header {
        height: 220px; /* קצת יותר גבוה במובייל */
    }
}


/* =========================================
   12. COMMENTS SYSTEM & FORM DESIGN
   ========================================= */

/* מעטפת אזור התגובות - עודכן עם רוחב מקסימלי לדסקטופ */
#comments, #respond {
    margin-top: 60px;
    direction: rtl;
    font-family: 'Assistant', sans-serif;
    
    /* הגדרות רוחב ומרכוז */
    max-width: 800px; /* רוחב אופטימלי לקריאה */
    margin-left: auto;
    margin-right: auto;
    width: 90%; /* כדי שלא יידבק לקצוות במובייל */
}

/* כותרות האזור (משתמש בפונט הכותרות שלך) */
.comments-title, 
.comment-reply-title {
    font-family: 'Heebo', sans-serif;
    color: var(--color-link);
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 30px;
    padding-bottom: 15px;
    border-bottom: 2px solid rgba(79, 100, 176, 0.1);
    position: relative;
}

/* עיצוב רשימת התגובות */
.comment-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.comment-list li.comment {
    margin-bottom: 30px;
}

/* גוף התגובה - עיצוב כרטיס */
.comment-body {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    padding: 25px;
    position: relative;
    box-shadow: 0 4px 10px rgba(0,0,0,0.03);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.comment-body:hover {
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
}

/* אזור המידע (תמונה ושם) */
.comment-meta {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    border-bottom: 1px solid #f9f9f9;
    padding-bottom: 15px;
}

/* תמונת הפרופיל (Avatar) */
.comment-author .avatar {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    margin-left: 15px;
    border: 2px solid #f4f8fc;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

/* שם המגיב */
.comment-author .fn {
    font-family: 'Heebo', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-link);
    font-style: normal;
}

.comment-author .fn a {
    text-decoration: none;
    color: inherit;
}

/* תאריך ושעה */
.comment-metadata {
    margin-right: auto; /* דוחף שמאלה */
}

.comment-metadata a {
    font-size: 0.85rem;
    color: #999;
    text-decoration: none;
    font-weight: 400;
}

/* תוכן הטקסט של התגובה */
.comment-content p {
    font-size: 1rem; /* התאמה לגודל פונט הגיוני לתגובות */
    line-height: 1.6;
    margin-bottom: 15px;
    color: #333;
}

/* כפתור "הגב" */
.comment-reply-link {
    display: inline-block;
    padding: 6px 20px;
    border: 1px solid var(--color-link);
    color: var(--color-link);
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
}

.comment-reply-link:hover {
    background-color: var(--color-link);
    color: #fff;
    transform: translateY(-2px);
}

/* תגובות משורשרות (Replies) - הזחה */
.comment-list .children {
    list-style: none;
    padding-right: 0;
    margin-right: 40px; /* רווח מימין */
    border-right: 2px solid rgba(79, 100, 176, 0.1); /* קו מנחה ויזואלי */
}

@media (max-width: 768px) {
    .comment-list .children {
        margin-right: 15px;
    }
}

/* --- טופס כתיבת תגובה --- */

#respond {
    background: #f4f8fc; /* צבע הרקע הבהיר שלך */
    padding: 30px;
    border-radius: 16px;
    border: 1px solid #dcebf7;
}

#respond p {
    font-size: 0.95rem;
    margin-bottom: 20px;
    color: #555;
}

/* שדות הקלט (Input Fields) */
#respond textarea, 
#respond input[type="text"], 
#respond input[type="email"], 
#respond input[type="url"] {
    width: 100%;
    padding: 15px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background-color: #ffffff;
    font-family: 'Assistant', sans-serif;
    font-size: 16px;
    color: #333;
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.02);
    transition: all 0.3s ease;
    box-sizing: border-box;
    margin-bottom: 5px;
}

/* מצב פוקוס בשדות */
#respond textarea:focus, 
#respond input:focus {
    outline: none;
    border-color: var(--color-link);
    box-shadow: 0 0 0 3px rgba(79, 100, 176, 0.15);
}

#respond textarea {
    min-height: 150px;
}

/* תוויות השדות (Labels) */
#respond label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    color: #444;
    font-size: 0.9rem;
}

/* כפתור שליחת תגובה */
.form-submit {
    text-align: left; /* הכפתור יהיה משמאל */
    margin-top: 20px;
}

.form-submit input[type="submit"] {
    background-color: var(--color-link);
    color: #ffffff;
    font-family: 'Assistant', sans-serif;
    font-weight: 700;
    font-size: 1.1rem;
    padding: 12px 40px;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 10px rgba(79, 100, 176, 0.2);
}

.form-submit input[type="submit"]:hover {
    background-color: var(--color-link-hover);
    transform: translateY(-3px);
    box-shadow: 0 6px 15px rgba(21, 57, 155, 0.3);
}

/* תיבת סימון (Checkbox) של "שמור בדפדפן" */
.comment-form-cookies-consent {
    display: flex;
    align-items: center;
    gap: 10px;
}

.comment-form-cookies-consent input {
    width: auto !important;
    margin: 0 !important;
    accent-color: var(--color-link);
}
/* עיצוב כרטיסיות אטרקציות פופולריות מבוסס רשימה (Grid) */
.zvi-level ul.zvi-grid-menu-list {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 15px 20px;
    list-style: none; /* ביטול בולטים */
    margin: 0;
}

.zvi-level ul.zvi-grid-menu-list li {
    margin: 0 !important;
    padding: 0 !important;
    width: 100%;
}

.zvi-grid-item-link {
    display: flex !important;
    flex-direction: column !important;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #f9fbfd !important;
    border: 1px solid #eef1f6 !important;
    border-radius: 8px;
    padding: 15px 10px !important;
    text-decoration: none;
    color: #333333 !important;
    font-size: 14px !important;
    font-weight: 500;
    transition: all 0.2s ease;
    box-sizing: border-box;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
    min-height: 85px; /* מבטיח גובה אחיד */
    line-height: 1.2;
}

.zvi-grid-item-link:hover {
    background: #ffffff !important;
    border-color: #4F64B0 !important;
    color: #4F64B0 !important;
    box-shadow: 0 4px 8px rgba(79, 100, 176, 0.1);
    transform: translateY(-2px);
}

.zvi-grid-item-icon {
    font-size: 26px;
    margin-bottom: 8px;
    display: block;
    line-height: 1;
}
/* CSS עבור הבר הדביק במובייל */
.mobile-sticky-footer-bar {
display: none;
position: fixed; bottom: 0; left: 0; right: 0;
background-color: #f5f5f5; border-top: 1px solid #e0e0e0;
box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
z-index: 99999; height: auto; min-height: 65px;
padding-top: 8px; padding-bottom: calc(5px + env(safe-area-inset-bottom));
justify-content: space-around; align-items: flex-start; direction: rtl;
contain: paint; /* SEO: משפר ביצועי רינדור ומונע CLS */
}
.sticky-item {
flex: 1; display: flex; flex-direction: column; align-items: center;
justify-content: center; text-decoration: none; color: inherit; padding: 0 5px;
}
.sticky-icon svg { width: 24px; height: 24px; margin-bottom: 4px; display: block; }
.sticky-text { font-family: 'Assistant', sans-serif; font-size: 13px; line-height: 1.2; text-align: center; font-weight: 600; }

/* שינוי כל האייקונים לצבע אחיד כחול כפי שביקשת */
.blue-theme { color: #4F64B0; fill: #4F64B0; }

/* CSS עבור הכפתורים המיוחדים ומצב הקטגוריות */
.sticky-special-container {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
padding: 0 10px;
gap: 8px; /* רווח בין האלמנטים */
height: 100%;
}

.sticky-share-compact {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
color: #4F64B0;
cursor: pointer;
padding: 0 5px;
flex-shrink: 0;
}
.sticky-share-compact svg { width: 24px; height: 24px; margin-bottom: 2px; fill: #4F64B0; }
.share-text-compact { font-family: 'Assistant', sans-serif; font-size: 11px; font-weight: 600; text-align: center; }

.sticky-separator {
width: 1px;
height: 35px;
background-color: #dcdcdc;
margin: 0 2px;
flex-shrink: 0;
}

.sticky-cta-btn {
background-color: #CF3834;
color: #ffffff !important;
font-family: 'Assistant', sans-serif;
font-weight: 700;
font-size: 16px;
text-decoration: none;
padding: 10px 15px;
border-radius: 8px;
text-align: center;
box-shadow: 0 2px 5px rgba(0,0,0,0.15);
flex: 1;
display: flex;
align-items: center;
justify-content: center;
min-height: 40px;
line-height: 1.1;
transition: background-color 0.2s;
cursor: pointer;
border: none;
}
.sticky-cta-btn:hover { background-color: #b02b27; }
.sticky-cta-btn.secondary-btn { background-color: #4F64B0; }

/* CSS עבור הפופ-אפ (Modal) */
.sticky-modal-overlay {
display: none;
position: fixed;
top: 0; left: 0; width: 100%; height: 100%;
background-color: rgba(0,0,0,0.6);
z-index: 100000;
justify-content: center;
align-items: center;
backdrop-filter: blur(2px);
}
.sticky-modal-box {
background-color: #fff;
width: 90%;
max-width: 350px;
border-radius: 12px;
padding: 25px 20px;
text-align: center;
position: relative;
box-shadow: 0 10px 25px rgba(0,0,0,0.2);
animation: modalFadeIn 0.3s ease;
}
.sticky-modal-close {
position: absolute;
top: 10px;
left: 15px;
font-size: 24px;
font-weight: bold;
color: #aaa;
cursor: pointer;
line-height: 1;
}
.sticky-modal-title {
font-family: 'Assistant', sans-serif;
font-size: 20px;
font-weight: bold;
margin-bottom: 20px;
color: #333;
}
.sticky-modal-btn {
display: block;
width: 100%;
margin-bottom: 12px;
padding: 12px;
}
@keyframes modalFadeIn {
from { opacity: 0; transform: translateY(20px); }
to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 768px) {
.mobile-sticky-footer-bar { display: flex; }
body { padding-bottom: 70px; }
}
