[dir="rtl"] { font-family: 'Heebo', sans-serif; }
        [dir="rtl"] .font-display { font-family: 'Playfair Display', serif; }

        .card-hover { transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1); }
        .card-hover:hover { transform: translateY(-8px); }
        .card-hover:hover .card-overlay { opacity: 0.4; }
        .card-hover:hover .card-cta { opacity: 1; transform: translateY(0); }

        .card-overlay { transition: opacity 0.5s ease; }
        .card-cta { opacity: 0; transform: translateY(10px); transition: all 0.4s ease 0.1s; }

        .fade-in { opacity: 0; transform: translateY(30px); transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1); }
        .fade-in.visible { opacity: 1; transform: translateY(0); }

        .gold-line { background: linear-gradient(90deg, transparent, #C9A84C, transparent); }

        .badge-pulse { animation: pulse-gold 2s infinite; }
        @keyframes pulse-gold {
            0%, 100% { box-shadow: 0 0 0 0 rgba(201, 168, 76, 0.4); }
            50% { box-shadow: 0 0 0 8px rgba(201, 168, 76, 0); }
        }

        .hero-bg {
            background-image: url('../../images/hero-kitchen.jpg');
            background-size: cover;
            background-position: center;
        }

/* ============================================================
   Accessibility & compliance additions (29.08.2026)
   ============================================================ */

/* Skip to main content - visible only on keyboard focus.
   Anchored with logical properties so it lands correctly in both
   LTR (English) and RTL (Hebrew) without a separate rule. */
.skip-link {
    position: absolute;
    top: -100px;
    inset-inline-start: 1rem;
    z-index: 100;
    background: #C9A84C;
    color: #1A1A1A;
    padding: 0.75rem 1.5rem;
    font-weight: 600;
    border-radius: 0.25rem;
    transition: top 0.2s ease-in-out;
}
.skip-link:focus { top: 1rem; }

a:focus-visible,
button:focus-visible,
[tabindex]:focus-visible {
    outline: 3px solid #C9A84C;
    outline-offset: 3px;
    border-radius: 2px;
}
@supports not selector(:focus-visible) {
    a:focus, button:focus { outline: 3px solid #C9A84C; outline-offset: 3px; }
}

/* WCAG 2.3.3 - honour a reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
    .fade-in { opacity: 1 !important; transform: none !important; }
    .card-hover:hover { transform: none !important; }
}

/* Screen-reader-only helper for table captions etc. */
.sr-only-c {
    position: absolute; width: 1px; height: 1px;
    padding: 0; margin: -1px; overflow: hidden;
    clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
