﻿/* Restaurant POS page â€” premium "fine dining" theme. Scoped to .lx so it never leaks to other pages. */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Inter:wght@400;500;600;700&display=swap');

.lx {
    --lx-ink: #0f0b08;
    --lx-coal: #1b140f;
    --lx-coal-2: #261c15;
    --lx-cream: #faf5ec;
    --lx-sand: #f1e8d6;
    --lx-paper: #fffdf8;
    --lx-line: #e6d9c0;
    --lx-gold: #c8a04a;
    --lx-gold-2: #e8cb85;
    --lx-gold-d: #9a7628;
    --lx-wine: #7a1f2b;
    --lx-sage: #4f7a5a;
    --lx-text: #2b211a;
    --lx-muted: #7b6b5a;
    --lx-serif: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;

    --bs-body-bg: var(--lx-cream);
    --bs-body-color: var(--lx-text);
    --bs-emphasis-color: var(--lx-ink);
    --bs-secondary-color: var(--lx-muted);
    --bs-tertiary-bg: var(--lx-sand);
    --bs-border-color: var(--lx-line);
    --bs-secondary-bg: var(--lx-sand);
    --bs-link-color: var(--lx-gold-d);

    --blog-text: var(--lx-text);
    --blog-text-muted: var(--lx-muted);
    --blog-card-bg: var(--lx-paper);
    --blog-card-border: var(--lx-line);
    --blog-callout-bg: #f6ecd6;

    background: var(--lx-cream);
    color: var(--lx-text);
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

/* ---------- Typography ---------- */
.lx h1, .lx h2, .lx .display-4, .lx .display-5, .lx .display-6 {
    font-family: var(--lx-serif);
    font-weight: 700;
    letter-spacing: .005em;
    color: var(--lx-ink);
}
.lx h2.display-6 { font-size: clamp(2rem, 3.4vw, 2.9rem); line-height: 1.12; }
.lx h3, .lx h4, .lx h5, .lx .h5 { color: var(--lx-ink); }
.lx .text-secondary, .lx .text-muted { color: var(--lx-muted) !important; }
.lx .lead { color: var(--lx-muted); }
.lx a { color: var(--lx-gold-d); }

/* gold hairline under every section heading */
.lx section > .container > .text-center > h2::after,
.lx section .col-lg-5 > h2::after {
    content: ""; display: block; width: 64px; height: 2px; margin: .9rem auto 0;
    background: linear-gradient(90deg, transparent, var(--lx-gold), transparent);
}
.lx section .col-lg-5 > h2::after { margin-left: 0; background: linear-gradient(90deg, var(--lx-gold), transparent); width: 80px; }

/* eyebrow badges */
.lx .badge.rounded-pill.fw-bold.text-uppercase {
    background: transparent !important; color: var(--lx-gold-d) !important;
    border: 1px solid var(--lx-gold); letter-spacing: .16em; font-size: .72rem; font-weight: 600 !important;
}

/* ---------- Buttons ---------- */
.lx .btn-warning, .lx .btn-dark.shadow {
    background: linear-gradient(135deg, var(--lx-gold-2), var(--lx-gold)); border: 0; color: var(--lx-ink);
    box-shadow: 0 10px 26px rgba(200, 160, 74, .35) !important; font-weight: 700;
}
.lx .btn-warning:hover { background: linear-gradient(135deg, #f3dc9c, var(--lx-gold)); color: var(--lx-ink); transform: translateY(-1px); }
.lx .btn-success { background: transparent; border: 1px solid var(--lx-gold); color: var(--lx-gold-2); box-shadow: none !important; }
.lx .btn-success:hover { background: var(--lx-gold); color: var(--lx-ink); border-color: var(--lx-gold); }
.lx .btn-outline-light { border-color: rgba(255,255,255,.35); }
.lx .btn-outline-primary { color: var(--lx-gold-d); border-color: var(--lx-gold); }
.lx .btn-outline-primary:hover { background: var(--lx-gold); color: var(--lx-ink); border-color: var(--lx-gold); }
.lx .btn-outline-secondary { color: var(--lx-muted); border-color: var(--lx-line); }

/* ---------- Hero ---------- */
.lx .restora-hero {
    background:
        linear-gradient(100deg, rgba(15,11,8,.96) 0%, rgba(15,11,8,.88) 42%, rgba(15,11,8,.55) 100%),
        url('/images/restaurant-pos/restaurant-interior.jpg') center/cover no-repeat,
        var(--lx-ink);
    padding: 6.5rem 0 7rem;
}
.lx .restora-hero::before {
    background: radial-gradient(ellipse at 85% 10%, rgba(200,160,74,.22), transparent 55%);
    opacity: 1;
}
.lx .restora-hero::after {
    content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 90px;
    background: linear-gradient(180deg, transparent, var(--lx-cream)); pointer-events: none;
}
.lx .hero-badge {
    background: rgba(200,160,74,.12); border: 1px solid rgba(232,203,133,.5); color: var(--lx-gold-2);
    letter-spacing: .06em; text-transform: uppercase; font-size: .78rem;
}
.lx .hero-badge .text-warning { color: var(--lx-gold-2) !important; }
.lx .restora-hero h1 { color: #fff; font-size: clamp(2.6rem, 5.4vw, 4.4rem); line-height: 1.04; }
.lx .gradient-text-pos {
    background: linear-gradient(120deg, #f6e3ad 0%, var(--lx-gold) 55%, #f0d58e 100%);
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; font-style: italic;
}
.lx .restora-hero .lead { color: rgba(255,255,255,.82) !important; }
.lx .stat-pill { background: rgba(255,255,255,.05); border: 1px solid rgba(232,203,133,.28); border-radius: .9rem; }
.lx .stat-pill h3 { font-family: var(--lx-serif); font-size: 2rem; color: var(--lx-gold-2) !important; }
.lx .stat-pill small { letter-spacing: .08em; text-transform: uppercase; font-size: .68rem; }
.lx .mockup-preview-window {
    background: rgba(20,14,10,.92); border: 1px solid rgba(232,203,133,.35);
    box-shadow: 0 30px 70px rgba(0,0,0,.6), 0 0 0 6px rgba(232,203,133,.06); backdrop-filter: blur(6px);
}
.lx .mockup-header { background: rgba(38,28,21,.95); border-color: rgba(232,203,133,.2); }
.lx .mockup-preview-window .btn-warning { box-shadow: none !important; }

/* ---------- Section rhythm ---------- */
.lx section { position: relative; }
.lx .bg-body-tertiary { background: var(--lx-sand) !important; }
.lx .lx-dark {
    --bs-body-color: #efe4cf; --bs-secondary-color: #b9a98f; --bs-emphasis-color: #fff;
    --bs-border-color: rgba(232,203,133,.22); --bs-body-bg: var(--lx-coal);
    background:
        radial-gradient(ellipse at 15% 0%, rgba(200,160,74,.12), transparent 50%),
        radial-gradient(ellipse at 90% 100%, rgba(122,31,43,.18), transparent 55%),
        var(--lx-coal) !important;
    color: #efe4cf;
}
.lx .lx-dark h2, .lx .lx-dark h3, .lx .lx-dark h4, .lx .lx-dark h5, .lx .lx-dark .h5 { color: #fff; }
.lx .lx-dark .text-secondary, .lx .lx-dark .lead { color: #b9a98f !important; }

/* ---------- Cards ---------- */
.lx .feature-card-modern, .lx .calculator-card, .lx .rfs-card, .lx .rfs-flow .st, .lx .rfs-kpi div, .lx .rfs-bill {
    background: var(--lx-paper); border: 1px solid var(--lx-line); box-shadow: 0 2px 0 rgba(200,160,74,.08), 0 14px 30px -18px rgba(60,40,15,.28);
}
.lx .feature-card-modern { border-radius: 1.1rem; position: relative; overflow: hidden; }
.lx .feature-card-modern::before {
    content: ""; position: absolute; inset: 0 0 auto 0; height: 3px;
    background: linear-gradient(90deg, var(--lx-gold-d), var(--lx-gold-2), var(--lx-gold-d)); opacity: .75;
}
.lx .feature-card-modern:hover { transform: translateY(-6px); border-color: var(--lx-gold); box-shadow: 0 24px 40px -18px rgba(154,118,40,.4); }
.lx .lx-dark .feature-card-modern {
    background: linear-gradient(160deg, var(--lx-coal-2), #17110c); border-color: rgba(232,203,133,.22); box-shadow: 0 18px 36px -20px rgba(0,0,0,.8);
}
.lx .lx-dark .feature-card-modern h3 { color: #fff; }
.lx .lx-dark .feature-card-modern .text-secondary { color: #b9a98f !important; }
.lx .feature-icon-box {
    background: linear-gradient(145deg, #f7ecd0, #ead6a3) !important; color: var(--lx-gold-d) !important; border: 1px solid #dcc27d; border-radius: 50%;
}
.lx .lx-dark .feature-icon-box { background: linear-gradient(145deg, #3a2c1d, #241a11) !important; color: var(--lx-gold-2) !important; border-color: rgba(232,203,133,.4); }
.lx .text-success, .lx .check-green { color: var(--lx-sage) !important; }
.lx .lx-dark .text-success { color: #86c19a !important; }

/* ---------- Showcase partial (rfs) ---------- */
.lx .rfs { --rfs-o: var(--lx-gold-d); --rfs-g: var(--lx-sage); }
.lx .rfs h2 { font-size: clamp(1.7rem, 2.6vw, 2.3rem); margin-top: 3.2rem; margin-bottom: 1.2rem; }
.lx .rfs h2::after { content: ""; display: block; width: 56px; height: 2px; margin-top: .7rem; background: linear-gradient(90deg, var(--lx-gold), transparent); }
.lx .rfs-lang { border-color: var(--lx-gold); }
.lx .rfs-lang button { color: var(--lx-text); }
.lx .rfs-lang button.on { background: var(--lx-ink); color: var(--lx-gold-2); }
.lx .rfs .blog-badge { background: var(--lx-ink); color: var(--lx-gold-2); padding: .45rem 1.1rem; border-radius: 50rem; letter-spacing: .06em; font-size: .8rem; font-weight: 600; }
.lx .rfs-flow .st::before { background: linear-gradient(135deg, var(--lx-gold-2), var(--lx-gold)); color: var(--lx-ink); }
.lx .rfs-flow .st i, .lx .rfs-card i.ic { color: var(--lx-gold-d); }
.lx .rfs-card i.ic { background: #f6ecd6; border: 1px solid #e3cf9b; }
.lx .rfs-img { border-radius: 1.1rem; box-shadow: 0 22px 44px -16px rgba(40,25,10,.5); border: 1px solid rgba(200,160,74,.35); max-height: 400px; }
.lx .rfs-cap { color: var(--lx-muted); font-style: italic; font-family: var(--lx-serif); font-size: 1.05rem; letter-spacing: .01em; }
.lx .rfs-nav { background: rgba(255,253,248,.92); backdrop-filter: blur(10px); border-color: var(--lx-line); box-shadow: 0 8px 24px -12px rgba(60,40,15,.3); }
.lx .rfs-nav a { color: var(--lx-text); }
.lx .rfs-nav a:hover { background: #f6ecd6; color: var(--lx-gold-d); }
.lx .rfs-bars .b span.f { background: linear-gradient(90deg, var(--lx-gold-d), var(--lx-gold-2)); }
.lx .rfs-phone { border-color: #2b2118; box-shadow: 0 30px 60px -20px rgba(40,25,10,.6); }
.lx .rfs-qa .accordion-item { background: var(--lx-paper); border-color: var(--lx-line); }
.lx .rfs-qa .accordion-button { background: var(--lx-paper); color: var(--lx-ink); }
.lx .rfs-qa .accordion-button:not(.collapsed) { background: #f6ecd6; color: var(--lx-gold-d); box-shadow: none; }
.lx .rfs .bg-success-subtle {
    background: linear-gradient(135deg, var(--lx-coal), #2b1d12) !important; border: 1px solid var(--lx-gold) !important;
}
.lx .rfs .bg-success-subtle h4 { color: var(--lx-gold-2) !important; font-family: var(--lx-serif); font-size: 1.9rem; }
.lx .rfs .bg-success-subtle .btn-success { background: linear-gradient(135deg, var(--lx-gold-2), var(--lx-gold)); color: var(--lx-ink); border: 0; }

/* ---------- Variations section ---------- */
.lx .vx-phone { background: #14100c; box-shadow: 0 30px 60px -20px rgba(40,25,10,.6), 0 0 0 1px rgba(232,203,133,.3); }
.lx .vx-screen { background: var(--lx-paper); color: var(--lx-text); }
.lx .vx-chip { border-color: var(--lx-line); }
.lx .vx-chip.on { background: var(--lx-ink); border-color: var(--lx-ink); color: var(--lx-gold-2); box-shadow: 0 4px 10px rgba(15,11,8,.3); }
.lx .vx-add { background: linear-gradient(135deg, var(--lx-gold-2), var(--lx-gold)); color: var(--lx-ink); }
.lx .vx-combo { font-family: var(--lx-serif); color: var(--lx-gold-d); font-size: 3.4rem; }
.lx .vx-tag { background: #f6ecd6; color: var(--lx-gold-d); border: 1px solid #e3cf9b; }
.lx .vx-paper { background: var(--lx-paper); border-color: var(--lx-line); }

/* ---------- KOT explainer ---------- */
.lx .kot-step-number { background: linear-gradient(135deg, var(--lx-gold-2), var(--lx-gold)); color: var(--lx-ink); }
.lx .kot-flow-box { background: linear-gradient(150deg, var(--lx-coal-2), var(--lx-ink)); border: 1px solid rgba(232,203,133,.35); box-shadow: 0 30px 60px -24px rgba(0,0,0,.8) !important; }
.lx .kot-flow-box .badge.bg-primary { background: var(--lx-gold-d) !important; }
.lx .kot-flow-box .text-warning { color: var(--lx-gold-2) !important; }

/* ---------- Calculator ---------- */
.lx .calculator-card { border-radius: 1.2rem; }
.lx .form-range::-webkit-slider-thumb { background: var(--lx-gold-d); }
.lx .form-range::-moz-range-thumb { background: var(--lx-gold-d); }
.lx .calculator-card .text-primary, .lx .text-primary { color: var(--lx-gold-d) !important; }
.lx .bg-success-subtle { background: #f2ecd9 !important; border-color: var(--lx-line) !important; }
.lx .calculator-card .text-success { font-family: var(--lx-serif); font-size: 2.1rem; }
.lx .calculator-card .fa-calculator, .lx .fa-trophy { color: var(--lx-gold) !important; }

/* ---------- Comparison table ---------- */
.lx .comparison-table { border-color: var(--lx-line); background: var(--lx-paper); border-radius: 1rem; }
.lx .comparison-table th { background: var(--lx-ink) !important; color: var(--lx-gold-2) !important; font-family: var(--lx-serif); font-size: 1.1rem; letter-spacing: .02em; border-color: #2b2118; }
.lx .comparison-table th.bg-warning { background: linear-gradient(135deg, var(--lx-gold-2), var(--lx-gold)) !important; color: var(--lx-ink) !important; }
.lx .comparison-table td { background: transparent; border-color: var(--lx-line); color: var(--lx-text); }
.lx .comparison-table td.bg-warning-subtle { background: #f7edd1 !important; }
.lx .comparison-table .text-warning { color: var(--lx-gold-d) !important; }
.lx .cross-red { color: #b4472f; }

/* ---------- Guides + FAQ ---------- */
.lx a.d-block.border { background: var(--lx-paper); border-color: var(--lx-line) !important; color: var(--lx-text); font-weight: 600; transition: all .25s; }
.lx a.d-block.border:hover { border-color: var(--lx-gold) !important; color: var(--lx-gold-d); transform: translateY(-3px); box-shadow: 0 14px 26px -16px rgba(154,118,40,.5); }
.lx .faq-accordion .accordion-item { background: var(--lx-paper); border: 1px solid var(--lx-line) !important; }
.lx .faq-accordion .accordion-button { background: var(--lx-paper); color: var(--lx-ink); }
.lx .faq-accordion .accordion-button:not(.collapsed) { background: #f6ecd6; color: var(--lx-gold-d); box-shadow: none; }
.lx .faq-accordion .accordion-body { background: var(--lx-paper); }

/* ---------- CTA ---------- */
.lx .cta-banner-pos {
    background:
        linear-gradient(120deg, rgba(15,11,8,.93), rgba(27,20,15,.82)),
        url('/Content/blogimage/restora-waiter-app-in-action.jpg') center/cover no-repeat;
    border: 1px solid var(--lx-gold); border-radius: 1.6rem; padding: 4.5rem 2.5rem;
    box-shadow: 0 40px 70px -30px rgba(0,0,0,.7);
}
.lx .cta-banner-pos h2 { color: #fff; font-size: clamp(2.2rem, 4vw, 3.3rem); }
.lx .cta-banner-pos h2::after { display: none; }
.lx .cta-banner-pos .badge { background: transparent !important; border: 1px solid var(--lx-gold); color: var(--lx-gold-2) !important; letter-spacing: .16em; }
.lx .cta-banner-pos .btn-dark { background: linear-gradient(135deg, var(--lx-gold-2), var(--lx-gold)); color: var(--lx-ink); }
.lx .cta-banner-pos .btn-dark .text-warning { color: var(--lx-ink) !important; }

/* ---------- Photo strip (new) ---------- */
.lx .lx-gallery { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 1rem; }
.lx .lx-gallery figure { margin: 0; position: relative; overflow: hidden; border-radius: 1.1rem; border: 1px solid rgba(232,203,133,.4); box-shadow: 0 24px 44px -20px rgba(0,0,0,.7); min-height: 260px; }
.lx .lx-gallery figure:first-child { grid-row: span 2; min-height: 540px; }
.lx .lx-gallery img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s ease; }
.lx .lx-gallery figure:hover img { transform: scale(1.06); }
.lx .lx-gallery figcaption {
    position: absolute; left: 0; right: 0; bottom: 0; padding: 2.4rem 1.2rem 1rem; color: #fff;
    background: linear-gradient(180deg, transparent, rgba(15,11,8,.88)); font-family: var(--lx-serif); font-size: 1.25rem; font-weight: 700;
}
.lx .lx-gallery figcaption small { display: block; font-family: 'Inter', sans-serif; font-size: .78rem; font-weight: 400; color: var(--lx-gold-2); letter-spacing: .06em; text-transform: uppercase; }
@media (max-width: 767px) {
    .lx .lx-gallery { grid-template-columns: 1fr; }
    .lx .lx-gallery figure:first-child { grid-row: auto; min-height: 320px; }
    .lx .restora-hero { padding: 4.5rem 0 5rem; }
}

/* ================= DARK MODE (site toggles data-bs-theme="dark") ================= */
[data-bs-theme="dark"] .lx {
    --lx-cream: #120d0a;
    --lx-sand: #19120d;
    --lx-paper: #221a13;
    --lx-line: #3a2d20;
    --lx-text: #eadfca;
    --lx-muted: #ad9d85;
    --lx-ink: #fff;
    --lx-gold-d: #e0bd6a;
    --bs-body-bg: #120d0a;
    --bs-tertiary-bg: #19120d;
    --bs-secondary-bg: #19120d;
    --bs-emphasis-color: #fff;
    --blog-callout-bg: #2e2216;
    --blog-card-bg: #221a13;
}
[data-bs-theme="dark"] .lx .bg-body-tertiary { background: #19120d !important; }
[data-bs-theme="dark"] .lx .lx-dark { --lx-ink: #fff; background:
    radial-gradient(ellipse at 15% 0%, rgba(200,160,74,.10), transparent 50%),
    radial-gradient(ellipse at 90% 100%, rgba(122,31,43,.2), transparent 55%), #0b0805 !important; }
[data-bs-theme="dark"] .lx .restora-hero::after { background: linear-gradient(180deg, transparent, #120d0a); }
[data-bs-theme="dark"] .lx .btn-warning,
[data-bs-theme="dark"] .lx .btn-dark.shadow,
[data-bs-theme="dark"] .lx .vx-add,
[data-bs-theme="dark"] .lx .comparison-table th.bg-warning,
[data-bs-theme="dark"] .lx .rfs-flow .st::before,
[data-bs-theme="dark"] .lx .kot-step-number { color: #1b140f !important; }
[data-bs-theme="dark"] .lx .btn-warning:hover { color: #1b140f; }
[data-bs-theme="dark"] .lx .feature-icon-box,
[data-bs-theme="dark"] .lx .rfs-card i.ic,
[data-bs-theme="dark"] .lx .vx-tag { background: #33261a !important; border-color: #5a4426; color: var(--lx-gold-2) !important; }
[data-bs-theme="dark"] .lx .rfs-lang button.on,
[data-bs-theme="dark"] .lx .vx-chip.on { background: var(--lx-gold); color: #1b140f; border-color: var(--lx-gold); }
[data-bs-theme="dark"] .lx .rfs .blog-badge { background: #33261a; }
[data-bs-theme="dark"] .lx .rfs-nav { background: rgba(34,26,19,.92); }
[data-bs-theme="dark"] .lx .rfs-nav a:hover,
[data-bs-theme="dark"] .lx .rfs-qa .accordion-button:not(.collapsed),
[data-bs-theme="dark"] .lx .faq-accordion .accordion-button:not(.collapsed) { background: #33261a; color: var(--lx-gold-2); }
[data-bs-theme="dark"] .lx .rfs-qa .accordion-button,
[data-bs-theme="dark"] .lx .faq-accordion .accordion-button { color: #eadfca; }
[data-bs-theme="dark"] .lx .rfs-qa .accordion-button::after,
[data-bs-theme="dark"] .lx .faq-accordion .accordion-button::after { filter: invert(1) sepia(1) saturate(2); }
[data-bs-theme="dark"] .lx .vx-screen { background: #221a13; color: #eadfca; }
[data-bs-theme="dark"] .lx .vx-paper { background: #221a13; color: #eadfca; }
[data-bs-theme="dark"] .lx .bg-success-subtle { background: #2a2014 !important; }
[data-bs-theme="dark"] .lx .comparison-table td.bg-warning-subtle { background: #2e2216 !important; }
[data-bs-theme="dark"] .lx .comparison-table td { color: #eadfca; }
[data-bs-theme="dark"] .lx .comparison-table th { background: #1a130d !important; border-color: #3a2c1c; }
[data-bs-theme="dark"] .lx .comparison-table th.bg-warning { background: linear-gradient(135deg, var(--lx-gold-2), var(--lx-gold)) !important; }
[data-bs-theme="dark"] .lx .text-success, [data-bs-theme="dark"] .lx .check-green { color: #86c19a !important; }
[data-bs-theme="dark"] .lx h1, [data-bs-theme="dark"] .lx h2, [data-bs-theme="dark"] .lx h3,
[data-bs-theme="dark"] .lx h4, [data-bs-theme="dark"] .lx h5, [data-bs-theme="dark"] .lx .h5 { color: #fff; }
[data-bs-theme="dark"] .lx .badge.rounded-pill.fw-bold.text-uppercase { color: var(--lx-gold-2) !important; }
[data-bs-theme="dark"] .lx .rfs-img, [data-bs-theme="dark"] .lx .lx-gallery figure { box-shadow: 0 22px 44px -16px rgba(0,0,0,.8); }

/* ================= ANIMATIONS ================= */
.lx-js .lx-rv { opacity: 0; transform: translateY(28px); transition: opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1); transition-delay: var(--lx-d, 0ms); will-change: opacity, transform; }
.lx-js .lx-rv.lx-in { opacity: 1; transform: none; }
.lx-js .lx-rv.lx-left { transform: translateX(-34px); }
.lx-js .lx-rv.lx-right { transform: translateX(34px); }
.lx-js .lx-rv.lx-left.lx-in, .lx-js .lx-rv.lx-right.lx-in { transform: none; }

@keyframes lxFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@keyframes lxShimmer { 0% { background-position: 0% 50%; } 100% { background-position: 200% 50%; } }
@keyframes lxPulse { 0% { box-shadow: 0 0 0 0 rgba(200,160,74,.5); } 70% { box-shadow: 0 0 0 14px rgba(200,160,74,0); } 100% { box-shadow: 0 0 0 0 rgba(200,160,74,0); } }
@keyframes lxKen { from { transform: scale(1); } to { transform: scale(1.08); } }
@keyframes lxFadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
@keyframes lxSheen { 0% { left: -60%; } 60%,100% { left: 130%; } }

.lx .restora-hero .col-lg-7 > * { animation: lxFadeUp .9s cubic-bezier(.2,.7,.2,1) both; }
.lx .restora-hero .col-lg-7 > *:nth-child(2) { animation-delay: .12s; }
.lx .restora-hero .col-lg-7 > *:nth-child(3) { animation-delay: .24s; }
.lx .restora-hero .col-lg-7 > *:nth-child(4) { animation-delay: .36s; }
.lx .restora-hero .col-lg-7 > *:nth-child(5) { animation-delay: .48s; }
.lx .mockup-preview-window { animation: lxFadeUp 1s .3s cubic-bezier(.2,.7,.2,1) both, lxFloat 6s 1.4s ease-in-out infinite; }
.lx .gradient-text-pos { background-size: 200% auto; animation: lxShimmer 5s linear infinite; }
.lx .hero-badge .fa-fire { animation: lxPulse 2s infinite; border-radius: 50%; }
.lx .restora-hero { background-size: 100% 100%, 112% auto, auto; animation: none; }

.lx .btn-warning, .lx .btn-dark.shadow { position: relative; overflow: hidden; }
.lx .btn-warning::after, .lx .btn-dark.shadow::after {
    content: ""; position: absolute; top: 0; left: -60%; width: 40%; height: 100%;
    background: linear-gradient(100deg, transparent, rgba(255,255,255,.55), transparent); transform: skewX(-20deg); animation: lxSheen 3.6s infinite;
}
.lx .feature-icon-box { transition: transform .5s ease; }
.lx .feature-card-modern:hover .feature-icon-box { transform: rotateY(180deg) scale(1.08); }
.lx .rfs-flow .st { transition: opacity .8s ease, transform .35s ease, box-shadow .35s ease; }
.lx .rfs-flow .st:hover { transform: translateY(-6px); }
.lx .rfs-card { transition: opacity .8s ease, transform .35s ease, box-shadow .35s ease; }
.lx .rfs-card:hover { transform: translateY(-5px); }
.lx .rfs-img { transition: opacity .8s ease, transform .6s ease, box-shadow .6s ease; }
.lx .rfs-img:hover { transform: scale(1.02) rotate(-.4deg); }
.lx .rfs-bars .b span.f { transform-origin: left; animation: none; }
.lx-js .rfs-bars:not(.lx-in) .b span.f { transform: scaleX(0); }
.lx-js .rfs-bars .b span.f { transition: transform 1.2s cubic-bezier(.2,.7,.2,1); }
.lx-js .rfs-bars.lx-in .b span.f { transform: scaleX(1); }
.lx .rfs-phone { animation: lxFloat 7s ease-in-out infinite; }
.lx .rfs-tkt.late { animation: lxPulse 2.4s infinite; }
.lx .comparison-table tbody tr { transition: background .25s; }
.lx .comparison-table tbody tr:hover td { background: rgba(200,160,74,.12) !important; }
.lx .cta-banner-pos { background-size: cover; animation: none; }
.lx .cta-banner-pos .btn-dark { animation: lxPulse 2.6s infinite; }

@media (prefers-reduced-motion: reduce) {
    .lx *, .lx *::before, .lx *::after { animation: none !important; transition: none !important; }
    .lx-js .lx-rv, .lx-js .rfs-bars:not(.lx-in) .b span.f { opacity: 1 !important; transform: none !important; }
}

