/* Minification failed. Returning unminified contents.
(84,15): run-time error CSS1039: Token not allowed after unary operator: '-pos-y'
(85,16): run-time error CSS1039: Token not allowed after unary operator: '-pos-x'
(86,18): run-time error CSS1039: Token not allowed after unary operator: '-height-set'
(87,17): run-time error CSS1039: Token not allowed after unary operator: '-width-set'
(95,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(96,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(97,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(98,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(99,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(100,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(101,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(102,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(103,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(104,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(105,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(106,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(107,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(108,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(109,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(110,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(111,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(112,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(113,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(114,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(115,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(116,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(117,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(118,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(119,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(123,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(124,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(129,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(132,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(133,28): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(186,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(191,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(196,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(201,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(210,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(234,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(251,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(253,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(283,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(284,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(437,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(550,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(558,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(586,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(612,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(617,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(618,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(623,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(624,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(646,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(679,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(688,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(700,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(739,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(817,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(818,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(828,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(833,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(850,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(851,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(859,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(860,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(866,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(867,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(891,27): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(897,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(898,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(941,22): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(958,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(986,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1001,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1031,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1046,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1059,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1078,30): run-time error CSS1039: Token not allowed after unary operator: '-main-container'
(1078,54): run-time error CSS1039: Token not allowed after unary operator: '-container-gutters'
(1079,33): run-time error CSS1039: Token not allowed after unary operator: '-container-gutters'
(1080,34): run-time error CSS1039: Token not allowed after unary operator: '-container-gutters'
(1089,29): run-time error CSS1039: Token not allowed after unary operator: '-main-container'
(1095,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1113,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1124,30): run-time error CSS1039: Token not allowed after unary operator: '-bs-gutter-x'
(1125,29): run-time error CSS1039: Token not allowed after unary operator: '-bs-gutter-x'
(1126,22): run-time error CSS1039: Token not allowed after unary operator: '-bs-gutter-y'
(1131,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1136,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1140,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1141,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1145,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1149,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1153,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1157,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1161,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1166,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1172,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1176,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1180,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1187,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1200,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(1201,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1202,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(1206,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(1218,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(1219,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(1227,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1235,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1243,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1247,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1251,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1255,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1259,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1267,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1304,25): run-time error CSS1039: Token not allowed after unary operator: '-bs-gutter-x'
(1314,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(1327,36): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(1335,23): run-time error CSS1039: Token not allowed after unary operator: '-bs-gutter-x'
(1348,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1349,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(1375,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(1376,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1377,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1389,31): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(1394,36): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(1395,36): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(1420,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1446,31): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(1455,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1458,30): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(1465,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1466,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1467,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(1474,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(1475,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(1483,28): run-time error CSS1039: Token not allowed after unary operator: '-error-color'
(1513,21): run-time error CSS1039: Token not allowed after unary operator: '-success-color'
(1518,21): run-time error CSS1039: Token not allowed after unary operator: '-error-color'
(1546,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1547,22): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(1551,26): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1567,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(1608,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1609,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1612,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1621,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1631,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1648,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(1652,16): run-time error CSS1039: Token not allowed after unary operator: '-pos-x'
(1654,18): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(1655,23): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(1656,21): run-time error CSS1039: Token not allowed after unary operator: '-icon-font-size'
(1657,27): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(1666,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(1685,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(1696,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1701,21): run-time error CSS1039: Token not allowed after unary operator: '-pos-x'
(1753,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1754,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1761,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1762,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1803,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(1823,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(1824,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1829,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(1830,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(1836,32): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(1837,38): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1873,43): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(1878,44): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(1888,29): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(1894,39): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(1903,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1932,36): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(1933,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(1940,35): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(1945,31): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(1953,36): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(1980,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(1981,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(1987,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(1994,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2003,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2028,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2098,63): run-time error CSS1038: Expected hex color, found '#fff6'
(2099,55): run-time error CSS1038: Expected hex color, found '#fff6'
(2102,31): run-time error CSS1038: Expected hex color, found '#0002'
(2102,52): run-time error CSS1038: Expected hex color, found '#0003'
(2115,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2278,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2281,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2282,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2283,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(2308,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2325,26): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(2336,26): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(2347,26): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(2353,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2377,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2393,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2398,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2402,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2403,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2404,31): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(2412,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2416,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2417,31): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(2425,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2426,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2430,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2434,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2435,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2439,36): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2444,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2445,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2451,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2452,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2453,36): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2457,40): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2461,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2465,36): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2469,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2470,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2474,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2478,40): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2482,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2483,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2487,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2491,40): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2495,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2499,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2503,40): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2515,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2525,17): run-time error CSS1039: Token not allowed after unary operator: '-btn-size'
(2526,18): run-time error CSS1039: Token not allowed after unary operator: '-btn-size'
(2527,23): run-time error CSS1039: Token not allowed after unary operator: '-btn-size'
(2528,21): run-time error CSS1039: Token not allowed after unary operator: '-btn-font-size'
(2529,28): run-time error CSS1039: Token not allowed after unary operator: '-icon-bg'
(2530,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2533,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(2540,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2541,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2542,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2546,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2547,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2553,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2554,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2565,21): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(2566,22): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(2567,27): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(2569,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2570,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2571,25): run-time error CSS1039: Token not allowed after unary operator: '-icon-font-size'
(2585,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2599,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2600,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2605,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2610,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2614,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2615,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2619,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2622,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2623,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2627,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2631,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2632,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2636,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2648,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2663,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2669,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2685,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2700,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(2706,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2710,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2742,27): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(2747,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2755,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2761,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2763,26): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(2771,22): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2803,30): run-time error CSS1039: Token not allowed after unary operator: '-section-title-space'
(2812,23): run-time error CSS1039: Token not allowed after unary operator: '-style-font'
(2819,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2870,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2883,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2906,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(2908,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2917,17): run-time error CSS1030: Expected identifier, found '.'
(2917,28): run-time error CSS1031: Expected selector, found ')'
(2917,28): run-time error CSS1025: Expected comma or open brace, found ')'
(2936,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2955,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(2959,30): run-time error CSS1039: Token not allowed after unary operator: '-section-title-space'
(2983,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(2993,25): run-time error CSS1039: Token not allowed after unary operator: '-section-title-space'
(2997,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(3043,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3051,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3070,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3085,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3097,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3107,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3191,22): run-time error CSS1039: Token not allowed after unary operator: '-black-color'
(3204,35): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(3206,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3216,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3226,22): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3227,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3253,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3259,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3280,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3281,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3294,17): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(3295,18): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(3296,23): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(3297,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(3298,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(3310,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3311,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3315,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(3316,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3319,21): run-time error CSS1030: Expected identifier, found '.'
(3319,35): run-time error CSS1031: Expected selector, found ')'
(3319,35): run-time error CSS1025: Expected comma or open brace, found ')'
(3323,21): run-time error CSS1030: Expected identifier, found '.'
(3323,32): run-time error CSS1031: Expected selector, found ')'
(3323,32): run-time error CSS1025: Expected comma or open brace, found ')'
(3327,21): run-time error CSS1030: Expected identifier, found '.'
(3327,36): run-time error CSS1031: Expected selector, found ')'
(3327,36): run-time error CSS1025: Expected comma or open brace, found ')'
(3331,21): run-time error CSS1030: Expected identifier, found '.'
(3331,36): run-time error CSS1031: Expected selector, found ')'
(3331,36): run-time error CSS1025: Expected comma or open brace, found ')'
(3335,21): run-time error CSS1030: Expected identifier, found '.'
(3335,32): run-time error CSS1031: Expected selector, found ')'
(3335,32): run-time error CSS1025: Expected comma or open brace, found ')'
(3339,21): run-time error CSS1030: Expected identifier, found '.'
(3339,32): run-time error CSS1031: Expected selector, found ')'
(3339,32): run-time error CSS1025: Expected comma or open brace, found ')'
(3343,21): run-time error CSS1030: Expected identifier, found '.'
(3343,34): run-time error CSS1031: Expected selector, found ')'
(3343,34): run-time error CSS1025: Expected comma or open brace, found ')'
(3408,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3451,23): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(3455,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(3459,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(3463,23): run-time error CSS1039: Token not allowed after unary operator: '-style-font'
(3508,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3512,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(3516,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(3520,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3524,28): run-time error CSS1039: Token not allowed after unary operator: '-black-color'
(3528,28): run-time error CSS1039: Token not allowed after unary operator: '-black-color2'
(3532,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(3536,58): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3537,54): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3594,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3598,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(3602,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(3606,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3610,17): run-time error CSS1039: Token not allowed after unary operator: '-light-color'
(3614,17): run-time error CSS1039: Token not allowed after unary operator: '-yellow-color'
(3618,17): run-time error CSS1039: Token not allowed after unary operator: '-success-color'
(3622,17): run-time error CSS1039: Token not allowed after unary operator: '-error-color'
(3630,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3677,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(3681,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(3685,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(3689,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(3693,28): run-time error CSS1039: Token not allowed after unary operator: '-black-color'
(3742,38): run-time error CSS1039: Token not allowed after unary operator: '-ripple-ani-duration'
(3743,30): run-time error CSS1039: Token not allowed after unary operator: '-ripple-ani-duration'
(4163,34): run-time error CSS1039: Token not allowed after unary operator: '-animation-name'
(4164,26): run-time error CSS1039: Token not allowed after unary operator: '-animation-name'
(4168,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4172,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4176,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4180,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4184,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4188,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4192,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4196,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4200,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4204,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4208,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4463,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4469,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(4484,27): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(4505,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(4516,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4540,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4541,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4552,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4553,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4606,19): run-time error CSS1039: Token not allowed after unary operator: '-widget-padding-y'
(4606,49): run-time error CSS1039: Token not allowed after unary operator: '-widget-padding-x'
(4607,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(4625,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4633,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4639,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(4649,32): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(4656,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4661,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4683,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4690,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4691,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4703,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(4711,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(4717,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(4718,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4724,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4725,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4726,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4746,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4755,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4767,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(4772,36): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4841,31): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(4848,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4862,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(4869,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(4870,27): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(4875,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4879,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4908,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(4943,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(4955,36): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(4963,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(4994,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(4998,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5002,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5003,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5007,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5013,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5025,26): run-time error CSS1039: Token not allowed after unary operator: '-widget-padding-y'
(5032,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5033,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5047,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5054,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5063,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5067,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(5076,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5094,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(5101,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5117,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5131,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5132,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5151,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5152,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5172,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5203,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(5205,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(5206,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5210,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5220,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(5224,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5250,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5251,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(5255,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(5275,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(5303,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(5309,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5345,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(5356,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5357,31): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(5393,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5401,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(5405,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5431,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5452,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5453,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5463,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5496,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5497,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5524,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5534,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5557,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5558,31): run-time error CSS1039: Token not allowed after unary operator: '-theme-font'
(5580,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5589,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5595,35): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(5598,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5604,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(5605,31): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(5620,40): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5632,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5660,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(5661,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(5681,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(5682,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(5718,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5733,25): run-time error CSS1039: Token not allowed after unary operator: '-black-color2'
(5749,70): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5749,92): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5749,153): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5749,178): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5749,239): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5749,264): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5750,66): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5750,88): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5750,149): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5750,174): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5750,235): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5750,260): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5775,31): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(5776,25): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(5805,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5809,33): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5817,25): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(5840,29): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5856,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5860,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(5905,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5912,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(5976,28): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(5985,32): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(6025,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(6026,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(6031,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6043,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6065,35): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(6106,32): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(6169,39): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(6177,33): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6227,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6231,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6235,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6247,22): run-time error CSS1030: Expected identifier, found '.'
(6247,28): run-time error CSS1031: Expected selector, found ')'
(6247,28): run-time error CSS1025: Expected comma or open brace, found ')'
(6283,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6288,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6292,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(6300,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(6306,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(6315,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6345,36): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(6365,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(6369,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6396,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6397,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6401,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(6405,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6444,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6458,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6495,33): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(6513,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(6520,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(6539,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(6543,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(6548,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6578,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6600,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6613,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6614,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6621,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(6642,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6643,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6651,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(6655,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6671,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6672,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6676,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6684,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6688,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6692,24): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(6703,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6707,17): run-time error CSS1039: Token not allowed after unary operator: '-light-color'
(6711,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6757,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6758,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6767,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6771,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6786,25): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(6807,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(6820,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6834,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6838,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6848,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6852,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6856,29): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6860,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6868,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6872,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6910,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(6974,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(6975,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7011,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7025,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7026,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(7047,35): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(7123,27): run-time error CSS1039: Token not allowed after unary operator: '-section-space-mobile'
(7165,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7166,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7172,21): run-time error CSS1039: Token not allowed after unary operator: '-black-color2'
(7181,21): run-time error CSS1039: Token not allowed after unary operator: '-black-color2'
(7194,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7199,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7212,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7240,31): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(7246,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7262,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7268,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7273,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(7347,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(7348,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(7364,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7365,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7373,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(7374,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(7388,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7389,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7390,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7417,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(7418,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(7420,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(7450,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(7461,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7473,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(7478,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7479,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7502,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(7505,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(7517,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7523,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(7528,40): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(7532,25): run-time error CSS1030: Expected identifier, found '>'
(7532,27): run-time error CSS1030: Expected identifier, found 'cite'
(7532,31): run-time error CSS1031: Expected selector, found ')'
(7532,31): run-time error CSS1025: Expected comma or open brace, found ')'
(7550,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7555,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(7560,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(7565,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7607,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7653,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(7654,27): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(7662,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7680,40): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(7695,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7747,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7760,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(7797,23): run-time error CSS1039: Token not allowed after unary operator: '-blog-space-y'
(7797,49): run-time error CSS1039: Token not allowed after unary operator: '-blog-space-x'
(7799,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(7809,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(7821,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(7833,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(7834,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(7838,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(7842,31): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(7842,63): run-time error CSS1039: Token not allowed after unary operator: '-icon-size'
(7855,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(7856,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(7864,19): run-time error CSS1039: Token not allowed after unary operator: '-blog-space-y'
(7865,32): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(7873,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(7886,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(7887,36): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(7899,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(7989,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(7996,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(7997,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8004,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8005,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8009,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8016,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8020,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8021,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8025,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8026,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8052,22): run-time error CSS1039: Token not allowed after unary operator: '-blog-space-y'
(8054,19): run-time error CSS1039: Token not allowed after unary operator: '-blog-space-y'
(8054,45): run-time error CSS1039: Token not allowed after unary operator: '-blog-space-x'
(8059,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8080,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(8084,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(8094,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(8097,26): run-time error CSS1030: Expected identifier, found '#wp-temp-form-div'
(8097,43): run-time error CSS1031: Expected selector, found ')'
(8097,43): run-time error CSS1025: Expected comma or open brace, found ')'
(8105,22): run-time error CSS1039: Token not allowed after unary operator: '-blog-space-y'
(8142,39): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(8197,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(8201,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(8249,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(8254,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(8259,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(8272,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(8273,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(8277,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(8282,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(8296,35): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(8299,21): run-time error CSS1030: Expected identifier, found '>'
(8299,58): run-time error CSS1031: Expected selector, found ')'
(8299,58): run-time error CSS1025: Expected comma or open brace, found ')'
(8374,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8415,23): run-time error CSS1039: Token not allowed after unary operator: '-style-font'
(8418,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(8437,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(8445,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(8479,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(8483,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(8489,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(8493,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(8511,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(8574,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(8814,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(8903,32): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(8970,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(8986,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(9018,19): run-time error CSS1039: Token not allowed after unary operator: '-pos-y'
(9019,20): run-time error CSS1039: Token not allowed after unary operator: '-pos-x'
(9020,22): run-time error CSS1039: Token not allowed after unary operator: '-height-set'
(9021,21): run-time error CSS1039: Token not allowed after unary operator: '-width-set'
(9024,33): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9033,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9037,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9041,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9070,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9084,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9088,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9332,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9341,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9345,25): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(9383,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9418,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9473,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(9487,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9497,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9498,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9505,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9536,36): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(9568,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9569,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9578,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9584,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(9590,27): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(9600,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9601,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9613,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9640,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9641,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9649,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9657,28): run-time error CSS1039: Token not allowed after unary operator: '-error-color'
(9678,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(9686,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9687,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9695,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9696,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9703,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(9704,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9740,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(9745,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9778,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(9793,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(9799,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(9874,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(9939,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(9940,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(9948,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(9949,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(9959,23): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(9988,25): run-time error CSS1039: Token not allowed after unary operator: '-yellow-color'
(10019,31): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(10023,25): run-time error CSS1039: Token not allowed after unary operator: '-yellow-color'
(10085,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10090,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(10096,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10100,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(10105,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10106,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10134,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10137,27): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(10142,25): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(10146,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10147,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(10159,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(10208,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10210,32): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(10211,36): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(10212,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(10218,29): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10219,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10220,40): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10262,32): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(10263,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(10267,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10268,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10280,32): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(10281,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10291,31): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(10297,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10298,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10302,32): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(10304,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(10335,32): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(10340,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10351,17): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10368,29): run-time error CSS1039: Token not allowed after unary operator: '-yellow-color'
(10401,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10412,17): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10413,17): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10414,40): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10415,29): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10420,44): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(10467,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10479,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10558,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10577,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(10581,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10582,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10587,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10588,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10595,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(10601,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(10609,32): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(10610,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10613,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(10617,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(10623,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10638,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10639,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10640,21): run-time error CSS1039: Token not allowed after unary operator: '-thumb'
(10641,34): run-time error CSS1039: Token not allowed after unary operator: '-thumb'
(10652,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10654,22): run-time error CSS1039: Token not allowed after unary operator: '-thumb'
(10655,21): run-time error CSS1039: Token not allowed after unary operator: '-thumb'
(10656,23): run-time error CSS1039: Token not allowed after unary operator: '-gap'
(10669,24): run-time error CSS1039: Token not allowed after unary operator: '-pos-y'
(10669,39): run-time error CSS1039: Token not allowed after unary operator: '-gap'
(10670,25): run-time error CSS1039: Token not allowed after unary operator: '-pos-x'
(10670,40): run-time error CSS1039: Token not allowed after unary operator: '-gap'
(10671,26): run-time error CSS1039: Token not allowed after unary operator: '-width-set'
(10671,45): run-time error CSS1039: Token not allowed after unary operator: '-gap'
(10672,27): run-time error CSS1039: Token not allowed after unary operator: '-height-set'
(10672,47): run-time error CSS1039: Token not allowed after unary operator: '-gap'
(10673,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10680,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(10721,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10782,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(10783,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(10802,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(10819,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(10826,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(10839,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10845,25): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(10866,35): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(10882,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(10883,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(10887,40): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(10918,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(10923,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(10951,23): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(10954,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(10965,21): run-time error CSS1039: Token not allowed after unary operator: '-gray-color'
(11003,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(11031,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11032,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11033,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(11039,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11040,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11050,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11053,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(11059,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11071,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11072,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(11092,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11106,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11107,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(11120,32): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(11130,32): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(11132,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11141,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11170,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(11179,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(11208,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(11273,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11278,35): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(11297,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11337,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11383,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11384,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11385,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11396,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11397,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11436,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(11437,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11466,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11476,27): run-time error CSS1039: Token not allowed after unary operator: '-body-font'
(11477,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(11485,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11505,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(11517,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11518,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(11523,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(11528,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11537,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11541,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11545,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11549,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11553,25): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11616,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11632,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(11637,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11665,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11814,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(11841,25): run-time error CSS1039: Token not allowed after unary operator: '-bs-gutter-x'
(11852,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(11868,23): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(11909,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11913,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(11917,25): run-time error CSS1039: Token not allowed after unary operator: '-bs-gutter-x'
(11939,25): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(12011,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12020,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(12021,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(12029,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(12035,39): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(12040,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(12123,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12132,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12145,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(12154,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(12160,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(12164,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(12168,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12179,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(12180,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(12189,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12210,36): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(12211,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(12238,39): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(12248,36): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(12267,39): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(12298,32): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(12299,21): run-time error CSS1039: Token not allowed after unary operator: '-light-color'
(12303,25): run-time error CSS1039: Token not allowed after unary operator: '-light-color'
(12307,25): run-time error CSS1039: Token not allowed after unary operator: '-light-color'
(12311,25): run-time error CSS1039: Token not allowed after unary operator: '-light-color'
(12315,25): run-time error CSS1039: Token not allowed after unary operator: '-light-color'
(12319,25): run-time error CSS1039: Token not allowed after unary operator: '-light-color'
(12323,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12327,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12337,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12342,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(12364,24): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(12365,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(12372,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(12384,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12419,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(12427,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(12461,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(12462,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12481,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12489,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12493,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12528,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(12573,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12581,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12670,32): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(12694,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12695,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(12710,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(12833,32): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(12834,35): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(13006,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13019,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13076,32): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(13093,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(13144,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13145,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(13195,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(13196,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(13199,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(13256,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13260,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(13323,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(13333,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13334,29): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(13341,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(13345,17): run-time error CSS1039: Token not allowed after unary operator: '-light-color'
(13380,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13405,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13412,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13446,13): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13447,36): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(13448,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13452,40): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13453,29): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(13534,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13556,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13557,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(13562,21): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(13566,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13570,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(13578,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(13608,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13625,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(13626,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(13632,32): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(13639,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13676,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13681,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13705,32): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(13760,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(13773,24): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13837,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(13844,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13856,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(13858,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(13877,28): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(13903,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13904,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(13930,35): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(13982,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(13999,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14000,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(14018,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(14040,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14058,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14113,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(14181,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14188,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(14190,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(14197,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(14199,35): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(14243,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(14250,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14259,67): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14259,87): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14260,61): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14260,81): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14288,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14375,63): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14375,83): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14376,57): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14376,77): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14468,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(14481,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14514,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14668,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(14751,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(14765,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(14767,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(14768,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(14788,31): run-time error CSS1039: Token not allowed after unary operator: '-icon-font'
(14789,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(14817,43): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(14885,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(14894,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(14939,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(14965,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color2'
(14997,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15001,21): run-time error CSS1039: Token not allowed after unary operator: '-light-color'
(15005,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(15017,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(15032,25): run-time error CSS1039: Token not allowed after unary operator: '-space'
(15052,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(15057,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(15120,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(15136,35): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(15165,28): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(15173,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(15202,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(15203,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15215,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15216,32): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(15230,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(15235,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15240,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(15316,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(15323,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15329,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(15342,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15350,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(15396,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15445,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15451,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15457,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15462,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15496,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(15497,25): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15533,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(15536,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(15540,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(15551,62): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(15552,58): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(15579,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(15586,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15595,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(15653,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(15717,28): run-time error CSS1039: Token not allowed after unary operator: '-lazy-bg'
(15846,71): run-time error CSS1039: Token not allowed after unary operator: '-ivm-gold'
(15920,55): run-time error CSS1039: Token not allowed after unary operator: '-ivm-gold'
(15954,55): run-time error CSS1039: Token not allowed after unary operator: '-ivm-gold'
(16042,41): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(16045,55): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(16059,44): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(16262,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16266,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(16278,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(16323,36): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(16380,28): run-time error CSS1039: Token not allowed after unary operator: '-th-border-color'
(16437,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16449,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16474,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16475,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16479,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(16497,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(16560,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16562,32): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(16563,35): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(16579,32): run-time error CSS1039: Token not allowed after unary operator: '-body-bg'
(16586,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(16603,36): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(16604,39): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(16622,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(16623,32): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(16645,36): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(16653,24): run-time error CSS1039: Token not allowed after unary operator: '-space'
(16657,25): run-time error CSS1039: Token not allowed after unary operator: '-space'
(16661,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(16675,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(16686,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16692,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16701,28): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(16853,35): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(16892,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(16899,32): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(16928,35): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(16952,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(16957,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(16986,28): run-time error CSS1039: Token not allowed after unary operator: '-smoke-color'
(17045,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(17051,35): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(17133,21): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(17137,21): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(17193,23): run-time error CSS1039: Token not allowed after unary operator: '-headerHeight'
(17789,23): run-time error CSS1039: Token not allowed after unary operator: '-section-space'
(17794,26): run-time error CSS1039: Token not allowed after unary operator: '-section-space'
(17799,28): run-time error CSS1039: Token not allowed after unary operator: '-section-space'
(17804,31): run-time error CSS1039: Token not allowed after unary operator: '-section-space'
(17809,28): run-time error CSS1039: Token not allowed after unary operator: '-section-space'
(17814,31): run-time error CSS1039: Token not allowed after unary operator: '-section-space'
(17821,27): run-time error CSS1039: Token not allowed after unary operator: '-section-space-mobile'
(17826,30): run-time error CSS1039: Token not allowed after unary operator: '-section-space-mobile'
(17831,32): run-time error CSS1039: Token not allowed after unary operator: '-section-space-mobile'
(17836,35): run-time error CSS1039: Token not allowed after unary operator: '-section-space-mobile'
(17861,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(17862,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(17890,17): run-time error CSS1039: Token not allowed after unary operator: '-bev-gold'
(17896,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(17918,17): run-time error CSS1039: Token not allowed after unary operator: '-bev-ink'
(17975,17): run-time error CSS1039: Token not allowed after unary operator: '-bev-gold'
(17994,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(18000,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18061,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18099,62): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(18101,50): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(18122,24): run-time error CSS1039: Token not allowed after unary operator: '-tst-accent'
(18130,63): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(18132,27): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(18135,22): run-time error CSS1039: Token not allowed after unary operator: '-tst-accent'
(18139,48): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(18168,58): run-time error CSS1039: Token not allowed after unary operator: '-tst-accent'
(18176,22): run-time error CSS1039: Token not allowed after unary operator: '-tst-accent'
(18186,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(18203,22): run-time error CSS1039: Token not allowed after unary operator: '-tst-accent'
(18208,62): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(18222,36): run-time error CSS1039: Token not allowed after unary operator: '-tst-accent'
(18266,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18329,23): run-time error CSS1039: Token not allowed after unary operator: '-style-font'
(18332,17): run-time error CSS1039: Token not allowed after unary operator: '-rvh-gold'
(18339,22): run-time error CSS1039: Token not allowed after unary operator: '-rvh-gold'
(18354,21): run-time error CSS1039: Token not allowed after unary operator: '-rvh-gold'
(18391,46): run-time error CSS1039: Token not allowed after unary operator: '-rvh-gold'
(18436,34): run-time error CSS1039: Token not allowed after unary operator: '-rvh-gold'
(18503,30): run-time error CSS1039: Token not allowed after unary operator: '-rvh-gold'
(18504,32): run-time error CSS1039: Token not allowed after unary operator: '-rvh-gold'
(18535,26): run-time error CSS1039: Token not allowed after unary operator: '-rvh-gold'
(18682,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18683,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18684,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18685,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18686,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18700,22): run-time error CSS1039: Token not allowed after unary operator: '-sched-ink'
(18711,28): run-time error CSS1039: Token not allowed after unary operator: '-sched-ink'
(18759,17): run-time error CSS1039: Token not allowed after unary operator: '-sched-gold'
(18785,46): run-time error CSS1039: Token not allowed after unary operator: '-sched-ink-2'
(18785,69): run-time error CSS1039: Token not allowed after unary operator: '-sched-ink'
(18786,33): run-time error CSS1039: Token not allowed after unary operator: '-sched-line'
(18794,49): run-time error CSS1039: Token not allowed after unary operator: '-sched-gold'
(18805,35): run-time error CSS1039: Token not allowed after unary operator: '-sched-line'
(18818,34): run-time error CSS1039: Token not allowed after unary operator: '-sched-gold'
(18824,17): run-time error CSS1039: Token not allowed after unary operator: '-sched-gold'
(18892,36): run-time error CSS1039: Token not allowed after unary operator: '-sched-line'
(18915,17): run-time error CSS1039: Token not allowed after unary operator: '-sched-muted'
(18923,17): run-time error CSS1039: Token not allowed after unary operator: '-sched-ink'
(18924,22): run-time error CSS1039: Token not allowed after unary operator: '-sched-gold'
(18949,17): run-time error CSS1039: Token not allowed after unary operator: '-sched-gold'
(18960,32): run-time error CSS1039: Token not allowed after unary operator: '-sched-line'
(18968,17): run-time error CSS1039: Token not allowed after unary operator: '-sched-muted'
(18972,21): run-time error CSS1039: Token not allowed after unary operator: '-sched-gold'
(18994,36): run-time error CSS1039: Token not allowed after unary operator: '-sched-line'
(19060,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19098,32): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19099,33): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19111,35): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19112,34): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19146,58): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19171,23): run-time error CSS1039: Token not allowed after unary operator: '-style-font'
(19173,17): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19181,22): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19199,26): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19216,50): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19230,17): run-time error CSS1039: Token not allowed after unary operator: '-body-color'
(19242,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(19248,27): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(19252,21): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19291,17): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19299,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(19309,21): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19328,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(19344,21): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(19350,30): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19351,32): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19367,58): run-time error CSS1039: Token not allowed after unary operator: '-chef-gold'
(19410,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19411,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19412,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19413,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19414,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19426,23): run-time error CSS1039: Token not allowed after unary operator: '-style-font'
(19429,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19434,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-ink'
(19441,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-muted'
(19454,46): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19464,76): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19465,62): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19503,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-muted'
(19506,32): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19524,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-ink'
(19532,46): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19535,28): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19536,21): run-time error CSS1039: Token not allowed after unary operator: '-wl-wine'
(19541,50): run-time error CSS1039: Token not allowed after unary operator: '-wl-wine'
(19547,43): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold-2'
(19551,46): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold-2'
(19551,64): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19560,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-muted'
(19565,34): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19593,46): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold-2'
(19593,64): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19600,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(19602,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-wine'
(19611,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19644,50): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold-2'
(19644,68): run-time error CSS1039: Token not allowed after unary operator: '-wl-wine'
(19673,34): run-time error CSS1039: Token not allowed after unary operator: '-wl-wine'
(19679,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(19682,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-ink'
(19705,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-muted'
(19709,32): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold'
(19715,17): run-time error CSS1039: Token not allowed after unary operator: '-wl-wine'
(19757,21): run-time error CSS1039: Token not allowed after unary operator: '-wl-wine'
(19772,46): run-time error CSS1039: Token not allowed after unary operator: '-wl-wine'
(19777,34): run-time error CSS1039: Token not allowed after unary operator: '-wl-gold-2'
(19780,25): run-time error CSS1039: Token not allowed after unary operator: '-wl-muted'
(19949,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(19975,53): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(19999,25): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20003,29): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20061,55): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20088,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20150,8): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20150,50): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20150,71): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20150,90): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20180,23): run-time error CSS1039: Token not allowed after unary operator: '-style-font'
(20182,17): run-time error CSS1039: Token not allowed after unary operator: '-mf-accent'
(20204,17): run-time error CSS1039: Token not allowed after unary operator: '-mf-muted'
(20208,34): run-time error CSS1039: Token not allowed after unary operator: '-mf-accent'
(20226,17): run-time error CSS1039: Token not allowed after unary operator: '-mf-ink'
(20243,17): run-time error CSS1039: Token not allowed after unary operator: '-mf-accent'
(20257,46): run-time error CSS1039: Token not allowed after unary operator: '-mf-accent'
(20288,17): run-time error CSS1039: Token not allowed after unary operator: '-mf-muted'
(20291,37): run-time error CSS1039: Token not allowed after unary operator: '-mf-green'
(20303,17): run-time error CSS1039: Token not allowed after unary operator: '-mf-ink'
(20323,70): run-time error CSS1039: Token not allowed after unary operator: '-mf-green'
(20326,50): run-time error CSS1039: Token not allowed after unary operator: '-mf-green'
(20398,17): run-time error CSS1039: Token not allowed after unary operator: '-mf-muted'
(20403,34): run-time error CSS1039: Token not allowed after unary operator: '-mf-accent'
(20467,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(20472,52): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20472,88): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20474,58): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20525,48): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20548,58): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20561,132): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20562,120): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20564,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(20571,44): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20583,74): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20586,36): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(20595,142): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20603,32): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(20613,77): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20677,74): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20688,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(20695,58): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20701,31): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20731,60): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20736,23): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(20743,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20752,58): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20759,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20775,58): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20821,40): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20825,16): run-time error CSS1030: Expected identifier, found ' '
(20825,17): run-time error CSS1031: Expected selector, found '92dvh'
(20825,17): run-time error CSS1025: Expected comma or open brace, found '92dvh'
(20829,32): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20830,35): run-time error CSS1039: Token not allowed after unary operator: '-title-font'
(20844,30): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20849,42): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20852,50): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20857,58): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20870,80): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20873,36): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20881,58): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20888,125): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(20937,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20938,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20939,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20940,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20941,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20942,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20964,38): run-time error CSS1039: Token not allowed after unary operator: '-ivc-ink'
(20964,57): run-time error CSS1039: Token not allowed after unary operator: '-ivc-ink-2'
(20979,17): run-time error CSS1039: Token not allowed after unary operator: '-ivc-gold'
(20981,80): run-time error CSS1039: Token not allowed after unary operator: '-ivc-accent'
(20991,46): run-time error CSS1039: Token not allowed after unary operator: '-ivc-accent'
(20994,94): run-time error CSS1039: Token not allowed after unary operator: '-ivc-gold'
(20996,35): run-time error CSS1039: Token not allowed after unary operator: '-ivc-accent'
(21003,40): run-time error CSS1039: Token not allowed after unary operator: '-ivc-accent'
(21003,73): run-time error CSS1039: Token not allowed after unary operator: '-ivc-accent'
(21011,28): run-time error CSS1039: Token not allowed after unary operator: '-ivc-gold'
(21015,33): run-time error CSS1039: Token not allowed after unary operator: '-ivc-accent'
(21016,31): run-time error CSS1039: Token not allowed after unary operator: '-ivc-ink'
(21020,44): run-time error CSS1039: Token not allowed after unary operator: '-ivc-accent'
(21025,30): run-time error CSS1039: Token not allowed after unary operator: '-ivc-line'
(21028,34): run-time error CSS1039: Token not allowed after unary operator: '-ivc-ink'
(21036,24): run-time error CSS1039: Token not allowed after unary operator: '-ivc-accent'
(21041,60): run-time error CSS1039: Token not allowed after unary operator: '-ivc-accent'
(21050,24): run-time error CSS1039: Token not allowed after unary operator: '-ivc-danger'
(21055,59): run-time error CSS1039: Token not allowed after unary operator: '-ivc-danger'
(21056,39): run-time error CSS1039: Token not allowed after unary operator: '-ivc-danger'
(21191,28): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(21193,22): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(21194,17): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(21204,22): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(21205,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(21215,22): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(21216,17): run-time error CSS1039: Token not allowed after unary operator: '-white-color'
(21220,29): run-time error CSS1039: Token not allowed after unary operator: '-title-color'
(21260,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21261,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21262,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21263,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21264,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21268,43): run-time error CSS1039: Token not allowed after unary operator: '-asx-cream'
(21275,17): run-time error CSS1039: Token not allowed after unary operator: '-asx-accent'
(21278,101): run-time error CSS1039: Token not allowed after unary operator: '-asx-accent'
(21279,26): run-time error CSS1039: Token not allowed after unary operator: '-asx-ink'
(21289,66): run-time error CSS1039: Token not allowed after unary operator: '-asx-line'
(21296,45): run-time error CSS1039: Token not allowed after unary operator: '-asx-accent'
(21296,64): run-time error CSS1039: Token not allowed after unary operator: '-asx-gold'
(21304,63): run-time error CSS1039: Token not allowed after unary operator: '-asx-cream'
(21305,28): run-time error CSS1039: Token not allowed after unary operator: '-asx-line'
(21310,31): run-time error CSS1039: Token not allowed after unary operator: '-asx-ink'
(21312,47): run-time error CSS1039: Token not allowed after unary operator: '-asx-accent'
(21323,28): run-time error CSS1039: Token not allowed after unary operator: '-asx-accent'
(21329,67): run-time error CSS1039: Token not allowed after unary operator: '-asx-gold'
(21336,75): run-time error CSS1039: Token not allowed after unary operator: '-asx-accent'
(21337,33): run-time error CSS1039: Token not allowed after unary operator: '-asx-ink'
(21340,31): run-time error CSS1039: Token not allowed after unary operator: '-asx-ink'
(21342,39): run-time error CSS1039: Token not allowed after unary operator: '-asx-gold'
(21349,140): run-time error CSS1039: Token not allowed after unary operator: '-asx-accent'
(21349,159): run-time error CSS1039: Token not allowed after unary operator: '-asx-gold'
(21350,108): run-time error CSS1039: Token not allowed after unary operator: '-asx-ink'
(21352,69): run-time error CSS1039: Token not allowed after unary operator: '-asx-accent'
(21367,43): run-time error CSS1039: Token not allowed after unary operator: '-asx-gold'
(21406,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(21418,22): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(21438,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(21443,17): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(21448,28): run-time error CSS1039: Token not allowed after unary operator: '-theme-color'
(21577,54): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21588,54): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21637,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21638,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21741,24): run-time error CSS1039: Token not allowed after unary operator: '-ivspice-gold'
(21746,29): run-time error CSS1039: Token not allowed after unary operator: '-ivspice-ink'
(22105,24): run-time error CSS1039: Token not allowed after unary operator: '-ivspice-gold'
(22111,29): run-time error CSS1039: Token not allowed after unary operator: '-ivspice-ink'
 */
@charset "UTF-8";
/*

*/
/*=================================
    CSS Index Here
==================================*/
/*

01. Theme Base
    1.1. Mixin
    1.2. Function
    1.3. Variable
    1.4. Typography
    1.5. Extend
    1.7. Wordpress Default
02. Reset
    2.1. Container
    2.2. Grid
    2.3. Input
    2.4. Slider
    2.5. Mobile Menu
03. Utilities
    3.1. Preloader
    3.2. Buttons
    3.3. Titles
    3.4. Common
    3.6. Font
    3.7. Background
    3.8. Text Color
    3.9. Overlay
    3.10. Animation
    
04. Template Style
    4.1. Widget
    4.2. Header
    4.3. Footer
    4.4. Breadcumb
    4.5. Pagination
    4.6. Blog
    4.7. Comments
    4.8. Hero Area
    4.9. Error    
    4.00. Popup Search
    4.00. Popup Side Menu
    4.00. Wocommerce
    4.00. Products
    4.00. Cart
    4.00. Checkout
    4.00. Wishlist
    4.00. Contact
    4.00. About
    4.00. Team
    4.00. Testimonial
    4.00. Counter
    4.00. Blog
    4.00. Brand
    4.00. Simple Sections
    4.00. Why
    4.00. Faq
    4.00. Feature
    4.00. Gallery
    4.00. Category
    4.00. CTA
    4.00. Tab Menu
    4.00. Menu
    4.00. Schedule
    4.00. Service

05. Spacing

*/
/*=================================
    CSS Index End
==================================*/
/*=================================
   01. Theme Base
==================================*/
/*------------------- 1.1. Mixin -------------------*/
@use "sass:math";

.indicator {
    position: absolute;
    top: var(--pos-y);
    left: var(--pos-x);
    height: var(--height-set);
    width: var(--width-set);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}

/*------------------- 1.2. Function -------------------*/
/*------------------- 1.3. Variable-------------------*/
:root {
    --theme-color: #FA8507;
    --title-color: #1F1F1F;
    --body-color: #5C6574;
    --smoke-color: #F8F8F8;
    --smoke-color2: #F4EFE3;
    --black-color: #000000;
    --black-color2: #101018;
    --gray-color: #bdbdbd;
    --white-color: #ffffff;
    --body-bg: #ffffff;
    --light-color: #8E97A6;
    --yellow-color: #FFB539;
    --success-color: #28a745;
    --error-color: #dc3545;
    --th-border-color: #D8DDE1;
    --title-font: "ZCOOL XiaoWei", sans-serif;
    --body-font: "Open Sans", sans-serif;
    --style-font: "Great Vibes", cursive;
    --icon-font: "Font Awesome 6 Pro";
    --main-container: 1290px;
    --container-gutters: 30px;
    --section-space: 120px;
    --section-space-mobile: 80px;
    --section-title-space: 60px;
    --ripple-ani-duration: 5s;
}

.theme-golden {
    --theme-color: #C59D5F;
    --body-bg: #F4EFE3;
}

/*------------------- 1.5. Typography -------------------*/
body {
    font-family: var(--body-font);
    font-size: 16px;
    font-weight: 400;
    color: var(--body-color);
    background-color: var(--body-bg);
    line-height: 26px;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    cursor: url("../img/theme-img/cursor.png"), auto;
}

iframe {
    border: none;
    width: 100%;
}

.slick-slide:focus,
button:focus,
a:focus,
a:active,
input,
input:hover,
input:focus,
input:active,
textarea,
textarea:hover,
textarea:focus,
textarea:active {
    outline: none;
}

    input:focus {
        outline: none;
        box-shadow: none;
    }

img:not([draggable]),
embed,
object,
video {
    max-width: 100%;
    height: auto;
}

ul {
    list-style-type: disc;
}

ol {
    list-style-type: decimal;
}

table {
    margin: 0 0 1.5em;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid var(--th-border-color);
}

th {
    font-weight: 500;
    color: var(--title-color);
}

td,
th {
    border: 1px solid var(--th-border-color);
    padding: 9px 12px;
}

a {
    color: var(--theme-color);
    text-decoration: none;
    outline: 0;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    cursor: url("../img/theme-img/pointer.png"), auto !important;
}

    a:hover {
        color: var(--title-color);
    }

    a:active, a:focus, a:hover, a:visited {
        text-decoration: none;
        outline: 0;
    }

button {
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    cursor: url("../img/theme-img/pointer.png"), auto !important;
}

img {
    border: none;
    max-width: 100%;
}

ins {
    text-decoration: none;
}

pre {
    font-family: var(--body-font);
    background: #f5f5f5;
    color: #666;
    font-size: 14px;
    margin: 20px 0;
    overflow: auto;
    padding: 20px;
    white-space: pre-wrap;
    word-wrap: break-word;
}

span.ajax-loader:empty,
p:empty {
    display: none;
}

p {
    font-family: var(--body-font);
    margin: 0 0 18px 0;
    color: var(--body-color);
    line-height: 1.625;
}

    h1 a,
    h2 a,
    h3 a,
    h4 a,
    h5 a,
    h6 a,
    p a,
    span a {
        font-size: inherit;
        font-family: inherit;
        font-weight: inherit;
        line-height: inherit;
    }

.h1,
h1,
.h2,
h2,
.h3,
h3,
.h4,
h4,
.h5,
h5,
.h6,
h6 {
    font-family: var(--title-font);
    color: var(--title-color);
    text-transform: none;
    font-weight: 400;
    line-height: 1.4;
    margin: 0 0 15px 0;
}

.h1,
h1 {
    font-size: 74px;
    line-height: 1.135;
}

.h2,
h2 {
    font-size: 48px;
    line-height: 1.208;
}

.h3,
h3 {
    font-size: 36px;
    line-height: 1.278;
}

.h4,
h4 {
    font-size: 30px;
    line-height: 1.333;
}

.h5,
h5 {
    font-size: 24px;
    line-height: 1.417;
}

.h6,
h6 {
    font-size: 20px;
    line-height: 1.5;
}

/* Large devices */
@media (max-width: 1199px) {
    .h1,
    h1 {
        font-size: 44px;
        line-height: 1.3;
    }

    .h2,
    h2 {
        font-size: 36px;
        line-height: 1.3;
    }

    .h3,
    h3 {
        font-size: 30px;
    }

    .h4,
    h4 {
        font-size: 24px;
    }

    .h5,
    h5 {
        font-size: 20px;
    }

    .h6,
    h6 {
        font-size: 16px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .h1,
    h1 {
        font-size: 40px;
    }

    .h2,
    h2 {
        font-size: 34px;
        line-height: 1.3;
    }

    .h3,
    h3 {
        font-size: 26px;
    }

    .h4,
    h4 {
        font-size: 22px;
    }

    .h5,
    h5 {
        font-size: 18px;
    }

    .h6,
    h6 {
        font-size: 16px;
    }
}

/* Extra small devices */
@media (max-width: 575px) {
    .h1,
    h1 {
        font-size: 34px;
        line-height: 1.35;
    }

    .h2,
    h2 {
        font-size: 28px;
    }
}

/* Extra small devices */
@media (max-width: 375px) {
    .h1,
    h1 {
        font-size: 32px;
    }
}

/*------------------- 1.6. Extend -------------------*/
/*------------------- 1.7. Wordpress Default -------------------*/
p.has-drop-cap {
    margin-bottom: 20px;
}

.page--item p:last-child .alignright {
    clear: right;
}

.blog-title,
.pagi-title,
.breadcumb-title {
    word-break: break-word;
}

.blocks-gallery-caption,
.wp-block-embed figcaption,
.wp-block-image figcaption {
    color: var(--body-color);
}

.bypostauthor,
.gallery-caption {
    display: block;
}

.page-links,
.clearfix {
    clear: both;
}

.page--item {
    margin-bottom: 30px;
}

    .page--item p {
        line-height: 1.8;
    }

.content-none-search {
    margin-top: 30px;
}

.wp-block-button.aligncenter {
    text-align: center;
}

.alignleft {
    display: inline;
    float: left;
    margin-bottom: 10px;
    margin-right: 1.5em;
}

.alignright {
    display: inline;
    float: right;
    margin-bottom: 10px;
    margin-left: 1.5em;
    margin-right: 1em;
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
}

.gallery {
    margin-bottom: 1.5em;
    width: 100%;
}

.gallery-item {
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 100%;
    padding: 0 5px;
}

.wp-block-columns {
    margin-bottom: 1em;
}

figure.gallery-item {
    margin-bottom: 10px;
    display: inline-block;
}

figure.wp-block-gallery {
    margin-bottom: 14px;
}

.gallery-columns-2 .gallery-item {
    max-width: 50%;
}

.gallery-columns-3 .gallery-item {
    max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
    max-width: 25%;
}

.gallery-columns-5 .gallery-item {
    max-width: 20%;
}

.gallery-columns-6 .gallery-item {
    max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
    max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
    max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
    max-width: 11.11%;
}

.gallery-caption {
    display: block;
    font-size: 12px;
    color: var(--body-color);
    line-height: 1.5;
    padding: 0.5em 0;
}

.wp-block-cover p:not(.has-text-color),
.wp-block-cover-image-text,
.wp-block-cover-text {
    color: var(--white-color);
}

.wp-block-cover {
    margin-bottom: 15px;
}

.wp-caption-text {
    text-align: center;
}

.wp-caption {
    margin-bottom: 1.5em;
    max-width: 100%;
}

    .wp-caption .wp-caption-text {
        margin: 0.5em 0;
        font-size: 14px;
    }

.wp-block-media-text,
.wp-block-media-text.alignwide,
figure.wp-block-gallery {
    margin-bottom: 30px;
}

    .wp-block-media-text.alignwide {
        background-color: var(--smoke-color);
    }

.editor-styles-wrapper .has-large-font-size,
.has-large-font-size {
    line-height: 1.4;
}

.wp-block-latest-comments a {
    color: inherit;
}

.wp-block-button {
    margin-bottom: 10px;
}

    .wp-block-button:last-child {
        margin-bottom: 0;
    }

    .wp-block-button .wp-block-button__link {
        color: #fff;
    }

        .wp-block-button .wp-block-button__link:hover {
            color: #fff;
            background-color: var(--theme-color);
        }

    .wp-block-button.is-style-outline .wp-block-button__link {
        background-color: transparent;
        border-color: var(--title-color);
        color: var(--title-color);
    }

        .wp-block-button.is-style-outline .wp-block-button__link:hover {
            color: #fff;
            background-color: var(--theme-color);
            border-color: var(--theme-color);
        }

    .wp-block-button.is-style-squared .wp-block-button__link {
        border-radius: 0;
    }

ol.wp-block-latest-comments li {
    margin: 15px 0;
}

ul.wp-block-latest-posts {
    padding: 0;
    margin: 0;
    margin-bottom: 15px;
}

    ul.wp-block-latest-posts a {
        color: inherit;
    }

        ul.wp-block-latest-posts a:hover {
            color: var(--theme-color);
        }

    ul.wp-block-latest-posts li {
        margin: 15px 0;
    }

.wp-block-search__inside-wrapper {
    position: relative;
}

.wp-block-search {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

    .wp-block-search .wp-block-search__input {
        width: 100%;
        max-width: 100%;
        border: 1px solid transparent;
        padding-left: 25px;
        border: 1px solid transparent;
        box-shadow: 0px 13px 25px rgba(0, 0, 0, 0.04);
        border-radius: 20px;
    }

        .wp-block-search .wp-block-search__input:focus {
            border-color: var(--theme-color);
        }

    .wp-block-search .wp-block-search__button {
        margin: 0;
        min-width: 110px;
        height: 100%;
        border: none;
        color: #fff;
        background-color: var(--theme-color);
        border-radius: 20px;
        position: absolute;
        top: 0;
        right: 0;
    }

        .wp-block-search .wp-block-search__button.has-icon {
            min-width: 56px;
        }

        .wp-block-search .wp-block-search__button:hover {
            background-color: var(--title-color);
        }

    .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper {
        padding: 0;
        border: none;
    }

        .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input {
            padding: 0 8px 0 25px;
        }

ul.wp-block-rss a {
    color: inherit;
}

.wp-block-group.has-background {
    padding: 15px 15px 1px;
    margin-bottom: 30px;
}

.wp-block-table td,
.wp-block-table th {
    border-color: rgba(0, 0, 0, 0.1);
}

.wp-block-table.is-style-stripes {
    border: 1px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
}

.wp-block-table.is-style-stripes {
    border: 0;
    margin-bottom: 30px;
    border-bottom: 0;
}

    .wp-block-table.is-style-stripes th,
    .wp-block-table.is-style-stripes td {
        border-color: var(--th-border-color);
    }

.logged-in .sticky-wrapper.sticky,
.logged-in .preloader .th-btn {
    top: 32px;
}

@media (max-width: 782px) {
    .logged-in .sticky-wrapper.sticky,
    .logged-in .preloader .th-btn {
        top: 46px;
    }
}

@media (max-width: 600px) {
    .logged-in .sticky-wrapper.sticky,
    .logged-in .preloader .th-btn {
        top: 0;
    }
}

.post-password-form {
    margin-bottom: 30px;
    margin-top: 20px;
}

    .post-password-form p {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        position: relative;
        gap: 15px;
        /* Extra small devices */
    }

@media (max-width: 575px) {
    .post-password-form p {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.post-password-form label {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-flex: 1;
    -webkit-flex: auto;
    -ms-flex: auto;
    flex: auto;
    margin-bottom: 0;
    line-height: 1;
    margin-top: 0;
    gap: 15px;
    /* Extra small devices */
}

@media (max-width: 575px) {
    .post-password-form label {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.post-password-form input {
    width: 100%;
    border: none;
    height: 55px;
    padding-left: 25px;
    color: var(--body-color);
    border: 1px solid var(--th-border-color);
}

    .post-password-form input[type="submit"] {
        padding-left: 0;
        padding-right: 0;
        margin: 0;
        width: 140px;
        border: none;
        color: #fff;
        background-color: var(--theme-color);
        text-align: center;
    }

        .post-password-form input[type="submit"]:hover {
            background-color: var(--title-color);
        }

.page-links {
    clear: both;
    margin: 0 0 1.5em;
    padding-top: 1em;
}

    .page-links > .page-links-title {
        margin-right: 10px;
    }

    .page-links > span:not(.page-links-title):not(.screen-reader-text),
    .page-links > a {
        display: inline-block;
        padding: 5px 13px;
        background-color: var(--white-color);
        color: var(--title-color);
        border: 1px solid rgba(0, 0, 0, 0.08);
        margin-right: 10px;
    }

        .page-links > span:not(.page-links-title):not(.screen-reader-text):hover,
        .page-links > a:hover {
            opacity: 0.8;
            color: var(--white-color);
            background-color: var(--theme-color);
            border-color: transparent;
        }

        .page-links > span:not(.page-links-title):not(.screen-reader-text).current,
        .page-links > a.current {
            background-color: var(--theme-color);
            color: var(--white-color);
            border-color: transparent;
        }

    .page-links span.screen-reader-text {
        display: none;
    }

.blog-single .wp-block-archives-dropdown {
    margin-bottom: 30px;
}

.blog-single.format-quote, .blog-single.format-link, .blog-single.tag-sticky-2, .blog-single.sticky {
    border-color: transparent;
    position: relative;
}

    .blog-single.format-quote .blog-content:before, .blog-single.format-link .blog-content:before, .blog-single.tag-sticky-2 .blog-content:before, .blog-single.sticky .blog-content:before {
        display: none;
    }

    .blog-single.format-quote:before, .blog-single.format-link:before, .blog-single.tag-sticky-2:before, .blog-single.sticky:before {
        content: "\f0c1";
        position: absolute;
        font-family: var(--icon-font);
        font-size: 16px;
        font-weight: 500;
        opacity: 1;
        right: 0;
        top: 0;
        color: var(--white-color);
        background-color: var(--theme-color);
        z-index: 1;
        height: 44px;
        width: 44px;
        line-height: 44px;
        text-align: center;
        border-radius: 0 20px 0 20px;
        /* Small devices */
    }

@media (max-width: 767px) {
    .blog-single.format-quote:before, .blog-single.format-link:before, .blog-single.tag-sticky-2:before, .blog-single.sticky:before {
        border-radius: 0 10px 0 10px;
    }
}

.blog-single.tag-sticky-2::before, .blog-single.sticky::before {
    content: "\f08d";
}

.blog-single.format-quote:before {
    content: "\f10e";
}

.blog-single .blog-content .wp-block-categories-dropdown.wp-block-categories,
.blog-single .blog-content .wp-block-archives-dropdown {
    display: block;
    margin-bottom: 30px;
}

.blog-details .blog-single:before {
    display: none;
}

.blog-details .blog-single .blog-content {
    overflow: hidden;
}

.blog-details .blog-single.format-chat .blog-meta {
    margin-bottom: 20px;
}

.blog-details .blog-single.format-chat .blog-content > p:nth-child(2n) {
    background: var(--smoke-color);
    padding: 5px 20px;
}

.blog-details .blog-single.tag-sticky-2, .blog-details .blog-single.sticky, .blog-details .blog-single.format-quote, .blog-details .blog-single.format-link {
    background-color: transparent;
}

    .blog-details .blog-single.tag-sticky-2:before, .blog-details .blog-single.sticky:before, .blog-details .blog-single.format-quote:before, .blog-details .blog-single.format-link:before {
        display: none;
    }

.nof-title {
    margin-top: -0.24em;
}

.th-search {
    background-color: var(--smoke-color2);
    margin-bottom: 30px;
    border-radius: 15px;
    overflow: hidden;
}

    .th-search .search-grid-content {
        padding: 30px;
        /* Small devices */
    }

@media (max-width: 767px) {
    .th-search .search-grid-content {
        padding: 20px;
    }
}

.th-search .search-grid-title {
    font-size: 20px;
    margin-bottom: 5px;
    margin-top: 0;
}

    .th-search .search-grid-title a {
        color: inherit;
    }

        .th-search .search-grid-title a:hover {
            color: var(--theme-color);
        }

.th-search .search-grid-meta > * {
    display: inline-block;
    margin-right: 15px;
    font-size: 14px;
}

    .th-search .search-grid-meta > *:last-child {
        margin-right: 0;
    }

.th-search .search-grid-meta a,
.th-search .search-grid-meta span {
    color: var(--body-color);
}

/* Small devices */
@media (max-width: 767px) {
    .blog-single.format-quote:before, .blog-single.format-link:before, .blog-single.tag-sticky-2:before, .blog-single.sticky:before {
        font-size: 14px;
        width: 40px;
        height: 40px;
        line-height: 40px;
    }
}

@media (max-width: 768px) {
    .wp-block-latest-comments {
        padding-left: 10px;
    }

    .page--content.clearfix + .th-comment-form {
        margin-top: 24px;
    }
}

/*=================================
    02. Reset
==================================*/
/*------------------- 2.1. Container -------------------*/
/* Medium Large devices */
@media (max-width: 1399px) {
    :root {
        --main-container: 1250px;
    }
}

@media (min-width: 1560px) {
    .th-container2 {
        width: 100%;
        max-width: 1560px;
        margin-left: auto;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0;
    }

        .th-container2 .container {
            --main-container: 1220px;
        }

    .th-container3 {
        width: 100%;
        max-width: 1560px;
        margin-left: 0;
        margin-right: auto;
        padding-left: 0;
        padding-right: 0;
    }

        .th-container3 .container {
            --main-container: 1220px;
        }
}

/* Hight Resoulation devices */
@media (min-width: 1922px) {
    .th-container3,
    .th-container2 {
        margin-right: auto;
    }
}

@media only screen and (min-width: 1300px) {
    .container-xxl,
    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: calc(var(--main-container) + var(--container-gutters));
        padding-left: calc(var(--container-gutters) / 2);
        padding-right: calc(var(--container-gutters) / 2);
    }

        .container-xxl.px-0,
        .container-xl.px-0,
        .container-lg.px-0,
        .container-md.px-0,
        .container-sm.px-0,
        .container.px-0 {
            max-width: var(--main-container);
        }
}

@media only screen and (min-width: 1300px) {
    .th-container {
        --main-container: 1720px;
    }
}

@media only screen and (max-width: 1600px) {
    .container-fluid.px-0 {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

        .container-fluid.px-0 .row {
            margin-left: 0 !important;
            margin-right: 0 !important;
        }
}

@media only screen and (min-width: 1300px) {
    .brand-container {
        --main-container: 1820px;
    }
}

/*------------------- 2.2. Grid -------------------*/
.slick-track > [class*=col] {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x)/ 2);
    padding-left: calc(var(--bs-gutter-x)/ 2);
    margin-top: var(--bs-gutter-y);
}

@media (min-width: 1300px) {
    .row {
        --bs-gutter-x: 30px;
    }
}

.gy-30 {
    --bs-gutter-y: 30px;
}

.g-0 {
    --bs-gutter-y: 0;
    --bs-gutter-x: 0;
}

.gx-0 {
    --bs-gutter-x: 0;
}

.gy-40 {
    --bs-gutter-y: 40px;
}

.gy-50 {
    --bs-gutter-y: 50px;
}

.gx-10 {
    --bs-gutter-x: 10px;
}

.gy-10 {
    --bs-gutter-y: 10px;
}

@media (min-width: 1299px) {
    .gx-60 {
        --bs-gutter-x: 60px;
    }
}

@media (min-width: 1399px) {
    .gx-30 {
        --bs-gutter-x: 30px;
    }

    .gx-25 {
        --bs-gutter-x: 25px;
    }

    .gx-40 {
        --bs-gutter-x: 40px;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .gy-50 {
        --bs-gutter-y: 40px;
    }
}

/*------------------- 2.3. Input -------------------*/
select,
.form-control,
.form-select,
textarea,
input {
    height: 56px;
    padding: 0 25px 0 25px;
    padding-right: 45px;
    border: 1px solid var(--th-border-color);
    color: var(--body-color);
    background-color: var(--smoke-color);
    border-radius: 0;
    font-size: 16px;
    width: 100%;
    font-family: var(--body-font);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}

    select:focus,
    .form-control:focus,
    .form-select:focus,
    textarea:focus,
    input:focus {
        outline: 0;
        box-shadow: none;
        border-color: var(--th-border-color);
        background-color: var(--smoke-color);
    }

    select::-moz-placeholder,
    .form-control::-moz-placeholder,
    .form-select::-moz-placeholder,
    textarea::-moz-placeholder,
    input::-moz-placeholder {
        color: var(--body-color);
    }

    select::-webkit-input-placeholder,
    .form-control::-webkit-input-placeholder,
    .form-select::-webkit-input-placeholder,
    textarea::-webkit-input-placeholder,
    input::-webkit-input-placeholder {
        color: var(--body-color);
    }

    select:-ms-input-placeholder,
    .form-control:-ms-input-placeholder,
    .form-select:-ms-input-placeholder,
    textarea:-ms-input-placeholder,
    input:-ms-input-placeholder {
        color: var(--body-color);
    }

    select::-webkit-input-placeholder, .form-control::-webkit-input-placeholder, .form-select::-webkit-input-placeholder, textarea::-webkit-input-placeholder, input::-webkit-input-placeholder {
        color: var(--body-color);
    }

    select::-moz-placeholder, .form-control::-moz-placeholder, .form-select::-moz-placeholder, textarea::-moz-placeholder, input::-moz-placeholder {
        color: var(--body-color);
    }

    select:-ms-input-placeholder, .form-control:-ms-input-placeholder, .form-select:-ms-input-placeholder, textarea:-ms-input-placeholder, input:-ms-input-placeholder {
        color: var(--body-color);
    }

    select::-ms-input-placeholder, .form-control::-ms-input-placeholder, .form-select::-ms-input-placeholder, textarea::-ms-input-placeholder, input::-ms-input-placeholder {
        color: var(--body-color);
    }

    select::placeholder,
    .form-control::placeholder,
    .form-select::placeholder,
    textarea::placeholder,
    input::placeholder {
        color: var(--body-color);
    }

.form-select,
select {
    display: block;
    width: 100%;
    line-height: 1.5;
    vertical-align: middle;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");
    background-position: right 26px center;
    background-repeat: no-repeat;
    background-size: 16px 12px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: url("../img/theme-img/pointer.png"), auto;
}

    .form-select.style2,
    select.style2 {
        background-image: url("data:image/svg+xml,%3Csvg width='11' height='6' viewBox='0 0 11 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.87109 1.71094L5.71484 5.62109C5.56901 5.7487 5.41406 5.8125 5.25 5.8125C5.08594 5.8125 4.9401 5.7487 4.8125 5.62109L0.65625 1.71094C0.382812 1.40104 0.373698 1.09115 0.628906 0.78125C0.920573 0.507812 1.23047 0.498698 1.55859 0.753906L5.25 4.25391L8.96875 0.753906C9.27865 0.498698 9.57943 0.498698 9.87109 0.753906C10.1263 1.08203 10.1263 1.40104 9.87109 1.71094Z' fill='%238B929C'/%3E%3C/svg%3E");
    }

textarea.form-control,
textarea {
    min-height: 154px;
    padding-top: 16px;
    padding-bottom: 17px;
}

    textarea.form-control.style2,
    textarea.style2 {
        min-height: 100px;
    }

.form-group {
    margin-bottom: var(--bs-gutter-x);
    position: relative;
}

    .form-group > i {
        display: inline-block;
        position: absolute;
        right: 25px;
        top: 19px;
        font-size: 16px;
        color: var(--body-color);
    }

        .form-group > i.fa-envelope {
            padding-top: 1px;
        }

        .form-group > i.fa-comment {
            margin-top: -2px;
        }

        .form-group > i.fa-chevron-down {
            width: 17px;
            background-color: var(--smoke-color);
        }

    .form-group.has-label > i {
        top: 50px;
    }

[class*="col-"].form-group > i {
    right: calc((var(--bs-gutter-x) / 2) + 25px);
}

.form-rounded-10 .form-control,
.form-rounded-10 .form-select {
    border-radius: 10px !important;
}

.form-rounded-10 .th-btn {
    border-radius: 10px;
}

option:checked, option:focus, option:hover {
    background-color: var(--theme-color);
    color: var(--white-color);
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type="number"] {
    -moz-appearance: textfield;
}

input[type="checkbox"] {
    visibility: hidden;
    opacity: 0;
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 0;
    display: none;
}

    input[type="checkbox"]:checked ~ label:before {
        content: "\f00c";
        color: var(--white-color);
        background-color: var(--theme-color);
        border-color: var(--theme-color);
    }

    input[type="checkbox"] ~ label {
        position: relative;
        padding-left: 30px;
        cursor: url("../img/theme-img/pointer.png"), auto;
        display: block;
    }

        input[type="checkbox"] ~ label:before {
            content: "";
            font-family: var(--icon-font);
            font-weight: 700;
            position: absolute;
            left: 0px;
            top: 3.5px;
            background-color: var(--white-color);
            border: 1px solid var(--th-border-color);
            height: 18px;
            width: 18px;
            line-height: 18px;
            text-align: center;
            font-size: 12px;
        }

    input[type="checkbox"].style2 ~ label {
        color: #8B929C;
        padding-left: 23px;
        margin-bottom: -0.5em;
    }

        input[type="checkbox"].style2 ~ label:before {
            background-color: rgba(255, 255, 255, 0.1);
            border: 1px solid #8B929C;
            height: 14px;
            width: 14px;
            line-height: 14px;
            border-radius: 3px;
            top: 6px;
        }

    input[type="checkbox"].style2:checked ~ label:before {
        color: var(--theme-color);
    }

input[type="radio"] {
    visibility: hidden;
    opacity: 0;
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 0;
    display: none;
}

    input[type="radio"] ~ label {
        position: relative;
        padding-left: 30px;
        cursor: url("../img/theme-img/pointer.png"), auto;
        line-height: 1;
        display: inline-block;
        font-weight: 600;
        margin-bottom: 0;
    }

        input[type="radio"] ~ label::before {
            content: "\f111";
            position: absolute;
            font-family: var(--icon-font);
            left: 0;
            top: -2px;
            width: 20px;
            height: 20px;
            padding-left: 0;
            font-size: 0.6em;
            line-height: 19px;
            text-align: center;
            border: 1px solid var(--theme-color);
            border-radius: 100%;
            font-weight: 700;
            background: var(--white-color);
            color: transparent;
            -webkit-transition: all 0.2s ease;
            transition: all 0.2s ease;
        }

    input[type="radio"]:checked ~ label::before {
        border-color: var(--theme-color);
        background-color: var(--theme-color);
        color: var(--white-color);
    }

label {
    margin-bottom: 0.5em;
    margin-top: -0.3em;
    display: block;
    color: var(--title-color);
    font-family: var(--body-font);
    font-size: 16px;
}

textarea.is-invalid,
select.is-invalid,
input.is-invalid,
.was-validated input:invalid {
    border: 1px solid var(--error-color) !important;
    background-position: right calc(0.375em + 0.8875rem) center;
    background-image: none;
}

    textarea.is-invalid:focus,
    select.is-invalid:focus,
    input.is-invalid:focus,
    .was-validated input:invalid:focus {
        outline: 0;
        box-shadow: none;
    }

textarea.is-invalid {
    background-position: top calc(0.375em + 0.5875rem) right calc(0.375em + 0.8875rem);
}

.row.no-gutters > .form-group {
    margin-bottom: 0;
}

.form-messages {
    display: none;
}

    .form-messages.mb-0 * {
        margin-bottom: 0;
    }

    .form-messages.success {
        color: var(--success-color);
        display: block;
    }

    .form-messages.error {
        color: var(--error-color);
        display: block;
    }

    .form-messages pre {
        padding: 0;
        background-color: transparent;
        color: inherit;
    }

/*------------------- 2.4. Slick Slider -------------------*/
.swiper-wrapper.row {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.th-slider.has-shadow {
    padding-left: 12px;
    padding-right: 12px;
    margin: -25px -12px;
}

    .th-slider.has-shadow .swiper-wrapper {
        padding: 25px 0;
    }

.swiper-pagination-progressbar {
    --swiper-pagination-progressbar-size: 2px;
    background: var(--th-border-color);
}

    .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
        background: var(--theme-color);
    }

.swiper-fade .swiper-slide {
    -webkit-transition: 0.6s ease-in-out;
    transition: 0.6s ease-in-out;
}

.swiper-fade .swiper-slide-prev {
    opacity: 0;
}

.swiper-fade:after {
    content: '';
    position: absolute;
    inset: 0;
    background-color: var(--title-color);
    z-index: 3;
    pointer-events: none;
}

.swiper-fade.fade-ani:after {
    -webkit-animation: swiperFade 0.8s linear 0.2s forwards;
    animation: swiperFade 0.8s linear 0.2s forwards;
}

@-webkit-keyframes swiperFade {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

@keyframes swiperFade {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

.swiper-pagination-bullets {
    position: relative;
    z-index: 3;
    text-align: center;
    margin: 50px 0 -7px 0;
    line-height: 10px;
    height: 10px;
}

    .swiper-pagination-bullets .swiper-pagination-bullet {
        display: inline-block;
        --swiper-pagination-bullet-size: 10px;
        --swiper-pagination-bullet-horizontal-gap: 8px;
        margin: 5px 7px;
        opacity: 1;
        background-color: var(--theme-color);
        position: relative;
        cursor: url("../img/theme-img/pointer.png"), auto;
    }

        .swiper-pagination-bullets .swiper-pagination-bullet:before {
            content: '';
            position: absolute;
            inset: -5px;
            border: 1px solid var(--theme-color);
            -webkit-transform: scale(0.2);
            -ms-transform: scale(0.2);
            transform: scale(0.2);
            border-radius: inherit;
            -webkit-transition: 0.4s ease-in-out;
            transition: 0.4s ease-in-out;
        }

        .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
            background-color: var(--theme-color);
        }

            .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active:before {
                -webkit-transform: scale(1);
                -ms-transform: scale(1);
                transform: scale(1);
            }

.slider-area {
    position: relative;
}

.slider-arrow {
    display: inline-block;
    padding: 0;
    background-color: transparent;
    color: var(--title-color);
    position: absolute;
    top: 50%;
    border: none;
    left: var(--pos-x, -160px);
    width: 75px;
    height: var(--icon-size, 60px);
    line-height: var(--icon-size, 60px);
    font-size: var(--icon-font-size, 18px);
    margin-top: calc(var(--icon-size, 60px) / -2);
    z-index: 3;
    border-radius: 99px;
}

    .slider-arrow .icon {
        position: absolute;
        left: -5px;
        top: calc(50% - 10px);
        background-color: var(--title-color);
        height: 20px;
        width: 52px;
        display: inline-block;
        -webkit-mask-image: url(../img/theme-img/arrow.svg);
        mask-image: url(../img/theme-img/arrow.svg);
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
        -webkit-mask-size: 100% 100%;
        mask-size: 100% 100%;
    }

    .slider-arrow:after {
        content: '';
        width: 60px;
        height: 60px;
        position: absolute;
        top: 0;
        right: 0;
        background-color: var(--title-color);
        -webkit-mask-image: url(../img/theme-img/circle.svg);
        mask-image: url(../img/theme-img/circle.svg);
        -webkit-transition: 0.4s ease-out;
        transition: 0.4s ease-out;
        -webkit-mask-size: 100% 100%;
        mask-size: 100% 100%;
    }

    .slider-arrow.default {
        position: relative;
        --pos-x: 0;
        margin-top: 0;
    }

    .slider-arrow.slider-next {
        right: var(--pos-x, -160px);
        left: auto;
    }

    .slider-arrow.slider-prev {
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg);
    }

    .slider-arrow:hover .icon {
        left: 5px;
    }

.arrow-margin .slider-arrow {
    top: calc(50% - 30px);
}

.arrow-wrap {
    position: relative;
}

    .arrow-wrap .slider-arrow {
        opacity: 0;
        visibility: hidden;
        -webkit-transform: scale(0.4);
        -ms-transform: scale(0.4);
        transform: scale(0.4);
        /* Medium Large devices */
    }

@media (max-width: 1299px) {
    .arrow-wrap .slider-arrow {
        display: none;
    }
}

.arrow-wrap:hover .slider-arrow {
    opacity: 1;
    visibility: visible;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

    .arrow-wrap:hover .slider-arrow.slider-prev {
        -webkit-transform: scale(1) rotateY(180deg);
        transform: scale(1) rotateY(180deg);
    }

/* Extra large devices */
@media (max-width: 1500px) {
    .slider-arrow {
        --arrow-horizontal: -20px;
        --pos-x: -70px;
    }
}

/* Medium Large devices */
@media (max-width: 1399px) {
    .slider-arrow {
        --arrow-horizontal: 40px;
        --pos-x: -17px;
    }
}

.icon-box {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 25px;
}

/* Medium devices */
@media (max-width: 991px) {
    .slick-dots {
        margin: 40px 0 0 0;
    }
}

/*------------------- 2.5. Mobile Menu -------------------*/
.th-menu-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 999999;
    width: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: all ease 0.8s;
    transition: all ease 0.8s;
    opacity: 0;
    visibility: hidden;
}

    .th-menu-wrapper .mobile-logo {
        padding-bottom: 30px;
        padding-top: 40px;
        display: block;
        text-align: center;
        background-color: var(--smoke-color2);
    }

        .th-menu-wrapper .mobile-logo svg {
            max-width: 185px;
        }

    .th-menu-wrapper .th-menu-toggle {
        border: none;
        font-size: 22px;
        position: absolute;
        right: -16.5px;
        top: 25px;
        padding: 0;
        line-height: 1;
        width: 33px;
        height: 33px;
        line-height: 35px;
        font-size: 18px;
        z-index: 1;
        color: var(--white-color);
        background-color: var(--theme-color);
        border-radius: 50%;
    }

        .th-menu-wrapper .th-menu-toggle:hover {
            background-color: var(--title-color);
            color: var(--white-color);
        }

    .th-menu-wrapper .th-menu-area {
        width: 100%;
        max-width: 310px;
        background-color: var(--body-bg);
        border-right: 3px solid var(--theme-color);
        height: 100%;
        position: relative;
        left: -110%;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all ease 1s;
        transition: all ease 1s;
        z-index: 1;
    }

    .th-menu-wrapper.th-body-visible {
        opacity: 1;
        visibility: visible;
    }

        .th-menu-wrapper.th-body-visible .th-menu-area {
            left: 0;
            opacity: 1;
            visibility: visible;
        }

.th-mobile-menu {
    overflow-y: scroll;
    max-height: calc(100vh - 200px);
    padding-bottom: 40px;
    margin-top: 33px;
    text-align: left;
}

    .th-mobile-menu ul {
        margin: 0;
        padding: 0 0;
    }

        .th-mobile-menu ul li {
            border-bottom: 1px solid var(--th-border-color);
            list-style-type: none;
        }

            .th-mobile-menu ul li li:first-child {
                border-top: 1px solid var(--th-border-color);
            }

            .th-mobile-menu ul li a {
                display: block;
                position: relative;
                padding: 12px 0;
                line-height: 1.4;
                font-size: 16px;
                text-transform: capitalize;
                color: var(--title-color);
                padding-left: 18px;
            }

                .th-mobile-menu ul li a:before {
                    content: "\f105";
                    font-family: var(--icon-font);
                    position: absolute;
                    left: 0;
                    top: 12px;
                    margin-right: 10px;
                    display: inline-block;
                }

            .th-mobile-menu ul li.th-active > a {
                color: var(--theme-color);
            }

                .th-mobile-menu ul li.th-active > a:before {
                    -webkit-transform: rotate(90deg);
                    -ms-transform: rotate(90deg);
                    transform: rotate(90deg);
                }

            .th-mobile-menu ul li ul li {
                padding-left: 20px;
            }

                .th-mobile-menu ul li ul li:last-child {
                    border-bottom: none;
                }

        .th-mobile-menu ul .menu-item-has-children > a .th-mean-expand {
            position: absolute;
            right: 0;
            top: 50%;
            font-weight: 400;
            font-size: 12px;
            width: 25px;
            height: 25px;
            line-height: 25px;
            margin-top: -12.5px;
            display: inline-block;
            text-align: center;
            background-color: var(--smoke-color);
            color: var(--title-color);
            box-shadow: 0 0 20px -8px rgba(173, 136, 88, 0.5);
            border-radius: 50%;
        }

            .th-mobile-menu ul .menu-item-has-children > a .th-mean-expand:before {
                content: "\f067";
                font-family: var(--icon-font);
            }

        .th-mobile-menu ul .menu-item-has-children > a:after {
            content: "\f067";
            font-family: var(--icon-font);
            width: 22px;
            height: 22px;
            line-height: 22px;
            display: inline-block;
            text-align: center;
            font-size: 12px;
            border-radius: 50px;
            background-color: var(--smoke-color);
            float: right;
            margin-top: 1px;
        }

        .th-mobile-menu ul .menu-item-has-children.th-active > a .th-mean-expand:before {
            content: "\f068";
        }

        .th-mobile-menu ul .menu-item-has-children.th-active > a:after {
            content: "\f068";
        }

    .th-mobile-menu > ul {
        padding: 0 40px;
    }

        .th-mobile-menu > ul > li:last-child {
            border-bottom: none;
        }

.th-menu-toggle {
    width: 56px;
    height: 56px;
    padding: 0;
    font-size: 20px;
    border: none;
    background-color: var(--theme-color);
    color: var(--white-color);
    display: inline-block;
    border-radius: 99px;
}

    .th-menu-toggle:hover {
        background-color: var(--title-color);
    }

    .th-menu-toggle.style-text, .th-menu-toggle.style-text-white {
        width: auto;
        height: auto;
        background-color: transparent;
        color: var(--title-color);
        font-size: 20px;
    }

        .th-menu-toggle.style-text i, .th-menu-toggle.style-text-white i {
            margin-right: 10px;
        }

    .th-menu-toggle.style-text-white {
        color: var(--white-color);
    }

@media (max-width: 400px) {
    .th-menu-wrapper .th-menu-area {
        width: 100%;
        max-width: 270px;
    }

    .th-mobile-menu > ul {
        padding: 0 20px;
    }
}

/*=================================
    03. Utilities
==================================*/
/*------------------- 3.1. Preloader -------------------*/
.preloader {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 999;
    background-color: var(--title-color);
}

    .preloader .th-btn {
        padding: 15px 20px;
        border-radius: 0;
        font-size: 14px;
    }

.preloader-inner {
    text-align: center;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
    line-height: 1;
}

    .preloader-inner img {
        display: block;
        margin: 0 auto 0 auto;
    }

.loader {
    position: relative;
    width: 120px;
    height: 14px;
    border-radius: 0 0 15px 15px;
    background-color: #3e494d;
    box-shadow: 0 -1px 4px #5d6063 inset;
    -webkit-animation: panex 0.5s linear alternate infinite;
    animation: panex 0.5s linear alternate infinite;
    -webkit-transform-origin: 170px 0;
    -ms-transform-origin: 170px 0;
    transform-origin: 170px 0;
    z-index: 10;
    -webkit-perspective: 300px;
    perspective: 300px;
}

    .loader::before {
        content: "";
        position: absolute;
        left: calc(100% - 2px);
        top: 0;
        z-index: -2;
        height: 10px;
        width: 70px;
        border-radius: 0 4px 4px 0;
        background-repeat: no-repeat;
        background-image: -webkit-linear-gradient(#6c4924, #4b2d21), -webkit-linear-gradient(#4d5457 24px, transparent 0), -webkit-linear-gradient(#9f9e9e 24px, transparent 0);
        background-image: linear-gradient(#6c4924, #4b2d21), linear-gradient(#4d5457 24px, transparent 0), linear-gradient(#9f9e9e 24px, transparent 0);
        background-size: 50px 10px, 4px 8px, 24px 4px;
        background-position: right center, 17px center, 0px center;
    }

    .loader::after {
        content: "";
        position: absolute;
        left: 50%;
        top: 0;
        z-index: -2;
        -webkit-transform: translate(-50%, -20px) rotate3d(75, -2, 3, 78deg);
        transform: translate(-50%, -20px) rotate3d(75, -2, 3, 78deg);
        width: 55px;
        height: 53px;
        background: #fff;
        background-image: -webkit-radial-gradient(circle 3px, #fff6 90%, transparent 10%), -webkit-radial-gradient(circle 12px, #ffc400 90%, transparent 10%), -webkit-radial-gradient(circle 12px, #ffae00 100%, transparent 0);
        background-image: radial-gradient(circle 3px, #fff6 90%, transparent 10%), radial-gradient(circle 12px, #ffc400 90%, transparent 10%), radial-gradient(circle 12px, #ffae00 100%, transparent 0);
        background-repeat: no-repeat;
        background-position: -4px -6px, -2px -2px, -1px -1px;
        box-shadow: -2px -3px #0002 inset, 0 0 4px #0003 inset;
        border-radius: 47% 36% 50% 50% / 49% 45% 42% 44%;
        -webkit-animation: eggRst 0.9s ease-out infinite;
        animation: eggRst 0.9s ease-out infinite;
    }

.preloader1 {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 999;
    background-color: var(--title-color);
}

    .preloader1 .th-btn {
        padding: 15px 20px;
        border-radius: 0;
        font-size: 14px;
    }

.preloader-inner1 {
    text-align: center;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    line-height: 1;
}

    .preloader-inner1 img {
        display: block;
        margin: 0 auto 0 auto;
    }

.loader1 {
    position: relative;
    width: 120px;
    height: 14px;
    border-radius: 0 0 15px 15px;
    background-color: #3e494d;
    box-shadow: 0 -1px 4px #5d6063 inset;
    animation: panex 0.5s linear alternate infinite;
    transform-origin: 170px 0;
    z-index: 10;
    perspective: 300px;
}

    .loader1::before {
        content: "";
        position: absolute;
        left: calc(100% - 2px);
        top: 0;
        z-index: -2;
        height: 10px;
        width: 70px;
        border-radius: 0 4px 4px 0;
        background-repeat: no-repeat;
        background-image: linear-gradient(#6c4924, #4b2d21), linear-gradient(#4d5457 24px, transparent 0), linear-gradient(#9f9e9e 24px, transparent 0);
        background-size: 50px 10px, 4px 8px, 24px 4px;
        background-position: right center, 17px center, 0px center;
    }

    .loader1::after {
        content: "";
        position: absolute;
        left: 50%;
        top: 0;
        z-index: -2;
        transform: translate(-50%, -20px) rotate3d(75, -2, 3, 78deg);
        width: 55px;
        height: 53px;
        background: #fff;
        background-image: radial-gradient(circle 3px, rgba(255, 255, 255, 0.4) 90%, transparent 10%), radial-gradient(circle 12px, #ffc400 90%, transparent 10%), radial-gradient(circle 12px, #ffae00 100%, transparent 0);
        background-repeat: no-repeat;
        background-position: -4px -6px, -2px -2px, -1px -1px;
        box-shadow: -2px -3px rgba(0, 0, 0, 0.1333333333) inset, 0 0 4px rgba(0, 0, 0, 0.2) inset;
        border-radius: 47% 36% 50% 50%/49% 45% 42% 44%;
        animation: eggRst 0.9s ease-out infinite;
    }

@-webkit-keyframes eggRst {
    0%, 100% {
        -webkit-transform: translate(-50%, -20px) rotate3d(90, 0, 0, 90deg);
        transform: translate(-50%, -20px) rotate3d(90, 0, 0, 90deg);
        opacity: 0;
    }

    10%, 90% {
        -webkit-transform: translate(-50%, -30px) rotate3d(90, 0, 0, 90deg);
        transform: translate(-50%, -30px) rotate3d(90, 0, 0, 90deg);
        opacity: 1;
    }

    25% {
        -webkit-transform: translate(-50%, -40px) rotate3d(85, 17, 2, 70deg);
        transform: translate(-50%, -40px) rotate3d(85, 17, 2, 70deg);
    }

    75% {
        -webkit-transform: translate(-50%, -40px) rotate3d(75, -3, 2, 70deg);
        transform: translate(-50%, -40px) rotate3d(75, -3, 2, 70deg);
    }

    50% {
        -webkit-transform: translate(-55%, -50px) rotate3d(75, -8, 3, 50deg);
        transform: translate(-55%, -50px) rotate3d(75, -8, 3, 50deg);
    }
}

@keyframes eggRst {
    0%, 100% {
        -webkit-transform: translate(-50%, -20px) rotate3d(90, 0, 0, 90deg);
        transform: translate(-50%, -20px) rotate3d(90, 0, 0, 90deg);
        opacity: 0;
    }

    10%, 90% {
        -webkit-transform: translate(-50%, -30px) rotate3d(90, 0, 0, 90deg);
        transform: translate(-50%, -30px) rotate3d(90, 0, 0, 90deg);
        opacity: 1;
    }

    25% {
        -webkit-transform: translate(-50%, -40px) rotate3d(85, 17, 2, 70deg);
        transform: translate(-50%, -40px) rotate3d(85, 17, 2, 70deg);
    }

    75% {
        -webkit-transform: translate(-50%, -40px) rotate3d(75, -3, 2, 70deg);
        transform: translate(-50%, -40px) rotate3d(75, -3, 2, 70deg);
    }

    50% {
        -webkit-transform: translate(-55%, -50px) rotate3d(75, -8, 3, 50deg);
        transform: translate(-55%, -50px) rotate3d(75, -8, 3, 50deg);
    }
}

@-webkit-keyframes panex {
    0% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }

    100% {
        -webkit-transform: rotate(10deg);
        transform: rotate(10deg);
    }
}

@keyframes panex {
    0% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }

    100% {
        -webkit-transform: rotate(10deg);
        transform: rotate(10deg);
    }
}

/*------------------- 3.2. Buttons -------------------*/
.th-btn {
    position: relative;
    z-index: 2;
    overflow: hidden;
    vertical-align: middle;
    display: inline-block;
    /* T395: WCAG AA contrast fix — #FA8507 fill is owner-fixed/immutable, so contrast is
       cleared by darkening the text (6.61:1) + a 2px non-text boundary (>=14.78:1 on all
       measured surfaces) instead of touching the brand colour. Mirrored by hand into
       .rv-entverify-btn (ContactLux.css) — see the source-of-truth comment there. */
    border: 2px solid var(--title-color);
    text-transform: uppercase;
    text-align: center;
    background-color: var(--theme-color);
    color: var(--title-color);
    font-family: var(--body-font);
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    /* T395 fix loop 1 (F1): vertical padding reduced 21px->19px (border width, 2px, per side)
       to absorb the new 2px border's box-model growth (170x56 -> was measured 170x60 without
       this compensation) and keep rendered geometry at the pre-fix 170x56. Horizontal padding
       is untouched because width is floored by min-width:170px, which was already measured
       unchanged (170->170) even with the border added. .th-btn.style-border restores this
       padding explicitly below, because its own border is drawn by a non-box-model :before/
       :after pseudo-element (position:absolute) and never actually grows its box. */
    padding: 19px 32px;
    min-width: 170px;
    border-radius: 0;
    -webkit-perspective: 320px;
    perspective: 320px;
}

    .th-btn:before {
        content: "";
        position: absolute;
        height: 100%;
        bottom: 0;
        right: 0;
        width: 0;
        background-color: var(--title-color);
        z-index: -1;
        -webkit-transition: all 0.4s ease-out;
        transition: all 0.4s ease-out;
        border-radius: inherit;
    }

    .th-btn i {
        font-size: 0.95em;
    }

    .th-btn .top-line {
        height: 2px;
        width: 1.8rem;
        top: 0;
        left: 1.4rem;
        position: absolute;
        background: var(--body-bg);
        -webkit-transition: width 0.5s ease-out, left 0.3s ease-out;
        transition: width 0.5s ease-out, left 0.3s ease-out;
    }

    .th-btn .bottom-line-1 {
        height: 2px;
        width: 1.8rem;
        right: 4rem;
        bottom: 0;
        position: absolute;
        background: var(--body-bg);
        -webkit-transition: width 0.5s ease-out, right 0.3s ease-out;
        transition: width 0.5s ease-out, right 0.3s ease-out;
    }

    .th-btn .bottom-line-2 {
        height: 2px;
        width: 1.2rem;
        right: 1rem;
        bottom: 0;
        position: absolute;
        background: var(--body-bg);
        -webkit-transition: width 0.5s ease-out, right 0.3s ease-out;
        transition: width 0.5s ease-out, right 0.3s ease-out;
    }

    .th-btn:hover, .th-btn.active {
        color: var(--white-color);
        box-shadow: none;
    }

        .th-btn:hover::before, .th-btn:hover:after, .th-btn.active::before, .th-btn.active:after {
            width: 100%;
            right: unset;
            left: 0;
        }

        .th-btn:hover .top-line, .th-btn.active .top-line {
            left: -2px;
            width: 0px;
        }

        .th-btn:hover .bottom-line-1,
        .th-btn:hover .bottom-line-2, .th-btn.active .bottom-line-1,
        .th-btn.active .bottom-line-2 {
            right: 0;
            width: 0;
        }

    .th-btn.style-border {
        background-color: transparent;
        color: var(--title-color);
        /* T395: the base .th-btn now carries its own 2px border; this variant already draws
           its own 2px ring via :before/:after below — neutralise the base one here so the
           two never double up. */
        border: none;
        /* T395 fix loop 1 (F1): restore the base .th-btn's original 21px vertical padding here.
           This variant's border is drawn by an absolutely-positioned :before/:after pseudo, not
           a real border, so it never consumed box-model space and must NOT inherit the base
           rule's 19px F1 compensation (that compensation exists only to counter a REAL border,
           which this variant does not have) — doing so would shrink all 6 style-border surfaces
           below their original size. */
        padding: 21px 32px;
    }

        .th-btn.style-border:before, .th-btn.style-border:after {
            background-color: transparent;
            border: 2px solid var(--title-color);
            width: 100%;
        }

        .th-btn.style-border.smoke-bg {
            --body-bg: #F8F8F8;
        }

        .th-btn.style-border.border-one {
            color: var(--theme-color);
            --body-bg: #111;
            font-family: var(--title-font);
            font-size: 24px;
            padding: 16px 32px;
            font-weight: 400;
            text-transform: capitalize;
        }

            .th-btn.style-border.border-one:before {
                border-color: var(--theme-color);
            }

        .th-btn.style-border.border-two {
            --body-bg: #f8f8f8;
            font-family: var(--title-font);
            font-size: 24px;
            text-transform: lowercase;
            padding: 16px 32px;
            font-weight: 400;
        }

        .th-btn.style-border.border-three {
            --body-bg: #000;
            color: var(--theme-color);
        }

            .th-btn.style-border.border-three:before {
                border-color: var(--theme-color);
            }

        .th-btn.style-border.border-four {
            --body-bg: #0D060E;
            color: var(--white-color);
        }

            .th-btn.style-border.border-four:before {
                border-color: var(--white-color);
            }

    .th-btn.style2 {
        background-color: transparent;
        color: var(--white-color);
        border: 1px solid var(--white-color);
        padding: 20px 40px;
        box-shadow: none;
    }

        .th-btn.style2:hover {
            color: var(--title-color);
            border-color: var(--white-color);
            background-color: var(--white-color);
        }

            .th-btn.style2:hover:before, .th-btn.style2:hover:after {
                background-color: var(--white-color);
            }

    .th-btn.style3:hover {
        color: var(--title-color);
    }

        .th-btn.style3:hover:before, .th-btn.style3:hover:after {
            background-color: var(--white-color);
        }

    .th-btn.style4 {
        background-color: var(--title-color);
        color: var(--white-color);
    }

        .th-btn.style4:hover {
            color: var(--white-color);
        }

            .th-btn.style4:hover:before, .th-btn.style4:hover:after {
                background-color: var(--theme-color);
            }

    .th-btn.style5 {
        background-color: var(--theme-color);
        color: var(--white-color);
    }

        .th-btn.style5:hover {
            color: var(--theme-color);
        }

            .th-btn.style5:hover:before, .th-btn.style5:hover:after {
                background-color: var(--white-color);
            }

    .th-btn.style6 {
        background-color: var(--title-color);
    }

        .th-btn.style6:hover {
            color: var(--theme-color);
        }

            .th-btn.style6:hover:before, .th-btn.style6:hover:after {
                background-color: var(--white-color);
            }

    .th-btn.btn-fw {
        width: 100%;
    }

        .th-btn.btn-fw:before, .th-btn.btn-fw:after {
            display: none;
        }

        .th-btn.btn-fw:hover {
            background-color: var(--title-color);
        }

    .th-btn.btn-sm {
        padding: 16px 25px;
        min-width: 152px;
    }

.icon-btn {
    display: inline-block;
    width: var(--btn-size, 56px);
    height: var(--btn-size, 56px);
    line-height: var(--btn-size, 54px);
    font-size: var(--btn-font-size, 20px);
    background-color: var(--icon-bg, #f7f7f7);
    color: var(--title-color);
    text-align: center;
    border-radius: 0;
    border: 1px solid var(--th-border-color);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    position: relative;
}

    .icon-btn:hover {
        background-color: var(--theme-color);
        color: var(--white-color);
        border-color: var(--theme-color);
    }

    .icon-btn.style2 {
        background-color: var(--theme-color);
        color: var(--white-color);
        border: none;
        border-radius: 99px;
    }

        .icon-btn.style2:hover {
            background-color: var(--theme-color);
            color: var(--white-color);
        }

.play-btn {
    display: inline-block;
    position: relative;
    z-index: 1;
}

    .play-btn > i {
        display: inline-block;
        width: var(--icon-size, 56px);
        height: var(--icon-size, 56px);
        line-height: var(--icon-size, 56px);
        text-align: center;
        background-color: var(--theme-color);
        color: var(--white-color);
        font-size: var(--icon-font-size, 1.4em);
        border-radius: 50%;
        z-index: 1;
        -webkit-transition: all ease 0.4s;
        transition: all ease 0.4s;
    }

    .play-btn:after, .play-btn:before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        background-color: var(--theme-color);
        z-index: -1;
        border-radius: 50%;
        -webkit-transition: all ease 0.4s;
        transition: all ease 0.4s;
    }

    .play-btn:after {
        -webkit-animation-delay: 2s;
        animation-delay: 2s;
    }

    .play-btn:hover:after, .play-btn:hover::before,
    .play-btn:hover i {
        background-color: var(--title-color);
        color: var(--white-color);
    }

    .play-btn.style2 > i {
        background-color: transparent;
        border: 1px solid var(--white-color);
    }

    .play-btn.style2:before, .play-btn.style2:after {
        background-color: transparent;
        border: 1px solid var(--white-color);
    }

    .play-btn.style2:hover > i {
        border-color: var(--theme-color);
        color: var(--theme-color);
    }

    .play-btn.style3 > i {
        --icon-size: 40px;
        font-size: 14px;
        border: 1px solid;
        background-color: var(--theme-color);
        color: var(--white-color);
    }

    .play-btn.style3:before, .play-btn.style3:after {
        background-color: var(--white-color);
    }

    .play-btn.style3:hover > i {
        background-color: var(--white-color);
        color: var(--theme-color);
    }

    .play-btn.style3:hover:before, .play-btn.style3:hover:after {
        background-color: var(--white-color);
    }

.link-btn {
    font-weight: 600;
    font-size: 14px;
    display: inline-block;
    line-height: 0.8;
    position: relative;
    padding-bottom: 2px;
    margin-bottom: -2px;
    text-transform: uppercase;
    color: var(--theme-color);
}

    .link-btn i {
        margin-left: 5px;
        font-size: 0.9rem;
    }

    .link-btn:before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 0;
        height: 2px;
        background-color: var(--theme-color);
        -webkit-transition: all ease 0.4s;
        transition: all ease 0.4s;
    }

    .link-btn:hover {
        color: var(--theme-color);
    }

        .link-btn:hover::before {
            width: 100%;
        }

.line-btn {
    font-size: 14px;
    font-weight: 600;
    display: inline-block;
    line-height: 0.8;
    position: relative;
    padding-bottom: 6px;
    margin-bottom: -1px;
    text-transform: uppercase;
    color: var(--title-color);
}

    .line-btn i {
        margin-left: 5px;
        font-size: 0.9rem;
    }

    .line-btn:before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 2px;
        background-color: var(--title-color);
        -webkit-transition: all ease 0.4s;
        transition: all ease 0.4s;
    }

    .line-btn:hover {
        color: var(--theme-color);
    }

        .line-btn:hover::before {
            background-color: var(--theme-color);
            width: 45px;
        }

/* Bottom-CENTRE, not bottom-right (owner, 2026-08-15).
   ⚠ Centred with `left`, NOT `transform: translateX(-50%)`, on purpose: `transform` is
   already the show/hide slide on this element (`translateY(45px)` here → `translateY(0)`
   in `.scroll-top.show` below). An X-translate added here would be overwritten by that
   rule the moment the button becomes visible, snapping it off-centre precisely when it
   is seen. `left: calc(50% - 25px)` subtracts half the fixed 50px width, so the geometry
   is exact and the animation is untouched. Keep the two decoupled. */
.scroll-top {
    position: fixed;
    left: calc(50% - 25px);
    bottom: 30px;
    height: 50px;
    width: 50px;
    cursor: url("../img/theme-img/pointer.png"), auto;
    display: block;
    border-radius: 50px;
    z-index: 10000;
    opacity: 1;
    visibility: hidden;
    -webkit-transform: translateY(45px);
    -ms-transform: translateY(45px);
    transform: translateY(45px);
    -webkit-transition: all 300ms linear;
    transition: all 300ms linear;
}

    .scroll-top:after {
        content: "\f062";
        font-family: var(--icon-font);
        position: absolute;
        text-align: center;
        line-height: 50px;
        font-size: 20px;
        color: var(--theme-color);
        left: 0;
        top: 0;
        height: 50px;
        width: 50px;
        cursor: url("../img/theme-img/pointer.png"), auto;
        display: block;
        z-index: 1;
        border: 2px solid var(--theme-color);
        box-shadow: none;
        border-radius: 50%;
    }

    .scroll-top svg {
        color: var(--theme-color);
        border-radius: 50%;
        background: var(--white-color);
    }

        .scroll-top svg path {
            fill: none;
        }

    .scroll-top .progress-circle path {
        stroke: var(--theme-color);
        stroke-width: 20px;
        box-sizing: border-box;
        -webkit-transition: all 400ms linear;
        transition: all 400ms linear;
    }

    .scroll-top.show {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

/* Clear the Food Order mobile cart bar (owner, 2026-08-15).
   `.fo-mobilebar` (FoodOrder.css:383) is `position:fixed; bottom:12px`, full width, and is
   hidden only at >=992px (`FoodOrder.css:395`). It stands roughly 12-62px off the bottom, so
   a centred `.scroll-top` at `bottom:30px` (50px tall => 30-80px) overlaps it by ~30px — and
   with z-index 10000 vs 1050 the button covers the bar's own count/"view cart" text. The
   overlap predates the move to centre; centring is what puts it over the bar's CONTENT rather
   than its right edge. 76px clears the bar (12 + ~48 tall) with a small gap.
   ⚠ Must stay AFTER the base `.scroll-top` rule: a media query adds NO specificity, so at
   equal specificity this only wins on source order. Do not relocate it above that rule. */
@media (max-width: 991.98px) {
    .scroll-top {
        bottom: 76px;
    }
}

/*------------------- 3.3. Titles -------------------*/
.sec-title {
    margin-bottom: calc(var(--section-title-space) - 10px);
    margin-top: -0.28em;
}

    .sec-title > * {
        text-align: inherit !important;
    }

.sub-title {
    font-family: var(--style-font);
    display: block;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    font-size: 20px;
    font-weight: 500;
    color: var(--theme-color);
    margin-bottom: 28px;
    margin-top: -0.03em;
    text-transform: capitalize;
    line-height: 24px;
    background-image: url("../img/theme-img/title_shape.png");
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: 100% auto;
    padding: 0 34px 4px 34px;
}

    .sub-title > * {
        text-align: inherit !important;
    }

    .sub-title:has(img) {
        margin-top: 0;
    }

    .sub-title.h4 {
        font-size: 30px;
        font-weight: 600;
        line-height: 1;
        margin-top: -0.14em;
    }

    .sub-title img {
        margin: -4px 10px 0 0;
    }

    .sub-title i {
        font-size: 32px;
        margin-right: 10px;
        /* Medium devices */
    }

@media (max-width: 991px) {
    .sub-title i {
        font-size: 24px;
    }
}

.sub-title2 {
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    display: inline-block;
    line-height: 22px;
    border-bottom: 1px solid;
    border-top: 1px solid;
    color: var(--theme-color);
    margin-bottom: 30px;
}

    .sub-title2 > * {
        text-align: inherit !important;
    }

.sub-title3 {
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    display: inline-block;
    color: var(--theme-color);
    margin-bottom: 30px;
    line-height: 20px;
    /* Small devices */
}

    .sub-title3 > * {
        text-align: inherit !important;
    }

    .sub-title3 img {
        height: 20px;
        margin: -6px 8px 0 0;
    }

@media (max-width: 767px) {
    .sub-title3 {
        margin-bottom: 24px;
    }
}

.sub-title4 {
    display: block;
    font-family: var(--title-font);
    font-size: 30px;
    color: var(--theme-color);
    margin-top: -0.1em;
    margin-bottom: 20px;
}

    .sub-title4 > * {
        text-align: inherit !important;
    }

.title-area:has(.sub-title3) {
    margin-top: -3px;
}

.box-title {
    font-size: 24px;
    line-height: 1.417;
    margin-top: -0.35em;
}

    .box-title > * {
        text-align: inherit !important;
    }

    .box-title a {
        color: inherit;
    }

        .box-title a:hover {
            color: var(--theme-color);
        }

.box-subtitle {
    margin-bottom: 8px;
}

.box-title2 {
    font-size: 20px;
    line-height: 1.5;
    font-weight: 700;
    margin-top: -0.35em;
}

    .box-title2 a {
        color: inherit;
    }

        .box-title2 a:hover {
            color: var(--theme-color);
        }

.title-area {
    margin-bottom: calc(var(--section-title-space) - 10px);
    position: relative;
    z-index: 2;
}

    .title-area .sec-title {
        margin-bottom: 22px;
    }

    .title-area.mb-0 .sec-title {
        margin-bottom: -0.24em;
    }

    .title-area .th-btn {
        margin-top: 20px;
        margin-bottom: 10px;
    }

.mb-32 {
    margin-bottom: 32px;
}

hr.title-line {
    margin-top: 0;
    background-color: var(--th-border-color);
    opacity: 1;
}

.sec-btn {
    text-align: center;
}

.sec-btn,
.title-line {
    margin-bottom: var(--section-title-space);
}

.shadow-title {
    font-family: var(--title-font);
    font-size: 144px;
    font-weight: 700;
    line-height: 1;
    background-image: -webkit-linear-gradient(top, #27282E 0%, rgba(39, 40, 46, 0) 112.38%);
    background-image: linear-gradient(180deg, #27282E 0%, rgba(39, 40, 46, 0) 112.38%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    margin: -0.18em 0 -0.4em 0;
    /* Medium Large devices */
    /* Medium devices */
    /* Small devices */
    /* Extra small devices */
}

@media (max-width: 1299px) {
    .shadow-title {
        font-size: 100px;
    }
}

@media (max-width: 991px) {
    .shadow-title {
        font-size: 80px;
    }
}

@media (max-width: 767px) {
    .shadow-title {
        font-size: 50px;
    }
}

@media (max-width: 575px) {
    .shadow-title {
        font-size: 40px;
    }
}

.title-area2 {
    padding: 50px 100px;
}

    .title-area2 .subtitle {
        color: var(--white-color);
        text-transform: uppercase;
        margin-top: -0.4em;
        margin-bottom: 5px;
        display: block;
    }

    .title-area2 .title {
        color: var(--white-color);
        max-width: 430px;
        margin-bottom: -0.26em;
    }

@media (max-width: 1700px) {
    .title-area2 {
        padding: 50px 50px;
    }
}

/* Large devices */
@media (max-width: 1199px) {
    .sub-title {
        margin-bottom: 20px;
    }

    .title-area,
    .sec-title {
        --section-title-space: 60px;
    }

        .title-area.mb-45,
        .sec-title.mb-45 {
            margin-bottom: 36px;
        }

        .title-area.mb-50,
        .sec-title.mb-50 {
            margin-bottom: 40px;
        }

    .sec-btn,
    .title-line {
        --section-title-space: 55px;
    }

    .title-area2 .title {
        max-width: 300px;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .title-area,
    .sec-title {
        --section-title-space: 50px;
    }

        .title-area.mb-45,
        .sec-title.mb-45 {
            margin-bottom: 35px;
        }

    .sec-btn,
    .title-line {
        --section-title-space: 50px;
    }

    .sub-title.h4 {
        font-size: 22px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .title-area2 {
        text-align: center;
    }

        .title-area2 .title {
            max-width: 100%;
        }
}

/* Extra small devices */
@media (max-width: 375px) {
    .title-area2 {
        padding: 40px 20px;
    }
}

/*------------------- 3.4. Common -------------------*/
.shape-mockup-wrap {
    z-index: 2;
    position: relative;
}

.shape-mockup {
    position: absolute;
    z-index: -1;
    pointer-events: none;
}

    .shape-mockup.z-index-3 {
        z-index: 3;
        pointer-events: none;
    }

    .shape-mockup.z-index-1 {
        z-index: 1;
        pointer-events: none;
    }

    .shape-mockup .svg-img {
        height: 110px;
        width: 110px;
    }

.z-index-step1 {
    position: relative;
    z-index: 4 !important;
}

.z-index-common {
    position: relative;
    z-index: 3;
}

.z-index-3 {
    z-index: 3;
}

.z-index-n1 {
    z-index: -1;
}

.media-body {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

/* color scheme ---------------------------------- */
.color-scheme {
    position: fixed;
    right: -1px;
    top: calc(50% - 100px);
    z-index: 99;
    background: var(--black-color);
    padding: 20px 30px;
    border-radius: 10px 0 0 10px;
    max-width: 300px;
    -webkit-transform: translate(100%, 0);
    -ms-transform: translate(100%, 0);
    transform: translate(100%, 0);
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

.color-scheme-title {
    font-size: 22px;
    border-bottom: 1px solid var(--th-border-color);
    padding-bottom: 6px;
    color: var(--white-color);
    margin-bottom: 20px;
}

    .color-scheme-title i {
        font-size: 18px;
        margin-right: 3px;
    }

.color-scheme-text {
    color: var(--white-color);
    font-size: 14px;
    margin-bottom: 6px;
}

.color-scheme .switchIcon {
    position: absolute;
    left: 0;
    top: 10px;
    border: 0;
    background: var(--theme-color);
    color: var(--white-color);
    height: 45px;
    width: 45px;
    border-radius: 5px 0 0 5px;
    -webkit-transform: translate(-100%, 0);
    -ms-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
}

.color-scheme .color-switch-btns {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 18px;
    margin-bottom: 20px;
}

    .color-scheme .color-switch-btns button {
        padding: 0;
        border: 0;
        background: transparent;
        font-size: 24px;
        color: var(--theme-color);
        text-align: left;
    }

.color-scheme #thcolorpicker {
    padding: 0 !important;
    border: 2px solid var(--white-color);
    border-radius: 0;
    height: 25px;
    border-radius: 15px;
    overflow: hidden;
    max-width: 170px;
}

.color-scheme.active {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

.badge {
    position: absolute;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: inline-block;
    text-align: center;
    background-color: var(--theme-color);
    color: var(--white-color);
    padding: 0.23em 0.40em;
    font-size: 0.7em;
    border-radius: 50%;
    top: 7px;
    right: 7px;
    font-weight: 400;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.th-social a {
    display: inline-block;
    width: var(--icon-size, 46px);
    height: var(--icon-size, 46px);
    line-height: var(--icon-size, 45px);
    background-color: var(--smoke-color);
    color: var(--body-color);
    font-size: 16px;
    text-align: center;
    margin-right: 5px;
    border-radius: 0;
}

    .th-social a:last-child {
        margin-right: 0;
    }

    .th-social a:hover {
        background-color: var(--theme-color);
        color: var(--white-color);
    }

.th-social.color-theme a {
    color: var(--body-color);
    border-color: var(--theme-color);
}

.multi-social a:has(.fa-facebook-f) {
    --theme-color: #3b5997;
}

.multi-social a:has(.fa-twitter) {
    --theme-color: #54abf0;
}

.multi-social a:has(.fa-pinterest-p) {
    --theme-color: #c8232c;
}

.multi-social a:has(.fa-linkedin-in) {
    --theme-color: #0077b5;
}

.multi-social a:has(.fa-vimeo-v) {
    --theme-color: #86c9ef;
}

.multi-social a:has(.fa-youtube) {
    --theme-color: #ff0000;
}

.multi-social a:has(.fa-instagram) {
    --theme-color: #d63084;
}

.bg-mask {
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}

.box-icon img {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}

.box-text {
    /*margin-bottom: -0.5em;*/
}

.btn-group {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px;
    /* Small devices */
}

    .btn-group.style2 {
        gap: 20px 70px;
        /* Small devices */
    }

@media (max-width: 767px) {
    .btn-group.style2 {
        gap: 20px 30px;
    }
}

@media (max-width: 767px) {
    .btn-group {
        gap: 20px;
    }
}

.th-bg-img {
    position: absolute;
    inset: 0;
}

    .th-bg-img img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }

.xdsoft_datetimepicker {
    background-color: var(--white-color);
    z-index: 5;
}

.mfp-zoom-in .mfp-content {
    opacity: 0;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    -webkit-transform: scale(0.5);
    -ms-transform: scale(0.5);
    transform: scale(0.5);
}

.mfp-zoom-in.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.mfp-zoom-in.mfp-ready .mfp-content {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.mfp-zoom-in.mfp-ready.mfp-bg {
    opacity: 0.7;
}

.mfp-zoom-in.mfp-removing .mfp-content {
    -webkit-transform: scale(0.7);
    -ms-transform: scale(0.7);
    transform: scale(0.7);
    opacity: 0;
}

.mfp-zoom-in.mfp-removing.mfp-bg {
    opacity: 0;
}

/*------------------- 3.6. Font -------------------*/
.font-icon {
    font-family: var(--icon-font);
}

.font-title {
    font-family: var(--title-font);
}

.font-body {
    font-family: var(--body-font);
}

.font-style {
    font-family: var(--style-font);
}

.fw-extralight {
    font-weight: 100;
}

.fw-light {
    font-weight: 300;
}

.fw-normal {
    font-weight: 400;
}

.fw-medium {
    font-weight: 500;
}

.fw-semibold {
    font-weight: 600;
}

.fw-bold {
    font-weight: 700;
}

.fw-extrabold {
    font-weight: 800;
}

.fs-md {
    font-size: 18px;
}

.fs-16 {
    font-size: 16px !important;
}

.fs-xs {
    font-size: 14px;
}

/*------------------- 3.7. Background -------------------*/
.bg-theme {
    background-color: var(--theme-color) !important;
}

.bg-smoke {
    background-color: var(--smoke-color) !important;
}

.bg-smoke2 {
    background-color: var(--smoke-color2) !important;
}

.bg-white {
    background-color: var(--white-color) !important;
}

.bg-black {
    background-color: var(--black-color) !important;
}

.bg-black2 {
    background-color: var(--black-color2) !important;
}

.bg-title {
    background-color: var(--title-color) !important;
}

.gr-bg1 {
    background-image: -webkit-linear-gradient(left, var(--theme-color) 0%, #FD8900 100%);
    background-image: linear-gradient(to right, var(--theme-color) 0%, #FD8900 100%);
}

.gr-bg2 {
    background-image: -webkit-linear-gradient(354.81deg, #5B31E0 0%, #2639FF 100%);
    background-image: linear-gradient(95.19deg, #5B31E0 0%, #2639FF 100%);
}

.background-image,
[data-bg-src] {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.bg-fixed {
    background-attachment: fixed;
    scroll-behavior: smooth !important;
}

.bg-fluid {
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
}

.bg-auto {
    background-size: auto auto;
}

.bg-top-center {
    background-size: auto;
    background-position: top center;
}

.bg-repeat {
    background-size: auto;
    background-repeat: repeat;
}

.bg-bottom-right {
    background-size: auto;
    background-position: bottom right;
}

.bg-top-right {
    background-size: auto;
    background-position: top right;
}

.bg-top-left {
    background-size: auto;
    background-position: top left;
}

/*------------------- 3.8. Text Color -------------------*/
.text-theme {
    color: var(--theme-color) !important;
}

.text-title {
    color: var(--title-color) !important;
}

.text-body {
    color: var(--body-color) !important;
}

.text-white {
    color: var(--white-color) !important;
}

.text-light {
    color: var(--light-color) !important;
}

.text-yellow {
    color: var(--yellow-color) !important;
}

.text-success {
    color: var(--success-color) !important;
}

.text-error {
    color: var(--error-color) !important;
}

.text-inherit {
    color: inherit;
}

    .text-inherit:hover {
        color: var(--theme-color);
    }

a.text-theme:hover,
.text-reset:hover {
    text-decoration: underline;
}

/*------------------- 3.9. Overlay -------------------*/
.overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.position-center {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

[data-overlay] {
    position: relative;
    z-index: 2;
}

    [data-overlay] [class^="col-"],
    [data-overlay] [class*="col-"] {
        z-index: 1;
    }

    [data-overlay]:before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        z-index: 1;
    }

[data-overlay="theme"]:before {
    background-color: var(--theme-color);
}

[data-overlay="title"]:before {
    background-color: var(--title-color);
}

[data-overlay="smoke"]:before {
    background-color: var(--smoke-color);
}

[data-overlay="white"]:before {
    background-color: var(--white-color);
}

[data-overlay="black"]:before {
    background-color: var(--black-color);
}

[data-overlay="overlay1"]:before {
    background-color: #080E1C;
}

[data-opacity="1"]:before {
    opacity: 0.1;
}

[data-opacity="2"]:before {
    opacity: 0.2;
}

[data-opacity="3"]:before {
    opacity: 0.3;
}

[data-opacity="4"]:before {
    opacity: 0.4;
}

[data-opacity="5"]:before {
    opacity: 0.5;
}

[data-opacity="6"]:before {
    opacity: 0.6;
}

[data-opacity="7"]:before {
    opacity: 0.7;
}

[data-opacity="8"]:before {
    opacity: 0.8;
}

[data-opacity="9"]:before {
    opacity: 0.9;
}

[data-opacity="10"]:before {
    opacity: 1;
}

/*------------------- 3.10. Animation -------------------*/
.ripple-animation, .play-btn:after, .play-btn:before {
    -webkit-animation-duration: var(--ripple-ani-duration);
    animation-duration: var(--ripple-ani-duration);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-name: ripple;
    animation-name: ripple;
}

@-webkit-keyframes ripple {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }

    30% {
        opacity: 0.4;
    }

    100% {
        -webkit-transform: scale(1.8);
        transform: scale(1.8);
        opacity: 0;
    }
}

@keyframes ripple {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }

    30% {
        opacity: 0.4;
    }

    100% {
        -webkit-transform: scale(1.8);
        transform: scale(1.8);
        opacity: 0;
    }
}

@-webkit-keyframes ripple2 {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }

    30% {
        opacity: 0.4;
    }

    100% {
        -webkit-transform: scale(2.8);
        transform: scale(2.8);
        opacity: 0;
    }
}

@keyframes ripple2 {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }

    30% {
        opacity: 0.4;
    }

    100% {
        -webkit-transform: scale(2.8);
        transform: scale(2.8);
        opacity: 0;
    }
}

.fancy-animation {
    -webkit-animation: morph 8s ease-in-out infinite;
    animation: morph 8s ease-in-out infinite;
}

@-webkit-keyframes morph {
    0% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
    }

    50% {
        border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%;
    }

    100% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
    }
}

@keyframes morph {
    0% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
    }

    50% {
        border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%;
    }

    100% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
    }
}

.movingX {
    -webkit-animation: movingX 8s linear infinite;
    animation: movingX 8s linear infinite;
}

@-webkit-keyframes movingX {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    50% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes movingX {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    50% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

.moving {
    -webkit-animation: moving 8s linear infinite;
    animation: moving 8s linear infinite;
}

@-webkit-keyframes moving {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    50% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes moving {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    50% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

.jump {
    -webkit-animation: jumpAni 7s linear infinite;
    animation: jumpAni 7s linear infinite;
}

@-webkit-keyframes jumpAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes jumpAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

.jump-reverse {
    -webkit-animation: jumpReverseAni 7s linear infinite;
    animation: jumpReverseAni 7s linear infinite;
}

@-webkit-keyframes jumpReverseAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    50% {
        -webkit-transform: translateY(30px);
        transform: translateY(30px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes jumpReverseAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    50% {
        -webkit-transform: translateY(30px);
        transform: translateY(30px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

.spin {
    -webkit-animation: spin 10s linear infinite;
    animation: spin 10s linear infinite;
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.pulse {
    -webkit-animation: pulse 6s linear infinite;
    animation: pulse 6s linear infinite;
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

.bg-color-ani,
.color-animate {
    -webkit-animation: bgColor 6s linear infinite;
    animation: bgColor 6s linear infinite;
}

@-webkit-keyframes bgColor {
    0% {
        background-color: #F2BA4C;
    }

    25% {
        background-color: #81F24C;
    }

    50% {
        background-color: #41F27D;
    }

    75% {
        background-color: #0500FF;
    }

    100% {
        background-color: #F2BA4C;
    }
}

@keyframes bgColor {
    0% {
        background-color: #F2BA4C;
    }

    25% {
        background-color: #81F24C;
    }

    50% {
        background-color: #41F27D;
    }

    75% {
        background-color: #0500FF;
    }

    100% {
        background-color: #F2BA4C;
    }
}

@-webkit-keyframes animate-positive {
    0% {
        width: 0;
    }
}

@keyframes animate-positive {
    0% {
        width: 0;
    }
}

.fadein,
.scalein,
.slidetopleft,
.slidebottomright,
.slideinleft,
.slideinright,
.slideindown,
.slideinup,
.rollinleft,
.rollinright,
.hero-img1 {
    opacity: 0;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-duration: 1.3s;
    animation-duration: 1.3s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-name: var(--animation-name);
    animation-name: var(--animation-name);
}

.swiper-slide-active .fadein {
    --animation-name: fadein;
}

.swiper-slide-active .scalein {
    --animation-name: scalein;
}

.swiper-slide-active .slidetopleft {
    --animation-name: slidetopleft;
}

.swiper-slide-active .slidebottomright {
    --animation-name: slidebottomright;
}

.swiper-slide-active .slideinleft {
    --animation-name: slideinleft;
}

.swiper-slide-active .slideinright {
    --animation-name: slideinright;
}

.swiper-slide-active .slideinup {
    --animation-name: slideinup;
}

.swiper-slide-active .slideindown {
    --animation-name: slideindown;
}

.swiper-slide-active .rollinleft {
    --animation-name: rollinleft;
}

.swiper-slide-active .rollinright {
    --animation-name: rollinright;
}

.swiper-slide-active .hero-img1 {
    --animation-name: heroImg1;
}

.hero-img1 {
    -webkit-animation-duration: 1.3s;
    animation-duration: 1.3s;
}

@-webkit-keyframes heroImg1 {
    0% {
        opacity: 0;
        -webkit-transform-origin: bottom center;
        transform-origin: bottom center;
        -webkit-transform: scaleX(0.8) scaleY(0);
        transform: scaleX(0.8) scaleY(0);
    }

    100% {
        opacity: 1;
        -webkit-transform-origin: bottom center;
        transform-origin: bottom center;
        -webkit-transform: scaleX(1) scaleY(1);
        transform: scaleX(1) scaleY(1);
    }
}

@keyframes heroImg1 {
    0% {
        opacity: 0;
        -webkit-transform-origin: bottom center;
        transform-origin: bottom center;
        -webkit-transform: scaleX(0.8) scaleY(0);
        transform: scaleX(0.8) scaleY(0);
    }

    100% {
        opacity: 1;
        -webkit-transform-origin: bottom center;
        transform-origin: bottom center;
        -webkit-transform: scaleX(1) scaleY(1);
        transform: scaleX(1) scaleY(1);
    }
}

@-webkit-keyframes fadein {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fadein {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-webkit-keyframes slideinup {
    0% {
        opacity: 0;
        -webkit-transform: translateY(100px);
        transform: translateY(100px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes slideinup {
    0% {
        opacity: 0;
        -webkit-transform: translateY(100px);
        transform: translateY(100px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes slideinright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(280px);
        transform: translateX(280px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes slideinright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(280px);
        transform: translateX(280px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes slideindown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-100px);
        transform: translateY(-100px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes slideindown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-100px);
        transform: translateY(-100px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes slideinleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px);
        transform: translateX(-100px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes slideinleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px);
        transform: translateX(-100px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes slidebottomright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(120px) translateY(120px);
        transform: translateX(120px) translateY(120px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0) translateY(0);
        transform: translateX(0) translateY(0);
    }
}

@keyframes slidebottomright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(120px) translateY(120px);
        transform: translateX(120px) translateY(120px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0) translateY(0);
        transform: translateX(0) translateY(0);
    }
}

@-webkit-keyframes slidetopleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px) translateY(-100px);
        transform: translateX(-100px) translateY(-100px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0) translateY(0);
        transform: translateX(0) translateY(0);
    }
}

@keyframes slidetopleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px) translateY(-100px);
        transform: translateX(-100px) translateY(-100px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0) translateY(0);
        transform: translateX(0) translateY(0);
    }
}

/*=================================
    04. Template Style
==================================*/
/*------------------- 4.1. Widget  -------------------*/
.widget_nav_menu ul,
.widget_meta ul,
.widget_pages ul,
.widget_archive ul,
.widget_categories ul,
.wp-block-categories ul {
    list-style: none;
    padding: 0;
    margin: 0 0 0 0;
}

.widget_nav_menu a,
.widget_meta a,
.widget_pages a,
.widget_archive a,
.widget_categories a,
.wp-block-categories a {
    font-size: 16px;
    display: block;
    background-color: var(--white-color);
    box-shadow: 0px 2px 4px rgba(2, 29, 53, 0.1);
    margin-bottom: 14px;
    padding: 17px 45px 17px 30px;
    font-size: 16px;
    line-height: 1.313;
    color: var(--body-color);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}

    .widget_nav_menu a::before,
    .widget_meta a::before,
    .widget_pages a::before,
    .widget_archive a::before,
    .widget_categories a::before,
    .wp-block-categories a::before {
        content: '\f061';
        position: absolute;
        right: 30px;
        top: 17px;
        font-family: var(--icon-font);
        font-weight: 600;
        color: inherit;
    }

.widget_nav_menu li,
.widget_meta li,
.widget_pages li,
.widget_archive li,
.widget_categories li,
.wp-block-categories li {
    display: block;
    position: relative;
}

    .widget_nav_menu li > span,
    .widget_meta li > span,
    .widget_pages li > span,
    .widget_archive li > span,
    .widget_categories li > span,
    .wp-block-categories li > span {
        color: var(--body-color);
        text-align: center;
        font-weight: 400;
        position: absolute;
        right: 30px;
        top: 14px;
        -webkit-transition: all ease-in-out 0.4s;
        transition: all ease-in-out 0.4s;
        pointer-events: none;
        min-width: 20px;
        text-align: right;
        background-color: var(--white-color);
    }

.widget_nav_menu .menu > li:last-child > a,
.widget_nav_menu > ul > li:last-child > a,
.widget_meta .menu > li:last-child > a,
.widget_meta > ul > li:last-child > a,
.widget_pages .menu > li:last-child > a,
.widget_pages > ul > li:last-child > a,
.widget_archive .menu > li:last-child > a,
.widget_archive > ul > li:last-child > a,
.widget_categories .menu > li:last-child > a,
.widget_categories > ul > li:last-child > a,
.wp-block-categories .menu > li:last-child > a,
.wp-block-categories > ul > li:last-child > a {
    border-bottom: none;
}

.widget_nav_menu a:hover,
.widget_meta a:hover,
.widget_pages a:hover,
.widget_archive a:hover,
.widget_categories a:hover,
.wp-block-categories a:hover {
    background-color: var(--theme-color);
    color: var(--white-color);
    box-shadow: none;
    border-left: 4px solid #FEC49E;
}

    .widget_nav_menu a:hover ~ span,
    .widget_meta a:hover ~ span,
    .widget_pages a:hover ~ span,
    .widget_archive a:hover ~ span,
    .widget_categories a:hover ~ span,
    .wp-block-categories a:hover ~ span {
        color: var(--white-color);
        background-color: var(--theme-color);
    }

.widget_nav_menu .sub-menu,
.widget_nav_menu .children,
.widget_meta .sub-menu,
.widget_meta .children,
.widget_pages .sub-menu,
.widget_pages .children,
.widget_archive .sub-menu,
.widget_archive .children,
.widget_categories .sub-menu,
.widget_categories .children,
.wp-block-categories .sub-menu,
.wp-block-categories .children {
    margin-left: 10px;
}

.wp-block-categories {
    list-style: none;
    padding: 0;
}

    .wp-block-categories > li:last-child > a {
        border-bottom: none;
    }

.widget_nav_menu a,
.widget_meta a,
.widget_pages a {
    padding-right: 20px;
}

.widget_nav_menu .sub-menu {
    margin-left: 10px;
}

.wp-block-archives {
    list-style: none;
    margin: 0;
    padding: 0;
    margin-bottom: 20px;
}

    .wp-block-archives a:not(:hover) {
        color: inherit;
    }

.th-blog ul.wp-block-archives li {
    margin: 5px 0;
}

.widget {
    padding: var(--widget-padding-y, 40px) var(--widget-padding-x, 40px);
    background-color: var(--smoke-color);
    margin-bottom: 40px;
    position: relative;
}

    .widget[data-overlay]:before {
        z-index: -1;
    }

    .widget .th-social a {
        box-shadow: 0px 2px 14px rgba(4, 6, 66, 0.1);
    }

    .widget select,
    .widget input,
    .widget .form-select,
    .widget .form-control,
    .widget textarea {
        background-color: var(--white-color);
    }

    .widget textarea {
        min-height: 120px;
    }

    .widget .form-group > i {
        background-color: var(--white-color);
    }

.widget_title {
    position: relative;
    font-size: 24px;
    font-family: var(--title-font);
    line-height: 1em;
    padding-bottom: 20px;
    margin: -0.12em 0 38px 0;
}

    .widget_title:after, .widget_title:before {
        content: '';
        height: 3px;
        width: 100%;
        background-color: var(--th-border-color);
        position: absolute;
        bottom: 0;
        left: 0;
    }

    .widget_title:after {
        background-color: var(--theme-color);
        width: 40px;
    }

.widget-form {
    --bs-gutter-x: 20px;
}

.widget .search-form {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

    .widget .search-form input {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding-right: 25px;
        border: 1px solid transparent;
        box-shadow: 0px 13px 25px rgba(0, 0, 0, 0.04);
    }

        .widget .search-form input:focus {
            border-color: var(--theme-color);
        }

    .widget .search-form button {
        border: none;
        font-size: 16px;
        font-size: 500;
        background-color: var(--theme-color);
        color: var(--white-color);
        display: inline-block;
        padding: 0;
        width: 56px;
        height: 100%;
        text-align: center;
        position: absolute;
        top: 0;
        right: 0;
    }

        .widget .search-form button:hover {
            background-color: var(--title-color);
        }

.wp-block-tag-cloud a,
.tagcloud a {
    display: inline-block;
    font-size: 14px;
    font-weight: 400;
    font-family: var(--body-font);
    text-transform: capitalize;
    line-height: 1;
    padding: 13px 20px 13px 20px;
    margin-right: 6px;
    margin-bottom: 10px;
    color: var(--body-color);
    background-color: var(--white-color);
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.06);
}

    .wp-block-tag-cloud a:hover,
    .tagcloud a:hover {
        background-color: var(--theme-color);
        color: var(--white-color) !important;
        border-color: var(--theme-color);
    }

.wp-block-tag-cloud,
.tagcloud {
    margin-right: -10px;
    margin-bottom: -10px;
}

.sidebar-gallery {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    max-width: 320px;
}

    .sidebar-gallery .gallery-btn {
        position: absolute;
        top: 50%;
        left: 50%;
        color: var(--white-color);
        visibility: hidden;
        opacity: 0;
        -webkit-transform: translate(-50%, 20px);
        -ms-transform: translate(-50%, 20px);
        transform: translate(-50%, 20px);
    }

        .sidebar-gallery .gallery-btn:hover {
            color: var(--theme-color);
        }

    .sidebar-gallery .gallery-thumb {
        overflow: hidden;
        position: relative;
    }

        .sidebar-gallery .gallery-thumb:before {
            content: '';
            height: calc(100% - 14px);
            width: calc(100% - 14px);
            background-color: var(--title-color);
            opacity: 0.6;
            position: absolute;
            top: 7px;
            left: 7px;
            border: 1px solid var(--white-color);
            -webkit-transform: scaleX(0);
            -ms-transform: scaleX(0);
            transform: scaleX(0);
            border-radius: inherit;
            -webkit-transition: 0.4s ease-in-out;
            transition: 0.4s ease-in-out;
        }

        .sidebar-gallery .gallery-thumb img {
            width: 100%;
        }

        .sidebar-gallery .gallery-thumb:hover:before {
            -webkit-transform: scaleX(1);
            -ms-transform: scaleX(1);
            transform: scaleX(1);
        }

        .sidebar-gallery .gallery-thumb:hover .gallery-btn {
            visibility: visible;
            opacity: 1;
            -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
        }

    .sidebar-gallery .wp-block-image {
        overflow: hidden;
        position: relative;
        width: 100% !important;
    }

        .sidebar-gallery .wp-block-image img {
            width: 100%;
        }

.recent-post {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 20px;
}

    .recent-post:last-child {
        margin-bottom: 0;
    }

    .recent-post .media-img {
        margin-right: 15px;
        width: 85px;
        overflow: hidden;
        border-radius: 0;
        position: relative;
    }

        .recent-post .media-img img {
            width: 100%;
            -webkit-transition: 0.4s ease-in-out;
            transition: 0.4s ease-in-out;
        }

        .recent-post .media-img:after {
            content: '\f0c1';
            font-family: var(--icon-font);
            position: absolute;
            inset: 0;
            text-align: center;
            line-height: 85px;
            font-size: 24px;
            background-color: rgba(0, 0, 0, 0.7);
            color: var(--theme-color);
            pointer-events: none;
            -webkit-transform: scale(0);
            -ms-transform: scale(0);
            transform: scale(0);
            -webkit-transition: 0.4s ease-in-out;
            transition: 0.4s ease-in-out;
        }

    .recent-post .post-title {
        font-weight: 500;
        font-size: 16px;
        line-height: 26px;
        margin: 0 0 8px 0;
        font-family: var(--title-font);
        text-transform: capitalize;
    }

    .recent-post .recent-post-meta a {
        text-transform: capitalize;
        font-size: 14px;
        color: var(--body-color);
        font-family: var(--body-font);
    }

        .recent-post .recent-post-meta a i {
            margin-right: 6px;
            color: var(--theme-color);
        }

        .recent-post .recent-post-meta a:hover {
            color: var(--theme-color);
        }

    .recent-post:hover .media-img img {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
    }

    .recent-post:hover .media-img:after {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }

.sidebar-area {
    margin-bottom: -10px;
}

    .sidebar-area ul.wp-block-latest-posts {
        margin-bottom: 0;
    }

        .sidebar-area ul.wp-block-latest-posts li:last-child {
            margin-bottom: 0;
        }

    .sidebar-area select,
    .sidebar-area input {
        background-color: var(--white-color);
    }

    .sidebar-area .widget_nav_menu > ul,
    .sidebar-area .widget_nav_menu .menu,
    .sidebar-area .widget_meta > ul,
    .sidebar-area .widget_meta .menu,
    .sidebar-area .widget_pages > ul,
    .sidebar-area .widget_pages .menu,
    .sidebar-area .widget_archive > ul,
    .sidebar-area .widget_archive .menu,
    .sidebar-area .widget_categories > ul,
    .sidebar-area .widget_categories .menu,
    .sidebar-area .wp-block-categories > ul,
    .sidebar-area .wp-block-categories .menu {
        margin: 0 0 -14px 0;
    }

    .sidebar-area .wp-block-categories {
        margin: 0px 0 -14px 0;
    }

    .sidebar-area .sidebar-gallery {
        margin-bottom: 0 !important;
    }

    .sidebar-area .widget .wp-block-search {
        margin-bottom: 0;
    }

    .sidebar-area .wp-block-search__label,
    .sidebar-area .wp-block-group__inner-container h2 {
        position: relative;
        font-size: 24px;
        font-weight: 700;
        font-family: var(--title-font);
        line-height: 1em;
        padding-bottom: 20px;
        margin: -0.12em 0 38px 0;
    }

        .sidebar-area .wp-block-search__label:after, .sidebar-area .wp-block-search__label:before,
        .sidebar-area .wp-block-group__inner-container h2:after,
        .sidebar-area .wp-block-group__inner-container h2:before {
            content: '';
            height: 3px;
            width: 100%;
            background-color: var(--th-border-color);
            position: absolute;
            bottom: 0;
            left: 0;
        }

        .sidebar-area .wp-block-search__label:after,
        .sidebar-area .wp-block-group__inner-container h2:after {
            background-color: var(--theme-color);
            width: 40px;
        }

    .sidebar-area ol.wp-block-latest-comments {
        padding: 0;
        margin: 0;
    }

        .sidebar-area ol.wp-block-latest-comments li {
            line-height: 1.5;
            margin: 0 0 20px 0;
            border-bottom: 1px solid rgba(0, 0, 0, 0.1);
            padding-bottom: 20px;
        }

            .sidebar-area ol.wp-block-latest-comments li:last-child {
                margin-bottom: 0;
                padding-bottom: 0;
                border-bottom: none;
            }

.download-widget-wrap .th-btn {
    width: 100%;
}

    .download-widget-wrap .th-btn:first-child {
        margin-bottom: 15px;
    }

    .download-widget-wrap .th-btn.style2 {
        color: var(--body-color);
    }

        .download-widget-wrap .th-btn.style2:before {
            background-color: var(--theme-color);
        }

        .download-widget-wrap .th-btn.style2:hover {
            color: var(--white-color);
            border-color: var(--theme-color);
        }

.widget_call {
    background-color: var(--title-color);
    position: relative;
    padding: 0 !important;
}

    .widget_call .widget_title {
        color: var(--white-color);
    }

.widget-map iframe {
    min-height: 280px;
}

.widget-call {
    position: relative;
    z-index: 2;
    overflow: hidden;
    text-align: center;
    padding: 0 10px var(--widget-padding-y, 40px) 10px;
}

    .widget-call:before {
        content: '';
        width: 368px;
        height: 368px;
        background-color: var(--theme-color);
        border: 6px solid var(--white-color);
        position: absolute;
        bottom: calc(100% - 120px);
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        border-radius: 50%;
        z-index: -1;
    }

    .widget-call .text {
        display: block;
        margin: 22px auto 25px auto;
        color: var(--white-color);
        max-width: 310px;
    }

    .widget-call .call {
        font-size: 30px;
        font-weight: 600;
        color: var(--white-color);
        display: block;
        max-width: -webkit-fit-content;
        max-width: -moz-fit-content;
        max-width: fit-content;
        margin: 30px auto 0 auto;
    }

        .widget-call .call:hover {
            color: var(--theme-color);
        }

    .widget-call .play-btn {
        --icon-size: 60px;
    }

        .widget-call .play-btn > i {
            font-size: 30px;
        }

    .widget-call .box-title {
        font-weight: 500;
        color: var(--white-color);
        margin-bottom: 35px;
        padding-top: 20px;
    }

/* Medium Large devices */
@media (max-width: 1299px) {
    .widget-call .title {
        font-size: 34px;
    }
}

.price_slider_wrapper {
    margin-top: -0.5em;
}

    .price_slider_wrapper .price_label span {
        display: inline-block;
        color: var(--body-color);
    }

    .price_slider_wrapper .ui-slider {
        height: 6px;
        position: relative;
        width: 100%;
        background-color: var(--theme-color);
        border: none;
        margin-top: 15px;
        margin-bottom: 25px;
        cursor: url("../img/theme-img/pointer.png"), auto;
        border-radius: 0;
    }

    .price_slider_wrapper .ui-slider-range {
        border: none;
        cursor: url("../img/theme-img/pointer.png"), auto;
        position: absolute;
        top: 0;
        height: 100%;
        z-index: 1;
        display: block;
        background-color: var(--title-color);
    }

    .price_slider_wrapper .ui-slider-handle {
        width: 16px;
        height: 16px;
        line-height: 16px;
        border-radius: 50%;
        text-align: center;
        padding: 0;
        cursor: url("../img/theme-img/pointer.png"), auto;
        position: absolute;
        margin-top: -5px;
        z-index: 2;
        background-color: var(--white-color);
        border: 3px solid var(--title-color);
        -webkit-transform: translateX(-1px);
        -ms-transform: translateX(-1px);
        transform: translateX(-1px);
    }

        .price_slider_wrapper .ui-slider-handle:focus {
            outline: none;
            box-shadow: 1.5px 2.598px 10px 0px rgba(0, 0, 0, 0.15);
        }

        .price_slider_wrapper .ui-slider-handle:last-child {
            -webkit-transform: translateX(-9px);
            -ms-transform: translateX(-9px);
            transform: translateX(-9px);
        }

    .price_slider_wrapper button,
    .price_slider_wrapper .button {
        background-color: var(--theme-color);
        color: var(--white-color);
        font-weight: 500;
        line-height: 1.6;
        text-transform: capitalize;
        text-align: center;
        border: none;
        display: inline-block;
        overflow: hidden;
        position: relative;
        z-index: 2;
        padding: 7px 20px;
        min-width: 100px;
        font-size: 14px;
        border-radius: 0;
        -webkit-transition: 0.4s ease-in;
        transition: 0.4s ease-in;
    }

        .price_slider_wrapper button:hover,
        .price_slider_wrapper .button:hover {
            background-color: var(--title-color);
        }

.widget_shopping_cart .widget_title {
    margin-bottom: 35px;
    border-bottom: none;
}

.widget_shopping_cart ul {
    margin: 0;
    padding: 0;
}

    .widget_shopping_cart ul li {
        list-style-type: none;
    }

.widget_shopping_cart .mini_cart_item {
    position: relative;
    padding: 30px 30px 30px 90px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 0;
    text-align: left;
}

    .widget_shopping_cart .mini_cart_item:first-child {
        border-top: 1px solid rgba(0, 0, 0, 0.1);
    }

.widget_shopping_cart .cart_list a:not(.remove) {
    display: block;
    color: var(--body-color);
    font-size: 18px;
    font-family: var(--title-font);
    color: var(--title-color);
}

    .widget_shopping_cart .cart_list a:not(.remove):hover {
        color: var(--theme-color);
    }

.widget_shopping_cart .cart_list a.remove {
    position: absolute;
    top: 50%;
    left: 95%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: var(--body-color);
}

    .widget_shopping_cart .cart_list a.remove:hover {
        color: var(--theme-color);
    }

.widget_shopping_cart .cart_list img {
    width: 75px;
    height: 75px;
    position: absolute;
    left: 0;
    top: 18px;
}

.widget_shopping_cart .quantity {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    white-space: nowrap;
    vertical-align: top;
    margin-right: 20px;
    font-size: 14px;
    font-weight: 500;
}

.widget_shopping_cart .total {
    margin-top: 20px;
    font-size: 18px;
    color: var(--title-color);
    font-family: var(--body-font);
}

    .widget_shopping_cart .total strong {
        font-family: var(--title-font);
    }

.widget_shopping_cart .amount {
    padding-left: 5px;
}

.widget_shopping_cart .th-btn {
    margin-right: 15px;
}

    .widget_shopping_cart .th-btn:last-child {
        margin-right: 0;
    }

.th-video-widget .video-thumb {
    position: relative;
}

.th-video-widget .play-btn {
    --icon-size: 60px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

    .th-video-widget .play-btn i {
        font-size: 16px;
    }

.th-video-widget .video-thumb-title {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
    margin-top: 10px;
    margin-bottom: -0.3em;
}

.widget_recent_entries ul {
    margin: -0.3em 0 0 0;
    padding: 0;
    list-style: none;
}

    .widget_recent_entries ul li > a {
        color: var(--body-color);
        font-weight: 500;
        display: inline-block;
    }

        .widget_recent_entries ul li > a:hover {
            color: var(--theme-color);
        }

    .widget_recent_entries ul li span.post-date {
        font-size: 14px;
    }

    .widget_recent_entries ul li:not(:last-child) {
        border-bottom: 1px solid #dadada;
        padding-bottom: 12px;
        margin-bottom: 12px;
    }

.widget_recent_comments ul,
.wp-block-latest-comments ul {
    list-style-type: none;
    padding-left: 0;
}

ul.widget_recent_comments,
ol.widget_recent_comments,
.wp-block-latest-comments {
    margin-top: -0.11em;
    padding-left: 0;
}

    .widget_recent_comments ol,
    .widget_recent_comments ul,
    .wp-block-latest-comments ol,
    .wp-block-latest-comments ul {
        margin-bottom: 0;
    }

    .widget_recent_comments li,
    .wp-block-latest-comments li {
        margin-bottom: 0;
        color: var(--body-color);
        padding-left: 30px;
        position: relative;
    }

        .widget_recent_comments li:before,
        .wp-block-latest-comments li:before {
            content: "\f086";
            position: absolute;
            left: 0;
            top: -1px;
            color: var(--theme-color);
            font-family: var(--icon-font);
        }

    .widget_recent_comments.has-avatars li,
    .wp-block-latest-comments.has-avatars li {
        padding-left: 0;
        padding-bottom: 0 !important;
    }

        .widget_recent_comments.has-avatars li:before,
        .wp-block-latest-comments.has-avatars li:before {
            display: none;
        }

    .widget_recent_comments .avatar,
    .wp-block-latest-comments .avatar {
        margin-top: 0.4em;
    }

    .widget_recent_comments li:not(:last-child),
    .wp-block-latest-comments li:not(:last-child) {
        padding-bottom: 12px;
    }

    .widget_recent_comments article,
    .wp-block-latest-comments article {
        line-height: 1.5;
    }

    .widget_recent_comments a,
    .wp-block-latest-comments a {
        color: inherit;
    }

        .widget_recent_comments a:hover,
        .wp-block-latest-comments a:hover {
            color: var(--theme-color);
        }

.wp-block-latest-comments__comment {
    line-height: 1.6;
}

    .wp-block-latest-comments__comment a {
        color: var(--body-color);
    }

        .wp-block-latest-comments__comment a:hover {
            color: var(--theme-color);
        }

    .wp-block-latest-comments__comment:last-child {
        margin-bottom: 0;
    }

.wp-block-calendar tbody td,
.wp-block-calendar th {
    padding: 10px;
}

.wp-block-calendar,
.calendar_wrap {
    position: relative;
    background-color: #fff;
    padding-bottom: 0;
    border: none;
}

    .wp-block-calendar span[class*="wp-calendar-nav"],
    .calendar_wrap span[class*="wp-calendar-nav"] {
        position: absolute;
        top: 9px;
        left: 20px;
        font-size: 14px;
        color: var(--white-color);
        font-weight: 400;
        z-index: 1;
        line-height: 1.7;
    }

        .wp-block-calendar span[class*="wp-calendar-nav"] a,
        .calendar_wrap span[class*="wp-calendar-nav"] a {
            color: inherit;
        }

    .wp-block-calendar span.wp-calendar-nav-next,
    .calendar_wrap span.wp-calendar-nav-next {
        left: auto;
        right: 20px;
    }

    .wp-block-calendar caption,
    .calendar_wrap caption {
        caption-side: top;
        text-align: center;
        color: var(--white-color);
        background-color: var(--theme-color);
    }

    .wp-block-calendar th,
    .calendar_wrap th {
        font-size: 14px;
        padding: 5px 5px;
        border: none;
        text-align: center;
        border-right: 1px solid #fff;
        color: var(--title-color);
        font-weight: 500;
    }

        .wp-block-calendar th:first-child,
        .calendar_wrap th:first-child {
            border-left: 1px solid #eee;
        }

        .wp-block-calendar th:last-child,
        .calendar_wrap th:last-child {
            border-right: 1px solid #eee;
        }

    .wp-block-calendar table th,
    .calendar_wrap table th {
        font-weight: 500;
    }

    .wp-block-calendar td,
    .calendar_wrap td {
        font-size: 14px;
        padding: 5px 5px;
        color: #01133c;
        border: 1px solid #eee;
        text-align: center;
        background-color: transparent;
        -webkit-transition: all ease 0.4s;
        transition: all ease 0.4s;
    }

    .wp-block-calendar #today,
    .calendar_wrap #today {
        color: var(--theme-color);
        background-color: var(--white-color);
        border-color: #ededed;
    }

    .wp-block-calendar thead,
    .calendar_wrap thead {
        background-color: #fff;
    }

    .wp-block-calendar .wp-calendar-table,
    .calendar_wrap .wp-calendar-table {
        margin-bottom: 0;
    }

    .wp-block-calendar .wp-calendar-nav .pad,
    .calendar_wrap .wp-calendar-nav .pad {
        display: none;
    }

    .wp-block-calendar a,
    .calendar_wrap a {
        color: inherit;
        text-decoration: none;
    }

        .wp-block-calendar a:hover,
        .calendar_wrap a:hover {
            color: var(--title-color);
        }

.wp-block-calendar {
    margin-bottom: 30px;
    border: none;
    padding-bottom: 0;
}

    .wp-block-calendar table caption {
        color: var(--white-color);
    }

ul.widget_rss, ul.wp-block-rss,
ol.widget_rss,
ol.wp-block-rss {
    padding-left: 0;
}

.widget_rss,
.wp-block-rss {
    list-style-type: none;
}

    .widget_rss ul,
    .wp-block-rss ul {
        margin: -0.2em 0 -0.5em 0;
        padding: 0;
        list-style: none;
    }

        .widget_rss ul .rsswidget,
        .wp-block-rss ul .rsswidget {
            color: var(--title-color);
            font-family: var(--theme-font);
            font-size: 18px;
            display: block;
            margin-bottom: 10px;
        }

        .widget_rss ul .rssSummary,
        .wp-block-rss ul .rssSummary {
            font-size: 14px;
            margin-bottom: 7px;
            line-height: 1.5;
        }

        .widget_rss ul a,
        .wp-block-rss ul a {
            display: block;
            font-weight: 600;
            color: inherit;
        }

            .widget_rss ul a:hover,
            .wp-block-rss ul a:hover {
                color: var(--theme-color);
            }

        .widget_rss ul .rss-date,
        .wp-block-rss ul .rss-date {
            font-size: 14px;
            display: inline-block;
            margin-bottom: 5px;
            font-weight: 400;
            color: var(--title-color);
        }

            .widget_rss ul .rss-date:before,
            .wp-block-rss ul .rss-date:before {
                content: "\f073";
                font-family: var(--icon-font);
                margin-right: 10px;
                font-weight: 300;
                color: var(--theme-color);
            }

        .widget_rss ul cite,
        .wp-block-rss ul cite {
            font-weight: 500;
            color: var(--title-color);
            font-family: var(--body-font);
            font-size: 14px;
        }

            .widget_rss ul cite:before,
            .wp-block-rss ul cite:before {
                content: "";
                position: relative;
                top: -1px;
                left: 0;
                width: 20px;
                height: 2px;
                display: inline-block;
                vertical-align: middle;
                margin-right: 8px;
                background-color: var(--theme-color);
            }

    .widget_rss li:not(:last-child),
    .wp-block-rss li:not(:last-child) {
        margin-bottom: 16px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        padding-bottom: 16px;
    }

    .widget_rss a:hover,
    .wp-block-rss a:hover {
        color: var(--theme-color);
    }

.textwidget {
    margin-top: -0.1em;
}

.sidebar-area .widget_shopping_cart .th-btn {
    margin-right: 10px;
    padding: 8px 22px;
    font-size: 14px;
}

@media (min-width: 1200px) {
    .sidebar-shop .widget {
        padding: 30px;
    }
}

@media (min-width: 992px) {
    .sidebar-shop .widget {
        margin-bottom: 24px;
    }
}

/* Large devices */
@media (max-width: 1199px) {
    .widget {
        --widget-padding-y: 30px;
        --widget-padding-x: 30px;
    }

    .widget_title {
        font-size: 22px;
        margin: -0.12em 0 28px 0;
    }

    .author-widget-wrap .name {
        font-size: 22px;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .sidebar-area {
        padding-top: 30px;
    }

    .widget {
        --widget-padding-y: 40px;
        --widget-padding-x: 40px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .widget {
        padding: 20px;
    }
}

@media (max-width: 330px) {
    .recent-post .post-title {
        font-size: 14px;
        line-height: 24px;
    }

    .recent-post .recent-post-meta a {
        font-size: 12px;
    }
}

.footer-widget {
    margin-bottom: 50px;
}

    .footer-widget,
    .footer-widget .widget {
        padding: 0;
        border: none;
        padding-bottom: 0;
        background-color: transparent;
        box-shadow: none;
    }

        .footer-widget .form-group > i {
            color: var(--theme-color);
            top: 18px;
        }

        .footer-widget .sidebar-gallery {
            max-width: 287px;
            gap: 11px;
        }

            .footer-widget .sidebar-gallery .gallery-thumb {
                border-radius: 5px;
            }

        .footer-widget .widget_title {
            max-width: 270px;
            color: var(--black-color2);
            font-weight: 400;
            text-transform: capitalize;
            margin: -0.12em 0 36px 0;
            padding: 0 0 20px 0;
        }

            .footer-widget .widget_title:before {
                display: none;
            }

            .footer-widget .widget_title:after {
                border-radius: 0;
                height: 2px;
                width: 61px;
                background-color: transparent;
                background-image: -webkit-linear-gradient(left, var(--theme-color) 0, var(--theme-color) 40px, transparent 40px, transparent 43px, var(--theme-color) 43px, var(--theme-color) 53px, transparent 53px, transparent 56px, var(--theme-color) 56px, var(--theme-color) 61px);
                background-image: linear-gradient(to right, var(--theme-color) 0, var(--theme-color) 40px, transparent 40px, transparent 43px, var(--theme-color) 43px, var(--theme-color) 53px, transparent 53px, transparent 56px, var(--theme-color) 56px, var(--theme-color) 61px);
            }

            .footer-widget .widget_title img {
                margin: -7px 10px 0 0;
            }

        .footer-widget.widget_meta ul, .footer-widget.widget_pages ul, .footer-widget.widget_archive ul, .footer-widget.widget_categories ul, .footer-widget.widget_nav_menu ul {
            margin-top: -3px;
        }

        .footer-widget.widget_meta .menu,
        .footer-widget.widget_meta > ul, .footer-widget.widget_pages .menu,
        .footer-widget.widget_pages > ul, .footer-widget.widget_archive .menu,
        .footer-widget.widget_archive > ul, .footer-widget.widget_categories .menu,
        .footer-widget.widget_categories > ul, .footer-widget.widget_nav_menu .menu,
        .footer-widget.widget_nav_menu > ul {
            margin-bottom: -3px;
        }

        .footer-widget.widget_meta a, .footer-widget.widget_pages a, .footer-widget.widget_archive a, .footer-widget.widget_categories a, .footer-widget.widget_nav_menu a {
            font-size: 16px;
            font-weight: 400;
            padding: 0 0 0 16px;
            margin-bottom: 22px;
            font-family: var(--body-font);
            color: var(--body-color);
            display: block;
            max-width: 100%;
            width: -webkit-max-content;
            width: -moz-max-content;
            width: max-content;
            padding-right: 0;
            background-color: transparent;
            border: none !important;
            box-shadow: none;
            position: relative;
        }

            .footer-widget.widget_meta a:before, .footer-widget.widget_pages a:before, .footer-widget.widget_archive a:before, .footer-widget.widget_categories a:before, .footer-widget.widget_nav_menu a:before {
                content: "\f054";
                font-weight: 600;
                left: 0;
                top: 2px;
                -webkit-transform: translateY(0);
                -ms-transform: translateY(0);
                transform: translateY(0);
                font-size: 0.9em;
                background-color: transparent;
                border: none;
                color: inherit;
            }

            .footer-widget.widget_meta a:hover, .footer-widget.widget_pages a:hover, .footer-widget.widget_archive a:hover, .footer-widget.widget_categories a:hover, .footer-widget.widget_nav_menu a:hover {
                background-color: transparent;
                color: var(--theme-color);
            }

                .footer-widget.widget_meta a:hover:before, .footer-widget.widget_pages a:hover:before, .footer-widget.widget_archive a:hover:before, .footer-widget.widget_categories a:hover:before, .footer-widget.widget_nav_menu a:hover:before {
                    color: var(--theme-color);
                }

        .footer-widget.widget_meta li > span, .footer-widget.widget_pages li > span, .footer-widget.widget_archive li > span, .footer-widget.widget_categories li > span, .footer-widget.widget_nav_menu li > span {
            width: auto;
            height: auto;
            position: relative;
            background-color: transparent;
            color: var(--body-color);
            line-height: 1;
        }

        .footer-widget.widget_meta li:last-child a, .footer-widget.widget_pages li:last-child a, .footer-widget.widget_archive li:last-child a, .footer-widget.widget_categories li:last-child a, .footer-widget.widget_nav_menu li:last-child a {
            margin-bottom: 0;
        }

        .footer-widget .recent-post {
            max-width: 300px;
            margin-top: -0.4em;
            margin-bottom: 20px;
        }

            .footer-widget .recent-post .media-img {
                max-width: 74px;
            }

                .footer-widget .recent-post .media-img:after {
                    line-height: 74px;
                }

            .footer-widget .recent-post .post-title {
                color: var(--white-color);
                font-weight: 500;
            }

            .footer-widget .recent-post:last-child {
                margin-bottom: 0;
                padding-bottom: 0;
                border-bottom: 0;
            }

            .footer-widget .recent-post .recent-post-meta a {
                font-weight: 400;
                line-height: 1.2;
            }

            .footer-widget .recent-post .recent-post-meta i {
                color: var(--theme-color);
            }

            .footer-widget .recent-post .recent-post-meta a:hover i {
                color: var(--theme-color);
            }

        .footer-widget .sidebar-gallery {
            max-width: 250px;
        }

.about-logo {
    margin-bottom: 15px;
}

.th-widget-about {
    max-width: 350px;
}

    .th-widget-about .about-logo {
        margin-bottom: 40px;
    }

    .th-widget-about .about-text {
        margin-bottom: 33px;
        margin-top: -0.4em;
    }

.footer-text {
    margin-top: -0.4em;
    margin-bottom: 25px;
}

.social-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

    .social-box .social-title {
        font-size: 20px;
        color: var(--white-color);
        font-weight: 600;
        margin-right: 20px;
        margin-bottom: 0;
    }

.icon-group a {
    color: var(--white-color);
    font-size: 18px;
    margin-right: 17px;
}

    .icon-group a:last-child {
        margin-right: 0;
    }

.newsletter-form {
    position: relative;
    max-width: 465px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
}

    .newsletter-form .th-btn {
        min-width: 145px;
        padding: 21px 20px;
    }

/* Large devices */
@media (max-width: 1199px) {
    .footer-widget.widget_meta a, .footer-widget.widget_pages a, .footer-widget.widget_archive a, .footer-widget.widget_categories a, .footer-widget.widget_nav_menu a {
        margin-bottom: 16px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .footer-widget .widget_title {
        margin-bottom: 35px;
    }

    .social-box.mb-30 {
        margin-bottom: 25px;
    }
}

/*------------------- 4.2. Header  -------------------*/
.th-header {
    position: relative;
    z-index: 41;
}

    .th-header .icon-btn {
        border-radius: 99px;
    }

    .th-header .menu-area {
        position: relative;
        z-index: 2;
    }

.sticky-wrapper {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    background-color: var(--body-bg);
}

    .sticky-wrapper.sticky {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 999; /* keep the scrolled/fixed header above page content */
        background-color: var(--body-bg);
        -webkit-filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.07));
        filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.07));
        -webkit-animation: stickyAni 0.4s ease-in-out;
        animation: stickyAni 0.4s ease-in-out;
    }

@-webkit-keyframes stickyAni {
    0% {
        -webkit-transform: translate3d(0, -40px, 0) scaleY(0.8);
        transform: translate3d(0, -40px, 0) scaleY(0.8);
        opacity: 0.7;
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0) scaleY(1);
        transform: translate3d(0, 0, 0) scaleY(1);
        opacity: 1;
    }
}

@keyframes stickyAni {
    0% {
        -webkit-transform: translate3d(0, -40px, 0) scaleY(0.8);
        transform: translate3d(0, -40px, 0) scaleY(0.8);
        opacity: 0.7;
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0) scaleY(1);
        transform: translate3d(0, 0, 0) scaleY(1);
        opacity: 1;
    }
}

.main-menu a {
    display: block;
    position: relative;
    font-weight: 600;
    font-size: 16px;
    font-family: var(--body-font);
    color: var(--title-color);
    text-transform: uppercase;
}

    .main-menu a:hover {
        color: var(--theme-color);
    }

.main-menu > ul > li {
    margin: 0 17px;
}

    .main-menu > ul > li > a {
        padding: 36.5px 0;
    }

        .main-menu > ul > li > a:hover {
            color: var(--theme-color);
        }

.main-menu ul {
    margin: 0;
    padding: 0;
}

    .main-menu ul li {
        list-style-type: none;
        display: inline-block;
        position: relative;
    }

        .main-menu ul li.menu-item-has-children {
            padding-right: 1px;
        }

            .main-menu ul li.menu-item-has-children > a:after {
                content: "\2b";
                display: inline-block;
                position: relative;
                font-family: var(--icon-font);
                margin-left: 4px;
                font-weight: 600;
                top: 0;
                font-size: 0.9em;
                color: inherit;
                -webkit-transition: -webkit-transform 0.4s ease-in-out;
                transition: -webkit-transform 0.4s ease-in-out;
                transition: transform 0.4s ease-in-out;
                transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
            }

            .main-menu ul li.menu-item-has-children > a:hover:after {
                content: "\f068";
                -webkit-transform: rotate(180deg);
                -ms-transform: rotate(180deg);
                transform: rotate(180deg);
            }

        .main-menu ul li:last-child {
            margin-right: 0 !important;
        }

        .main-menu ul li:first-child {
            margin-left: 0 !important;
        }

        .main-menu ul li:hover > ul.sub-menu {
            visibility: visible;
            opacity: 1;
            -webkit-transform: scaleY(1);
            -ms-transform: scaleY(1);
            transform: scaleY(1);
            z-index: 9;
        }

    .main-menu ul.sub-menu {
        position: absolute;
        text-align: left;
        top: 100%;
        left: 0;
        background-color: var(--body-bg);
        visibility: hidden;
        min-width: 230px;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
        padding: 7px;
        left: -14px;
        opacity: 0;
        z-index: -1;
        box-shadow: 0px 4px 15px rgba(1, 15, 28, 0.06);
        border-radius: 0;
        -webkit-transform: scaleY(0);
        -ms-transform: scaleY(0);
        transform: scaleY(0);
        -webkit-transform-origin: top center;
        -ms-transform-origin: top center;
        transform-origin: top center;
        -webkit-transition: all 0.4s ease 0s;
        transition: all 0.4s ease 0s;
    }

        .main-menu ul.sub-menu a {
            font-size: 16px;
            line-height: 30px;
        }

    .main-menu ul.sub-menu {
        padding: 18px 20px 18px 18px;
        left: -27px;
    }

        .main-menu ul.sub-menu li {
            display: block;
            margin: 0 0;
            padding: 0px 9px;
        }

            .main-menu ul.sub-menu li.menu-item-has-children > a:after {
                content: "\2b";
                float: right;
                top: 1px;
                display: inline-block;
            }

            .main-menu ul.sub-menu li.menu-item-has-children > a:hover:after {
                content: "\f068";
                -webkit-transform: rotate(180deg);
                -ms-transform: rotate(180deg);
                transform: rotate(180deg);
            }

            .main-menu ul.sub-menu li a {
                position: relative;
                padding-left: 0;
                text-transform: capitalize;
            }

                .main-menu ul.sub-menu li a:before {
                    content: "\f2e6";
                    position: absolute;
                    top: 6px;
                    left: 10px;
                    font-family: var(--icon-font);
                    width: 11px;
                    height: 11px;
                    text-align: center;
                    border-radius: 50%;
                    display: inline-block;
                    font-size: 1em;
                    line-height: 1;
                    color: var(--theme-color);
                    font-weight: 900;
                    opacity: 0;
                    visibility: visible;
                    -webkit-transition: 0.3s ease-in-out;
                    transition: 0.3s ease-in-out;
                }

                .main-menu ul.sub-menu li a:hover {
                    padding-left: 23px;
                }

                    .main-menu ul.sub-menu li a:hover:before {
                        visibility: visible;
                        opacity: 1;
                        left: 0;
                    }

            .main-menu ul.sub-menu li ul.sub-menu {
                left: 100%;
                right: auto;
                top: 0;
                margin: 0 0;
                margin-left: 20px;
            }

                .main-menu ul.sub-menu li ul.sub-menu li ul {
                    left: 100%;
                    right: auto;
                }

@media (max-width: 1500px) {
    .main-menu > ul > li {
        margin: 0 12px;
    }
}

.menu-style1 > ul > li {
    margin: 0 14px;
    /* Medium Large devices */
}

@media (max-width: 1299px) {
    .menu-style1 > ul > li {
        margin: 0 10px;
    }
}

.menu-style1 > ul > li > a {
    padding: 17px 0;
    color: var(--white-color);
}

    .menu-style1 > ul > li > a:hover {
        color: var(--theme-color);
    }

.menu-style1 ul li.menu-item-has-children > a:after {
    color: var(--white-color);
}

.simple-icon {
    border: none;
    background-color: transparent;
    padding: 0;
    position: relative;
    z-index: 2;
    font-size: 18px;
}

    .simple-icon:has(.badge) {
        padding-right: 10px;
        padding-top: 4px;
    }

    .simple-icon .badge {
        right: 0;
        top: 0;
        font-size: 11px;
    }

.header-button {
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px;
    /* Extra small devices */
}

@media (max-width: 575px) {
    .header-button {
        gap: 15px;
    }
}

.header-button .icon-btn {
    background-color: transparent;
}

    .header-button .icon-btn:hover {
        background-color: var(--theme-color);
    }

    .header-button .icon-btn .badge {
        font-size: 12px;
        background-color: var(--theme-color);
    }

    .header-button .icon-btn:hover .badge {
        background-color: var(--title-color);
    }

.social-links .social-title {
    font-weight: 500;
    font-size: 16px;
    display: inline-block;
    margin: 0 10px 0 0;
    color: var(--body-color);
}

.social-links a {
    font-size: 16px;
    display: inline-block;
    color: var(--body-color);
    margin: 0 15px 0 0;
}

    .social-links a:last-child {
        margin-right: 0 !important;
    }

    .social-links a:hover {
        color: var(--theme-color);
    }

.header-logo {
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 20px;
}

.header-links ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.header-links li {
    display: inline-block;
    position: relative;
    font-size: 16px;
    font-weight: 400;
}

    .header-links li:not(:last-child) {
        margin: 0 55px 0 0;
    }

        .header-links li:not(:last-child):after {
            content: '';
            height: 16px;
            width: 1px;
            background-color: var(--body-color);
            position: absolute;
            top: 0px;
            right: -30px;
            margin-top: 4px;
            opacity: 0.7;
        }

    .header-links li > i {
        margin-right: 6px;
    }

    .header-links li .icon-btn {
        margin-right: 8px;
    }

.header-links li,
.header-links span,
.header-links p,
.header-links a {
    color: var(--body-color);
}

    .header-links a:hover {
        color: var(--theme-color);
    }

.header-links b,
.header-links strong {
    font-weight: 600;
    margin-right: 6px;
}

.header-links .social-links a {
    font-size: 14px;
}

.header-links.style2 li {
    margin: 0 25px 0 0;
}

    .header-links.style2 li:after {
        display: none;
    }

.header-notice {
    margin: 0;
}

.header-top {
    padding: 10px 0;
    background-color: var(--theme-color);
    --body-color: #fff;
}

    .header-top a:hover {
        color: var(--title-color);
    }

    .header-top .icon-btn {
        --btn-size: 30px;
        background-color: transparent;
        border: 1px solid;
        font-size: 12px;
    }

/* Header 1 ---------------------------------- */
.header-layout1 {
    position: relative;
}

    .header-layout1 .header-top {
        overflow: hidden;
    }

    .header-layout1 .header-links {
        position: relative;
    }

        .header-layout1 .header-links .shape1 {
            position: absolute;
            left: -30px;
            top: -10px;
            height: 54px;
            width: 3000px;
            background-color: rgba(221, 89, 3, 0.4);
        }

    .header-layout1 .menu-area {
        position: relative;
        z-index: 2;
    }

    .header-layout1 .th-menu-toggle {
        margin-left: auto;
    }

@media (min-width: 1300px) {
    .header-layout1 {
        --main-container: 1700px;
    }
}

/* Medium Large devices */
@media (max-width: 1399px) {
    .header-layout1 .header-button .th-btn {
        min-width: auto;
    }
}

/* Extra small devices */
@media (max-width: 575px) {
    .th-header .row {
        --bs-gutter-x: 6px;
    }

    .header-logo h2 {
        font-size: 36px;
    }

    .header-logo img {
        max-width: 160px;
    }
}

/* Extra small devices */
@media (max-width: 375px) {
    .header-layout1 .header-links li {
        font-size: 15px;
    }

    .header-logo img {
        max-width: 140px;
    }
}

/* Medium Large devices */
@media (max-width: 1299px) {
    .unittest-header .main-menu a {
        font-size: 15px;
    }

    .unittest-header .main-menu > ul > li {
        margin: 0 11px;
    }
}

/* Header 2 ---------------------------------- */
.header-call {
    margin: 0 14px;
    border-left: 1px solid var(--title-color);
    padding-left: 30px;
    /* Medium Large devices */
}

@media (max-width: 1399px) {
    .header-call {
        display: none;
    }
}

.header-call .box-title {
    font-size: 22px;
    margin-bottom: 2px;
}

.header-call .box-text {
    font-size: 14px;
    color: var(--title-color);
}

.header-call .icon {
    display: inline-block;
    width: 23px;
    height: 23px;
    background-color: var(--title-color);
    -webkit-mask-image: url('data:image/svg+xml,<svg width="23" height="23" viewBox="0 0 23 23" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18.1545 14.2477C17.6837 13.7574 17.1157 13.4952 16.5138 13.4952C15.9167 13.4952 15.3439 13.7525 14.8536 14.2428L13.3197 15.7719C13.1934 15.704 13.0672 15.6409 12.9459 15.5777C12.7711 15.4904 12.6061 15.4078 12.4653 15.3205C11.0284 14.4079 9.72261 13.2186 8.4702 11.6797C7.86341 10.9128 7.45565 10.2671 7.15953 9.6118C7.55759 9.24773 7.92652 8.86909 8.28573 8.50502C8.42166 8.3691 8.55758 8.22832 8.6935 8.0924C9.7129 7.073 9.7129 5.75263 8.6935 4.73322L7.36827 3.408C7.21779 3.25751 7.06245 3.10217 6.91682 2.94684C6.62556 2.64587 6.31974 2.33519 6.00421 2.04394C5.53334 1.57792 4.97024 1.33035 4.37802 1.33035C3.78579 1.33035 3.21298 1.57792 2.72755 2.04394C2.7227 2.04879 2.7227 2.04879 2.71784 2.05364L1.06738 3.71867C0.446027 4.34002 0.0916622 5.09729 0.0139933 5.97592C-0.10251 7.39338 0.31496 8.71375 0.635345 9.57782C1.42174 11.6992 2.59649 13.6651 4.34889 15.7719C6.47508 18.3107 9.0333 20.3155 11.9556 21.7282C13.0721 22.2573 14.5624 22.8835 16.2274 22.9903C16.3293 22.9951 16.4361 23 16.5332 23C17.6545 23 18.5963 22.5971 19.3341 21.7961C19.339 21.7864 19.3487 21.7815 19.3536 21.7718C19.606 21.466 19.8972 21.1893 20.2031 20.8932C20.4118 20.6942 20.6254 20.4854 20.8341 20.267C21.3147 19.767 21.5671 19.1845 21.5671 18.5874C21.5671 17.9855 21.3098 17.4078 20.8196 16.9224L18.1545 14.2477ZM19.8924 19.3592C19.8875 19.3641 19.8875 19.3592 19.8924 19.3592C19.7031 19.5631 19.5089 19.7476 19.3002 19.9515C18.9846 20.2524 18.6642 20.568 18.3633 20.9223C17.873 21.4466 17.2953 21.6942 16.5381 21.6942C16.4652 21.6942 16.3876 21.6942 16.3148 21.6893C14.873 21.5971 13.5332 21.034 12.5284 20.5534C9.78086 19.2233 7.36827 17.335 5.36344 14.9418C3.70812 12.9467 2.60134 11.1021 1.86834 9.12152C1.41689 7.91279 1.25184 6.97106 1.32466 6.08272C1.3732 5.51476 1.59164 5.0439 1.99455 4.64099L3.64987 2.98567C3.88773 2.76237 4.14016 2.64101 4.38772 2.64101C4.69355 2.64101 4.94112 2.82548 5.09645 2.98082C5.10131 2.98567 5.10616 2.99053 5.11102 2.99538C5.40713 3.27207 5.68868 3.55848 5.98479 3.8643C6.13528 4.01964 6.29061 4.17498 6.44595 4.33517L7.77118 5.66039C8.28573 6.17495 8.28573 6.65067 7.77118 7.16523C7.6304 7.306 7.49448 7.44678 7.35371 7.5827C6.94595 8.00017 6.5576 8.38851 6.13528 8.76715C6.12557 8.77686 6.11586 8.78171 6.111 8.79142C5.69353 9.20889 5.7712 9.61665 5.85858 9.89335C5.86343 9.90791 5.86829 9.92247 5.87314 9.93704C6.2178 10.772 6.70323 11.5584 7.44108 12.4953L7.44594 12.5001C8.78573 14.1506 10.1983 15.437 11.7566 16.4224C11.9556 16.5486 12.1595 16.6505 12.3536 16.7476C12.5284 16.835 12.6934 16.9175 12.8342 17.0049C12.8536 17.0146 12.8731 17.0292 12.8925 17.0389C13.0575 17.1214 13.2129 17.1602 13.373 17.1602C13.776 17.1602 14.0284 16.9078 14.1109 16.8253L15.7711 15.1651C15.9361 15.0001 16.1983 14.8011 16.5041 14.8011C16.805 14.8011 17.0526 14.9904 17.2031 15.1554C17.208 15.1603 17.208 15.1603 17.2128 15.1651L19.8875 17.8399C20.3875 18.335 20.3875 18.8447 19.8924 19.3592Z" fill="black"/><path d="M12.407 5.47108C13.6789 5.68467 14.8342 6.28661 15.7565 7.20892C16.6788 8.13124 17.2759 9.28657 17.4944 10.5584C17.5477 10.8788 17.8244 11.1021 18.14 11.1021C18.1788 11.1021 18.2128 11.0972 18.2516 11.0924C18.6108 11.0341 18.8487 10.6943 18.7905 10.3351C18.5283 8.79628 17.8002 7.39339 16.6885 6.28175C15.5769 5.17011 14.174 4.44197 12.6352 4.17984C12.276 4.12159 11.941 4.35945 11.8779 4.71381C11.8148 5.06817 12.0478 5.41283 12.407 5.47108Z" fill="black"/><path d="M22.9506 10.1458C22.5186 7.61184 21.3244 5.30604 19.4895 3.47111C17.6545 1.63618 15.3487 0.442024 12.8148 0.00999088C12.4604 -0.0531151 12.1255 0.1896 12.0624 0.543965C12.0041 0.903184 12.242 1.23813 12.6012 1.30124C14.8633 1.68473 16.9264 2.75753 18.5672 4.39343C20.2079 6.03419 21.2759 8.09727 21.6593 10.3594C21.7127 10.6798 21.9894 10.9031 22.305 10.9031C22.3438 10.9031 22.3778 10.8982 22.4166 10.8933C22.771 10.84 23.0137 10.5002 22.9506 10.1458Z" fill="black"/></svg>');
    mask-image: url('data:image/svg+xml,<svg width="23" height="23" viewBox="0 0 23 23" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18.1545 14.2477C17.6837 13.7574 17.1157 13.4952 16.5138 13.4952C15.9167 13.4952 15.3439 13.7525 14.8536 14.2428L13.3197 15.7719C13.1934 15.704 13.0672 15.6409 12.9459 15.5777C12.7711 15.4904 12.6061 15.4078 12.4653 15.3205C11.0284 14.4079 9.72261 13.2186 8.4702 11.6797C7.86341 10.9128 7.45565 10.2671 7.15953 9.6118C7.55759 9.24773 7.92652 8.86909 8.28573 8.50502C8.42166 8.3691 8.55758 8.22832 8.6935 8.0924C9.7129 7.073 9.7129 5.75263 8.6935 4.73322L7.36827 3.408C7.21779 3.25751 7.06245 3.10217 6.91682 2.94684C6.62556 2.64587 6.31974 2.33519 6.00421 2.04394C5.53334 1.57792 4.97024 1.33035 4.37802 1.33035C3.78579 1.33035 3.21298 1.57792 2.72755 2.04394C2.7227 2.04879 2.7227 2.04879 2.71784 2.05364L1.06738 3.71867C0.446027 4.34002 0.0916622 5.09729 0.0139933 5.97592C-0.10251 7.39338 0.31496 8.71375 0.635345 9.57782C1.42174 11.6992 2.59649 13.6651 4.34889 15.7719C6.47508 18.3107 9.0333 20.3155 11.9556 21.7282C13.0721 22.2573 14.5624 22.8835 16.2274 22.9903C16.3293 22.9951 16.4361 23 16.5332 23C17.6545 23 18.5963 22.5971 19.3341 21.7961C19.339 21.7864 19.3487 21.7815 19.3536 21.7718C19.606 21.466 19.8972 21.1893 20.2031 20.8932C20.4118 20.6942 20.6254 20.4854 20.8341 20.267C21.3147 19.767 21.5671 19.1845 21.5671 18.5874C21.5671 17.9855 21.3098 17.4078 20.8196 16.9224L18.1545 14.2477ZM19.8924 19.3592C19.8875 19.3641 19.8875 19.3592 19.8924 19.3592C19.7031 19.5631 19.5089 19.7476 19.3002 19.9515C18.9846 20.2524 18.6642 20.568 18.3633 20.9223C17.873 21.4466 17.2953 21.6942 16.5381 21.6942C16.4652 21.6942 16.3876 21.6942 16.3148 21.6893C14.873 21.5971 13.5332 21.034 12.5284 20.5534C9.78086 19.2233 7.36827 17.335 5.36344 14.9418C3.70812 12.9467 2.60134 11.1021 1.86834 9.12152C1.41689 7.91279 1.25184 6.97106 1.32466 6.08272C1.3732 5.51476 1.59164 5.0439 1.99455 4.64099L3.64987 2.98567C3.88773 2.76237 4.14016 2.64101 4.38772 2.64101C4.69355 2.64101 4.94112 2.82548 5.09645 2.98082C5.10131 2.98567 5.10616 2.99053 5.11102 2.99538C5.40713 3.27207 5.68868 3.55848 5.98479 3.8643C6.13528 4.01964 6.29061 4.17498 6.44595 4.33517L7.77118 5.66039C8.28573 6.17495 8.28573 6.65067 7.77118 7.16523C7.6304 7.306 7.49448 7.44678 7.35371 7.5827C6.94595 8.00017 6.5576 8.38851 6.13528 8.76715C6.12557 8.77686 6.11586 8.78171 6.111 8.79142C5.69353 9.20889 5.7712 9.61665 5.85858 9.89335C5.86343 9.90791 5.86829 9.92247 5.87314 9.93704C6.2178 10.772 6.70323 11.5584 7.44108 12.4953L7.44594 12.5001C8.78573 14.1506 10.1983 15.437 11.7566 16.4224C11.9556 16.5486 12.1595 16.6505 12.3536 16.7476C12.5284 16.835 12.6934 16.9175 12.8342 17.0049C12.8536 17.0146 12.8731 17.0292 12.8925 17.0389C13.0575 17.1214 13.2129 17.1602 13.373 17.1602C13.776 17.1602 14.0284 16.9078 14.1109 16.8253L15.7711 15.1651C15.9361 15.0001 16.1983 14.8011 16.5041 14.8011C16.805 14.8011 17.0526 14.9904 17.2031 15.1554C17.208 15.1603 17.208 15.1603 17.2128 15.1651L19.8875 17.8399C20.3875 18.335 20.3875 18.8447 19.8924 19.3592Z" fill="black"/><path d="M12.407 5.47108C13.6789 5.68467 14.8342 6.28661 15.7565 7.20892C16.6788 8.13124 17.2759 9.28657 17.4944 10.5584C17.5477 10.8788 17.8244 11.1021 18.14 11.1021C18.1788 11.1021 18.2128 11.0972 18.2516 11.0924C18.6108 11.0341 18.8487 10.6943 18.7905 10.3351C18.5283 8.79628 17.8002 7.39339 16.6885 6.28175C15.5769 5.17011 14.174 4.44197 12.6352 4.17984C12.276 4.12159 11.941 4.35945 11.8779 4.71381C11.8148 5.06817 12.0478 5.41283 12.407 5.47108Z" fill="black"/><path d="M22.9506 10.1458C22.5186 7.61184 21.3244 5.30604 19.4895 3.47111C17.6545 1.63618 15.3487 0.442024 12.8148 0.00999088C12.4604 -0.0531151 12.1255 0.1896 12.0624 0.543965C12.0041 0.903184 12.242 1.23813 12.6012 1.30124C14.8633 1.68473 16.9264 2.75753 18.5672 4.39343C20.2079 6.03419 21.2759 8.09727 21.6593 10.3594C21.7127 10.6798 21.9894 10.9031 22.305 10.9031C22.3438 10.9031 22.3778 10.8982 22.4166 10.8933C22.771 10.84 23.0137 10.5002 22.9506 10.1458Z" fill="black"/></svg>');
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-transform: translateY(4px);
    -ms-transform: translateY(4px);
    transform: translateY(4px);
}

.header-layout2 .th-menu-toggle {
    margin-left: auto;
}

.header-layout2 .header-button {
    gap: 16px;
}

    .header-layout2 .header-button .icon-btn {
        border-color: var(--title-color);
    }

.header-layout2 .sticky-wrapper {
    background-color: var(--smoke-color);
}

@media (min-width: 1200px) {
    .header-layout2 {
        --main-container: 1700px;
    }
}

/* Medium Large devices */
@media (max-width: 1299px) {
    .header-layout2 .container {
        max-width: 100% !important;
    }

    .header-layout2 .header-button .th-btn {
        margin-left: 0;
    }
}

/* Header 3 ---------------------------------- */
.header-search {
    position: relative;
}

    .header-search input {
        height: 50px;
        border: none;
        width: 320px;
        max-width: 100%;
        background-color: #111;
        border-radius: 99px;
    }

        .header-search input:focus {
            border-color: var(--theme-color);
        }

@media (max-width: 1850px) {
    .header-search input {
        max-width: 260px;
    }
}

@media (max-width: 1700px) {
    .header-search input {
        max-width: 200px;
    }
}

.header-search button {
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    background-color: transparent;
    color: var(--theme-color);
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    padding: 0;
}

.square-btn {
    display: inline-block;
    width: 100px;
    height: 100px;
    line-height: 100px;
    background-color: var(--theme-color);
    color: var(--white-color);
    border: none;
    padding: 0;
    font-size: 36px;
}

    .square-btn:hover {
        background-color: var(--title-color);
    }

.header-layout3 .sticky-wrapper {
    background-color: #111;
}

    .header-layout3 .sticky-wrapper:before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        background-color: #272727;
        height: 100%;
        width: 41.4%;
    }

.header-layout3 .th-menu-toggle {
    width: 100px;
    height: 100px;
    line-height: 100px;
    background-color: var(--theme-color);
    color: var(--white-color);
    border: none;
    border-radius: 0;
    padding: 0;
    font-size: 36px;
}

    .header-layout3 .th-menu-toggle:hover {
        background-color: var(--title-color);
    }

.header-layout3 .header-logo {
    background-color: var(--theme-color);
    padding: 20px 65px;
    height: 100%;
}

@media (max-width: 1700px) {
    .header-layout3 .header-logo {
        padding: 20px;
    }
}

.header-layout3 .header-button {
    gap: 16px;
}

    .header-layout3 .header-button .icon-btn {
        border-color: var(--white-color);
        color: var(--white-color);
    }

        .header-layout3 .header-button .icon-btn:hover {
            border-color: var(--theme-color);
        }

.header-layout3 .main-menu {
    margin-left: -20px;
}

    .header-layout3 .main-menu > ul > li > a {
        color: var(--white-color);
    }

        .header-layout3 .main-menu > ul > li > a:hover {
            color: var(--theme-color);
        }

.header-layout3 .header-call {
    border-color: var(--body-color);
    /* Medium Large devices */
}

@media (max-width: 1399px) {
    .header-layout3 .header-call {
        display: none;
    }
}

.header-layout3 .header-call .box-title {
    color: var(--white-color);
}

.header-layout3 .header-call .box-text {
    color: var(--light-color);
}

.header-layout3 .header-call .icon {
    background-color: var(--white-color);
}

/* Extra large devices */
@media (max-width: 1500px) {
    .header-layout3 .header-search {
        display: none;
    }

    .header-layout3 .sticky-wrapper:before {
        display: none;
    }
}

/* Large devices */
@media (max-width: 1199px) {
    .header-layout3 .main-menu {
        margin-left: 0;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .header-layout3 .sideMenuInfo {
        display: none;
    }
}

/* Extra small devices */
@media (max-width: 575px) {
    .header-layout3 .th-menu-toggle {
        width: 56px;
        height: 56px;
        line-height: 56px;
        font-size: 22px;
        border-radius: 99px;
        margin-right: 12px;
    }

    .header-layout3 .header-logo {
        padding: 12px;
    }
}

/*------------------- 4.3. Footer  -------------------*/
.footer-wrapper {
    --th-border-color: #2D2D2D;
    --body-color: #8E97A6;
    position: relative;
    z-index: 2;
    background-color: #101018;
    overflow: hidden;
}

    .footer-wrapper .th-social a {
        background-color: #1F1F1F;
        color: var(--white-color);
    }

        .footer-wrapper .th-social a:hover {
            background-color: var(--theme-color);
        }

    .footer-wrapper .social-links a {
        margin: 0 30px 0 0;
    }

    .footer-wrapper .form-control,
    .footer-wrapper .form-select {
        background-color: #1F1F1F;
        border: none;
    }

        .footer-wrapper .form-control:focus,
        .footer-wrapper .form-select:focus {
            color: var(--body-color);
        }

.widget-area {
    padding-top: 100px;
    padding-bottom: 48px;
}

.sticky-footer {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
}

.footer-links ul {
    padding: 0;
    margin: 0;
}

.footer-links li {
    font-family: var(--body-font);
    display: inline-block;
    padding-right: 15px;
    margin-right: 10px;
    position: relative;
}

    .footer-links li:after {
        content: "|";
        position: absolute;
        top: 50%;
        right: -4px;
        margin-top: -14px;
        color: var(--white-color);
    }

    .footer-links li:last-child {
        margin-right: 0;
        padding-right: 0;
    }

        .footer-links li:last-child:after {
            display: none;
        }

.footer-links a {
    font-family: inherit;
    color: var(--white-color);
}

    .footer-links a:hover {
        color: var(--theme-color);
    }

.copyright-wrap {
    padding: 18px 0;
    background-size: 100% auto;
    background-color: #1F1F1F;
}

    .copyright-wrap .copyright-text {
        color: var(--white-color);
    }

        .copyright-wrap .copyright-text a {
            color: var(--theme-color);
        }

            .copyright-wrap .copyright-text a:hover {
                color: var(--white-color);
            }

    .copyright-wrap.bg-title .copyright-text a:hover {
        color: var(--theme-color);
    }

.copyright-text {
    margin: 0;
}

    .copyright-text a {
        color: var(--theme-color);
    }

        .copyright-text a:hover {
            color: var(--white-color);
        }

.th-widget-contact {
    max-width: 265px;
}

.schedule-info {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.2);
    margin-bottom: 15px;
    padding-bottom: 15px;
}

    .schedule-info:last-of-type {
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: none;
    }

.th-widget-schedule {
    width: 280px;
    max-width: 100%;
}

    .th-widget-schedule .title {
        color: var(--white-color);
        font-size: 20px;
        font-weight: 500;
        margin-bottom: 16px;
    }

.footer-logo1 {
    width: 226px;
    height: 100px;
    background-color: #111;
    display: inline-grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 2px;
}

.newsletter-widget {
    max-width: 300px;
}

    .newsletter-widget .th-social {
        margin-top: 25px;
    }

    .newsletter-widget .newsletter-form {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 15px;
    }

        .newsletter-widget .newsletter-form .th-btn {
            width: 100%;
        }

        .newsletter-widget .newsletter-form.has-icon {
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
            -webkit-flex-direction: row;
            -ms-flex-direction: row;
            flex-direction: row;
            -webkit-flex-wrap: nowrap;
            -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
            gap: 0;
        }

            .newsletter-widget .newsletter-form.has-icon .form-control {
                height: 46px;
            }

    .newsletter-widget .form-group {
        margin-bottom: 0;
    }

    .newsletter-widget .icon-btn {
        border: none;
        background-color: var(--theme-color);
        color: var(--white-color);
        border-radius: 0;
        min-width: 46px;
        height: 46px;
        line-height: 46px;
        padding: 0;
        font-size: 14px;
    }

        .newsletter-widget .icon-btn:hover {
            background-color: #000;
        }

.newsletter-form {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    max-width: 500px;
    gap: 10px;
    /* Large devices */
}

@media (max-width: 1199px) {
    .newsletter-form {
        max-width: 460px;
    }
}

.newsletter-form .form-group {
    margin-bottom: 0;
    width: 100%;
}

    .newsletter-form .form-group > i {
        color: var(--theme-color);
    }

.newsletter-form input {
    width: 100%;
}

.newsletter-form .th-btn {
    min-width: 150px;
}

.newsletter-form .newsletter-btn {
    display: inline-block;
    border: none;
    background-color: var(--theme-color);
    color: var(--title-color);
    width: 55px;
    height: 55px;
    line-height: 55px;
    min-width: 55px;
}

.newsletter-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 80px 0;
    border-bottom: 1px solid var(--th-border-color);
    /* Medium devices */
}

@media (max-width: 991px) {
    .newsletter-wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: center;
        gap: 25px 0;
    }

        .newsletter-wrap .newsletter-form {
            max-width: 100%;
        }
}

/* Medium devices */
@media (max-width: 991px) {
    .footer-wrapper .newsletter-form {
        max-width: 400px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .newsletter-wrap {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 25px;
    }

    .footer-wrapper .newsletter-form {
        max-width: 550px;
        gap: 15px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

/* Extra small devices */
@media (max-width: 575px) {
    .newsletter-wrap .newsletter-form {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .footer-wrapper .newsletter-form {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .footer-wrapper .widget-area {
        padding-top: var(--section-space-mobile);
        padding-bottom: 30px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .copyright-text {
        text-align: center;
    }
}

.th-widget-contact {
    max-width: 280px;
}

.info-box {
    margin-bottom: 20px;
}

    .info-box:last-child {
        margin-bottom: 0;
    }

    .info-box .box-content {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 10px;
    }

    .info-box .box-icon {
        width: 26px;
        height: 26px;
        line-height: 26px;
        min-width: 26px;
        font-size: 12px;
        background-color: var(--theme-color);
        color: var(--white-color);
        border-radius: 0;
        text-align: center;
    }

    .info-box .box-title {
        color: var(--black-color2);
        font-size: 18px;
        margin-bottom: 4px;
        font-weight: 500;
        margin-top: -0.35em;
    }

    .info-box .box-text {
        display: block;
        color: var(--black-color2);
        margin-top: -0.45em;
        margin-bottom: -0.45em;
        -webkit-align-self: center;
        -ms-flex-item-align: center;
        align-self: center;
    }

        .info-box .box-text a {
            color: inherit;
        }

            .info-box .box-text a:hover {
                color: var(--theme-color);
            }

.download-btn img {
    border-radius: 99px;
    border: 1px solid var(--theme-color);
}

.th-download-widget {
    max-width: 258px;
}

    .th-download-widget .btn-group {
        gap: 12px;
    }

    .th-download-widget .box-title {
        font-size: 30px;
        color: var(--theme-color);
        margin-bottom: -.1em;
    }

/*------------------- 4.4. Breadcumb  -------------------*/
.breadcumb-menu {
    max-width: 100%;
    padding: 0;
    margin: 32px 0 -0.5em 0;
    list-style-type: none;
    position: relative;
}

    .breadcumb-menu li {
        display: inline-block;
        margin-right: 3px;
        padding-right: 3px;
        list-style: none;
        position: relative;
    }

        .breadcumb-menu li:after {
            content: "\f054";
            position: relative;
            margin-left: 6px;
            font-weight: 500;
            font-size: 15px;
            color: inherit;
            font-family: var(--icon-font);
        }

        .breadcumb-menu li:last-child {
            padding-right: 0;
            margin-right: 0;
            color: var(--white-color);
        }

            .breadcumb-menu li:last-child:after {
                display: none;
            }

    .breadcumb-menu li,
    .breadcumb-menu a,
    .breadcumb-menu span {
        white-space: normal;
        color: inherit;
        word-break: break-word;
        font-weight: 600;
        font-size: 18px;
        text-transform: uppercase;
        color: var(--white-color);
    }

.breadcumb-title {
    margin: -0.24em 0 -0.18em 0;
    line-height: 1.1;
    color: var(--white-color);
    text-transform: uppercase;
}

.breadcumb-wrapper {
    background-color: var(--title-color);
    padding: 174px 0;
    overflow: hidden;
    text-align: center;
}

/* Large devices */
@media (max-width: 1199px) {
    .breadcumb-wrapper {
        padding: 130px 0 130px 0;
    }

    .breadcumb-menu {
        margin: 25px 0 -0.5em 0;
    }

        .breadcumb-menu li,
        .breadcumb-menu a,
        .breadcumb-menu span {
            font-size: 16px;
        }
}

/* Medium devices */
@media (max-width: 991px) {
    .breadcumb-wrapper {
        padding: 100px 0 100px 0;
    }
}

/* Extra small devices */
@media (max-width: 575px) {
    .breadcumb-title {
        font-size: 34px;
    }
}

/*------------------- 4.5. Pagination  -------------------*/
.wp-block-query-pagination-numbers,
.th-pagination {
    margin-bottom: 30px;
}

    .wp-block-query-pagination-numbers ul,
    .th-pagination ul {
        margin: 0;
        padding: 0;
    }

    .wp-block-query-pagination-numbers li,
    .th-pagination li {
        display: inline-block;
        margin: 0 3px;
        list-style-type: none;
    }

        .wp-block-query-pagination-numbers li:last-child,
        .th-pagination li:last-child {
            margin-right: 0;
        }

        .wp-block-query-pagination-numbers li:first-child,
        .th-pagination li:first-child {
            margin-left: 0;
        }

    .wp-block-query-pagination-numbers span,
    .wp-block-query-pagination-numbers a,
    .th-pagination span,
    .th-pagination a {
        display: inline-block;
        text-align: center;
        position: relative;
        border: none;
        color: var(--title-color);
        background-color: var(--smoke-color2);
        width: 56px;
        height: 56px;
        line-height: 56px;
        z-index: 1;
        font-size: 18px;
        font-weight: 500;
    }

        .wp-block-query-pagination-numbers span.active, .wp-block-query-pagination-numbers span:hover,
        .wp-block-query-pagination-numbers a.active,
        .wp-block-query-pagination-numbers a:hover,
        .th-pagination span.active,
        .th-pagination span:hover,
        .th-pagination a.active,
        .th-pagination a:hover {
            color: var(--white-color);
            background-color: var(--theme-color);
        }

.wp-block-query-pagination-next {
    display: inline-block;
    text-align: center;
    position: relative;
    border: none;
    color: var(--title-color);
    background-color: var(--smoke-color2);
    min-width: 56px;
    height: 56px;
    line-height: 56px;
    z-index: 1;
    font-size: 16px;
    padding: 0 20px;
    font-weight: 500;
    border-radius: 0;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}

    .wp-block-query-pagination-next.active, .wp-block-query-pagination-next:hover {
        color: var(--white-color);
        background-color: var(--theme-color);
        border-color: var(--theme-color);
    }

/* Small devices */
@media (max-width: 767px) {
    .wp-block-query-pagination-numbers span,
    .wp-block-query-pagination-numbers a,
    .th-pagination span,
    .th-pagination a {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 14px;
    }
}

/*------------------- 4.6. Blog  -------------------*/
blockquote,
.wp-block-quote {
    font-size: 16px;
    line-height: 1.56;
    padding: 30px;
    font-weight: 500;
    display: block;
    position: relative;
    background-color: transparent;
    margin: 35px 0 45px 0;
    color: var(--title-color);
    font-family: var(--body-font);
    font-style: italic;
    border: 1px solid var(--th-border-color) !important;
    border-radius: 0;
}

    blockquote p,
    .wp-block-quote p {
        font-size: inherit;
        font-family: inherit;
        margin-top: -0.3em;
        margin-bottom: 9px;
        line-height: inherit;
        color: inherit;
        width: 100%;
        position: relative;
        z-index: 3;
    }

        blockquote p a,
        .wp-block-quote p a {
            color: inherit;
        }

    blockquote:before,
    .wp-block-quote:before {
        content: "";
        position: absolute;
        top: -1px;
        left: -1px;
        height: 50px;
        width: 33px;
        background-color: var(--smoke-color);
    }

    blockquote:after,
    .wp-block-quote:after {
        content: "";
        position: absolute;
        top: -10px;
        left: 0px;
        height: 20px;
        width: 25px;
        background-color: var(--theme-color);
        -webkit-clip-path: path("M2.21945 18.2759C0.775335 16.6762 0 14.8819 0 11.9734C0 6.8553 3.44484 2.26804 8.45438 0L9.70641 2.01506C5.03057 4.65307 4.11643 8.07633 3.75189 10.2347C4.5048 9.82818 5.49044 9.68633 6.45645 9.77992C8.98576 10.0241 10.9795 12.1898 10.9795 14.8819C10.9795 16.2393 10.4625 17.5411 9.54219 18.5009C8.62192 19.4608 7.37376 20 6.07229 20C5.35256 19.9934 4.64126 19.8376 3.97981 19.5416C3.31836 19.2457 2.71996 18.8154 2.21945 18.2759ZM16.24 18.2759C14.7959 16.6762 14.0205 14.8819 14.0205 11.9734C14.0205 6.8553 17.4654 2.26804 22.4749 0L23.7269 2.01506C19.0511 4.65307 18.137 8.07633 17.7724 10.2347C18.5253 9.82818 19.511 9.68633 20.477 9.77992C23.0063 10.0241 25 12.1898 25 14.8819C25 16.2393 24.483 17.5411 23.5627 18.5009C22.6424 19.4608 21.3943 20 20.0928 20C19.3731 19.9934 18.6618 19.8376 18.0003 19.5416C17.3389 19.2457 16.7405 18.8154 16.24 18.2759Z");
        clip-path: path("M2.21945 18.2759C0.775335 16.6762 0 14.8819 0 11.9734C0 6.8553 3.44484 2.26804 8.45438 0L9.70641 2.01506C5.03057 4.65307 4.11643 8.07633 3.75189 10.2347C4.5048 9.82818 5.49044 9.68633 6.45645 9.77992C8.98576 10.0241 10.9795 12.1898 10.9795 14.8819C10.9795 16.2393 10.4625 17.5411 9.54219 18.5009C8.62192 19.4608 7.37376 20 6.07229 20C5.35256 19.9934 4.64126 19.8376 3.97981 19.5416C3.31836 19.2457 2.71996 18.8154 2.21945 18.2759ZM16.24 18.2759C14.7959 16.6762 14.0205 14.8819 14.0205 11.9734C14.0205 6.8553 17.4654 2.26804 22.4749 0L23.7269 2.01506C19.0511 4.65307 18.137 8.07633 17.7724 10.2347C18.5253 9.82818 19.511 9.68633 20.477 9.77992C23.0063 10.0241 25 12.1898 25 14.8819C25 16.2393 24.483 17.5411 23.5627 18.5009C22.6424 19.4608 21.3943 20 20.0928 20C19.3731 19.9934 18.6618 19.8376 18.0003 19.5416C17.3389 19.2457 16.7405 18.8154 16.24 18.2759Z");
    }

    blockquote cite,
    .wp-block-quote cite {
        display: inline-block;
        font-size: 20px;
        line-height: 1;
        font-weight: 500;
        font-style: normal;
        font-family: var(--title-font);
        white-space: nowrap;
        position: absolute;
        bottom: -16px;
        left: 80px;
        background-color: var(--theme-color);
        color: var(--white-color);
        padding: 5px 40px 7px 15px;
        -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - 25px) 100%, 0% 100%);
        clip-path: polygon(0 0, 100% 0, calc(100% - 25px) 100%, 0% 100%);
    }

        blockquote cite br,
        .wp-block-quote cite br {
            display: none;
        }

    blockquote.is-large:not(.is-style-plain), blockquote.is-style-large:not(.is-style-plain), blockquote.style-left-icon, blockquote.has-text-align-right,
    .wp-block-quote.is-large:not(.is-style-plain),
    .wp-block-quote.is-style-large:not(.is-style-plain),
    .wp-block-quote.style-left-icon,
    .wp-block-quote.has-text-align-right {
        padding: 40px;
        margin-bottom: 30px;
    }

    blockquote.style-left-icon,
    .wp-block-quote.style-left-icon {
        font-size: 18px;
        color: var(--body-color);
        font-weight: 400;
        line-height: 1.556;
        background-color: var(--smoke-color);
        padding-left: 160px;
    }

        blockquote.style-left-icon:before,
        .wp-block-quote.style-left-icon:before {
            right: unset;
            left: 56px;
            top: 60px;
            font-size: 6rem;
            font-weight: 400;
            line-height: 4rem;
            color: var(--theme-color);
            text-shadow: none;
        }

        blockquote.style-left-icon cite,
        .wp-block-quote.style-left-icon cite {
            color: var(--title-color);
        }

            blockquote.style-left-icon cite:before,
            .wp-block-quote.style-left-icon cite:before {
                background-color: var(--title-color);
                top: 8px;
            }

    blockquote:not(:has(> cite)) p:last-child,
    .wp-block-quote:not(:has(> cite)) p:last-child {
        margin-bottom: -0.3em;
    }

    blockquote p:has(cite),
    .wp-block-quote p:has(cite) {
        padding-bottom: 10px;
    }

    blockquote p cite,
    .wp-block-quote p cite {
        margin-top: 20px;
        margin-bottom: -0.5em;
        bottom: -32px;
    }

.wp-block-pullquote {
    color: var(--white-color);
    padding: 0;
}

blockquote.has-very-dark-gray-color {
    color: var(--title-color) !important;
}

.wp-block-pullquote blockquote,
.wp-block-pullquote p {
    color: var(--title-color);
}

.wp-block-pullquote cite {
    position: absolute;
    color: var(--white-color) !important;
}

.wp-block-column blockquote,
.wp-block-column .wp-block-quote {
    padding: 40px 15px 40px 15px;
}

    .wp-block-column blockquote:before,
    .wp-block-column .wp-block-quote:before {
        width: 100%;
        height: 60px;
        font-size: 30px;
    }

    .wp-block-column blockquote.style-left-icon, .wp-block-column blockquote.is-large:not(.is-style-plain), .wp-block-column blockquote.is-style-large:not(.is-style-plain), .wp-block-column blockquote.has-text-align-right,
    .wp-block-column .wp-block-quote.style-left-icon,
    .wp-block-column .wp-block-quote.is-large:not(.is-style-plain),
    .wp-block-column .wp-block-quote.is-style-large:not(.is-style-plain),
    .wp-block-column .wp-block-quote.has-text-align-right {
        padding: 40px 15px 40px 15px;
    }

    .wp-block-column blockquote cite,
    .wp-block-column .wp-block-quote cite {
        font-size: 14px;
        left: 20px;
    }

        .wp-block-column blockquote cite:before,
        .wp-block-column .wp-block-quote cite:before {
            bottom: 6px;
        }

.wp-block-pullquote__citation::before,
.wp-block-pullquote cite::before,
.wp-block-pullquote footer::before {
    bottom: 7px;
}

.has-cyan-bluish-gray-background-color blockquote,
.has-cyan-bluish-gray-background-color .wp-block-quote {
    background-color: var(--white-color);
}

/* Small devices */
@media (max-width: 767px) {
    .wp-block-pullquote.is-style-solid-color blockquote {
        max-width: 90%;
    }

    blockquote cite,
    .wp-block-quote cite {
        font-size: 18px;
        left: 30px;
    }
}

/* Extra small devices */
@media (max-width: 575px) {
    .wp-block-quote.is-large:not(.is-style-plain) p,
    .wp-block-quote.is-style-large:not(.is-style-plain) p {
        font-size: 1.2em;
    }
}

/* Extra small devices */
@media (max-width: 375px) {
    blockquote cite,
    .wp-block-quote cite {
        font-size: 18px;
        padding-left: 22px;
    }

        blockquote cite:before,
        .wp-block-quote cite:before {
            width: 20px;
        }
}

.blog-meta {
    display: block;
}

    .blog-meta span,
    .blog-meta a {
        display: inline-block;
        font-size: 14px;
        color: var(--body-color);
        font-family: var(--body-font);
        position: relative;
        margin-right: 16px;
    }

        .blog-meta span i,
        .blog-meta a i {
            margin-right: 6px;
            color: var(--theme-color);
        }

        .blog-meta span:last-child,
        .blog-meta a:last-child {
            margin-right: 0;
        }

        .blog-meta span:not(:last-child),
        .blog-meta a:not(:last-child) {
            padding-right: 20px;
        }

            .blog-meta span:not(:last-child):after,
            .blog-meta a:not(:last-child):after {
                content: "";
                height: 12px;
                width: 1px;
                background-color: var(--body-color);
                position: absolute;
                top: 50%;
                right: 0;
                margin-top: -6px;
            }

    .blog-meta .author img {
        border-radius: 50%;
        width: 30px;
        height: 30px;
        margin-right: 6px;
    }

    .blog-meta a:hover {
        color: var(--theme-color);
    }

/* Large devices */
@media (max-width: 1199px) {
    .blog-meta span,
    .blog-meta a {
        margin-right: 15px;
    }

        .blog-meta span:not(:last-child),
        .blog-meta a:not(:last-child) {
            padding-right: 15px;
        }
}

/* Extra small devices */
@media (max-width: 575px) {
    .blog-meta span,
    .blog-meta a {
        margin-right: 20px;
    }

        .blog-meta span:not(:last-child),
        .blog-meta a:not(:last-child) {
            padding-right: 0;
        }

            .blog-meta span:not(:last-child):after,
            .blog-meta a:not(:last-child):after {
                display: none;
            }
}

.blog-audio,
.blog-img,
.blog-video {
    line-height: 1px;
}

    .blog-audio img,
    .blog-img img,
    .blog-video img {
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

.blog-title a {
    color: inherit;
}

    .blog-title a:hover {
        color: var(--theme-color);
    }

.th-blog {
    margin-bottom: 30px;
}

.blog-inner-title {
    margin-top: -0.25em;
    margin-bottom: 25px;
}

    .blog-inner-title i {
        color: var(--theme-color);
        margin-right: 4px;
    }

@media (min-width: 1300px) {
    .search-active-wrap,
    .blog-author,
    .search-wrap,
    .page-single,
    .blog-single,
    .th-comments-wrap,
    .th-comment-form {
        margin-right: 10px;
    }
}

.blog-single {
    position: relative;
    margin-bottom: 40px;
}

    .blog-single .blog-title {
        margin-bottom: 15px;
        font-size: 36px;
        line-height: 1.25;
    }

    .blog-single .blog-text {
        margin-bottom: 27px;
    }

    .blog-single .blog-meta {
        margin: -0.45em 0 16px 0;
    }

    .blog-single .blog-content {
        margin: 0 0 0 0;
        padding: var(--blog-space-y, 40px) var(--blog-space-x, 40px);
        position: relative;
        background-color: var(--smoke-color);
        position: relative;
        z-index: 3;
    }

        .blog-single .blog-content .blog-single {
            padding: 20px;
        }

        .blog-single .blog-content .th-btn {
            --body-bg: #f8f8f8;
        }

    .blog-single .blog-audio {
        line-height: 1;
    }

    .blog-single .blog-audio,
    .blog-single .blog-img,
    .blog-single .blog-video {
        position: relative;
        overflow: hidden;
        background-color: var(--smoke-color);
    }

        .blog-single .blog-audio:hover img,
        .blog-single .blog-img:hover img,
        .blog-single .blog-video:hover img {
            -webkit-transform: scale(1.07);
            -ms-transform: scale(1.07);
            transform: scale(1.07);
        }

        .blog-single .blog-img .slider-arrow {
            --pos-x: 30px;
            --title-color: #FA8507;
        }

        .blog-single .blog-img .play-btn {
            --icon-size: 60px;
            position: absolute;
            left: 50%;
            top: 42%;
            margin: calc(var(--icon-size) / -2) 0 0 calc(var(--icon-size) / -2);
        }

    .blog-single .line-btn {
        display: block;
        max-width: -webkit-fit-content;
        max-width: -moz-fit-content;
        max-width: fit-content;
        margin-bottom: -1px;
    }

.share-links-title {
    font-size: 18px;
    color: var(--title-color);
    font-family: var(--title-font);
    margin: 0 15px 0 0;
    display: inline-block;
    text-transform: capitalize;
}

.share-links {
    margin: 40px 0 0 0;
    padding: var(--blog-space-y, 40px) 0 0 0;
    border-top: 1px solid var(--th-border-color);
}

    .share-links > .row {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        --bs-gutter-y: 15px;
    }

    .share-links .wp-block-tag-cloud,
    .share-links .tagcloud {
        display: inline-block;
    }

    .share-links .th-social {
        display: inline-block;
    }

        .share-links .th-social a {
            --icon-size: 40px;
            background-color: var(--white-color);
            box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.06);
            font-size: 14px;
        }

.blog-author {
    margin-top: 40px;
    margin-bottom: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background-color: var(--smoke-color);
    border-radius: 20px;
    overflow: hidden;
}

    .blog-author .auhtor-img {
        width: 212px;
        min-height: 100%;
        background-color: #00ffff;
        text-align: center;
        display: grid;
        -webkit-align-content: center;
        -ms-flex-line-pack: center;
        align-content: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        /* Small devices */
    }

@media (max-width: 767px) {
    .blog-author .auhtor-img {
        width: 100%;
        min-height: 200px;
    }
}

.blog-author .auhtor-img img {
    width: 96px;
    height: auto;
    object-fit: cover;
    object-position: center center;
}

.blog-author .author-name {
    font-size: 24px;
    margin-top: -0.2em;
    margin-bottom: 16px;
}

.blog-author .author-text {
    margin-bottom: 0;
}

.blog-author .media-body {
    padding: 40px 40px 40px 40px;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
}

/* Small devices */
@media (max-width: 767px) {
    .blog-author {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }

        .blog-author .auhtor-img img {
            width: 100%;
        }
}

/* Extra small devices */
@media (max-width: 575px) {
    .blog-author .media-body {
        padding: 35px 20px 30px 20px;
    }
}

.blog-details .blog-content > p:last-child {
    margin-bottom: 0;
}

.blog-content .wp-block-search .wp-block-search__input {
    box-shadow: none;
}

/* Medium Large devices */
@media (max-width: 1399px) {
    .blog-single .blog-title {
        font-size: 28px;
        line-height: 1.4;
    }

    .share-links {
        --blog-space-x: 20px;
    }
}

/* Large devices */
@media (max-width: 1199px) {
    .blog-single {
        --blog-space-x: 20px;
        --blog-space-y: 20px;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .blog-single {
        --blog-space-x: 40px;
        --blog-space-y: 40px;
    }

    .share-links {
        --blog-space-x: 40px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .share-links {
        --blog-space-x: 20px;
    }

    .blog-details .blog-single {
        --blog-space-x: 20px;
        --blog-space-y: 20px;
    }

    .blog-single {
        --blog-space-x: 20px;
        --blog-space-y: 20px;
    }

        .blog-single .blog-title {
            font-size: 24px;
            line-height: 1.3;
        }

        .blog-single .blog-text {
            margin-bottom: 22px;
        }

        .blog-single .blog-bottom {
            padding-top: 15px;
        }
}

/* Extra small devices */
@media (max-width: 575px) {
    .share-links-title {
        margin: 0 15px 5px 0;
    }
}

/*------------------- 4.7. Comments  -------------------*/
.th-comment-form {
    margin-top: var(--blog-space-y, 40px);
    margin-bottom: 30px;
    padding: var(--blog-space-y, 40px) var(--blog-space-x, 40px);
    position: relative;
}

    .th-comment-form .row {
        --bs-gutter-x: 20px;
    }

    .th-comment-form .blog-inner-title {
        margin-bottom: 0px;
    }

    .th-comment-form .form-title {
        margin-top: -0.35em;
    }

        .th-comment-form .form-title a#cancel-comment-reply-link {
            font-size: 0.7em;
            text-decoration: underline;
        }

    .th-comment-form .form-text {
        margin-bottom: 25px;
    }

    .th-comment-form .form-control {
        background-color: var(--white-color);
    }

    .th-comment-form .form-group > i {
        color: var(--body-color);
    }

.blog-comment-area {
    margin-bottom: 25px;
}

.th-comment-form,
.th-comments-wrap {
    padding: 40px;
    background-color: var(--smoke-color);
}

    .th-comment-form:has(#wp-temp-form-div),
    .th-comments-wrap:has(#wp-temp-form-div) {
        padding: 0;
        box-shadow: none;
        display: none;
    }

.th-comments-wrap {
    margin-top: var(--blog-space-y, 40px);
    margin-bottom: 30px;
}

    .th-comments-wrap .description p:last-child {
        margin-bottom: -0.5em;
    }

    .th-comments-wrap .comment-respond {
        margin: 30px 0;
    }

    .th-comments-wrap pre {
        background: #ededed;
        color: #666;
        font-size: 14px;
        margin: 20px 0;
        overflow: auto;
        padding: 20px;
        white-space: pre-wrap;
        word-wrap: break-word;
    }

    .th-comments-wrap li {
        margin: 0;
    }

    .th-comments-wrap .th-post-comment {
        padding: 0;
        position: relative;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-bottom: 30px;
        padding-bottom: 30px;
        position: relative;
        border-bottom: 1px solid var(--th-border-color);
    }

        .th-comments-wrap .th-post-comment ol,
        .th-comments-wrap .th-post-comment ul,
        .th-comments-wrap .th-post-comment dl {
            margin-bottom: 1rem;
        }

            .th-comments-wrap .th-post-comment ol ol,
            .th-comments-wrap .th-post-comment ol ul,
            .th-comments-wrap .th-post-comment ul ol,
            .th-comments-wrap .th-post-comment ul ul {
                margin-bottom: 0;
            }

    .th-comments-wrap ul.comment-list {
        list-style: none;
        margin: 0;
        padding: 0;
        margin-bottom: -30px;
    }

        .th-comments-wrap ul.comment-list ul ul,
        .th-comments-wrap ul.comment-list ul ol,
        .th-comments-wrap ul.comment-list ol ul,
        .th-comments-wrap ul.comment-list ol ol {
            margin-bottom: 0;
        }

    .th-comments-wrap .comment-avater {
        width: 80px;
        height: 80px;
        margin-right: 20px;
        overflow: hidden;
    }

        .th-comments-wrap .comment-avater img {
            width: 100%;
        }

    .th-comments-wrap .comment-content {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1;
        margin-top: -6px;
        position: relative;
    }

    .th-comments-wrap .commented-on {
        font-size: 14px;
        display: in4ine-block;
        margin-bottom: 2px;
        font-weight: 400;
        color: var(--body-color);
    }

        .th-comments-wrap .commented-on i {
            color: var(--theme-color);
            margin-right: 7px;
            font-size: 0.9rem;
        }

    .th-comments-wrap .name {
        margin-bottom: 12px;
        font-size: 22px;
    }

    .th-comments-wrap .comment-top {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .th-comments-wrap .text {
        margin-bottom: 10px;
    }

    .th-comments-wrap .children {
        margin: 0;
        padding: 0;
        list-style-type: none;
        margin-left: 80px;
    }

    .th-comments-wrap .reply_and_edit {
        margin-top: 12px;
        margin-bottom: -0.46em;
    }

        .th-comments-wrap .reply_and_edit a {
            margin-right: 15px;
        }

            .th-comments-wrap .reply_and_edit a:last-child {
                margin-right: 0;
            }

    .th-comments-wrap .reply-btn {
        font-weight: 500;
        font-size: 16px;
        color: var(--body-color);
        display: inline-block;
    }

        .th-comments-wrap .reply-btn i {
            color: var(--theme-color);
            margin-right: 4px;
        }

        .th-comments-wrap .reply-btn:hover {
            color: var(--theme-color);
        }

    .th-comments-wrap .star-rating {
        font-size: 12px;
        margin-bottom: 10px;
        position: absolute;
        top: 5px;
        right: 0;
        width: 80px;
    }

.form-submit input[type="submit"] {
    background-color: var(--theme-color);
    color: var(--white-color);
}

    .form-submit input[type="submit"]:hover {
        background-color: var(--title-color);
    }

.wp-block-post-comments-form textarea,
.wp-block-post-comments-form input:not([type=submit]):not([type=checkbox]):not([type=hidden]) {
    border: 1px solid var(--th-border-color);
}

.wp-block-comment-author-name {
    font-weight: 600;
}

ul.comment-list .th-comment-item:last-child > .th-post-comment {
    border-bottom: none;
    padding-bottom: 0;
}

ul.comment-list .children .th-comment-item > .th-post-comment {
    padding-bottom: 30px;
    border-bottom: 1px solid var(--th-border-color);
}

ul.comment-list:has(> .th-comment-item ~ .th-comment-item):first-child > .th-post-comment {
    padding-bottom: 30px;
    border-bottom: 1px solid var(--th-border-color);
}

.th-comments-wrap.th-comment-form {
    margin: 0;
}

.comment-respond .must-log-in {
    margin-bottom: 0;
    margin-top: 8px;
}

/* Medium Large devices */
@media (max-width: 1399px) {
    .th-comment-form,
    .th-comments-wrap {
        padding: 40px 20px;
    }
}

/* Large devices */
@media (max-width: 1199px) {
    .th-comments-wrap .children {
        margin-left: 40px;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .th-comment-form,
    .th-comments-wrap {
        padding: 40px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .th-comment-form,
    .th-comments-wrap {
        padding: 40px 20px;
    }

        .th-comments-wrap .th-post-comment {
            display: block;
        }

        .th-comments-wrap .star-rating {
            position: relative;
            top: 0;
            right: 0;
        }

        .th-comments-wrap .comment-top {
            display: block;
        }

        .th-comments-wrap .comment-avater {
            margin-right: 0;
            margin-bottom: 25px;
        }

        .th-comments-wrap .children {
            margin-left: 40px;
        }

        .th-comments-wrap .children {
            margin-left: 30px;
        }
}

/* Small devices */
@media (max-width: 767px) {
    .th-comment-form {
        --blog-space-x: 20px;
    }
}

/*------------------- 4.8. Hero Area  -------------------*/
/* Hero Global ---------------------------------- */
.th-hero-wrapper {
    position: relative;
    z-index: 2;
    overflow: hidden;
}

.th-hero-bg {
    position: absolute;
    inset: 0;
}

    .th-hero-bg img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }

/* Hero 1 ---------------------------------- */
.hero-title {
    font-size: 134px;
    line-height: 1;
    margin-bottom: 35px;
    margin-top: -0.21em;
}

    .hero-title .title1,
    .hero-title .title2 {
        display: block;
        max-width: -webkit-fit-content;
        max-width: -moz-fit-content;
        max-width: fit-content;
        position: relative;
    }

.hero-subtitle {
    font-family: var(--style-font);
    font-size: 30px;
    line-height: 1;
    color: var(--theme-color);
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    margin-bottom: 39px;
    text-transform: capitalize;
}

    .hero-subtitle:after {
        content: '';
        display: inline-block;
        height: 1px;
        width: 80px;
        background-color: var(--theme-color);
    }

    .hero-subtitle.text-center:before {
        content: '';
        display: inline-block;
        height: 1px;
        width: 80px;
        background-color: var(--theme-color);
    }

.hero-social {
    position: absolute;
    left: 37px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 15px;
}

    .hero-social:after, .hero-social:before {
        content: '';
        height: 158px;
        width: 1px;
        background-color: var(--title-color);
    }

    .hero-social .social-links a {
        color: var(--title-color);
        margin: 15px 0;
        display: block;
    }

        .hero-social .social-links a:hover {
            color: var(--theme-color);
        }

.hero-1 {
    background-color: var(--smoke-color);
}

    .hero-1 .banner-area {
        margin-left: 100px;
    }

    .hero-1 .hero-inner {
        margin-left: -100px;
    }

.hero-style1 {
    position: relative;
    z-index: 6;
    padding: 250px 0;
}

    .hero-style1 .hero-title {
        color: var(--white-color);
        text-transform: uppercase;
    }

@media (max-width: 1599px) {
    .hero-1 .banner-area {
        margin-left: 30px;
    }

    .hero-1 .hero-inner {
        margin-left: -30px;
    }

    .hero-1 .hero-social {
        left: 7px;
    }
}

/* Medium Large devices */
@media (max-width: 1299px) {
    .hero-style1 {
        padding: 155px 0;
    }

    .hero-title {
        font-size: 100px;
    }
}

/* Large devices */
@media (max-width: 1199px) {
    .hero-title {
        font-size: 84px;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .hero-title {
        font-size: 64px;
        line-height: 1.1;
    }

    .hero-style1 {
        padding: 110px 0;
    }

    .hero-1 .banner-area {
        margin-left: 0;
    }

    .hero-1 .hero-inner {
        margin-left: 0;
    }

    .hero-1 .hero-social {
        top: unset;
        bottom: 0;
        left: 0;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 3;
        background-color: var(--smoke-color);
        padding: 5px 28px;
    }

        .hero-1 .hero-social:before, .hero-1 .hero-social:after {
            display: none;
        }

        .hero-1 .hero-social .social-links a {
            display: inline-block;
            margin: 0 8px;
        }
}

/* Small devices */
@media (max-width: 767px) {
    .hero-subtitle {
        font-size: 24px;
        margin-bottom: 25px;
    }

        .hero-subtitle:before, .hero-subtitle:after {
            display: none !important;
        }

    .hero-style1 {
        text-align: center;
    }

        .hero-style1 .btn-group {
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
        }

        .hero-style1 .hero-title > span {
            margin-left: auto;
            margin-right: auto;
        }

    .hero-title {
        font-size: 52px;
    }

    .hero-1 .hero-inner {
        background-position: left center;
    }

    .hero-1 .hero-social {
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
    }
}

@media (max-width: 390px) {
    .hero-title {
        font-size: 44px;
        line-height: 1.2;
    }
}

/* Hero 2 --------------------------------------*/
.hero-title2 {
    font-size: 114px;
    line-height: 1;
    margin-top: -0.21em;
    margin-bottom: 35px;
    /* Medium Large devices */
    /* Large devices */
    /* Medium devices */
    /* Small devices */
    /* Extra small devices */
}

@media (max-width: 1299px) {
    .hero-title2 {
        font-size: 100px;
    }
}

@media (max-width: 1199px) {
    .hero-title2 {
        font-size: 92px;
    }
}

@media (max-width: 991px) {
    .hero-title2 {
        font-size: 74px;
    }
}

@media (max-width: 767px) {
    .hero-title2 {
        font-size: 68px;
    }
}

@media (max-width: 375px) {
    .hero-title2 {
        font-size: 54px;
    }
}

.hero-title3 {
    font-size: 84px;
    line-height: 1;
    margin-bottom: 41px;
    /* Medium Large devices */
    /* Large devices */
    /* Small devices */
    /* Extra small devices */
    /* Extra small devices */
}

@media (max-width: 1299px) {
    .hero-title3 {
        font-size: 76px;
    }
}

@media (max-width: 1199px) {
    .hero-title3 {
        font-size: 68px;
        margin-bottom: 33px;
    }
}

@media (max-width: 767px) {
    .hero-title3 {
        font-size: 60px;
        height: 1.2;
    }
}

@media (max-width: 575px) {
    .hero-title3 {
        font-size: 54px;
        height: 1.2;
    }
}

@media (max-width: 375px) {
    .hero-title3 {
        font-size: 48px;
    }
}

.hero-2 {
    background-color: #111;
    text-align: right;
    /* Small devices */
}

    .hero-2 .hero-img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        pointer-events: none;
        /* Medium Large devices */
        /* Medium devices */
        /* Small devices */
    }

        .hero-2 .hero-img img {
            height: 100%;
            object-fit: cover;
            object-position: right center;
        }

@media (max-width: 1700px) {
    .hero-2 .hero-img {
        max-width: 54%;
    }
}

@media (max-width: 1399px) {
    .hero-2 .hero-img {
        max-width: 45%;
    }
}

@media (max-width: 991px) {
    .hero-2 .hero-img {
        max-width: 40%;
    }
}

@media (max-width: 767px) {
    .hero-2 .hero-img {
        display: none;
    }
}

.hero-2 .hero-shape1 {
    position: absolute;
    bottom: 0;
    right: 0;
    /* Medium devices */
}

@media (max-width: 991px) {
    .hero-2 .hero-shape1 {
        max-width: 220px;
    }
}

.hero-2 .hero-shape2 {
    position: absolute;
    top: 5%;
    right: 9%;
}

.hero-2 .hero-shape3 {
    position: absolute;
    top: 18%;
    right: 4.5%;
}

@media (max-width: 767px) {
    .hero-2 {
        text-align: center;
    }
}

.hero-style2 {
    padding: 250px 60px;
    text-align: center;
    display: inline-block;
    /* Medium Large devices */
    /* Large devices */
    /* Medium devices */
}

    .hero-style2 .hero-title2,
    .hero-style2 .hero-title3 {
        color: var(--white-color);
    }

    .hero-style2 .hero-title2 {
        text-transform: uppercase;
        margin-bottom: 0;
    }

@media (max-width: 1399px) {
    .hero-style2 {
        padding: 170px 50px;
    }
}

@media (max-width: 1199px) {
    .hero-style2 {
        padding: 150px 0;
    }
}

@media (max-width: 991px) {
    .hero-style2 {
        padding: 100px 0;
    }
}

/* Heor 3 -------------------------------------*/
.hero-title4 {
    font-size: 164px;
    line-height: 1;
    margin-top: -0.21em;
    margin-bottom: 35px;
    /* Medium Large devices */
    /* Medium Large devices */
    /* Large devices */
    /* Medium devices */
    /* Extra small devices */
    /* Extra small devices */
}

@media (max-width: 1399px) {
    .hero-title4 {
        font-size: 150px;
    }
}

@media (max-width: 1299px) {
    .hero-title4 {
        font-size: 130px;
    }
}

@media (max-width: 1199px) {
    .hero-title4 {
        font-size: 110px;
    }
}

@media (max-width: 991px) {
    .hero-title4 {
        font-size: 100px;
    }
}

@media (max-width: 575px) {
    .hero-title4 {
        font-size: 80px;
    }
}

@media (max-width: 375px) {
    .hero-title4 {
        font-size: 70px;
    }
}

@media (max-width: 360px) {
    .hero-title4 {
        font-size: 50px;
    }
}

.hero-3 {
    background-color: #111;
    /* Small devices */
}

    .hero-3 .banner-area {
        margin: 0 100px;
        background-color: var(--body-bg);
        position: relative;
    }

    .hero-3 .hero-shape1 {
        position: absolute;
        bottom: 0;
        right: 0;
        /* Medium devices */
    }

@media (max-width: 991px) {
    .hero-3 .hero-shape1 {
        max-width: 220px;
    }
}

.hero-3 .hero-shape2 {
    position: absolute;
    top: 5%;
    right: 9%;
}

.hero-3 .hero-shape3 {
    position: absolute;
    top: 18%;
    right: 4.5%;
}

.hero-3 .hero-img {
    position: absolute;
    bottom: 0;
    right: 0;
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    height: 100%;
    padding-right: 8%;
    z-index: 3;
}

@media (max-width: 1700px) {
    .hero-3 .hero-img {
        max-width: 48%;
    }
}

.hero-3 .hero-img .shape1 {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
}

.hero-3 .hero-img .offer {
    position: absolute;
    bottom: 8%;
    left: -6%;
    z-index: 2;
}

.hero-3 .hero-overlay {
    position: absolute;
    right: 0;
    height: 100%;
    width: 40.34%;
    background-color: var(--theme-color);
}

.hero-3 .hero-bottom {
    background-color: #111;
    height: 100px;
    display: grid;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    z-index: 100%;
}

    .hero-3 .hero-bottom .slider-arrow {
        --title-color: #fff;
    }

.hero-3 .hero-thumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 12px;
}

    .hero-3 .hero-thumb .tab-btn {
        cursor: url("../img/theme-img/pointer.png"), auto;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

    .hero-3 .hero-thumb .indicator {
        position: absolute;
        top: var(--pos-y);
        left: var(--pos-x);
        height: var(--height-set);
        width: var(--width-set);
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
        outline: 3px solid var(--theme-color);
        border-radius: 99px;
    }

.hero-3 .hero-social {
    margin-top: -50px;
}

    .hero-3 .hero-social:before, .hero-3 .hero-social:after {
        background-color: var(--theme-color);
    }

    .hero-3 .hero-social .social-links a {
        color: var(--theme-color);
    }

        .hero-3 .hero-social .social-links a:hover {
            color: var(--white-color);
        }

.hero-3 .hero-btn {
    position: absolute;
    right: 37px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 15px;
    font-weight: 600;
    color: var(--theme-color);
    text-transform: uppercase;
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
    white-space: nowrap;
    letter-spacing: 0.2em;
    margin-top: -50px;
}

    .hero-3 .hero-btn:before, .hero-3 .hero-btn:after {
        content: '';
        height: 158px;
        width: 1px;
        background-color: var(--theme-color);
    }

    .hero-3 .hero-btn:hover {
        color: var(--white-color);
    }

.hero-3 .ball-shape {
    position: absolute;
    top: 0;
    right: 50px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    z-index: 3;
}

    .hero-3 .ball-shape > * {
        -webkit-animation: cloudAni 15s linear infinite;
        animation: cloudAni 15s linear infinite;
    }

    .hero-3 .ball-shape .img2 {
        margin: 0 -28px;
    }

    .hero-3 .ball-shape .img1 {
        -webkit-animation-delay: 5s;
        animation-delay: 5s;
        -webkit-animation: cloudAni 10s linear infinite;
        animation: cloudAni 10s linear infinite;
    }

    .hero-3 .ball-shape .img3 {
        -webkit-animation-delay: 5s;
        animation-delay: 5s;
    }

@media (max-width: 767px) {
    .hero-3 {
        text-align: center;
    }
}

@-webkit-keyframes cloudAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    50% {
        -webkit-transform: translateY(-80px);
        transform: translateY(-80px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes cloudAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    50% {
        -webkit-transform: translateY(-80px);
        transform: translateY(-80px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

.hero-style3 {
    padding: 245px 50px;
    text-align: center;
    display: inline-block;
    position: relative;
    z-index: 6;
    /* Medium Large devices */
    /* Large devices */
    /* Medium devices */
}

    .hero-style3 .hero-subtitle {
        font-size: 40px;
    }

    .hero-style3 .hero-title4 {
        margin-bottom: 0;
    }

@media (max-width: 1399px) {
    .hero-style3 {
        padding: 170px 20px;
    }
}

@media (max-width: 1199px) {
    .hero-style3 {
        padding: 150px 0;
    }
}

@media (max-width: 991px) {
    .hero-style3 {
        padding: 100px 0;
    }
}

@media (max-width: 1599px) {
    .hero-3 .banner-area {
        margin: 0 30px;
    }

    .hero-3 .hero-social {
        left: 7px;
    }

    .hero-3 .hero-btn {
        right: 2px;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .hero-3 {
        text-align: center;
    }

        .hero-3 .hero-overlay {
            display: none;
        }

        .hero-3 .hero-img {
            position: relative;
            bottom: 0;
            right: 0;
            max-width: 100%;
            padding-right: 0;
            height: auto;
            margin: -50px 12px 12px 12px;
        }

            .hero-3 .hero-img .offer {
                left: unset;
                right: 0;
                bottom: unset;
                top: 0;
            }

        .hero-3 .ball-shape {
            right: 0;
        }
}

/* Extra small devices */
@media (max-width: 575px) {
    .hero-3 .icon-box {
        display: none;
    }

    .hero-3 .ball-shape {
        display: none;
    }

    .hero-3 .hero-img .offer {
        max-width: 150px;
    }
}

/*------------------- 4.9. Error  -------------------*/
.error-content {
    text-align: center;
}

.error-img {
    text-align: center;
    margin-bottom: 45px;
}

.error-title {
    margin-bottom: 20px;
}

.error-text {
    margin-bottom: 35px;
    max-width: 650px;
    margin-left: auto;
    margin-right: auto;
}

/* Medium devices */
@media (max-width: 991px) {
    .error-title {
        margin-bottom: 15px;
    }

    .error-img {
        margin-bottom: 30px;
    }

    .error-text {
        margin-bottom: 25px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .error-title {
        margin-bottom: 10px;
    }
}

/*------------------- 4.00. Popup Search  -------------------*/
.popup-search-box {
    position: fixed;
    top: 0;
    left: 50%;
    background-color: rgba(0, 0, 0, 0.95);
    height: 0;
    width: 0;
    overflow: hidden;
    z-index: 99999;
    opacity: 0;
    visibility: hidden;
    border-radius: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
}

    .popup-search-box button.searchClose {
        width: 60px;
        height: 60px;
        position: absolute;
        top: 40px;
        right: 40px;
        border-width: 1px;
        border-style: solid;
        border-color: var(--theme-color);
        background-color: transparent;
        font-size: 22px;
        border-radius: 50%;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        -webkit-transition: all ease 0.4s;
        transition: all ease 0.4s;
        color: var(--theme-color);
    }

        .popup-search-box button.searchClose:hover {
            color: var(--body-color);
            background-color: #fff;
            border-color: transparent;
            border-color: transparent;
            -webkit-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
            transform: rotate(90deg);
        }

    .popup-search-box form {
        position: absolute;
        top: 50%;
        left: 50%;
        display: inline-block;
        padding-bottom: 40px;
        cursor: auto;
        width: 100%;
        max-width: 700px;
        -webkit-transform: translate(-50%, -50%) scale(0);
        -ms-transform: translate(-50%, -50%) scale(0);
        transform: translate(-50%, -50%) scale(0);
        -webkit-transition: -webkit-transform ease 0.4s;
        transition: -webkit-transform ease 0.4s;
        transition: transform ease 0.4s;
        transition: transform ease 0.4s, -webkit-transform ease 0.4s;
        /* Large devices */
    }

@media (max-width: 1199px) {
    .popup-search-box form {
        max-width: 600px;
    }
}

.popup-search-box form input {
    font-size: 18px;
    height: 70px;
    width: 100%;
    border: 2px solid var(--theme-color);
    background-color: transparent;
    padding-left: 30px;
    color: #fff;
    border-radius: 50px;
}

    .popup-search-box form input::-moz-placeholder {
        color: #fff;
    }

    .popup-search-box form input::-webkit-input-placeholder {
        color: #fff;
    }

    .popup-search-box form input:-ms-input-placeholder {
        color: #fff;
    }

    .popup-search-box form input::-ms-input-placeholder {
        color: #fff;
    }

    .popup-search-box form input::placeholder {
        color: #fff;
    }

.popup-search-box form button {
    position: absolute;
    top: 0px;
    background-color: transparent;
    border: none;
    color: #fff;
    font-size: 24px;
    right: 12px;
    color: var(--white-color);
    cursor: url("../img/theme-img/pointer.png"), auto;
    width: 70px;
    height: 70px;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    -webkit-transform: scale(1.001);
    -ms-transform: scale(1.001);
    transform: scale(1.001);
}

    .popup-search-box form button:hover {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
    }

.popup-search-box.show {
    opacity: 1;
    visibility: visible;
    width: 100.1%;
    height: 100%;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    border-radius: 0;
}

    .popup-search-box.show form {
        -webkit-transition-delay: 0.5s;
        transition-delay: 0.5s;
        -webkit-transform: translate(-50%, -50%) scale(1);
        -ms-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
    }

/*------------------- 4.00. Popup Side Menu  -------------------*/
.sidemenu-wrapper {
    position: fixed;
    z-index: 99999;
    right: 0;
    top: 0;
    height: 100%;
    width: 0;
    background-color: rgba(0, 0, 0, 0.75);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all ease 0.8s;
    transition: all ease 0.8s;
}

    .sidemenu-wrapper .th-social a {
        box-shadow: none;
    }

    .sidemenu-wrapper .info-box .box-title {
        color: var(--title-color);
    }

    .sidemenu-wrapper .closeButton {
        display: inline-block;
        border: 2px solid;
        width: 50px;
        height: 50px;
        line-height: 48px;
        font-size: 24px;
        padding: 0;
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: var(--white-color);
        border-radius: 50%;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        -webkit-transition: all ease 0.4s;
        transition: all ease 0.4s;
    }

        .sidemenu-wrapper .closeButton:hover {
            color: var(--theme-color);
            border-color: var(--theme-color);
            -webkit-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
            transform: rotate(90deg);
        }

    .sidemenu-wrapper .sidemenu-content {
        background-color: var(--white-color);
        width: 450px;
        max-width: 100%;
        margin-left: auto;
        padding: 80px 30px;
        height: 100%;
        overflow: scroll;
        position: relative;
        right: -500px;
        cursor: auto;
        -webkit-transition-delay: 1s;
        transition-delay: 1s;
        -webkit-transition: right ease 1s;
        transition: right ease 1s;
    }

        .sidemenu-wrapper .sidemenu-content::-webkit-scrollbar-track {
            box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.1);
            background-color: #f5f5f5;
        }

        .sidemenu-wrapper .sidemenu-content::-webkit-scrollbar {
            width: 2px;
            background-color: #f5f5f5;
        }

        .sidemenu-wrapper .sidemenu-content select,
        .sidemenu-wrapper .sidemenu-content input,
        .sidemenu-wrapper .sidemenu-content .form-select,
        .sidemenu-wrapper .sidemenu-content .form-control,
        .sidemenu-wrapper .sidemenu-content textarea {
            background-color: var(--smoke-color2);
        }

    .sidemenu-wrapper .widget {
        padding: 0;
        border: none;
        background-color: transparent;
    }

    .sidemenu-wrapper .info-box_icon {
        background-color: rgba(255, 156, 0, 0.15);
    }

    .sidemenu-wrapper.show {
        opacity: 1;
        visibility: visible;
        width: 100%;
        -webkit-transition: all ease 0.8s;
        transition: all ease 0.8s;
    }

        .sidemenu-wrapper.show .sidemenu-content {
            right: 0;
            opacity: 1;
            visibility: visible;
        }

/*------------------- 4.00. Wocommerce  -------------------*/
.woocommerce-message,
.woocommerce-info {
    position: relative;
    padding: 11px 20px 11px 50px;
    background-color: var(--theme-color);
    color: var(--white-color);
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 15px;
    border-radius: 0;
}

    .woocommerce-message a,
    .woocommerce-info a {
        color: var(--white-color);
        text-decoration: underline;
    }

        .woocommerce-message a:hover,
        .woocommerce-info a:hover {
            color: var(--title-color);
        }

    .woocommerce-message:before,
    .woocommerce-info:before {
        content: "\f06a";
        font-family: var(--icon-font);
        font-weight: 400;
        margin-right: 10px;
        font-size: 18px;
        position: absolute;
        left: 20px;
        top: 11px;
    }

.woocommerce-notices-wrapper .woocommerce-message {
    background-color: var(--theme-color);
    color: var(--white-color);
}

    .woocommerce-notices-wrapper .woocommerce-message:before {
        content: "\f14a";
        font-weight: 300;
    }

.woocommerce-form-register,
.woocommerce-form-coupon,
.woocommerce-form-login {
    padding: 35px 40px 35px 40px;
    background-color: var(--white-color);
    box-shadow: 0px 6px 30px rgba(1, 15, 28, 0.1);
    margin-bottom: 0;
    /* Extra small devices */
}

@media (max-width: 575px) {
    .woocommerce-form-register,
    .woocommerce-form-coupon,
    .woocommerce-form-login {
        padding: 40px 20px;
    }
}

.woocommerce-form-register .form-group,
.woocommerce-form-coupon .form-group,
.woocommerce-form-login .form-group {
    margin-bottom: 20px;
}

    .woocommerce-form-register .form-group:last-child,
    .woocommerce-form-coupon .form-group:last-child,
    .woocommerce-form-login .form-group:last-child {
        margin-bottom: 0;
    }

.woocommerce-form-login-toggle .woocommerce-info {
    background-color: var(--theme-color);
    color: var(--white-color);
}

    .woocommerce-form-login-toggle .woocommerce-info a {
        color: inherit;
    }

        .woocommerce-form-login-toggle .woocommerce-info a:hover {
            color: var(--theme-color);
        }

.woocommerce-form-login-toggle + .row .woocommerce-form-login {
    margin-bottom: 30px;
}

.woocommerce-error {
    background-color: var(--error-color);
    color: #fff;
    list-style: none;
    padding: 10px 26px;
    margin: 0 0 30px 0;
    border-radius: 0;
    font-weight: 500;
    font-size: 14px;
}

nav.woocommerce-MyAccount-navigation li {
    border: 1px solid #ddd;
    margin: 0;
    border-top: none;
}

    nav.woocommerce-MyAccount-navigation li:first-child {
        border-top: 1px solid #ddd;
    }

    nav.woocommerce-MyAccount-navigation li a {
        color: var(--title-color);
        font-weight: 700;
        padding: 7px 17px;
        display: block;
    }

        nav.woocommerce-MyAccount-navigation li.is-active a,
        nav.woocommerce-MyAccount-navigation li a:hover {
            color: var(--white-color);
            background-color: var(--theme-color);
        }

.woocommerce-MyAccount-content h3 {
    margin-top: -0.3em;
}

.woocommerce-MyAccount-content .btn {
    background-color: var(--theme-color);
    color: var(--white-color);
    font-size: 14px;
    padding: 10px 25px;
    font-weight: 700;
}

    .woocommerce-MyAccount-content .btn:hover {
        background-color: var(--title-color);
        color: var(--white-color);
    }

table.variations,
.woocommerce-grouped-product-list-item {
    border-collapse: separate;
    border-spacing: 0 15px;
    margin-bottom: 5px;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    border: none;
}

    table.variations td,
    .woocommerce-grouped-product-list-item td {
        border: none;
        vertical-align: middle;
        padding: 0 5px;
    }

        table.variations td:first-child,
        .woocommerce-grouped-product-list-item td:first-child {
            padding: 0;
        }

    table.variations label,
    .woocommerce-grouped-product-list-item label {
        margin: 0;
        font-size: 14px;
        text-transform: capitalize;
    }

        table.variations label a,
        .woocommerce-grouped-product-list-item label a {
            color: var(--title-color);
        }

            table.variations label a:hover,
            .woocommerce-grouped-product-list-item label a:hover {
                color: var(--theme-color);
            }

    table.variations .label,
    .woocommerce-grouped-product-list-item .label {
        border: none;
    }

table.variations__label,
.woocommerce-grouped-product-list-item__label {
    border: none !important;
    font-weight: 600;
}

table.variations__price,
.woocommerce-grouped-product-list-item__price {
    border: none !important;
}

    table.variations__price .price,
    table.variations__price .amount,
    .woocommerce-grouped-product-list-item__price .price,
    .woocommerce-grouped-product-list-item__price .amount {
        font-size: 18px !important;
    }

table.variations del,
.woocommerce-grouped-product-list-item del {
    margin-left: 12px;
}

.woocommerce-product-attributes th,
.woocommerce-product-attributes td {
    border: 1px solid var(--th-border-color);
}

    .woocommerce-product-attributes th p:last-child,
    .woocommerce-product-attributes td p:last-child {
        margin-bottom: 0;
    }

.woocommerce-grouped-product-list.group_table {
    border-collapse: collapse;
    margin-bottom: 15px;
}

    .woocommerce-grouped-product-list.group_table .woocommerce-Price-amount.amount {
        font-size: 16px;
        color: var(--title-color);
    }

    .woocommerce-grouped-product-list.group_table label {
        margin: 0 0 0 10px;
        margin: 0 0 0 10px;
        font-family: var(--title-font);
        font-size: 18px;
    }

    .woocommerce-grouped-product-list.group_table .qty-input {
        border-color: #e3e6e9;
    }

    .woocommerce-grouped-product-list.group_table tr {
        border-bottom: 1px solid #e3e6e9;
    }

        .woocommerce-grouped-product-list.group_table tr:last-child {
            border-bottom: none;
        }

    .woocommerce-grouped-product-list.group_table td {
        padding: 30px 5px;
    }

table.variations {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    position: relative;
}

    table.variations td {
        padding: 0;
    }

        table.variations td.label {
            padding-right: 10px;
            width: -webkit-max-content;
            width: -moz-max-content;
            width: max-content;
        }

    table.variations select {
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
        font-weight: 400;
        line-height: 1.5;
        vertical-align: middle;
        margin: 0;
        padding-right: 54px;
        padding-left: 20px;
        height: 50px;
    }

    table.variations .reset_variations {
        margin-left: 16px;
        display: inline-block;
        position: absolute;
        left: 100%;
        bottom: 25px;
    }

.woosq-product .product .woocommerce-grouped-product-list-item__quantity,
.woosq-product .product .woocommerce-grouped-product-list-item__label,
.woosq-product .product .woocommerce-grouped-product-list-item__price {
    width: auto !important;
}

.woocommerce-grouped-product-list-item__label:after,
.woocommerce-grouped-product-list-item__price:after {
    display: none;
}

.woocommerce-variation.single_variation {
    margin-bottom: 30px;
}

    .woocommerce-variation.single_variation .price {
        color: var(--title-color);
        font-weight: 700;
    }

.wooscp-table-items td.woocommerce-product-attributes-item__value {
    padding-left: 15px !important;
}

.wooscp-table-items a.added_to_cart.wc-forward {
    margin-left: 15px;
    text-decoration: underline;
}

.tinvwl_added_to_wishlist.tinv-modal.tinv-modal-open {
    z-index: 1111;
}

table.woocommerce-product-attributes {
    margin-bottom: 30px;
}

#woosq-popup .product_meta {
    margin-top: 20px;
}

#woosq-popup .product_title {
    font-size: 24px;
    margin-bottom: 5px;
}

#woosq-popup .single-product .product .actions {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
}

    #woosq-popup .single-product .product .actions > div {
        height: auto;
        overflow: visible;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
    }

        #woosq-popup .single-product .product .actions > div .quantity.style2.woocommerce-grouped-product-list-item__quantity {
            width: -webkit-max-content;
            width: -moz-max-content;
            width: max-content;
        }

.login-tab {
    margin-bottom: 30px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

    .login-tab button.nav-link {
        background-color: var(--smoke-color);
        color: var(--title-color);
        padding: 11px 39px;
        font-size: 18px;
        font-weight: 500;
        border-radius: 15px ​15px 0;
    }

        .login-tab button.nav-link.active {
            background-color: var(--theme-color);
            color: var(--white-color);
        }

.star-rating {
    overflow: hidden;
    position: relative;
    width: 100px;
    height: 1.2em;
    line-height: 1.2em;
    display: block;
    font-family: var(--icon-font);
    font-weight: 700;
    font-size: 14px;
}

    .star-rating:before {
        content: "\e28b\e28b\e28b\e28b\e28b";
        color: #e1e1e1;
        float: left;
        top: 0;
        left: 0;
        position: absolute;
        letter-spacing: 3px;
    }

    .star-rating span {
        overflow: hidden;
        float: left;
        top: 0;
        left: 0;
        position: absolute;
        padding-top: 1.5em;
    }

        .star-rating span:before {
            content: "\e28b\e28b\e28b\e28b\e28b";
            top: 0;
            position: absolute;
            left: 0;
            color: var(--yellow-color);
            letter-spacing: 3px;
        }

.rating-select label {
    margin: 0;
    margin-right: 10px;
}

.rating-select p.stars {
    margin-bottom: 0;
    line-height: 1;
}

    .rating-select p.stars a {
        position: relative;
        height: 14px;
        width: 18px;
        text-indent: -999em;
        display: inline-block;
        text-decoration: none;
    }

        .rating-select p.stars a::before {
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            width: 18px;
            height: 14px;
            line-height: 1;
            font-family: var(--icon-font);
            content: "\e28b";
            font-weight: 400;
            text-indent: 0;
            color: var(--yellow-color);
        }

        .rating-select p.stars a:hover ~ a::before {
            content: "\e28b";
            font-weight: 400;
        }

    .rating-select p.stars:hover a::before {
        content: "\e28b";
        font-weight: 700;
    }

    .rating-select p.stars.selected a.active::before {
        content: "\e28b";
        font-weight: 700;
    }

    .rating-select p.stars.selected a.active ~ a::before {
        content: "\e28b";
        font-weight: 400;
    }

    .rating-select p.stars.selected a:not(.active)::before {
        content: "\e28b";
        font-weight: 700;
    }

/* Small devices */
@media (max-width: 767px) {
    .woocommerce-message,
    .woocommerce-info {
        font-size: 14px;
        line-height: 22px;
        padding: 10px 15px 10px 37px;
    }

        .woocommerce-message:before,
        .woocommerce-info:before {
            font-size: 16px;
            top: 10px;
            left: 15px;
        }
}

/*------------------- 4.00. Products  -------------------*/
.th-product {
    text-align: center;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
}

    .th-product .product-title {
        font-size: 30px;
        margin: 4px 0 6px 0;
    }

        .th-product .product-title a {
            color: inherit;
        }

            .th-product .product-title a:hover {
                color: var(--theme-color);
            }

    .th-product .product-category {
        font-size: 14px;
        color: var(--body-color);
        margin-bottom: 0px;
        display: block;
    }

        .th-product .product-category:hover {
            color: var(--theme-color);
        }

    .th-product .product-tag {
        font-family: var(--title-font);
        font-size: 14px;
        position: absolute;
        top: 20px;
        left: 20px;
        background-color: var(--theme-color);
        color: var(--white-color);
        padding: 0 10px;
        z-index: 3;
        border-radius: 4px;
        line-height: 22px;
    }

    .th-product .woocommerce-product-rating {
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 5px;
        margin-top: 8px;
        margin-bottom: 5px;
    }

    .th-product .star-rating {
        margin: 0 auto 10px auto;
        width: 93px;
    }

    .th-product .price {
        display: block;
        color: var(--theme-color);
        font-weight: 600;
        margin-bottom: -0.4em;
        font-family: var(--body-font);
    }

        .th-product .price del {
            margin-left: 5px;
            color: var(--body-color);
        }

    .th-product .product-img {
        --space: 0px;
        background-color: var(--smoke-color2);
        overflow: hidden;
        position: relative;
        margin: 0 0 23px 0;
        text-align: center;
        z-index: 2;
    }

        .th-product .product-img:after {
            content: '';
            position: absolute;
            inset: 0;
            background-color: var(--title-color);
            border-radius: inherit;
            opacity: 0;
            -webkit-transition: 0.4s ease-in-out;
            transition: 0.4s ease-in-out;
            pointer-events: none;
        }

        .th-product .product-img img {
            width: 100%;
            -webkit-transition: all ease 0.4s;
            transition: all ease 0.4s;
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
        }

        .th-product .product-img.transparent-img {
            padding: 50px 35px;
        }

            .th-product .product-img.transparent-img:after {
                display: none;
            }

            .th-product .product-img.transparent-img img {
                border-radius: 999px;
                box-shadow: 0px 6px 30px rgba(0, 0, 0, 0.25);
            }

    .th-product .actions {
        height: 100%;
        position: absolute;
        top: 20px;
        right: 20px;
        text-align: center;
        z-index: 3;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
        display: grid;
        -webkit-align-content: flex-start;
        -ms-flex-line-pack: start;
        align-content: flex-start;
        width: 40px;
    }

        .th-product .actions .icon-btn {
            --btn-size: 40px;
            font-size: 14px;
            border-color: var(--body-bg);
            background-color: var(--body-bg);
            color: var(--title-color);
            border-radius: 0;
            margin-bottom: 10px;
        }

            .th-product .actions .icon-btn:hover {
                color: var(--white-color);
                border-color: var(--theme-color);
                background-color: var(--theme-color);
            }

        .th-product .actions > * {
            margin: 0 0;
        }

            .th-product .actions > * > a {
                margin: 0;
            }

    .th-product .icon-btn {
        -webkit-transform: translateX(30px);
        -ms-transform: translateX(30px);
        transform: translateX(30px);
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

    .th-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt,
    .th-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {
        width: 40px;
        height: 40px;
        line-height: 40px;
        display: inline-block;
    }

        .th-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt::before,
        .th-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt::before {
            position: relative;
            top: 0;
            left: 0;
            line-height: inherit;
            margin: 0;
            font-size: 24px;
        }

    .th-product .tinv-wishlist a {
        display: inline-block;
        width: 40px;
        height: 40px;
        line-height: 40px;
        background-color: var(--body-bg);
        color: var(--title-color);
    }

        .th-product .tinv-wishlist a:hover {
            background-color: var(--theme-color);
            color: var(--white-color);
        }

    .th-product .add_to_cart_button.added {
        display: none;
    }

    .th-product .added_to_cart {
        display: block;
        width: 40px;
        height: 40px;
        line-height: 38px;
        background-color: var(--body-bg);
        color: var(--white-color);
        font-size: 0;
        text-align: center;
        border: none;
        margin-bottom: 10px;
    }

        .th-product .added_to_cart:after {
            content: "\f07a";
            position: relative;
            font-family: var(--icon-font);
            font-size: 16px;
            font-weight: 700;
        }

        .th-product .added_to_cart:hover {
            background-color: var(--theme-color);
            color: var(--white-color);
        }

    .th-product .action-btn {
        background-color: var(--body-bg);
        font-size: 14px;
        font-family: var(--title-font);
        text-transform: uppercase;
        font-weight: bold;
        display: inline-block;
        padding: 13px 25px;
    }

    .th-product:hover .product-img:after {
        opacity: 0.35;
    }

    .th-product:hover .actions {
        margin-top: 0;
        opacity: 1;
        visibility: visible;
    }

    .th-product:hover .icon-btn {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    .th-product.list-view {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        text-align: left;
        height: 100%;
        padding: 15px;
        border: 1px solid var(--th-border-color);
        border-radius: 20px;
    }

        .th-product.list-view .product-img {
            --space: 0px;
            width: 94px;
            margin: 0;
            border-radius: 10px;
            display: grid;
            -webkit-align-content: center;
            -ms-flex-line-pack: center;
            align-content: center;
        }

            .th-product.list-view .product-img:before {
                --space: 0px;
            }

        .th-product.list-view .product-category {
            font-size: 13px;
            line-height: 23px;
            margin-top: -3px;
            margin-bottom: 2px;
        }

        .th-product.list-view .star-rating {
            margin: 8px 0 0 0;
            width: 80px;
            font-size: 12px;
        }

            .th-product.list-view .star-rating span:before {
                color: var(--yellow-color);
            }

        .th-product.list-view .product-content {
            -webkit-box-flex: 1;
            -webkit-flex: 1;
            -ms-flex: 1;
            flex: 1;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -webkit-flex-direction: column;
            -ms-flex-direction: column;
            flex-direction: column;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: start;
            -webkit-align-items: flex-start;
            -ms-flex-align: start;
            align-items: flex-start;
            padding: 0 0 0 15px;
        }

        .th-product.list-view .actions {
            --icon-gap-x: 2px;
            width: 100%;
            right: 0;
            text-align: center;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
        }

            .th-product.list-view .actions .icon-btn {
                --btn-size: 36px;
                --btn-font-size: 14px;
                background-color: var(--theme-color);
                color: var(--white-color);
                border: none;
            }

                .th-product.list-view .actions .icon-btn:hover {
                    background-color: var(--title-color);
                }

        .th-product.list-view .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt,
        .th-product.list-view .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {
            width: 35px;
            height: 35px;
            line-height: 35px;
        }

            .th-product.list-view .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt::before,
            .th-product.list-view .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt::before {
                font-size: 20px;
            }

        .th-product.list-view .tinv-wishlist a {
            width: 35px;
            height: 35px;
            line-height: 35px;
        }

        .th-product.list-view .added_to_cart {
            width: 35px;
            height: 35px;
            line-height: 35px;
        }

            .th-product.list-view .added_to_cart:after {
                font-size: 16px;
            }

        .th-product.list-view .tag {
            top: 8px;
            right: 8px;
            padding: 0px 15px;
        }

        .th-product.list-view .product-title {
            font-size: 15px;
            font-weight: 500;
            margin: 0 0 2px 0;
        }

        .th-product.list-view .price {
            font-weight: 600;
            font-size: 13px;
            line-height: 23px;
            color: var(--theme-color);
        }

.product-list-area {
    margin-bottom: -24px;
}

#productCarousel .slick-arrow {
    top: 37.5%;
}

.theme-golden .product-img.transparent-img {
    background-color: var(--white-color);
}

.mfp-content {
    margin: 1.5rem auto;
}

    .mfp-content .product-details-img {
        padding-top: 15px;
    }

    .mfp-content .product-about {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .mfp-content .container {
        position: relative;
    }

    .mfp-content .product-big-img {
        margin-top: 12px;
        margin-bottom: 12px;
    }

.mfp-fade.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
}

    .mfp-fade.mfp-bg.mfp-ready {
        opacity: 0.8;
    }

    .mfp-fade.mfp-bg.mfp-removing {
        opacity: 0;
    }

.mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;
    -webkit-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1;
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0;
}

.woosq-popup {
    border-radius: 10px;
}

    .woosq-popup .product_meta > span > a:after,
    .woosq-popup .product_meta > span > span:after {
        display: none;
    }

.woosq-product > .product .summary {
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
}

.woosq-product .thumbnails .slick-list {
    display: block;
}

.woosq-product .thumbnails .slick-dots li button {
    width: 12px;
    height: 12px;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    background-color: var(--theme-color);
    opacity: 0.4;
}

    .woosq-product .thumbnails .slick-dots li button:before {
        display: none;
    }

.woosq-product .thumbnails .slick-dots li.slick-active button {
    opacity: 1;
}

.woosq-product .tinv-wraper {
    display: none;
}

.th-sort-bar {
    padding: 17px;
    margin: 0 0 40px 0;
    background-color: var(--smoke-color2);
}

    .th-sort-bar .row {
        --bs-gutter-x: 0;
        --bs-gutter-y: 15px;
    }

    .th-sort-bar select {
        height: 46px;
        border: 1px solid var(--white-color);
        background-color: var(--white-color);
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        min-width: 250px;
        font-size: 16px;
        margin: 0;
        color: var(--body-color);
    }

    .th-sort-bar .woocommerce-result-count {
        padding-left: 15px;
        margin-bottom: 0;
        color: var(--body-color);
    }

    .th-sort-bar .nav a {
        display: inline-block;
        height: 50px;
        width: 50px;
        line-height: 50px;
        border: 1px solid var(--th-border-color);
        background-color: var(--white-color);
        text-align: center;
        position: relative;
        font-family: var(--title-font);
        font-weight: 600;
        font-size: 16px;
        text-transform: capitalize;
        color: var(--body-color);
        margin: 0 0 0 10px;
        border-radius: 5px;
    }

        .th-sort-bar .nav a.active, .th-sort-bar .nav a:hover {
            color: var(--theme-color);
        }

.product-thumb-area {
    position: relative;
    margin-right: 10px;
}

    .product-thumb-area .product-thumb-tab {
        position: absolute;
        top: 0;
        left: 0;
    }

.product-thumb-tab {
    --thumb: 120px;
    --gap: 10px;
    max-width: var(--thumb);
    margin-left: calc(0px - var(--thumb)/2);
    position: relative;
    z-index: 3;
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    height: 100%;
}

    .product-thumb-tab .tab-btn {
        background-color: var(--white-color);
        cursor: url("../img/theme-img/pointer.png"), auto;
        height: var(--thumb);
        width: var(--thumb);
        padding: var(--gap);
    }

        .product-thumb-tab .tab-btn img {
            max-width: 100%;
        }

        .product-thumb-tab .tab-btn:not(:last-of-type) {
            margin-bottom: 20px;
        }

    .product-thumb-tab .indicator {
        position: absolute;
        top: calc(var(--pos-y) + var(--gap));
        left: calc(var(--pos-x) + var(--gap));
        width: calc(var(--width-set) - var(--gap)*2);
        height: calc(var(--height-set) - var(--gap)*2);
        border: 2px solid var(--theme-color);
        pointer-events: none;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

.product-big-img {
    background-color: var(--smoke-color2);
    text-align: center;
    overflow: hidden;
    position: -webkit-sticky;
    position: sticky;
    top: 110px;
    left: 0;
}

    .product-big-img .img {
        width: 100%;
    }

        .product-big-img .img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            -webkit-transition: 0.4s ease-in-out;
            transition: 0.4s ease-in-out;
        }

    .product-big-img.transparent-img .img {
        padding: 12%;
    }

    .product-big-img.transparent-img img {
        -webkit-filter: drop-shadow(0px 6px 30px rgba(0, 0, 0, 0.2));
        filter: drop-shadow(0px 6px 30px rgba(0, 0, 0, 0.2));
    }

    .product-big-img .slider-pagination {
        position: absolute;
        bottom: 40px;
        left: 0;
    }

    .product-big-img .slick-dots {
        margin: -11px 0 0 0 !important;
        -webkit-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px);
        --border-color: #c0c0c0;
    }

.img-magnifier-container {
    position: relative;
}

.img-magnifier-glass {
    position: absolute;
    box-shadow: inset 0 10px 18px rgba(0, 0, 0, 0.2);
    border-radius: 50%;
    cursor: none;
    width: 200px;
    height: 200px;
}

.magnify {
    position: relative;
    cursor: none;
}

    .magnify .magnifier {
        height: 180px;
        width: 180px;
        position: absolute;
        z-index: 20;
        box-shadow: inset 0 10px 18px rgba(0, 0, 0, 0.2);
        border-radius: 50%;
        background-size: 700%;
        background-repeat: no-repeat;
        margin-left: -90px !important;
        margin-top: -90px !important;
        pointer-events: none;
        display: none;
    }

    .magnify .magnified {
        display: block;
        z-index: 10;
        margin: auto;
        width: 100%;
        height: 100%;
    }

    .magnify img {
        width: 100%;
        height: 100%;
    }

.quantity {
    position: relative;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    vertical-align: middle;
}

    .quantity > .screen-reader-text {
        display: inline-block;
        font-weight: 600;
        color: var(--title-color);
        font-family: var(--title-font);
        margin: 0;
        -webkit-align-self: center;
        -ms-flex-item-align: center;
        align-self: center;
        margin-right: 10px;
    }

    .quantity .qty-btn,
    .quantity .qty-input {
        display: inline-block;
        width: 50px;
        height: 50px;
        border: none;
        border-right: none;
        background-color: transparent;
        padding: 0;
        border-radius: 0;
        text-align: center;
        color: var(--body-color);
        font-size: 18px;
        font-weight: 600;
    }

        .quantity .qty-btn:last-child,
        .quantity .qty-input:last-child {
            border-right: none;
        }

    .quantity .qty-btn {
        font-size: 16px;
    }

.product_meta {
    font-weight: 700;
    font-size: 16px;
    font-family: var(--body-font);
    margin: 35px 0 0 0;
}

    .product_meta > span {
        display: block;
        margin-bottom: 5px;
        color: var(--title-color);
        font-weight: bold;
    }

        .product_meta > span:last-child {
            margin-bottom: 0;
        }

        .product_meta > span a {
            color: inherit;
        }

            .product_meta > span a:hover {
                color: var(--theme-color);
            }

        .product_meta > span > a,
        .product_meta > span > span {
            position: relative;
            color: var(--body-color);
            font-weight: 400;
        }

            .product_meta > span > a:after,
            .product_meta > span > span:after {
                content: ",";
                margin-right: 5px;
            }

            .product_meta > span > a:last-child:after,
            .product_meta > span > span:last-child:after {
                display: none;
            }

            .product_meta > span > a:first-child,
            .product_meta > span > span:first-child {
                margin-left: 7px;
            }

.product-tab-style1 {
    border-bottom: 1px solid var(--th-border-color);
    margin: 95px auto 40px auto;
    padding-bottom: 40px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 24px;
}

    .product-tab-style1 .th-btn {
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

        .product-tab-style1 .th-btn.active {
            color: var(--white-color);
            background-color: var(--title-color);
        }

            .product-tab-style1 .th-btn.active:before {
                background-color: var(--title-color);
            }

#productTabContent {
    margin-bottom: -10px;
}

#additional_information {
    margin-bottom: 40px;
}

.product-inner-list > ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.product-inner-list li {
    position: relative;
    padding-left: 15px;
}

    .product-inner-list li:before {
        content: "-";
        position: absolute;
        left: 0;
    }

.share-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--title-color);
    margin-bottom: 8px;
}

    .share-title i {
        color: var(--theme-color);
    }

.summary-content,
.product-about {
    padding-left: 50px;
    /* Medium Large devices */
}

@media (max-width: 1299px) {
    .summary-content,
    .product-about {
        padding-left: 0;
    }
}

.summary-content .product-title,
.product-about .product-title {
    margin: 0 0 18px 0;
}

.summary-content .product_title,
.product-about .product_title {
    margin-bottom: 20px !important;
}

.summary-content > .price,
.product-about > .price {
    font-family: var(--body-font);
    font-size: 20px;
    font-weight: 600;
    color: var(--title-color);
    display: block;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    margin-bottom: 19px;
    margin-top: -0.2em;
}

    .summary-content > .price del,
    .product-about > .price del {
        color: var(--gray-color);
        font-weight: 500;
        margin-left: 15px;
    }

.summary-content .woocommerce-product-rating,
.summary-content .product-rating,
.product-about .woocommerce-product-rating,
.product-about .product-rating {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 5px;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    top: 2px;
    font-size: 16px;
    line-height: 20px;
    padding: 0 0 0 0;
    margin: 0 0 0 0;
    margin-bottom: 22px;
}

    .summary-content .woocommerce-product-rating .star-rating,
    .summary-content .product-rating .star-rating,
    .product-about .woocommerce-product-rating .star-rating,
    .product-about .product-rating .star-rating {
        width: 80px;
        font-size: 12px;
        margin-right: 8px;
    }

.summary-content .woocommerce-review-link,
.product-about .woocommerce-review-link {
    color: var(--body-color);
}

.summary-content .checklist,
.product-about .checklist {
    margin: 29px 0 29px 0;
}

.summary-content .actions,
.product-about .actions {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 15px;
    margin: 32px 0 25px 0;
}

    .summary-content .actions .th-btn .btn-icon,
    .product-about .actions .th-btn .btn-icon {
        padding: 10.5px 15px 10.5px 15px;
    }

    .summary-content .actions .icon-btn,
    .product-about .actions .icon-btn {
        border-color: var(--theme-color);
        background-color: var(--theme-color);
        color: var(--white-color);
        border-radius: 0;
    }

        .summary-content .actions .icon-btn:hover,
        .product-about .actions .icon-btn:hover {
            background-color: var(--title-color);
            border-color: var(--title-color);
        }

.summary-content .share,
.product-about .share {
    margin-top: 25px;
}

.summary-content .th-social a,
.product-about .th-social a {
    --icon-size: 40px;
    line-height: 38px;
    font-size: 14px;
    border: 1px solid var(--th-border-color);
    border-radius: 0;
}

    .summary-content .th-social a:hover,
    .product-about .th-social a:hover {
        border-color: var(--theme-color);
    }

.summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt,
.summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt,
.product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt,
.product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {
    width: 56px;
    height: 56px;
    line-height: 54px;
    display: inline-block;
    border-radius: 0;
    background-color: var(--theme-color);
    color: var(--white-color);
    border: none;
}

    .summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt::before,
    .summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt::before,
    .product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt::before,
    .product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt::before {
        position: relative;
        top: 0;
        left: 0;
        line-height: inherit;
        margin: 0;
        font-size: 24px;
    }

    .summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:hover,
    .summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:hover,
    .product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:hover,
    .product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:hover {
        background-color: var(--title-color);
    }

.summary-content .tinv-wishlist a,
.product-about .tinv-wishlist a {
    display: inline-block;
    width: 56px;
    height: 56px;
    line-height: 56px;
    border-radius: 0;
}

    .summary-content .tinv-wishlist a:hover,
    .product-about .tinv-wishlist a:hover {
        background-color: var(--theme-color);
        color: var(--white-color);
    }

.summary-content .quantity,
.product-about .quantity {
    position: relative;
}

    .summary-content .quantity:after,
    .product-about .quantity:after {
        content: '';
        height: 100%;
        width: 1px;
        background-color: var(--th-border-color);
        position: absolute;
        top: 0;
        left: 55px;
    }

    .summary-content .quantity .qty-input,
    .product-about .quantity .qty-input {
        width: 112px;
        height: 56px;
        border: 1px solid var(--th-border-color);
        background-color: transparent;
        color: var(--title-color);
        padding: 0 21px;
        text-align: left;
        font-weight: 500;
        border-radius: 0;
    }

    .summary-content .quantity .qty-btn,
    .product-about .quantity .qty-btn {
        color: var(--title-color);
        background-color: transparent;
        position: absolute;
        right: 21px;
        height: auto;
        width: auto;
        border: none;
        line-height: 16px;
    }

    .summary-content .quantity .quantity-minus,
    .product-about .quantity .quantity-minus {
        bottom: 7px;
    }

    .summary-content .quantity .quantity-plus,
    .product-about .quantity .quantity-plus {
        top: 12px;
    }

.woocommerce-Reviews .th-comments-wrap {
    padding: 0;
    margin-right: 0 !important;
    box-shadow: none;
    background-color: transparent;
}

.woocommerce-Reviews .th-comment-form {
    padding: 60px;
    background-color: var(--smoke-color);
    box-shadow: none;
    margin-right: 0 !important;
    margin-top: 28px;
    margin-bottom: 40px;
}

    .woocommerce-Reviews .th-comment-form input,
    .woocommerce-Reviews .th-comment-form .form-control {
        background-color: var(--white-color);
    }

    .woocommerce-Reviews .th-comment-form .blog-inner-title {
        margin-bottom: 10px;
    }

.woocommerce-Reviews .comment-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 0 24px;
    margin: -12px !important;
    margin-bottom: 28px !important;
}

    .woocommerce-Reviews .comment-list li {
        width: 50%;
        /* Medium devices */
    }

@media (max-width: 991px) {
    .woocommerce-Reviews .comment-list li {
        width: 100%;
    }
}

.woocommerce-Reviews .th-post-comment {
    border: 1px solid var(--th-border-color) !important;
    padding: 40px !important;
    margin: 12px;
    border-radius: 0;
}

    .woocommerce-Reviews .th-post-comment .name {
        margin-bottom: 3px;
    }

    .woocommerce-Reviews .th-post-comment .commented-on {
        margin-bottom: 12px;
        display: block;
    }

    .woocommerce-Reviews .th-post-comment .text {
        margin-bottom: -0.4em;
    }

/* Large devices */
@media (max-width: 1199px) {
    .woocommerce-Reviews .th-post-comment {
        padding: 30px !important;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .woocommerce-Reviews .comment-list {
        grid-template-columns: repeat(1, 1fr);
    }

    .woocommerce-Reviews .th-comment-form {
        padding: 40px;
    }
}

/* Extra small devices */
@media (max-width: 575px) {
    .woocommerce-Reviews .th-comment-form {
        padding: 40px 20px;
    }
}

#description {
    margin-bottom: 30px;
}

.product-details .th-comments-wrap {
    margin-top: 0;
}

.product-details .border-title {
    position: relative;
    padding-bottom: 20px;
    margin-bottom: 40px;
}

    .product-details .border-title:before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        height: 2px;
        width: 80px;
        background-color: var(--theme-color);
    }

.product-inner-title {
    font-size: 32px;
    border-bottom: 1px solid var(--th-border-color);
    padding: 0 0 7px 0;
    margin: 0 0 30px 0;
}

.related-product-wrapper {
    padding-top: 115px;
}

/* Medium Large devices */
@media (max-width: 1399px) {
    .th-product.list-view .product-img {
        max-width: 150px;
    }
}

/* Medium Large devices */
@media (max-width: 1299px) {
    .product-thumb-tab {
        --thumb: 100px;
        margin-left: -40px;
    }

    .product-thumb-area {
        margin-right: 0;
    }
}

/* Large devices */
@media (max-width: 1199px) {
    .th-sort-bar select {
        min-width: auto;
    }

    .product-tab-style1 {
        margin: 55px 0 40px 0;
    }

    .summary-content,
    .product-about {
        padding-left: 0;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .product-big-img {
        margin-bottom: 40px;
    }

    .product-thumb-tab {
        margin-left: -10px;
    }

    .th-product-box.list-view .product-img {
        max-width: 150px;
    }

    .th-sort-bar .row {
        --bs-gutter-x: 20px;
    }

    .th-sort-bar .nav a:last-child {
        margin-right: 0;
        padding-right: 0;
    }

        .th-sort-bar .nav a:last-child:before {
            display: none;
        }

    .woosq-product > .product .thumbnails {
        max-height: 400px;
        min-height: 200px;
        padding: 10px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .th-sort-bar {
        text-align: center;
        padding: 10px 15px 15px 15px;
    }

        .th-sort-bar .nav {
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
        }

        .th-sort-bar select {
            margin: 0 auto;
        }

        .th-sort-bar .woocommerce-result-count {
            padding-left: 0;
        }

    .th-product-box.list-view .product-img {
        max-width: 130px;
    }

    .th-product-box.list-view .actions {
        --btn-size: 30px;
        --btn-font-size: 10px;
        --icon-gap-x: 2px;
    }
}

/* Extra small devices */
@media (max-width: 575px) {
    .product-about .actions {
        gap: 15px 15px;
    }

    .product-thumb-tab {
        --thumb: 74px;
        --gap: 6px;
    }

        .product-thumb-tab .tab-btn:not(:last-of-type) {
            margin-bottom: 10px;
        }
}

/* Extra small devices */
@media (max-width: 375px) {
    .th-product.list-view .product-img {
        max-width: 130px;
    }

    .th-product.list-view .product-content {
        padding: 0 15px;
    }
}

/*------------------- 4.00. Cart  -------------------*/
.woocommerce-cart-form {
    text-align: center;
}

.cart_table {
    border: 1px solid #eaf0f2;
    margin-bottom: 45px;
}

    .cart_table thead {
        background-color: #ecf0f1;
    }

        .cart_table thead th {
            border: none !important;
        }

    .cart_table td:before,
    .cart_table th {
        font-family: var(--title-font);
        color: var(--title-color);
        border: none;
        padding: 27px 15px;
        font-size: 20px;
    }

    .cart_table td:before {
        content: attr(data-title);
        position: absolute;
        left: 15px;
        top: 50%;
        vertical-align: top;
        padding: 0;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        display: none;
    }

    .cart_table td {
        border: none;
        border-bottom: 1px solid #f3f3f3;
        color: #8b8b8b;
        padding: 20px 10px;
        position: relative;
        vertical-align: middle;
    }

    .cart_table .product-quantity {
        color: var(--title-color);
    }

        .cart_table .product-quantity input {
            position: relative;
            top: -2px;
        }

    .cart_table .cart-productname {
        font-weight: 400;
        font-family: var(--body-font);
        color: var(--body-color);
    }

    .cart_table .cart-productimage {
        display: inline-block;
    }

    .cart_table .remove {
        color: var(--theme-color);
        font-size: 18px;
    }

    .cart_table .quantity {
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .cart_table td.product-quantity {
        min-width: 155px;
    }

    .cart_table .qty-btn {
        border: 2px solid var(--smoke-color) !important;
        background-color: transparent;
        color: #b8c6d0;
        padding: 0;
        width: 30px;
        height: 30px;
        line-height: 28px;
        font-size: 14px;
        border-radius: 4px;
    }

        .cart_table .qty-btn:hover {
            background-color: var(--theme-color);
            color: var(--white-color);
        }

    .cart_table .qty-input {
        vertical-align: middle;
        border: 2px solid var(--smoke-color);
        width: 60px;
        height: 30px;
        font-size: 14px;
        text-align: center;
        color: var(--title-color);
        font-weight: 700;
        margin: 0 3px;
        border-radius: 4px;
        padding: 0;
        /* Firefox */
    }

        .cart_table .qty-input::-moz-placeholder {
            color: var(--title-color);
        }

        .cart_table .qty-input::-webkit-input-placeholder {
            color: var(--title-color);
        }

        .cart_table .qty-input:-ms-input-placeholder {
            color: var(--title-color);
        }

        .cart_table .qty-input::-ms-input-placeholder {
            color: var(--title-color);
        }

        .cart_table .qty-input::placeholder {
            color: var(--title-color);
        }

        .cart_table .qty-input::-webkit-outer-spin-button, .cart_table .qty-input::-webkit-inner-spin-button {
            -webkit-appearance: none;
            margin: 0;
        }

        .cart_table .qty-input[type="number"] {
            -moz-appearance: textfield;
        }

    .cart_table .actions {
        text-align: right;
        vertical-align: middle;
        padding-left: 20px;
    }

        .cart_table .actions > .th-btn {
            font-size: 16px;
            padding: 20px 28px;
            margin-right: 15px;
        }

            .cart_table .actions > .th-btn:last-child {
                margin-right: 0;
            }

    .cart_table .th-cart-coupon {
        float: left;
        margin: 0;
        width: 455px;
        max-width: 100%;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    }

        .cart_table .th-cart-coupon input {
            width: calc(100% - 200px);
            margin-right: 10px;
        }

        .cart_table .th-cart-coupon .th-btn {
            font-size: 16px;
            padding: 20px 25px;
            width: -webkit-max-content;
            width: -moz-max-content;
            width: max-content;
        }

.cart_totals {
    border: 1px solid #ecf0f1;
}

    .cart_totals th,
    .cart_totals td {
        vertical-align: top;
        padding: 20px 20px;
        border: none;
        border-bottom: 1px solid #ecf0f1;
        font-size: 14px;
        color: var(--title-color);
        width: 55%;
    }

        .cart_totals th:first-child,
        .cart_totals td:first-child {
            width: 45%;
            background-color: #f9fbfb;
            font-weight: 700;
            font-size: 14px;
            color: #333333;
        }

    .cart_totals .shipping-calculator-button {
        display: inline-block;
        border-bottom: 1px solid;
        color: var(--title-color);
        font-weight: 700;
    }

        .cart_totals .shipping-calculator-button:hover {
            color: var(--theme-color);
        }

    .cart_totals .woocommerce-shipping-destination {
        margin-bottom: 10px;
    }

    .cart_totals .woocommerce-shipping-methods {
        margin-bottom: 0;
    }

    .cart_totals .shipping-calculator-form {
        display: none;
    }

        .cart_totals .shipping-calculator-form p:first-child {
            margin-top: 20px;
        }

        .cart_totals .shipping-calculator-form p:last-child {
            margin-bottom: 0;
        }

    .cart_totals .amount {
        font-weight: 700;
    }

    .cart_totals .order-total .amount {
        color: var(--theme-color);
    }

.empty-notice {
    margin: 40px auto;
}

/* Medium devices */
@media (max-width: 991px) {
    .cart_table th {
        padding: 23px 8px;
        font-size: 14px;
    }

    .cart_table .cart-productname {
        font-size: 14px;
    }

    .cart_table .th-cart-coupon {
        width: 100%;
        margin-bottom: 20px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .cart_table .actions {
        text-align: center;
    }

    .cart_table .cart-productimage {
        max-width: 100px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .cart_table {
        text-align: left;
        min-width: auto;
        border-collapse: separate;
        border-spacing: 0 20px;
        border: none;
    }

        .cart_table thead {
            display: none;
        }

        .cart_table td {
            padding: 15px;
            display: block;
            width: 100%;
            padding-left: 25%;
            text-align: right;
            border: 1px solid #f3f3f3;
            border-bottom: none;
        }

            .cart_table td::before {
                display: block;
            }

            .cart_table td:last-child {
                border-bottom: 1px solid #f3f3f3;
            }

            .cart_table td.actions {
                padding-left: 15px;
                text-align: center;
            }

                .cart_table td.actions > .th-btn {
                    margin-top: 10px;
                    margin-right: 0;
                    display: block;
                    width: -webkit-max-content;
                    width: -moz-max-content;
                    width: max-content;
                    margin-left: auto;
                    margin-right: auto;
                }

                    .cart_table td.actions > .th-btn:last-child {
                        margin-right: auto;
                    }

        .cart_table .th-cart-coupon {
            width: 100%;
            text-align: center;
            float: none;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
            display: block;
            padding-bottom: 10px;
        }

            .cart_table .th-cart-coupon input {
                width: 100%;
                margin-bottom: 10px;
            }

    .cart_totals th,
    .cart_totals td {
        padding: 15px 10px;
    }

        .cart_totals th:first-child,
        .cart_totals td:first-child {
            width: 17%;
            line-height: 1.4;
        }
}

/*------------------- 4.00. Checkout  -------------------*/
.woocommerce-checkout .form-group,
.woocommerce-checkout .form-row {
    margin-bottom: 0;
}

.woocommerce-checkout .form-select,
.woocommerce-checkout .select2-container,
.woocommerce-checkout .form-control {
    margin-bottom: 0;
}

.woocommerce-checkout .select2-container--open .select2-dropdown--below {
    margin-top: 0;
}

.woocommerce-checkout .select2-container--open .select2-dropdown--above {
    position: relative;
    bottom: 0;
}

.woocommerce-checkout .select2-dropdown {
    border: none;
    border-top: none;
}

.woocommerce-checkout .select2-container--default .select2-selection--single {
    border-radius: 27px;
}

    .woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,
    .woocommerce-checkout .select2-container--default .select2-selection--single .form-control:focus {
        color: var(--body-color);
    }

.woocommerce-checkout .shipping_address {
    margin-top: -3px;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid transparent;
    padding: 0;
}

.woocommerce-form-login select,
.woocommerce-form-login .form-select,
.woocommerce-form-login .form-control,
.woocommerce-form-login .select2,
.woocommerce-form-login .select2-container,
.woocommerce-form-coupon select,
.woocommerce-form-coupon .form-select,
.woocommerce-form-coupon .form-control,
.woocommerce-form-coupon .select2,
.woocommerce-form-coupon .select2-container,
.woocommerce-checkout select,
.woocommerce-checkout .form-select,
.woocommerce-checkout .form-control,
.woocommerce-checkout .select2,
.woocommerce-checkout .select2-container {
    margin-bottom: var(--bs-gutter-x);
}

#ship-to-different-address {
    margin-top: 15px;
    margin-bottom: 20px;
}

.select2-container--default .select2-selection--single {
    height: 56px;
    border: 1px solid transparent;
    background-color: var(--smoke-color);
    border-radius: 27px;
}

    .select2-container--default .select2-selection--single .select2-selection__rendered {
        line-height: 56px;
        padding-left: 25px;
        padding-right: 25px;
    }

.woocommerce-billing-fields .form-row {
    margin-bottom: 0;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b:before {
    content: "\f107";
    font-family: var(--icon-font);
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    margin: 0;
    border: none;
    top: 0;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 56px;
    line-height: 56px;
    margin-right: 30px;
}

span.select2-selection.select2-selection--single:focus {
    outline: none;
}

.checkout-ordertable th,
.checkout-ordertable td {
    border: 1px solid #ededed;
    text-align: right;
    padding: 5px 20px;
    vertical-align: top;
    font-size: 14px;
    font-weight: 600;
    color: #2c3e50;
}

.checkout-ordertable th {
    font-weight: 800;
    text-align: left;
}

.checkout-ordertable ul {
    margin: 0;
    padding: 0;
}

.checkout-ordertable .order-total .amount {
    color: var(--theme-color);
}

.checkout-ordertable input[type="hidden"] ~ label {
    color: var(--theme-color);
}

.woocommerce-checkout .form-group input:not(:last-child) {
    margin-bottom: var(--bs-gutter-x);
}

.woocommerce-checkout-payment {
    text-align: left;
}

    .woocommerce-checkout-payment ul {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }

        .woocommerce-checkout-payment ul li {
            padding-top: 12px;
            border-bottom: 1px solid #d8d8d8;
            border-radius: 0;
            font-size: 16px;
        }

        .woocommerce-checkout-payment ul input[type="radio"] ~ label {
            margin-bottom: 17px;
            color: var(--body-color);
        }

            .woocommerce-checkout-payment ul input[type="radio"] ~ label img {
                margin-bottom: -2px;
                margin-left: 10px;
            }

    .woocommerce-checkout-payment .place-order {
        padding-top: 30px;
    }

    .woocommerce-checkout-payment .payment_box {
        color: #a1b1bc;
        background-color: #ecf0f1;
        border: 1px solid #d8d8d8;
        border-bottom: none;
        font-size: 14px;
        padding: 10px 20px;
        border-radius: 4px;
        display: none;
    }

        .woocommerce-checkout-payment .payment_box p {
            margin: 0;
        }

.th-checkout-wrapper form.woocommerce-form {
    margin-bottom: 30px;
}

/* Small devices */
@media (max-width: 767px) {
    tfoot.checkout-ordertable th {
        display: none;
    }

    .woocommerce-checkout-payment ul input[type="radio"] ~ label img {
        max-width: 150px;
    }

    .checkout-ordertable th,
    .checkout-ordertable td {
        padding: 5px 20px 5px 60px;
    }
}

/*------------------- 4.00. Wishlist  -------------------*/
.tinv-wishlist input[type="checkbox"] {
    display: inline-block;
    opacity: 1;
    visibility: visible;
    vertical-align: middle;
    width: auto;
    height: auto;
}

.tinv-wishlist .tinv-header {
    margin-top: -0.8rem;
    text-transform: capitalize;
}

.tinv-wishlist .cart-empty {
    padding: 14px 25px;
    font-weight: 700;
    font-size: 14px;
    padding-left: 45px;
    border-radius: 8px;
}

.tinv-wishlist p.return-to-shop .button {
    display: inline-block;
    background-color: var(--theme-color);
    color: #fff;
    font-size: 14px;
    padding: 10px 25px;
    margin-top: 10px;
    font-weight: 700;
}

    .tinv-wishlist p.return-to-shop .button:hover {
        background-color: var(--title-color);
        color: var(--white-color);
    }

.tinv-wishlist table {
    border: none;
}

    .tinv-wishlist table th {
        color: var(--title-color);
    }

    .tinv-wishlist table td,
    .tinv-wishlist table th {
        padding: 15.3px 10px;
        border-bottom: 1px solid var(--th-border-color);
        text-align: center;
    }

    .tinv-wishlist table thead {
        background-color: var(--smoke-color);
    }

.tinv-wishlist .product-cb,
.tinv-wishlist .product-remove {
    width: 40px;
    text-align: center;
}

.tinv-wishlist .product-thumbnail {
    width: 110px;
}

.tinv-wishlist .stock.in-stock {
    margin-bottom: 0;
}

.tinv-wishlist ins {
    text-decoration: none;
}

.tinv-wishlist .product-remove button {
    border: none;
    height: 22px;
    width: 22px;
    text-align: center;
    font-size: 12px;
    line-height: 22px;
    border-radius: 30px;
    padding-top: 0;
}

    .tinv-wishlist .product-remove button i {
        line-height: 22px;
        font-size: 16px;
    }

.tinv-wishlist .tinvwl-mobile {
    display: none;
}

.tinv-wishlist .social-buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    max-width: 295px;
    margin-left: auto;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

    .tinv-wishlist .social-buttons ul {
        padding-left: 0;
        margin-bottom: 0;
        margin-left: auto;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        gap: 6px;
    }

.tinv-wishlist table.tinvwl-table-manage-list {
    font-size: 16px;
}

.tinv-wishlist .product-stock .stock {
    display: block;
}

.tinv-wishlist .product-stock span {
    display: inline;
}

.tinv-wishlist .product-stock i {
    margin-right: 5px;
}

.tinv-wishlist .tinv-modal .icon_big_times {
    margin-bottom: 5px;
    color: var(--theme-color);
}

.tinv-wishlist button.button {
    border: none;
    height: 38px;
    line-height: 38px;
    font-size: 14px;
    font-weight: 600;
    background-color: var(--theme-color);
    color: #fff;
    padding: 1px 15px;
    min-width: 140px;
    border-radius: 30px;
}

    .tinv-wishlist button.button i {
        font-size: 18px !important;
        margin-right: 3px !important;
    }

    .tinv-wishlist button.button:hover {
        background-color: var(--title-color);
        color: #fff;
    }

.tinv-wishlist .tinvwl-buttons-group button i {
    font-size: 14px;
}

.tinv-wishlist .tinv-modal-inner button.button {
    color: var(--title-color);
}

.tinv-wishlist th,
.tinv-wishlist td.product-name {
    font-size: 16px;
    font-family: var(--title-font);
}

    .tinv-wishlist td.product-name a {
        color: var(--body-color);
    }

        .tinv-wishlist td.product-name a:hover {
            color: var(--theme-color);
        }

.tinv-wishlist td.product-price del {
    margin-left: 8px;
    font-size: 0.9em;
}

.tinv-wishlist .social-buttons > span {
    font-weight: 700;
    margin-right: 10px;
    font-family: var(--title-font);
    color: var(--title-color);
}

.tinv-wishlist .social-buttons li {
    display: inline-block;
    margin-right: 0;
}

    .tinv-wishlist .social-buttons li a.social {
        background-color: var(--theme-color);
        color: #fff;
        width: 30px;
        height: 30px;
        line-height: 30px;
        font-size: 14px;
        display: inline-block;
        text-align: center;
        border-radius: 50px;
        margin-left: 3px;
    }

        .tinv-wishlist .social-buttons li a.social:first-child {
            margin-left: 0;
        }

        .tinv-wishlist .social-buttons li a.social i {
            line-height: inherit;
        }

        .tinv-wishlist .social-buttons li a.social:hover {
            background-color: var(--title-color);
            color: var(--white-color);
        }

/* Medium devices */
@media (max-width: 991px) {
    .tinvwl-full {
        display: none;
    }

    .tinv-wishlist .tinvwl-mobile {
        display: block;
    }

    .tinvwl-txt {
        display: inline-block !important;
    }

    .product-stock {
        width: 40px;
        text-align: center;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .tinv-wishlist table {
        table-layout: fixed;
        border-bottom: 1px solid var(--th-border-color);
    }

        .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove,
        .tinv-wishlist table.tinvwl-table-manage-list thead th:not(.product-name) {
            display: none;
        }

        .tinv-wishlist table td,
        .tinv-wishlist table th {
            border: 1px solid var(--th-border-color);
        }

        .tinv-wishlist table.tinvwl-table-manage-list tbody td {
            display: block;
            width: 100% !important;
            text-align: center;
        }

    .product-name {
        text-align: center;
    }

    .tinv-wishlist table td,
    .tinv-wishlist table th {
        border-bottom: none;
    }

    .tinv-wishlist table tfoot {
        border-bottom: 1px solid var(--th-border-color);
    }

    .tinv-wishlist .social-buttons {
        max-width: 100%;
        margin-left: unset;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }

        .tinv-wishlist .social-buttons ul {
            margin-left: unset;
            margin-top: 5px;
        }

    .tinvwl-txt {
        display: inline-block !important;
    }
}

/*------------------- 4.00. Contact  -------------------*/
/* Reservation 1 */
.reservation-form1 {
    text-align: center;
}

    .reservation-form1 .form-control {
        background-color: transparent;
        border: 1px solid var(--body-color);
        color: var(--light-color);
    }

        .reservation-form1 .form-control::-moz-placeholder {
            color: var(--light-color);
        }

        .reservation-form1 .form-control::-webkit-input-placeholder {
            color: var(--light-color);
        }

        .reservation-form1 .form-control:-ms-input-placeholder {
            color: var(--light-color);
        }

        .reservation-form1 .form-control::-ms-input-placeholder {
            color: var(--light-color);
        }

        .reservation-form1 .form-control::placeholder {
            color: var(--light-color);
        }

        .reservation-form1 .form-control:focus {
            border-color: var(--theme-color);
        }

    .reservation-form1 .form-group > i {
        color: var(--theme-color);
    }

/* Reservation 2 */
.reservation-form2 {
    margin-bottom: -30px;
}

/* Reservation 3 */
.reservation-form3 .row {
    --bs-gutter-x: 20px;
}

.reservation-form3 .form-control,
.reservation-form3 .form-select {
    background-color: var(--smoke-color2);
    border: none;
}

.reserve-img1 {
    margin-right: 30px;
    margin-left: -310px;
    /* Large devices */
}

    .reserve-img1 img {
        width: 100%;
    }

@media (max-width: 1199px) {
    .reserve-img1 {
        margin: 0;
    }
}

.input-white .form-control,
.input-white .form-select {
    border-color: var(--white-color);
    background-color: var(--white-color);
}

.reservation-form {
    max-width: 540px;
    margin: 0 auto;
    padding: 60px;
    background-color: var(--smoke-color2);
    text-align: center;
    /* Extra small devices */
    /* Extra small devices */
}

    .reservation-form .form-title {
        margin-top: -0.3em;
        margin-bottom: 32px;
    }

    .reservation-form .row {
        --bs-gutter-x: 20px;
    }

@media (max-width: 575px) {
    .reservation-form {
        padding: 40px;
    }

        .reservation-form .form-title {
            margin-bottom: 24px;
            font-size: 30px;
        }
}

@media (max-width: 375px) {
    .reservation-form {
        padding: 20px;
    }
}

/* Contact Page ---------------------------------- */
.contact-feature {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.contact-feature-area {
    background-color: var(--smoke-color2);
    padding: 60px;
    /* Medium Large devices */
    /* Extra small devices */
    /* Extra small devices */
}

    .contact-feature-area .th-social a:not(:hover) {
        color: var(--title-color);
    }

@media (max-width: 1399px) {
    .contact-feature-area {
        padding: 50px;
    }
}

@media (max-width: 575px) {
    .contact-feature-area {
        padding: 30px;
    }
}

@media (max-width: 375px) {
    .contact-feature-area {
        padding: 20px;
    }

        .contact-feature-area .th-social a {
            margin-right: 1px;
        }
}

.contact-feature-wrap {
    margin-bottom: 40px;
}

.contact-feature .box-icon {
    width: 56px;
    height: 56px;
    line-height: 56px;
    font-size: 24px;
    color: var(--white-color);
    background-color: var(--theme-color);
    border-radius: 96px;
    text-align: center;
}

.contact-feature .box-title {
    font-size: 20px;
    margin-bottom: 0px;
}

.contact-feature .box-text a {
    display: block;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    color: inherit;
}

    .contact-feature .box-text a:hover {
        color: var(--theme-color);
    }

.contact-feature:last-child {
    margin-bottom: 0;
}

    .contact-feature:last-child .box-icon {
        --theme-color: #DD5903;
    }

.contact-feature:nth-child(2) .box-icon {
    --theme-color: #C59D5F;
}

.contact-form {
    margin-left: 80px;
    /* Large devices */
}

@media (max-width: 1199px) {
    .contact-form {
        margin-left: 0;
    }
}

.contact-form .sec-title {
    margin-bottom: 45px;
    /* Medium devices */
}

@media (max-width: 991px) {
    .contact-form .sec-title {
        margin-bottom: 25px;
    }
}

.location-card {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    border: 1px solid var(--th-border-color);
    /* Medium devices */
    /* Extra small devices */
}

    .location-card .box-title {
        font-size: 30px;
    }

    .location-card .box-content {
        padding: 30px;
    }

    .location-card .box-img {
        margin: -1px;
    }

        .location-card .box-img img {
            height: 100%;
            object-fit: cover;
        }

    .location-card .box-text {
        margin-bottom: 20px;
    }

    .location-card .box-info {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 10px;
        margin-bottom: 20px;
    }

        .location-card .box-info:last-child {
            margin-bottom: 0;
        }

        .location-card .box-info i {
            font-size: 22px;
            color: var(--theme-color);
        }

        .location-card .box-info a {
            color: inherit;
        }

            .location-card .box-info a:hover {
                color: var(--theme-color);
            }

@media (max-width: 991px) {
    .location-card {
        max-width: 630px;
        margin: 0 auto;
    }
}

@media (max-width: 575px) {
    .location-card {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }

        .location-card .box-img img {
            width: 100%;
        }
}

.rounded-20 {
    border-radius: 20px;
    overflow: hidden;
}

.form-text {
    font-size: 16px;
}

.contact-map {
    line-height: 0px;
}

    .contact-map iframe {
        width: 100%;
        height: 660px;
        -webkit-filter: invert(1) grayscale(1) brightness(1) invert(1);
        filter: invert(1) grayscale(1) brightness(1) invert(1);
        /* Large devices */
        /* Medium devices */
    }

@media (max-width: 1199px) {
    .contact-map iframe {
        height: 450px;
    }
}

@media (max-width: 991px) {
    .contact-map iframe {
        height: 350px;
    }
}

.contact-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 15px;
    /* Large devices */
    /* Medium devices */
    /* Extra small devices */
}

.contact-info-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 60px 0;
    /* Medium devices */
}

    .contact-info-wrap .divider {
        height: 80px;
        width: 1px;
        background-color: var(--body-color);
        /* Large devices */
    }

@media (max-width: 1199px) {
    .contact-info-wrap .divider {
        display: none;
    }
}

@media (max-width: 991px) {
    .contact-info-wrap {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 30px 10px;
    }
}

.contact-info .box-icon {
    width: 80px;
    height: 80px;
    line-height: 80px;
    text-align: center;
    background-color: var(--theme-color);
    color: var(--white-color);
    border-radius: 99px;
    font-size: 36px;
}

.contact-info .box-title {
    margin-bottom: 5px;
    font-size: 30px;
}

.contact-info .box-text a {
    color: inherit;
}

    .contact-info .box-text a:hover {
        color: var(--theme-color);
    }

@media (max-width: 1199px) {
    .contact-info {
        -webkit-box-flex: 33.33%;
        -webkit-flex: 33.33%;
        -ms-flex: 33.33%;
        flex: 33.33%;
    }
}

@media (max-width: 991px) {
    .contact-info {
        -webkit-box-flex: calc(50% - 10px);
        -webkit-flex: calc(50% - 10px);
        -ms-flex: calc(50% - 10px);
        flex: calc(50% - 10px);
    }
}

@media (max-width: 575px) {
    .contact-info {
        -webkit-box-flex: 100%;
        -webkit-flex: 100%;
        -ms-flex: 100%;
        flex: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: center !important;
    }

        .contact-info * {
            text-align: center !important;
        }
}

/*------------------- 4.00. About  -------------------*/
/* About 1 ---------------------------------- */
.img-box1 {
    position: relative;
    z-index: 2;
    padding-bottom: 130px;
    /* Large devices */
    /* Extra small devices */
}

@media (max-width: 1199px) {
    .img-box1 {
        max-width: 740px;
        margin-left: auto;
        margin-right: auto;
    }
}

.img-box1 .img1,
.img-box1 .img2 {
    overflow: hidden;
}

.img-box1 .img1 {
    position: relative;
}

.img-box1 .img2 {
    position: absolute;
    bottom: 0;
    right: 0;
}

.img-box1 .shape1,
.img-box1 .shape2,
.img-box1 .shape3 {
    position: absolute;
}

.img-box1 .shape1 {
    top: 0;
    right: 0;
    -webkit-animation: jumpReverseAni 7s linear infinite;
    animation: jumpReverseAni 7s linear infinite;
}

.img-box1 .shape2 {
    bottom: 0;
    left: 0;
    -webkit-animation: jumpAni 7s linear infinite;
    animation: jumpAni 7s linear infinite;
}

.img-box1 .shape3 {
    top: -143px;
    left: -143px;
    -webkit-animation: spin 15s linear infinite;
    animation: spin 15s linear infinite;
    z-index: -1;
    /* Large devices */
}

@media (max-width: 1199px) {
    .img-box1 .shape3 {
        max-width: 150px;
        left: -75px;
        top: -75px;
    }
}

@media (max-width: 575px) {
    .img-box1 .img1,
    .img-box1 .img2 {
        width: 60%;
    }
}

.about-story {
    max-width: 275px;
}

.about-story-wrap {
    padding: 22px 0;
    border-top: 1px solid var(--th-border-color);
    border-bottom: 1px solid var(--th-border-color);
    margin-bottom: 40px;
    display: inline-grid;
    grid-template-columns: auto auto;
    gap: 40px 20px;
    /* Large devices */
    /* Extra small devices */
}

@media (max-width: 1199px) {
    .about-story-wrap {
        max-width: 100%;
        width: 700px;
        -webkit-box-pack: space-evenly;
        -webkit-justify-content: space-evenly;
        -ms-flex-pack: space-evenly;
        justify-content: space-evenly;
    }
}

@media (max-width: 575px) {
    .about-story-wrap {
        grid-template-columns: auto;
    }
}

.about-story .box-title {
    font-size: 30px;
    margin-bottom: 10px;
}

#about-sec .shape-mockup {
    /* Medium Large devices */
}

@media (max-width: 1299px) {
    #about-sec .shape-mockup {
        max-width: 260px;
    }
}

/* About 2 ---------------------------------- */
.img-box4 {
    margin-left: -315px;
    height: 100%;
    position: relative;
    overflow: hidden;
    /* Large devices */
}

    .img-box4 img {
        position: absolute;
        bottom: 0;
        width: 100%;
        height: 120%;
        object-fit: cover;
    }

@media (max-width: 1199px) {
    .img-box4 {
        margin-left: 0;
        aspect-ratio: 1 / 0.6;
    }
}

.about-space1 {
    padding-left: 120px;
    max-width: 600px;
    /* Medium Large devices */
    /* Large devices */
}

@media (max-width: 1299px) {
    .about-space1 {
        padding-left: 90px;
    }
}

@media (max-width: 1199px) {
    .about-space1 {
        max-width: 800px;
        padding-left: 0;
        margin-left: auto;
        margin-right: auto;
    }
}

/* About 3 ---------------------------------- */
.img-box5 {
    position: relative;
    z-index: 2;
    padding-bottom: 130px;
    text-align: right;
    /* Large devices */
    /* Extra small devices */
}

@media (max-width: 1199px) {
    .img-box5 {
        max-width: 740px;
        margin-left: auto;
        margin-right: auto;
    }
}

.img-box5 .img2 {
    position: absolute;
    bottom: 0;
    left: 0;
}

.img-box5 .shape1,
.img-box5 .shape2 {
    position: absolute;
}

.img-box5 .shape1 {
    top: 0;
    left: 10%;
    -webkit-animation: jumpReverseAni 7s linear infinite;
    animation: jumpReverseAni 7s linear infinite;
}

.img-box5 .shape2 {
    bottom: 0;
    right: 10%;
    -webkit-animation: jumpAni 7s linear infinite;
    animation: jumpAni 7s linear infinite;
}

@media (max-width: 575px) {
    .img-box5 .img1,
    .img-box5 .img2 {
        width: 60%;
        margin-left: auto;
    }
}

/* About 4 ---------------------------------- */
.img-box6 {
    margin: 0 50px;
    position: relative;
    z-index: 2;
    padding: 50px 0;
    text-align: center;
    /* Medium Large devices */
    /* Large devices */
    /* Small devices */
}

@media (max-width: 1299px) {
    .img-box6 {
        margin: 0;
    }
}

@media (max-width: 1199px) {
    .img-box6 {
        padding: 30px 0;
        max-width: 760px;
        margin-left: auto;
        margin-right: auto;
    }
}

.img-box6:before {
    content: '';
    position: absolute;
    top: 0;
    left: calc(50% - 130px);
    height: 100%;
    width: 260px;
    background-color: var(--theme-color);
    z-index: -1;
}

@media (max-width: 767px) {
    .img-box6:before {
        width: 200px;
        left: calc(50% - 100px);
    }
}

.img-box6 .img1 {
    border-radius: 9999px;
    background-color: var(--theme-color);
    padding: 30px;
    /* Small devices */
}

    .img-box6 .img1 img {
        width: 100%;
        border-radius: inherit;
        position: relative;
        z-index: 3;
    }

@media (max-width: 767px) {
    .img-box6 .img1 {
        padding: 15px;
    }
}

.img-box6 .shape1 {
    position: absolute;
    left: -230px;
    top: 10px;
    -webkit-animation: jumpReverseAni 7s linear infinite;
    animation: jumpReverseAni 7s linear infinite;
    /* Medium Large devices */
}

@media (max-width: 1299px) {
    .img-box6 .shape1 {
        display: none;
    }
}

.about-feature {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    padding-top: 40px;
    position: relative;
    text-align: left;
    /* Small devices */
    /* Extra small devices */
}

.about-feature-wrap {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 40px;
    border-top: 1px solid var(--th-border-color);
}

.about-feature .box-title {
    margin-bottom: 5px;
}

.about-feature .box-text {
    font-size: 14px;
    max-width: 182px;
    margin-bottom: -0.4em;
}

.about-feature:nth-child(2):before {
    content: '';
    height: 100%;
    width: 1px;
    background-color: var(--th-border-color);
    position: absolute;
    top: 0;
    left: -20px;
}

.about-feature:nth-child(2) .box-text {
    max-width: 158px;
}

@media (max-width: 767px) {
    .about-feature {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
        -webkit-box-flex: 50%;
        -webkit-flex: 50%;
        -ms-flex: 50%;
        flex: 50%;
    }

    .about-feature-wrap {
        width: 100%;
    }

    .about-feature .box-text {
        max-width: 182px !important;
    }
}

@media (max-width: 575px) {
    .about-feature .box-title {
        max-width: 130px;
        margin-left: auto;
        margin-right: auto;
    }
}

.about-feature:hover .box-icon img {
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
}

.about-sec1 {
    --body-bg: #fff;
    background-color: var(--white-color);
    max-width: 1720px;
    margin-left: auto;
    margin-right: auto;
}

/* Delivery 1 */
.img-box7 {
    position: relative;
    margin-left: 50px;
    position: relative;
    /* Medium Large devices */
    /* Large devices */
}

@media (max-width: 1299px) {
    .img-box7 {
        margin-left: 0;
    }
}

.img-box7 .shape1 {
    position: absolute;
    right: 0;
    bottom: 8.6%;
    z-index: -1;
    -webkit-animation: moving 8s linear infinite;
    animation: moving 8s linear infinite;
    /* Extra small devices */
}

@media (max-width: 575px) {
    .img-box7 .shape1 {
        max-width: 150px;
    }
}

.img-box7 .img1 {
    width: 100%;
}

@media (max-width: 1199px) {
    .img-box7 {
        max-width: 780px;
        margin-left: auto;
        margin-right: auto;
    }
}

.check-feature {
    background-color: var(--smoke-color2);
    font-family: var(--title-font);
    font-size: 20px;
    padding: 20px 15px;
    color: var(--title-color);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 6px;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
    /* Large devices */
    /* Small devices */
    /* Extra small devices */
}

.check-feature-wrap {
    display: inline-grid;
    grid-template-columns: auto auto;
    gap: 30px;
    margin-bottom: 40px;
}

@media (max-width: 1199px) {
    .check-feature {
        padding: 20px 25px;
    }
}

@media (max-width: 767px) {
    .check-feature {
        padding: 15px 10px;
    }
}

@media (max-width: 575px) {
    .check-feature {
        padding: 10px;
    }

    .check-feature-wrap {
        gap: 10px;
    }
}

@media (max-width: 360px) {
    .check-feature {
        padding: 15px 20px;
    }

    .check-feature-wrap {
        grid-template-columns: auto;
        gap: 20px;
    }
}

.check-feature i {
    color: var(--theme-color);
}

.theme-golden .check-feature {
    background-color: var(--white-color);
}

/* About 5 */
.img-box8 {
    position: relative;
}

    .img-box8 .img1 img {
        width: 100%;
    }

    .img-box8 .shape1 {
        position: absolute;
        top: -143px;
        left: -143px;
        -webkit-animation: spin 15s linear infinite;
        animation: spin 15s linear infinite;
        z-index: -1;
        /* Large devices */
    }

@media (max-width: 1199px) {
    .img-box8 .shape1 {
        max-width: 150px;
        left: -75px;
        top: -75px;
    }
}

/* History 1 */
.story-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    text-align: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 20px;
    position: relative;
    padding-top: 60px;
    /* Medium devices */
}

.story-box-row {
    position: relative;
}

    .story-box-row:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: var(--title-color);
    }

.story-box:before {
    content: '';
    position: absolute;
    top: -15px;
    left: calc(50% - 15px);
    width: 30px;
    height: 30px;
    background-color: var(--theme-color);
    border: 10px solid var(--title-color);
    border-radius: 99px;
}

.story-box .box-title {
    font-size: 30px;
    margin-bottom: 15px;
    color: var(--white-color);
}

.story-box .box-text {
    color: var(--light-color);
}

.story-box .box-img {
    max-width: 200px;
    margin: 0 auto;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
}

    .story-box .box-img img {
        width: 100%;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

.story-box.even {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media (max-width: 991px) {
    .story-box {
        padding-top: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .story-box-row {
        --bs-gutter-y: 30px;
    }

        .story-box-row:before {
            display: none;
        }

    .story-box:before {
        display: none;
    }
}

.story-box:hover .box-img img {
    -webkit-transform: scaleX(1.2);
    -ms-transform: scaleX(1.2);
    transform: scaleX(1.2);
}

.video-box1 img {
    min-height: 250px;
    object-fit: cover;
}

.video-box1 .play-btn > i {
    font-size: 40px;
    --icon-size: 150px;
    /* Medium devices */
}

@media (max-width: 991px) {
    .video-box1 .play-btn > i {
        font-size: 26px;
        --icon-size: 80px;
    }
}

/*------------------- 4.00. Team  -------------------*/
/* Team global ---------------------------------- */
.th-team {
    position: relative;
}

    .th-team .box-img {
        position: relative;
        overflow: hidden;
    }

        .th-team .box-img img {
            width: 100%;
            -webkit-transition: 0.4s ease-in-out;
            transition: 0.4s ease-in-out;
        }

    .th-team .box-desig {
        display: block;
        margin-bottom: -0.45em;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

    .th-team .th-social {
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

        .th-team .th-social a {
            --icon-size: 40px;
            background-color: var(--white-color);
            color: var(--theme-color);
        }

            .th-team .th-social a:hover {
                background-color: var(--theme-color);
                color: var(--white-color);
            }

    .th-team .box-title {
        margin-bottom: 0;
    }

/* Team Card ---------------------------------- */
.team-card {
    position: relative;
    text-align: center;
}

    .team-card .box-img {
        margin-bottom: 30px;
    }

    .team-card .box-desig {
        margin-bottom: -0.3em;
    }

    .team-card .box-title {
        font-size: 36px;
        margin-bottom: 4px;
        /* Small devices */
        /* Extra small devices */
    }

@media (max-width: 767px) {
    .team-card .box-title {
        font-size: 30px;
    }
}

@media (max-width: 575px) {
    .team-card .box-title {
        font-size: 36px;
    }
}

.team-card:hover .box-img img {
    -webkit-transform: scale(1.09);
    -ms-transform: scale(1.09);
    transform: scale(1.09);
}

/* Extra small devices */
@media (max-width: 575px) {
    .team-card {
        max-width: 380px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* Team Details ---------------------------------- */
.about-card-img {
    position: relative;
    overflow: hidden;
}

    .about-card-img img {
        width: 100%;
    }

.about-card {
    margin-left: 50px;
    /* Medium Large devices */
}

@media (max-width: 1299px) {
    .about-card {
        margin-left: 0;
    }
}

.about-card p {
    margin-bottom: 27px;
}

.about-card .box-desig {
    color: var(--theme-color);
    margin-bottom: 27px;
}

.about-card .box-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    margin-top: 15px;
}

    .about-card .box-info .box-icon {
        width: 46px;
        height: 46px;
        line-height: 46px;
        text-align: center;
        color: var(--theme-color);
        background-color: var(--smoke-color2);
        border-radius: 99px;
    }

    .about-card .box-info a {
        color: var(--body-color);
    }

        .about-card .box-info a:hover {
            color: var(--theme-color);
        }

.about-card .th-social a:not(:hover) {
    background-color: var(--smoke-color2);
}

.about-card .box-title {
    margin-top: 32px;
}

.team-form {
    background-color: var(--smoke-color2);
    text-align: center;
    padding: 40px;
    margin-left: 50px;
    /* Medium Large devices */
    /* Extra small devices */
}

@media (max-width: 1299px) {
    .team-form {
        margin-left: 0;
    }
}

@media (max-width: 375px) {
    .team-form {
        padding: 20px;
    }
}

.team-form .form-title {
    margin-bottom: 5px;
    margin-top: -0.25em;
}

.team-form .form-text {
    margin-bottom: 32px;
}

.team-form .row {
    --bs-gutter-x: 20px;
}

.skill-feature {
    text-align: left;
}

    .skill-feature:not(:last-child) {
        margin-bottom: 30px;
    }

    .skill-feature .box-title,
    .skill-feature .progress-value {
        font-size: 16px;
        font-weight: 600;
        margin-bottom: 10px;
        margin-top: -0.3em;
        font-family: var(--title-font);
        color: var(--title-color);
    }

    .skill-feature .progress {
        position: relative;
        height: 6px;
        background-color: var(--th-border-color);
        overflow: visible;
        border-radius: 0;
        border-radius: 9px;
    }

    .skill-feature .progress-bar {
        background-color: var(--theme-color);
        height: 100%;
        border-radius: inherit;
        overflow: visible;
        position: relative;
    }

    .skill-feature .progress-value {
        position: absolute;
        top: -30px;
        right: -8px;
    }

/*------------------- 4.00. Testimonial  -------------------*/
/* Testimonial Card ---------------------------------- */
.testi-card {
    padding-bottom: 60px;
    /* Extra small devices */
}

.testi-card-area {
    position: relative;
    z-index: 2;
    padding-bottom: 76px;
    /* Medium devices */
}

@media (max-width: 991px) {
    .testi-card-area {
        padding-bottom: 0;
    }
}

.testi-card-area .icon-box {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--theme-color);
    padding: 8px;
}

.testi-card-area .slider-arrow {
    --title-color: #fff;
}

.testi-card-area .text-shape {
    position: absolute;
    top: 0;
    right: 18%;
    -webkit-animation: spin 18s linear infinite;
    animation: spin 18s linear infinite;
}

.testi-card-img {
    max-width: 740px;
    position: relative;
    /* Medium devices */
}

    .testi-card-img:after {
        content: '';
        position: absolute;
        top: calc(50% - 241px);
        right: calc(100% - 134px);
        width: 482px;
        height: 482px;
        background-color: var(--body-bg);
        border-radius: 999px;
        /* Medium devices */
    }

@media (max-width: 991px) {
    .testi-card-img:after {
        top: calc(100% - 100px);
        right: calc(50% - 241px);
        display: none;
    }
}

@media (max-width: 991px) {
    .testi-card-img {
        z-index: 3;
    }
}

.testi-card-img .th-slider {
    max-height: 370px;
    /* Medium devices */
}

@media (max-width: 991px) {
    .testi-card-img .th-slider {
        max-height: auto;
        max-width: 320px;
    }
}

.testi-card-img .img-slider {
    position: absolute;
    top: calc(50% - 185px);
    left: -58px;
    z-index: 3;
    /* Medium Large devices */
    /* Medium devices */
}

@media (max-width: 1399px) {
    .testi-card-img .img-slider {
        left: -35px;
    }
}

@media (max-width: 991px) {
    .testi-card-img .img-slider {
        top: unset;
        left: calc(50% - 160px);
        bottom: -50px;
    }
}

.testi-card-img .swiper-slide {
    border: 3px solid var(--th-border-color);
    border-radius: 999px;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    -webkit-transform: scale(0.85);
    -ms-transform: scale(0.85);
    transform: scale(0.85);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    cursor: url("../img/theme-img/pointer.png"), auto;
}

.testi-card-img .swiper-slide-active {
    border-color: var(--theme-color);
    -webkit-transform: scale(1) !important;
    -ms-transform: scale(1) !important;
    transform: scale(1) !important;
}

.testi-card-slider {
    position: absolute;
    bottom: 0;
    right: 0;
    max-width: 740px;
    width: 100%;
    background-color: rgba(31, 31, 31, 0.9);
    padding: 40px;
    /* Medium devices */
    /* Small devices */
    /* Small devices */
}

@media (max-width: 991px) {
    .testi-card-slider {
        position: relative;
        padding: 40px;
    }
}

@media (max-width: 767px) {
    .testi-card-slider {
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media (max-width: 767px) {
    .testi-card-slider {
        padding-left: 30px;
        padding-right: 30px;
    }
}

.testi-card-quote {
    position: absolute;
    bottom: 75px;
    right: 80px;
    opacity: 0.25;
    /* Extra small devices */
}

@media (max-width: 575px) {
    .testi-card-quote {
        opacity: 0.1;
        right: 20px;
        bottom: 50px;
    }
}

@media (max-width: 375px) {
    .testi-card {
        padding-bottom: 40px;
    }
}

.testi-card .box-text {
    font-style: italic;
    color: var(--white-color);
    font-weight: 600;
    margin-bottom: 40px;
}

.testi-card .box-title {
    font-size: 36px;
    color: var(--theme-color);
    margin-bottom: 3px;
    /* Extra small devices */
}

@media (max-width: 375px) {
    .testi-card .box-title {
        font-size: 26px;
    }
}

.testi-card .box-desig {
    font-family: var(--title-font);
    font-size: 18px;
    color: var(--white-color);
    margin-bottom: -0.45em;
}

/* Testimonial Box ---------------------------------- */
.box-profile {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
}

.testi-box {
    padding: 40px;
    background-color: var(--body-bg);
    /* Medium devices */
    /* Small devices */
    /* Extra small devices */
}

    .testi-box .box-img {
        position: relative;
        /* Medium Large devices */
    }

@media (max-width: 1299px) {
    .testi-box .box-img {
        max-width: 100px;
    }
}

.testi-box .box-img img {
    border-radius: 99px;
}

.testi-box .box-quote {
    width: 30px;
    height: 30px;
    line-height: 24px;
    border-radius: 99px;
    background-color: var(--theme-color);
    border: 2px solid var(--white-color);
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
}

.testi-box .box-title {
    font-size: 30px;
    margin-bottom: 8px;
    /* Medium Large devices */
}

@media (max-width: 1299px) {
    .testi-box .box-title {
        font-size: 26px;
    }
}

.testi-box .box-desig {
    margin-bottom: -0.5em;
}

.testi-box .box-profile {
    padding-bottom: 30px;
    margin-bottom: 23px;
    border-bottom: 1px solid var(--th-border-color);
}

@media (max-width: 991px) {
    .testi-box {
        padding: 30px;
    }
}

@media (max-width: 767px) {
    .testi-box {
        padding: 40px;
    }
}

@media (max-width: 375px) {
    .testi-box {
        padding: 25px;
    }

        .testi-box .box-profile {
            gap: 15px;
        }

        .testi-box .box-img {
            max-width: 80px;
        }

        .testi-box .box-title {
            font-size: 24px;
        }
}

/* Testimonial Grid ---------------------------------- */
.thumb-slider2 {
    max-width: 660px;
    margin-bottom: 50px;
    position: relative;
    z-index: 2;
    /* Small devices */
}

@media (max-width: 767px) {
    .thumb-slider2 {
        margin-bottom: 35px;
    }
}

.thumb-slider2:before {
    content: '';
    height: 2px;
    width: calc(100% - 30px);
    background-color: var(--theme-color);
    position: absolute;
    top: calc(50% - 1px);
    left: 15px;
}

.thumb-slider2 .tab-btn {
    padding-bottom: 20px;
}

.thumb-slider2 .box-quote {
    display: inline-block;
    width: 56px;
    height: 56px;
    line-height: 56px;
    text-align: center;
    border-radius: 99px;
    background-color: var(--theme-color);
    border: 2px solid var(--white-color);
    position: absolute;
    bottom: 0;
    left: calc(50% - 28px);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}

    .thumb-slider2 .box-quote:after {
        content: '';
        position: absolute;
        top: calc(50% - 12px);
        left: calc(50% - 16px);
        width: 33px;
        height: 24px;
        background-color: var(--white-color);
        -webkit-clip-path: path("M5.28169 22.4421C6.94366 21.7403 8.39436 20.6737 9.6338 19.2421C10.8732 17.8105 11.6197 16.3509 11.8732 14.8632C12.0141 14.0772 12.0845 13.4035 12.0845 12.8421C12.0845 12.1965 12.0141 11.6632 11.8732 11.2421C10.5493 12.6175 8.87324 13.3053 6.84507 13.3053C4.8169 13.3053 3.16901 12.7158 1.90141 11.5368C0.633801 10.3579 -3.23375e-06 8.72982 -3.23311e-06 6.65263C-3.2325e-06 4.68772 0.676053 3.08772 2.02817 1.85263C3.35211 0.617546 5.04225 2.265e-06 7.09859 2.26437e-06C9.91549 2.26351e-06 11.9718 1.01053 13.2676 3.03158C13.8592 3.90176 14.3239 4.96842 14.662 6.23158C15 7.52281 15.169 8.84211 15.169 10.1895C15.169 13.1368 14.4084 15.8316 12.8873 18.2737C11.3662 20.7158 9.09859 22.6246 6.08451 24L5.28169 22.4421ZM23.1127 22.4421C24.7746 21.7403 26.2254 20.6737 27.4648 19.2421C28.7042 17.8105 29.4507 16.3509 29.7042 14.8632C29.8451 14.0772 29.9155 13.4035 29.9155 12.8421C29.9155 12.1965 29.8451 11.6632 29.7042 11.2421C28.3803 12.6175 26.7042 13.3053 24.6761 13.3053C22.6479 13.3053 21 12.7158 19.7324 11.5368C18.4648 10.3579 17.831 8.72982 17.831 6.65263C17.831 4.68772 18.507 3.08772 19.8592 1.85263C21.1831 0.617546 22.8732 2.25953e-06 24.9296 2.2589e-06C27.7465 2.25804e-06 29.8028 1.01053 31.0986 3.03158C31.6901 3.90176 32.1549 4.96842 32.493 6.23158C32.831 7.52281 33 8.84211 33 10.1895C33 13.1368 32.2394 15.8316 30.7183 18.2737C29.1972 20.7158 26.9296 22.6246 23.9155 24L23.1127 22.4421Z");
        clip-path: path("M5.28169 22.4421C6.94366 21.7403 8.39436 20.6737 9.6338 19.2421C10.8732 17.8105 11.6197 16.3509 11.8732 14.8632C12.0141 14.0772 12.0845 13.4035 12.0845 12.8421C12.0845 12.1965 12.0141 11.6632 11.8732 11.2421C10.5493 12.6175 8.87324 13.3053 6.84507 13.3053C4.8169 13.3053 3.16901 12.7158 1.90141 11.5368C0.633801 10.3579 -3.23375e-06 8.72982 -3.23311e-06 6.65263C-3.2325e-06 4.68772 0.676053 3.08772 2.02817 1.85263C3.35211 0.617546 5.04225 2.265e-06 7.09859 2.26437e-06C9.91549 2.26351e-06 11.9718 1.01053 13.2676 3.03158C13.8592 3.90176 14.3239 4.96842 14.662 6.23158C15 7.52281 15.169 8.84211 15.169 10.1895C15.169 13.1368 14.4084 15.8316 12.8873 18.2737C11.3662 20.7158 9.09859 22.6246 6.08451 24L5.28169 22.4421ZM23.1127 22.4421C24.7746 21.7403 26.2254 20.6737 27.4648 19.2421C28.7042 17.8105 29.4507 16.3509 29.7042 14.8632C29.8451 14.0772 29.9155 13.4035 29.9155 12.8421C29.9155 12.1965 29.8451 11.6632 29.7042 11.2421C28.3803 12.6175 26.7042 13.3053 24.6761 13.3053C22.6479 13.3053 21 12.7158 19.7324 11.5368C18.4648 10.3579 17.831 8.72982 17.831 6.65263C17.831 4.68772 18.507 3.08772 19.8592 1.85263C21.1831 0.617546 22.8732 2.25953e-06 24.9296 2.2589e-06C27.7465 2.25804e-06 29.8028 1.01053 31.0986 3.03158C31.6901 3.90176 32.1549 4.96842 32.493 6.23158C32.831 7.52281 33 8.84211 33 10.1895C33 13.1368 32.2394 15.8316 30.7183 18.2737C29.1972 20.7158 26.9296 22.6246 23.9155 24L23.1127 22.4421Z");
    }

.thumb-slider2 .swiper-slide {
    cursor: url("../img/theme-img/pointer.png"), auto;
}

    .thumb-slider2 .swiper-slide img {
        -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
        transform: scale(0.9);
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
        border-radius: 99px;
    }

.thumb-slider2 .swiper-slide-active img {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    border: 2px solid var(--theme-color);
}

.thumb-slider2 .swiper-slide-active .box-quote {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

@media (max-width: 350px) {
    .thumb-slider2 .swiper-slide-active .box-quote {
        -webkit-transform: scale(0.7);
        -ms-transform: scale(0.7);
        transform: scale(0.7);
    }
}

.testi-grid-area {
    --pos-x: 0;
}

    .testi-grid-area .slider-arrow {
        top: 68%;
        visibility: visible;
        opacity: 1;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        display: block;
        /* Small devices */
    }

@media (max-width: 767px) {
    .testi-grid-area .slider-arrow {
        display: none;
    }
}

.testi-grid-area .slider-arrow.slider-prev {
    -webkit-transform: scale(1) rotateY(180deg);
    transform: scale(1) rotateY(180deg);
}

.testi-grid-slider {
    text-align: center;
    max-width: 990px;
    margin-left: auto;
    margin-right: auto;
    /* Medium Large devices */
    /* Medium devices */
    /* Small devices */
}

@media (max-width: 1299px) {
    .testi-grid-slider {
        max-width: 800px;
    }
}

@media (max-width: 991px) {
    .testi-grid-slider {
        max-width: calc(100% - 100px);
    }
}

@media (max-width: 767px) {
    .testi-grid-slider {
        max-width: 100%;
    }
}

.testi-grid .box-text {
    font-size: 18px;
    color: var(--title-color);
    font-style: italic;
    /* Medium devices */
}

@media (max-width: 991px) {
    .testi-grid .box-text {
        font-size: 16px;
    }
}

.testi-grid .box-title {
    font-size: 30px;
    margin-top: 23px;
    margin-bottom: 0;
}

.testi-grid .box-desig {
    margin-bottom: -2px;
}

/*------------------- 4.00. Counter  -------------------*/
/* Counter 1 ---------------------------------- */
.counter-card {
    position: relative;
    /* Large devices */
    /* Medium devices */
    /* Small devices */
    /* Extra small devices */
}

.counter-card-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    /* Medium devices */
    /* Extra small devices */
}

@media (max-width: 991px) {
    .counter-card-wrap {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 40px 0;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
}

@media (max-width: 375px) {
    .counter-card-wrap {
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.counter-card .box-number {
    font-size: 84px;
    color: var(--theme-color);
    margin-bottom: 0px;
    margin-top: -0.28em;
    padding-left: 20px;
}

.counter-card .box-text {
    font-family: var(--title-font);
    font-size: 20px;
    color: var(--white-color);
    margin-bottom: -0.35em;
}

.counter-card .box-shadow {
    font-size: 134px;
    line-height: 88px;
    font-family: var(--title-font);
    color: transparent;
    -webkit-text-stroke: 1px var(--white-color);
    opacity: 0.08;
    position: absolute;
    top: -20px;
    left: 0;
}

@media (max-width: 1199px) {
    .counter-card .box-shadow {
        font-size: 100px;
    }

    .counter-card .box-number {
        font-size: 70px;
    }
}

@media (max-width: 991px) {
    .counter-card {
        width: 33.33%;
    }
}

@media (max-width: 767px) {
    .counter-card {
        width: 50%;
    }
}

@media (max-width: 375px) {
    .counter-card {
        width: 100%;
        max-width: 190px;
        display: inline-block;
    }
}

/*------------------- 4.00. Blog  -------------------*/
/* Blog Card ---------------------------------- */
.blog-card {
    border-radius: 20px;
}

    .blog-card .blog-content {
        background-color: var(--smoke-color);
        padding: 30px;
        position: relative;
        z-index: 3;
    }

    .blog-card .th-btn {
        --body-bg: #f8f8f8;
    }

    .blog-card .box-title {
        font-size: 30px;
        margin-bottom: 22px;
    }

        .blog-card .box-title a {
            background-image: -webkit-linear-gradient(right, var(--theme-color), var(--theme-color));
            background-image: linear-gradient(to left, var(--theme-color), var(--theme-color));
            background-repeat: no-repeat;
            background-position: bottom left;
            background-size: 0 2px;
            -webkit-transition: 0.5s ease-in-out;
            transition: 0.5s ease-in-out;
        }

            .blog-card .box-title a:hover {
                background-size: 100% 2px;
            }

    .blog-card .blog-img {
        overflow: hidden;
    }

        .blog-card .blog-img img {
            width: 100%;
            -webkit-transition: 0.4s ease-in-out;
            transition: 0.4s ease-in-out;
        }

    .blog-card .blog-meta {
        margin: -0.4em 0 15px 0;
    }

        .blog-card .blog-meta span > i,
        .blog-card .blog-meta a > i {
            color: var(--theme-color);
        }

    .blog-card:hover .blog-img img {
        -webkit-transform: scale(1.08);
        -ms-transform: scale(1.08);
        transform: scale(1.08);
    }

/* Medium Large devices */
@media (max-width: 1299px) {
    .blog-card .blog-content {
        padding: 20px;
    }

    .blog-card .box-title {
        font-size: 26px;
    }
}

/* Large devices */
@media (max-width: 1199px) {
    .blog-card .blog-content {
        padding: 30px;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .blog-card .box-title {
        font-size: 24px;
    }

    .blog-card .blog-content {
        padding: 20px;
    }
}

/* Small devices */
@media (max-width: 767px) {
    .blog-card .blog-content {
        padding: 30px;
    }

    .blog-card .box-title {
        font-size: 24px;
    }
}

/* Extra small devices */
@media (max-width: 575px) {
    .blog-card .blog-content {
        padding: 30px;
    }
}

@media (max-width: 410px) {
    .blog-card .box-title {
        font-size: 22px;
    }
}

@media (max-width: 350px) {
    .blog-card .blog-content {
        padding: 18px;
    }
}

/* Blog Box ---------------------------------- */
.blog-box .blog-img {
    overflow: hidden;
    margin-bottom: 30px;
}

    .blog-box .blog-img img {
        border-radius: inherit;
        width: 100%;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

.blog-box .box-title {
    font-size: 30px;
    margin-bottom: 21px;
}

    .blog-box .box-title a {
        background-image: -webkit-linear-gradient(right, var(--theme-color), var(--theme-color));
        background-image: linear-gradient(to left, var(--theme-color), var(--theme-color));
        background-repeat: no-repeat;
        background-position: bottom left;
        background-size: 0 2px;
        -webkit-transition: 0.5s ease-in-out;
        transition: 0.5s ease-in-out;
    }

        .blog-box .box-title a:hover {
            background-size: 100% 2px;
        }

.blog-box .blog-meta {
    margin: -0.4em 0 18px 0;
}

.blog-box:hover .blog-img img {
    -webkit-transform: scale(1.08);
    -ms-transform: scale(1.08);
    transform: scale(1.08);
}

/* Medium devices */
@media (max-width: 991px) {
    .blog-box .box-title {
        font-size: 26px;
    }
}

/* Extra small devices */
@media (max-width: 375px) {
    .blog-box .box-title {
        font-size: 24px;
    }
}

/*------------------- 4.00. Brand  -------------------*/
/* Brand 1 ---------------------------------- */
.brand-box {
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    text-align: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 104px;
    width: auto;
    -webkit-filter: grayscale(1) invert(0.1) brightness(1.2);
    filter: grayscale(1) invert(0.1) brightness(1.2);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}

    .brand-box.style2 {
        -webkit-filter: opacity(0.5);
        filter: opacity(0.5);
    }

    .brand-box:hover {
        -webkit-filter: none;
        filter: none;
    }

/*------------------- 4.00. Simple Sections  -------------------*/
.checklist ul {
    padding-left: 0;
    list-style: none;
    text-align: left;
    margin-bottom: 0;
}

.checklist.list-two-column ul {
    display: inline-grid;
    grid-template-columns: auto auto;
    gap: 0 40px;
    /* Small devices */
}

@media (max-width: 767px) {
    .checklist.list-two-column ul {
        grid-template-columns: auto;
    }

        .checklist.list-two-column ul li {
            text-align: initial;
        }
}

.checklist li {
    color: var(--body-color);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
}

    .checklist li > i {
        color: var(--theme-color);
    }

    .checklist li:not(:last-child) {
        margin-bottom: 15px;
    }

.checklist.mb-45 {
    /* Large devices */
}

@media (max-width: 1199px) {
    .checklist.mb-45 {
        margin-bottom: 40px;
    }
}

.check-list ul {
    padding-left: 0;
    list-style: none;
    text-align: left;
    margin-bottom: 0;
}

.check-list li {
    margin-bottom: 10px;
}

    .check-list li:last-child {
        margin-bottom: 0;
    }

    .check-list li > i {
        color: var(--theme-color);
        margin-right: 5px;
    }

.mega-hover {
    position: relative;
    overflow: hidden;
    z-index: 2;
}

    .mega-hover:after, .mega-hover:before {
        content: "";
        position: absolute;
        pointer-events: none;
        opacity: 1;
        z-index: -1;
    }

    .mega-hover:before {
        top: 0;
        right: 51%;
        bottom: 0;
        left: 50%;
        background: rgba(255, 255, 255, 0.2);
    }

    .mega-hover:after {
        top: 50%;
        right: 0;
        bottom: 50%;
        left: 0;
        background: rgba(255, 255, 255, 0.3);
    }

    .mega-hover:hover:before {
        left: 0;
        right: 0;
        opacity: 0;
        -webkit-transition: all 900ms linear;
        transition: all 900ms linear;
    }

    .mega-hover:hover:after {
        top: 0;
        bottom: 0;
        opacity: 0;
        -webkit-transition: all 900ms linear;
        transition: all 900ms linear;
    }

.bg-img {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
}

    .bg-img img {
        width: 100%;
        height: 100%;
    }

.th-video {
    position: relative;
}

    .th-video img {
        border-radius: inherit;
    }

    .th-video .play-btn {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

.rounded-10 {
    border-radius: 10px;
}

.rounded-20 {
    border-radius: 20px;
    /* Small devices */
}

@media (max-width: 767px) {
    .rounded-20 {
        border-radius: 10px;
    }
}

.rounded-30 {
    border-radius: 30px;
    /* Small devices */
}

@media (max-width: 767px) {
    .rounded-30 {
        border-radius: 15px;
    }
}

.rounded-50 {
    border-radius: 50px;
    /* Small devices */
}

@media (max-width: 767px) {
    .rounded-50 {
        border-radius: 20px;
    }
}

.btn-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px 30px;
}

/* Large devices */
@media (max-width: 1199px) {
    p.mb-40 {
        margin-bottom: 35px;
    }

    p.mb-45 {
        margin-bottom: 38px;
    }
}

/*------------------- 4.00. Why -------------------*/
/* Why 1 ---------------------------------- */
.choose-feature {
    text-align: center;
    /* Large devices */
}

.choose-feature-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    border-radius: 50px 50px 50px 0;
    background-color: var(--smoke-color);
    padding: 80px;
    margin: 10px -80px 0 -260px;
    position: relative;
    z-index: 3;
    /* Medium Large devices */
    /* Large devices */
    /* Medium devices */
    /* Small devices */
    /* Extra small devices */
}

@media (max-width: 1399px) {
    .choose-feature-wrap {
        margin: 0 -60px 0 -260px;
        padding: 60px;
    }
}

@media (max-width: 1199px) {
    .choose-feature-wrap {
        margin: 0 auto;
        border-radius: 40px;
    }
}

@media (max-width: 991px) {
    .choose-feature-wrap {
        padding: 30px;
    }
}

@media (max-width: 767px) {
    .choose-feature-wrap {
        padding: 40px 20px;
        border-radius: 20px;
        grid-template-columns: repeat(1, 1fr);
        gap: 30px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

@media (max-width: 575px) {
    .choose-feature-wrap {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (max-width: 1199px) {
    .choose-feature {
        max-width: 350px;
        margin-left: auto;
        margin-right: auto;
    }
}

.choose-feature .box-icon {
    margin-bottom: 30px;
}

    .choose-feature .box-icon img {
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

.choose-feature .box-title {
    margin-bottom: 15px;
}

.choose-feature:hover .box-icon img {
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
}

/*------------------- 4.00. Faq -------------------*/
/* Faq 1 ---------------------------------- */
.accordion-card {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    border-radius: 0;
    border: 1px solid var(--th-border-color);
    overflow: hidden;
    background-color: transparent;
    text-align: left;
    position: relative;
    z-index: 3;
}

    .accordion-card:not(:last-child) {
        margin-bottom: 30px;
    }

    .accordion-card .accordion-button {
        font-size: 22px;
        font-family: var(--title-font);
        border: none;
        border-color: var(--th-border-color);
        color: var(--title-color);
        background-color: transparent;
        border-radius: 0;
        padding: 22px 45px 22px 30px;
        min-height: 56px;
        gap: 10px;
        margin-bottom: 0;
        text-align: left;
        -webkit-transition: 0.3s;
        transition: 0.3s;
        position: relative;
    }

        .accordion-card .accordion-button:after {
            content: "\f324";
            height: 100%;
            width: auto;
            line-height: 1;
            background-color: transparent;
            background-image: none;
            font-family: var(--icon-font);
            color: var(--theme-color);
            font-weight: 500;
            font-size: 20px;
            display: grid;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center;
            text-align: center;
            position: absolute;
            top: 0;
            right: 30px;
            -webkit-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out;
        }

        .accordion-card .accordion-button:focus {
            outline: none;
            box-shadow: none;
        }

        .accordion-card .accordion-button:not(.collapsed) {
            box-shadow: none;
            border-radius: 0;
            border-bottom: 1px solid var(--th-border-color);
        }

            .accordion-card .accordion-button:not(.collapsed):after {
                -webkit-transform: rotate(90deg);
                -ms-transform: rotate(90deg);
                transform: rotate(90deg);
            }

    .accordion-card .accordion-collapse {
        border: none;
    }

    .accordion-card .accordion-body {
        border-radius: 0;
        border: none;
        padding: 30px;
        margin-top: -7px;
    }

    .accordion-card .faq-text {
        margin-bottom: -0.48em;
    }

/* Extra small devices */
@media (max-width: 575px) {
    .accordion-card .accordion-button {
        font-size: 20px;
    }
}

/*------------------- 4.00. Feature -------------------*/
/* Feature Card ---------------------------------- */
.feature-card {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 15px;
    /* Large devices */
}

.feature-card-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    /* Small devices */
}

@media (max-width: 767px) {
    .feature-card-wrap {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 30px 20px;
    }
}

.feature-card .box-title {
    color: var(--white-color);
    margin-bottom: 5px;
}

.feature-card .box-icon {
    width: 80px;
    height: 80px;
    line-height: 80px;
    text-align: center;
    background-color: var(--title-color);
    border-radius: 99px;
}

.feature-card .box-text {
    max-width: 248px;
}

@media (max-width: 1199px) {
    .feature-card {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 20px;
    }
}

.feature-card:hover .box-icon img {
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
}

.feature-sec1 {
    max-width: 1720px;
    margin-left: auto;
    margin-right: auto;
    padding: 100px 0;
    /* Large devices */
}

@media (max-width: 1199px) {
    .feature-sec1 {
        padding: 80px 0;
    }
}

/* Feature Box ---------------------------------- */
.feature-box {
    background-color: var(--white-color);
    box-shadow: 0px 10px 50px rgba(0, 0, 0, 0.06);
    padding: 30px;
    position: relative;
    z-index: 2;
}

    .feature-box:before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        height: 0;
        width: 0;
        background-color: #111;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
        z-index: -1;
    }

    .feature-box .box-icon {
        display: inline-block;
        width: 80px;
        height: 80px;
        line-height: 80px;
        text-align: center;
        background-color: var(--smoke-color2);
        border-radius: 99px;
        margin-bottom: 30px;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

    .feature-box .box-title {
        margin-bottom: 17px;
    }

    .feature-box .box-shape {
        position: absolute;
        right: 4px;
        top: 4px;
        visibility: hidden;
        opacity: 0;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

    .feature-box:hover:before {
        height: 100%;
        width: 100%;
    }

    .feature-box:hover .box-icon img {
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg);
    }

    .feature-box:hover .box-title {
        color: var(--white-color);
    }

    .feature-box:hover .box-text {
        color: var(--light-color);
    }

    .feature-box:hover .box-icon {
        background-color: var(--title-color);
    }

    .feature-box:hover .box-shape {
        visibility: visible;
        opacity: 1;
    }

/*------------------- 4.00. Gallery -------------------*/
/* Gallery Card -------------------------------*/
.gallery-card {
    text-align: center;
    --space: 30px;
}

    .gallery-card .box-img {
        position: relative;
        z-index: 2;
    }

        .gallery-card .box-img img {
            width: 100%;
        }

        .gallery-card .box-img:after {
            content: '';
            position: absolute;
            inset: var(--space);
            border-radius: inherit;
            background-color: #111;
            opacity: 0;
            -webkit-transition: 0.4s ease;
            transition: 0.4s ease;
            -webkit-transform: scale(0.3);
            -ms-transform: scale(0.3);
            transform: scale(0.3);
        }

    .gallery-card .box-btn {
        position: absolute;
        top: calc(50% - 50px);
        left: calc(50% - 50px);
        -webkit-transform: scale(0);
        -ms-transform: scale(0);
        transform: scale(0);
        font-size: 100px;
        line-height: 100px;
        color: var(--theme-color);
        z-index: 3;
    }

    .gallery-card.style2 {
        --space: 0px;
    }

        .gallery-card.style2 .box-btn {
            font-size: 60px;
            line-height: 60px;
            top: calc(50% - 30px);
            left: calc(50% - 30px);
        }

    .gallery-card:hover .box-img:after {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        opacity: 0.8;
    }

    .gallery-card:hover .box-btn {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }

.swiper-slide-active .gallery-card .box-img:after {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 0.8;
}

.swiper-slide-active .gallery-card .box-btn {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.gallery-border {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 40px;
    margin-top: 30px;
    /* Extra small devices */
}

@media (max-width: 575px) {
    .gallery-border {
        gap: 20px;
    }
}

.gallery-border:before, .gallery-border:after {
    content: '';
    -webkit-box-flex: 100%;
    -webkit-flex: 100%;
    -ms-flex: 100%;
    flex: 100%;
    height: 1.5px;
    background-color: var(--title-color);
}

.container-gallery {
    padding: 30px;
    overflow: hidden;
    /* Extra small devices */
}

@media (max-width: 575px) {
    .container-gallery {
        padding: 15px;
    }
}

.gallery-border2 {
    border-bottom: 1px solid var(--theme-color);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 8px;
    margin-top: 60px;
    position: relative;
    z-index: 2;
    /* Medium Large devices */
}

@media (max-width: 1299px) {
    .gallery-border2 {
        margin-top: 45px;
    }
}

.gallery-border2:after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: calc(50% - 64px);
    height: 1px;
    width: 128px;
    background-color: var(--body-bg);
    z-index: -1;
}

.gallery-border2 > span {
    display: block;
    width: 8px;
    height: 8px;
    background-color: var(--theme-color);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-bottom: -4px;
    position: relative;
    z-index: 2;
}

/*------------------- 4.00. Category -------------------*/
/* Category Card -------------------------------------*/
.category-card {
    text-align: center;
}

    .category-card .box-img {
        position: relative;
        display: inline-block;
    }

        .category-card .box-img img {
            width: 220px;
            border-radius: 999px;
        }

    .category-card .box-price {
        position: absolute;
        top: 10%;
        right: -8px;
        background-color: var(--title-color);
        color: var(--white-color);
        width: 54px;
        height: 54px;
        line-height: 54px;
        text-align: center;
        border-radius: 99px;
        font-weight: 700;
    }

    .category-card .box-content {
        padding: 35px 10px;
        border-radius: 50px 0 50px 0;
        border: 2px solid var(--white-color);
        background-color: var(--smoke-color);
        margin-top: -110px;
        padding-top: 145px;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

    .category-card .box-title {
        font-size: 30px;
        margin-bottom: 13px;
    }

    .category-card .th-btn {
        margin-top: 30px;
        --body-bg: #f8f8f8;
    }

    .category-card:hover .box-content {
        box-shadow: 0px 10px 30px rgba(125, 125, 125, 0.05);
        background-color: var(--white-color);
        border-radius: 0 50px 0 50px;
    }

    .category-card:hover .th-btn {
        --body-bg: #fff;
    }

.cat-sec1 {
    max-width: 1620px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 30px;
}

/* Category box -------------------------------------*/
.category-box {
    text-align: center;
    position: relative;
    z-index: 2;
    padding: 0 5px 23px 5px;
    height: 100%;
}

    .category-box:before {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 150px;
        border-radius: 30px;
        background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%);
        background-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%);
        z-index: -1;
    }

    .category-box .box-img {
        margin-bottom: 40px;
        position: relative;
        z-index: 2;
    }

        .category-box .box-img:before {
            content: '';
            position: absolute;
            bottom: -5px;
            left: calc(50% - 56px);
            width: 112px;
            height: 21px;
            background: #000000;
            -webkit-filter: blur(18px);
            filter: blur(18px);
            z-index: -1;
        }

    .category-box .box-title {
        font-size: 22px;
        margin-bottom: 0px;
    }

#catSlider2 .swiper-slide {
    height: 100%;
}

/*------------------- 4.00. CTA -------------------*/
.cta-card {
    padding: 80px 40px;
    background-position: bottom left;
    position: relative;
    /* Large devices */
    /* Extra small devices */
}

@media (max-width: 1199px) {
    .cta-card {
        padding: 65px 40px;
    }
}

.cta-card .box-title {
    color: var(--theme-color);
    font-size: 30px;
    margin-bottom: 0;
}

.cta-card .box-heading {
    font-size: 36px;
    color: var(--white-color);
    margin-bottom: 12px;
    text-transform: uppercase;
}

.cta-card .box-text {
    color: var(--theme-color);
    font-size: 20px;
    margin-bottom: -0.25em;
}

.cta-card .box-price {
    position: absolute;
    top: 21px;
    right: 34px;
    text-align: center;
}

    .cta-card .box-price .text {
        color: var(--white-color);
        font-weight: 700;
        text-transform: uppercase;
        margin-bottom: -4px;
    }

    .cta-card .box-price .price {
        font-size: 24px;
        color: var(--theme-color);
        margin-bottom: 0;
    }

    .cta-card .box-price .content {
        position: absolute;
        top: 26px;
        left: 5px;
        width: 100%;
    }

.cta-card .th-btn {
    margin-top: 40px;
}

@media (max-width: 575px) {
    .cta-card {
        padding: 45px 20px;
    }

        .cta-card .box-price {
            top: 10px;
            right: 10px;
        }
}

@media (max-width: 360px) {
    .cta-card .box-price {
        top: 2px;
        right: 2px;
        -webkit-transform: scale(0.8);
        -ms-transform: scale(0.8);
        transform: scale(0.8);
    }
}

/* Cta 3 */
.cta-img1 {
    margin: 34px 34px 20px -80px;
    position: relative;
    /* Medium devices */
    /* Small devices */
}

    .cta-img1 .price {
        font-size: 64px;
        color: var(--white-color);
        position: absolute;
        bottom: 10%;
        right: -10%;
        background-size: contain;
        padding: 85px 50px 44px 50px;
        margin: 0;
    }

@media (max-width: 991px) {
    .cta-img1 {
        margin: 20px 0 0 0;
        text-align: center;
    }

        .cta-img1 .price {
            right: 0;
        }
}

@media (max-width: 767px) {
    .cta-img1 .price {
        font-size: 44px;
        padding: 40px 25px 20px 25px;
    }
}

/* Cta 4 */
.offer-box {
    padding: 40px;
    /* Extra small devices */
}

.offer-box-row {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

    .offer-box-row > div {
        margin-bottom: 24px;
    }

        .offer-box-row > div:last-child {
            margin-bottom: 0;
        }

.offer-box .box-title {
    color: var(--white-color);
    font-size: 30px;
    margin-bottom: 4px;
}

.offer-box .box-text {
    color: var(--white-color);
    font-weight: 500;
    max-width: 155px;
}

.offer-box .line-btn {
    color: var(--white-color);
    margin-top: 28px;
}

    .offer-box .line-btn:before {
        background-color: var(--white-color);
    }

@media (max-width: 375px) {
    .offer-box {
        padding: 40px 20px;
    }
}

/*------------------- 4.00. Tab Menu -------------------*/
/* Tab Menu 1 ------------------------------------*/
.tab-menu1 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 30px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 60px;
    margin-top: -20px;
    /* Medium devices */
}

    .tab-menu1 .th-btn {
        min-width: 122px;
    }

        .tab-menu1 .th-btn.active {
            background-color: var(--theme-color);
            color: var(--white-color);
        }

            .tab-menu1 .th-btn.active:before {
                border: none;
            }

@media (max-width: 991px) {
    .tab-menu1 {
        gap: 16px;
        margin-bottom: 45px;
        margin-top: -10px;
    }

        .tab-menu1 .th-btn {
            min-width: auto;
        }
}

/* Tab Menu 2 ------------------------------------*/
.tab-menu2 {
    gap: 10px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    /* Large devices */
}

@media (max-width: 1199px) {
    .tab-menu2 {
        margin-top: -15px;
    }
}

.tab-menu2 .tab-btn {
    font-family: var(--title-font);
    font-size: 16px;
    font-weight: 600;
    background-color: var(--smoke-color);
    border-radius: 99px;
    border: none;
    padding: 6px 35px;
    color: var(--title-color);
    position: relative;
    z-index: 2;
    overflow: hidden;
    /* Small devices */
}

    .tab-menu2 .tab-btn:before {
        content: '';
        width: 20px;
        height: 20px;
        background-image: -webkit-linear-gradient(left, var(--theme-color) 0%, #FD8900 100%);
        background-image: linear-gradient(to right, var(--theme-color) 0%, #FD8900 100%);
        position: absolute;
        top: 0;
        left: 0;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        border-radius: 99px;
        z-index: -1;
    }

@media (max-width: 767px) {
    .tab-menu2 .tab-btn {
        padding: 6px 30px;
    }
}

@media (max-width: 350px) {
    .tab-menu2 .tab-btn {
        padding: 6px 20px;
    }
}

.tab-menu2 .tab-btn .date {
    display: block;
    font-size: 13px;
    font-weight: 400;
    margin-top: -4px;
    color: var(--body-color);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}

.tab-menu2 .tab-btn.active {
    border-color: transparent;
    color: var(--white-color);
}

    .tab-menu2 .tab-btn.active:before {
        width: 100%;
        height: 100%;
    }

    .tab-menu2 .tab-btn.active .date {
        color: var(--white-color);
    }

/*------------------- 4.00. Menu -------------------*/
/* Menu 1 -----------------------*/
.menu-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
    /* Extra small devices */
    /* Extra small devices */
}

.menu-list-area {
    padding: 0 30px;
    /* Large devices */
}

@media (max-width: 1199px) {
    .menu-list-area {
        padding: 0;
    }
}

.menu-list:last-child {
    margin-bottom: 0;
}

.menu-list .box-img {
    width: 84px;
    position: relative;
    z-index: 2;
    border-radius: 99px;
}

.box-img.modifiedsize {
    width: 40px !important;
}

/* =====================================================================
   Menu dish tile — _MenuItemsWithIcons v3 (gallery-style, 2026-07-09).
   The PHOTO is the card (~80%): 4/3 tile with the dish name + gold price
   plated on a dark gradient, dietary badges top-left, a floating ICON
   Add-to-Cart (round gold button → compact stepper) top-right, and a slim
   description footer. No-photo dishes get an ink-gradient tile with a
   faded utensils mark. Self-contained .ivm-dish namespace (legacy
   .menu-list untouched). JS hooks unchanged: .ivm-add-btn / .ivm-stepper /
   .ivm-step-minus / .ivm-step-qty / .ivm-step-plus (menu-cart.js).
   Fully responsive (1199 / 575 / 400).
   ===================================================================== */
.ivm-dish {
    --ivm-gold: var(--theme-color, #C59D5F);
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(0, 0, 0, .06);
    border-radius: 18px;
    background: #fff;
    position: relative;
    overflow: hidden;
    box-shadow: 0 5px 16px rgba(31, 31, 31, .08);
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.ivm-dish + .ivm-dish {
    margin-top: 22px;
}

.ivm-dish:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 44px rgba(31, 31, 31, .18);
    border-color: rgba(197, 157, 95, .55);
}

/* ---- photo tile (~80% of the card) ---- */
.ivm-dish-media {
    position: relative;
    aspect-ratio: 4 / 3;
    background-color: #efece6;
    background-size: cover;
    background-position: center;
    border-radius: 17px 17px 0 0;
    overflow: hidden;
    cursor: pointer;               /* click opens the dish-detail modal */
}

/* zoom the photo itself (::before layer) so plate/buttons stay crisp */
.ivm-dish-media::before {
    content: '';
    position: absolute;
    inset: 0;
    background: inherit;
    transition: transform .6s ease;
}

.ivm-dish:hover .ivm-dish-media::before {
    transform: scale(1.08);
}

/* bottom-up gradient for the plated name/price/description */
.ivm-dish-media::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(18, 16, 12, .92) 0%, rgba(18, 16, 12, .55) 34%, transparent 62%);
    pointer-events: none;
}

/* T536 — lazy-loaded tile (assets/js/lazy-bg.js): the server renders only the LQIP
   background-color + data-bg; the photo is painted on the ::before layer from the
   --lazy-bg custom property so it can FADE in over the LQIP colour (the element's own
   background-image is suppressed to avoid an abrupt double paint). A soft brightness
   pulse stands in as the loading shimmer. */
.ivm-dish-media[data-bg] { background-image: none !important; }

.ivm-dish-media[data-bg]::before {
    background-image: var(--lazy-bg, none);
    background-size: cover;
    background-position: center;
    opacity: 0;
    transition: transform .6s ease, opacity .45s ease;
}

.ivm-dish-media[data-bg].is-loaded::before { opacity: 1; }

.ivm-dish-media[data-bg]:not(.is-loaded) { animation: ivmLazyPulse 1.6s ease-in-out infinite; }

@keyframes ivmLazyPulse {
    0%, 100% { filter: brightness(1); }
    50% { filter: brightness(1.12); }
}

@media (prefers-reduced-motion: reduce) {
    .ivm-dish-media[data-bg]:not(.is-loaded) { animation: none; }
}

/* no-photo tile: ink gradient + faded utensils */
.ivm-dish--noimg .ivm-dish-media { background-image: none; }

.ivm-dish--noimg .ivm-dish-media::before {
    background: linear-gradient(135deg, #1F1F1F 0%, #3a3327 62%, #4a3f2a 100%);
}

.ivm-dish--noimg .ivm-dish-media::after {
    background: linear-gradient(to top, rgba(18, 16, 12, .55) 0%, transparent 62%);
}

.ivm-dish-ph {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 68px;
    color: rgba(197, 157, 95, .3);
    z-index: 1;
}

/* ---- dietary badges: float top-left ON the photo ---- */
.ivm-dish-badges {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    max-width: 60%;
}

.ivm-dish-badge {
    width: 60px;                      /* owner: double size so gluten-free etc. read clearly */
    height: 60px;
    border-radius: 50%;
    object-fit: contain;
    background: rgba(255, 255, 255, .94);
    padding: 5px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .28);
    transition: transform .2s ease;
}

.ivm-dish-badge:hover { transform: scale(1.2); }

/* ---- plated name + price + description (all ON the photo) ---- */
.ivm-dish-overlay {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 13px 16px 14px;
}

.ivm-dish-titlerow {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;
}

/* food category chip (e.g. STARTERS) plated above the dish name */
.ivm-dish-cat {
    align-self: flex-start;
    display: inline-block;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 1.6px;
    text-transform: uppercase;
    color: #f4d896;
    background: rgba(31, 31, 31, .55);
    border: 1px solid rgba(244, 216, 150, .45);
    border-radius: 999px;
    padding: 3px 11px;
    backdrop-filter: blur(2px);
    margin-bottom: 1px;
}

.ivm-dish-name {
    margin: 0;
    font-size: 20px;
    line-height: 1.25;
    color: #fff;
    font-weight: 600;
    letter-spacing: .2px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, .6);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* stylish price TAG — gold ticket with a punched hole + notched left edge */
.ivm-dish-price {
    position: relative;
    flex: 0 0 auto;
    align-self: flex-end;
    display: inline-flex;
    align-items: baseline;
    gap: 3px;
    white-space: nowrap;
    color: #3a2a0e;
    background: linear-gradient(135deg, #ffe6a6 0%, #f4d896 45%, var(--ivm-gold) 100%);
    padding: 5px 13px 5px 20px;
    border-radius: 5px 999px 999px 5px;
    box-shadow: 0 6px 16px -6px rgba(184, 138, 30, .8), inset 0 1px 0 rgba(255, 255, 255, .55);
    transition: transform .25s ease, box-shadow .25s ease;
}

    /* punched hole on the left */
    .ivm-dish-price::before {
        content: "";
        position: absolute;
        left: 8px;
        top: 50%;
        transform: translateY(-50%);
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: rgba(58, 42, 14, .55);
        box-shadow: inset 0 1px 1px rgba(0, 0, 0, .4);
    }

    /* soft shine sweep */
    .ivm-dish-price::after {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: linear-gradient(115deg, transparent 40%, rgba(255, 255, 255, .5) 50%, transparent 60%);
        opacity: 0;
        transition: opacity .3s ease;
        pointer-events: none;
    }

.ivm-dish:hover .ivm-dish-price {
    transform: translateY(-1px);
    box-shadow: 0 10px 22px -6px rgba(184, 138, 30, .95), inset 0 1px 0 rgba(255, 255, 255, .6);
}

    .ivm-dish:hover .ivm-dish-price::after { opacity: 1; }

.ivm-price-cur {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .3px;
    text-transform: uppercase;
    opacity: .82;
}

.ivm-price-amt {
    font-size: 16px;
    font-weight: 800;
    letter-spacing: .2px;
}

/* ---- floating ICON Add-to-Cart (top-right on the photo) ---- */
.ivm-dish-cart {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 4;
    display: flex;
    align-items: center;
}

.ivm-add-btn {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 50%;
    font-size: 18px;
    color: #3a2a0e;
    background: linear-gradient(135deg, #f4d896, var(--ivm-gold));
    box-shadow: 0 5px 14px rgba(0, 0, 0, .32);
    cursor: pointer;
    transition: transform .2s ease, background .3s ease, color .3s ease, box-shadow .3s ease;
}

.ivm-add-btn:hover {
    transform: scale(1.12);
    color: #f4d896;
    background: linear-gradient(135deg, #2a2a2a, #1F1F1F);
    box-shadow: 0 8px 18px rgba(0, 0, 0, .4);
}

.ivm-stepper {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: rgba(255, 255, 255, .96);
    border: 1px solid rgba(197, 157, 95, .55);
    border-radius: 999px;
    padding: 4px 6px;
    box-shadow: 0 5px 14px rgba(0, 0, 0, .28);
}

.ivm-step-minus,
.ivm-step-plus {
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: none;
    background: linear-gradient(135deg, #f4d896, var(--ivm-gold));
    color: #3a2a0e;
    font-size: 12px;
    cursor: pointer;
    transition: transform .15s ease, background .25s ease, color .25s ease;
}

.ivm-step-minus:hover,
.ivm-step-plus:hover {
    transform: scale(1.1);
    background: linear-gradient(135deg, #2a2a2a, #1F1F1F);
    color: #f4d896;
}

.ivm-step-qty {
    min-width: 18px;
    text-align: center;
    font-weight: 700;
    font-size: 14.5px;
    color: #1F1F1F;
}

/* Admin availability lock: chip on the photo instead of the cart icon */
.ivm-dish-lockednote {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    color: #8a2f2f;
    background: rgba(253, 234, 234, .96);
    border: 1px solid #e8bcbc;
    border-radius: 999px;
    padding: 6px 12px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, .25);
}

/* gallery-style "View Dish" hover hint (markup + base styles from GalleryLux;
   the reveal there is driven by .rgal-card:hover — mirror it for .ivm-dish) */
.ivm-dish:hover .rgal-overlay { opacity: 1; }
.ivm-dish:hover .rgal-view { transform: scale(1) translateY(0); }

/* description plated on the photo, under the name */
.ivm-dish-desc {
    margin: 0;
    color: rgba(255, 255, 255, .92);
    font-size: 13px;
    line-height: 1.5;
    text-shadow: 0 1px 6px rgba(0, 0, 0, .65);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ---- floating cart pill (built + toggled by menu-cart.js) ---- */
.ivm-cart-fab {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 1050;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    border-radius: 999px;
    color: #f4d896;
    text-decoration: none;
    background: linear-gradient(135deg, #2a2a2a, #1F1F1F);
    box-shadow: 0 10px 26px rgba(0, 0, 0, .32), inset 0 0 0 1px rgba(197, 157, 95, .5);
    font-weight: 600;
    opacity: 0;
    visibility: hidden;
    transform: translateY(14px);
    transition: opacity .3s ease, transform .3s ease, visibility .3s ease;
}

.ivm-cart-fab.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.ivm-cart-fab:hover { color: #fff; }
.ivm-cart-fab .ivm-fab-ic { color: var(--theme-color, #C59D5F); font-size: 18px; }

.ivm-cart-fab .ivm-fab-count {
    background: linear-gradient(135deg, #f4d896, var(--theme-color, #C59D5F));
    color: #3a2a0e;
    font-weight: 700;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
}

.ivm-cart-fab .ivm-fab-total { color: #fff; }
.ivm-cart-fab .ivm-fab-arrow { color: var(--theme-color, #C59D5F); font-size: 14px; }

/* ---- compact variant (home page "Our Food Menu" — ~60% of the full tile) ----
   Scope: the Index.cshtml Menu Area section carries .ivm-compact. */
.ivm-compact .ivm-dish {
    border-radius: 13px;
}

.ivm-compact .ivm-dish + .ivm-dish {
    margin-top: 13px;
}

.ivm-compact .ivm-dish:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 28px rgba(31, 31, 31, .15);
}

.ivm-compact .ivm-dish-media {
    aspect-ratio: 16 / 9;              /* shorter tile — image still dominates */
    border-radius: 12px 12px 0 0;
}

.ivm-compact .ivm-dish-overlay {
    padding: 9px 11px;
    gap: 7px;
}

.ivm-compact .ivm-dish-name {
    font-size: 15px;
    -webkit-line-clamp: 1;
}

.ivm-compact .ivm-dish-price {
    padding: 3px 10px 3px 17px;
}

    .ivm-compact .ivm-price-amt { font-size: 13.5px; }
    .ivm-compact .ivm-price-cur { font-size: 9px; }

.ivm-compact .ivm-dish-badges {
    top: 7px;
    left: 7px;
    gap: 4px;
}

.ivm-compact .ivm-dish-badge {
    width: 44px;                      /* doubled (owner) */
    height: 44px;
    padding: 4px;
}

.ivm-compact .ivm-dish-cart {
    top: 7px;
    right: 7px;
}

.ivm-compact .ivm-add-btn {
    width: 32px;
    height: 32px;
    font-size: 13px;
}

.ivm-compact .ivm-stepper {
    gap: 5px;
    padding: 3px 5px;
}

.ivm-compact .ivm-step-minus,
.ivm-compact .ivm-step-plus {
    width: 23px;
    height: 23px;
    font-size: 10px;
}

.ivm-compact .ivm-step-qty {
    font-size: 12.5px;
    min-width: 14px;
}

.ivm-compact .ivm-dish-lockednote {
    top: 8px;
    right: 8px;
    font-size: 10.5px;
    padding: 4px 9px;
}

.ivm-compact .ivm-dish-ph {
    font-size: 42px;
}

.ivm-compact .ivm-dish-overlay {
    gap: 3px;
}

.ivm-compact .ivm-dish-cat {
    font-size: 9px;
    letter-spacing: 1.2px;
    padding: 2px 9px;
}

/* "Our Popular Foods Menu" (home Menu Area): FOUR even tiles per row.
   The category columns go full-width (stacked, header above its dishes)
   and each block becomes a uniform 4-up grid — 2-up on tablets, 1-up on
   phones. Every dish div identical in size. */
.ivm-compact .col-xl-6,
.ivm-compact .col-xl-4 {
    width: 100%;
}

.ivm-compact .menu-list-block {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    align-items: stretch;
}

.ivm-compact .menu-list-block .ivm-dish {
    height: 100%;
}

.ivm-compact .menu-list-block .ivm-dish + .ivm-dish {
    margin-top: 0;               /* grid gap replaces the stacked margin */
}

.ivm-compact .menu-list-block .ivm-dish-media {
    height: 100%;                /* photo fills the whole even tile */
}

@media (max-width: 991px) {
    .ivm-compact .menu-list-block {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .ivm-compact .menu-list-block {
        grid-template-columns: 1fr;
        gap: 12px;
    }
}

.ivm-compact .ivm-dish-desc {
    font-size: 11.5px;
    line-height: 1.4;
    -webkit-line-clamp: 2;
}

/* ---- responsive ---- */
@media (max-width: 1199px) {
    .ivm-dish-name { font-size: 18px; }
    .ivm-compact .ivm-dish-name { font-size: 14.5px; }
}

@media (max-width: 575px) {
    .ivm-dish { border-radius: 15px; }
    .ivm-dish + .ivm-dish { margin-top: 18px; }
    .ivm-dish-media { border-radius: 14px 14px 0 0; }
    .ivm-dish-name { font-size: 17px; }
    .ivm-dish-price { padding: 4px 11px 4px 18px; }
    .ivm-price-amt { font-size: 15px; }
    .ivm-add-btn { width: 42px; height: 42px; font-size: 17px; }
    .ivm-dish-badge { width: 50px; height: 50px; }
    .ivm-dish-desc { font-size: 12px; }
    .ivm-cart-fab { right: 12px; bottom: 12px; padding: 10px 14px; }
}

@media (max-width: 400px) {
    .ivm-dish-overlay { padding: 11px 12px; }
    .ivm-dish-ph { font-size: 54px; }
}

.menu-list .box-img:after {
    content: '';
    position: absolute;
    inset: 0;
    /*background-color: var(--theme-color);*/
    border-radius: inherit;
    opacity: 0;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}

.menu-list .box-img img {
    border-radius: 99px;
}

.menu-list .box-img .actions {
    position: absolute;
    inset: 0;
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.menu-list .box-img .icon-btn {
    --btn-size: 40px;
    font-size: 16px;
    border-radius: 99px;
    border: none;
    background-color: var(--white-color);
    -webkit-transform: translateY(40px);
    -ms-transform: translateY(40px);
    transform: translateY(40px);
    visibility: hidden;
    opacity: 0;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    z-index: 3;
}

    .menu-list .box-img .icon-btn:hover {
        background-color: var(--title-color);
    }

.menu-list .box-title {
    margin-top: 0;
    margin-bottom: -8px;
    font-size: 25px;
}

.menu-list .box-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    gap: 5px 12px;
}

    .menu-list .box-content.boxcontentmodified {
        column-gap: 1px !important;
    }

.menu-list .box-price {
    margin-bottom: 0;
    font-size: 20px;
    margin-left: 15px;
}

.menu-list .box-text {
    margin-bottom: 0;
    width: auto;
    -webkit-box-flex: 100%;
    -webkit-flex: 100%;
    -ms-flex: 100%;
    flex: 100%;
}

.menu-list .box-line {
    -webkit-box-flex: 100%;
    -webkit-flex: 100%;
    -ms-flex: 100%;
    flex: 100%;
    border-bottom: 1px dashed var(--th-border-color);
    position: relative;
    top: -10px;
    /* Medium Large devices */
    /* Large devices */
    /* Medium devices */
    /* Small devices */
    /* Extra small devices */
}

@media (max-width: 1299px) {
    .menu-list .box-line {
        -webkit-box-flex: 66%;
        -webkit-flex: 66%;
        -ms-flex: 66%;
        flex: 66%;
    }
}

@media (max-width: 1199px) {
    .menu-list .box-line {
        -webkit-box-flex: 100%;
        -webkit-flex: 100%;
        -ms-flex: 100%;
        flex: 100%;
    }
}

@media (max-width: 991px) {
    .menu-list .box-line {
        -webkit-box-flex: 72%;
        -webkit-flex: 72%;
        -ms-flex: 72%;
        flex: 72%;
    }
}

@media (max-width: 767px) {
    .menu-list .box-line {
        -webkit-box-flex: 10%;
        -webkit-flex: 10%;
        -ms-flex: 10%;
        flex: 10%;
    }
}

@media (max-width: 575px) {
    .menu-list .box-line {
        display: none;
    }
}

.menu-list .box-line:before, .menu-list .box-line:after {
    content: '';
    width: 7px;
    height: 7px;
    border-radius: 99px;
    background-color: var(--th-border-color);
    position: absolute;
    bottom: -4px;
}

.menu-list .box-line:before {
    left: -10px;
}

.menu-list .box-line:after {
    right: -10px;
}

@media (max-width: 575px) {
    .menu-list {
        gap: 15px;
    }

        .menu-list .box-price, .menu-list .box-title {
            font-size: 24px;
            line-height: 1.2;
        }

        .menu-list .box-title {
            margin-bottom: 5px;
        }

        .menu-list .box-price {
            margin-left: 0;
        }

        .menu-list .box-content {
            -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        }
}

@media (max-width: 375px) {
    .menu-list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: center;
    }

        .menu-list .box-content {
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
        }
}

.menu-list-slider {
    --pos-x: -30px;
    /* Medium devices */
}

@media (max-width: 991px) {
    .menu-list-slider {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.menu-list-slider .slider-arrow {
    --title-color: #fff;
    top: 58%;
    /* Medium Large devices */
    /* Small devices */
}

@media (max-width: 1299px) {
    .menu-list-slider .slider-arrow {
        display: block;
    }
}

@media (max-width: 767px) {
    .menu-list-slider .slider-arrow {
        display: none;
    }
}

.menu-list-slider .th-slider {
    max-width: 714px;
    margin-left: auto;
    margin-right: auto;
}

.menu-list-slider .menu-list {
    --body-color: #8E97A6;
    --th-border-color: #8E97A6;
}

    .menu-list-slider .menu-list .box-title {
        color: var(--white-color);
    }

    .menu-list-slider .menu-list .box-line {
        -webkit-box-flex: 60%;
        -webkit-flex: 60%;
        -ms-flex: 60%;
        flex: 60%;
        /* Small devices */
    }

@media (max-width: 767px) {
    .menu-list-slider .menu-list .box-line {
        display: none;
    }
}

.menu-list-slider .menu-list .box-price {
    color: var(--theme-color);
}

.menu-list:hover .box-img:after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    opacity: 0.8;
}

.menu-list:hover .box-img .icon-btn {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.menu-img1 {
    margin-left: -225px;
    position: relative;
    overflow: hidden;
    width: 415px;
    aspect-ratio: 0.63 / 1;
}

    .menu-img1 img {
        position: absolute;
        bottom: 0;
        width: 100%;
        height: 115%;
        object-fit: cover;
    }

.menu-img2 {
    margin-right: -225px;
    position: relative;
    overflow: hidden;
    width: 415px;
    aspect-ratio: 0.63 / 1;
}

    .menu-img2 img {
        position: absolute;
        bottom: 0;
        width: 100%;
        height: 115%;
        object-fit: cover;
    }

/* Large devices */
@media (max-width: 1199px) {
    .menu-img1,
    .menu-img2 {
        width: 100%;
        aspect-ratio: 1 / 1;
        margin: 0;
        max-height: 350px;
    }
}

/* Menu 2 -----------------------*/
.menu-card {
    --space: 36px;
    text-align: center;
    border-top: 1px solid var(--body-color);
    border-bottom: 1px solid var(--body-color);
    margin-bottom: 35px;
    margin-top: 18px;
    position: relative;
    z-index: 2;
    /* Small devices */
    /* Extra small devices */
}

    .menu-card:before {
        content: '';
        position: absolute;
        top: -1px;
        left: calc(50% - 23px);
        width: 46px;
        height: 2px;
        background-color: var(--body-bg);
    }

    .menu-card:after {
        content: '';
        height: 18px;
        width: 14px;
        background-color: var(--title-color);
        -webkit-clip-path: path("M0 9.00056L7.00001 18L14 9.00056L7.00001 0L0 9.00056Z");
        clip-path: path("M0 9.00056L7.00001 18L14 9.00056L7.00001 0L0 9.00056Z");
        position: absolute;
        top: -18px;
        left: calc(50% - 7px);
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

    .menu-card .box-title {
        font-size: 26px;
        padding-top: 12px;
        margin-bottom: 7px;
    }

    .menu-card .box-img {
        border-top: 1px solid var(--body-color);
        border-bottom: 1px solid var(--body-color);
        overflow: hidden;
    }

        .menu-card .box-img img {
            width: 100%;
            -webkit-transition: 0.4s ease-in-out;
            transition: 0.4s ease-in-out;
        }

    .menu-card .box-text {
        font-size: 14px;
        margin-top: 6px;
        margin-bottom: 2px;
    }

    .menu-card .box-price {
        font-size: 20px;
        color: var(--white-color);
        background-color: var(--title-color);
        width: 50px;
        height: 50px;
        line-height: 49px;
        text-align: center;
        border-radius: 99px;
        margin: 0 auto -35px auto;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
    }

    .menu-card .box-shape {
        position: absolute;
        inset: 0;
        pointer-events: none;
        z-index: 2;
    }

        .menu-card .box-shape:before, .menu-card .box-shape:after {
            content: '';
            height: 100%;
            width: 1px;
            background-color: var(--body-color);
            position: absolute;
            top: 0;
            -webkit-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out;
        }

        .menu-card .box-shape:before {
            left: var(--space);
        }

        .menu-card .box-shape:after {
            right: var(--space);
        }

    .menu-card:hover:after {
        background-color: var(--theme-color);
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg);
    }

    .menu-card:hover .box-shape:before {
        left: 0;
    }

    .menu-card:hover .box-shape:after {
        right: 0;
    }

    .menu-card:hover .box-price {
        background-color: var(--theme-color);
    }

    .menu-card:hover .box-img img {
        -webkit-transform: scaleX(1.1);
        -ms-transform: scaleX(1.1);
        transform: scaleX(1.1);
    }

@media (max-width: 767px) {
    .menu-card {
        --space: 26px;
    }
}

@media (max-width: 575px) {
    .menu-card {
        --space: 36px;
    }
}

/* Menu 4 -----------------------------------*/
.menu-sec4 {
    max-width: 1720px;
    margin-left: auto;
    margin-right: auto;
    background-color: var(--white-color);
}

.menu-list-block {
    /* Large devices */
}

    .menu-list-block .menu-list .box-line {
        -webkit-box-flex: 5%;
        -webkit-flex: 5%;
        -ms-flex: 5%;
        flex: 5%;
        /* Medium Large devices */
        /* Medium Large devices */
        /* Large devices */
        /* Medium devices */
        /* Small devices */
    }

@media (max-width: 1399px) {
    .menu-list-block .menu-list .box-line {
        -webkit-box-flex: 5%;
        -webkit-flex: 5%;
        -ms-flex: 5%;
        flex: 5%;
    }
}

@media (max-width: 1299px) {
    .menu-list-block .menu-list .box-line {
        -webkit-box-flex: 5%;
        -webkit-flex: 5%;
        -ms-flex: 5%;
        flex: 5%;
    }
}

@media (max-width: 1199px) {
    .menu-list-block .menu-list .box-line {
        -webkit-box-flex: 5%;
        -webkit-flex: 5%;
        -ms-flex: 5%;
        flex: 5%;
    }
}

@media (max-width: 991px) {
    .menu-list-block .menu-list .box-line {
        -webkit-box-flex: 5%;
        -webkit-flex: 5%;
        -ms-flex: 5%;
        flex: 5%;
    }
}

@media (max-width: 767px) {
    .menu-list-block .menu-list .box-line {
        -webkit-box-flex: 5%;
        -webkit-flex: 5%;
        -ms-flex: 5%;
        flex: 5%;
    }
}

@media (max-width: 1199px) {
    .menu-list-block {
        max-width: 720px;
        margin-left: auto;
        margin-right: auto;
    }
}

/*------------------- 4.00. Schedule -------------------*/
.schedule-card {
    background-color: #111;
    padding: 60px;
    margin-left: -250px;
    text-align: center;
    background-size: auto;
    background-position: bottom right;
    position: relative;
    z-index: 3;
    /* Large devices */
    /* Small devices */
    /* Extra small devices */
}

@media (max-width: 1199px) {
    .schedule-card {
        margin-left: 0;
    }
}

@media (max-width: 767px) {
    .schedule-card {
        padding: 40px;
    }
}

@media (max-width: 575px) {
    .schedule-card {
        padding: 40px 20px;
    }
}

.img-box3 {
    position: relative;
}

    .img-box3 .img1 {
        overflow: hidden;
        position: relative;
        max-width: 100%;
        width: 740px;
        aspect-ratio: .93 / 1;
        /* Large devices */
        /* Extra small devices */
    }

        .img-box3 .img1 img {
            width: 100%;
            position: absolute;
            bottom: 0;
            height: 110%;
            object-fit: cover;
        }

@media (max-width: 1199px) {
    .img-box3 .img1 {
        width: 100%;
        aspect-ratio: 1 / 1;
    }
}

@media (max-width: 575px) {
    .img-box3 .img1 {
        aspect-ratio: 0.9 / 1;
    }
}

.img-box3 .box-title {
    position: absolute;
    top: 0;
    left: -82px;
    z-index: 3;
    font-size: 54px;
    font-weight: 400;
    text-transform: uppercase;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: transparent;
    -webkit-text-stroke: 1px var(--title-color);
    margin: 0;
    letter-spacing: 0.16em;
    /* Medium Large devices */
    /* Medium Large devices */
    /* Large devices */
    /* Extra small devices */
}

@media (max-width: 1399px) {
    .img-box3 .box-title {
        letter-spacing: 0.13em;
        left: -60px;
    }
}

@media (max-width: 1299px) {
    .img-box3 .box-title {
        font-size: 50px;
        letter-spacing: 0.08em;
    }
}

.img-box3 .box-title > span {
    margin: 10px 0;
}

    .img-box3 .box-title > span > span {
        display: inline-block;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
    }

.img-box3 .box-title:before, .img-box3 .box-title:after {
    content: '';
    display: inline-block;
    height: 100px;
    width: 5px;
    background-color: var(--theme-color);
    border-radius: 5px;
}

@media (max-width: 1199px) {
    .img-box3 .box-title {
        left: 0;
        background-color: var(--white-color);
        padding-bottom: 10px;
    }

        .img-box3 .box-title:before, .img-box3 .box-title:after {
            display: none;
        }
}

@media (max-width: 575px) {
    .img-box3 .box-title {
        font-size: 36px;
        letter-spacing: 0;
    }
}

.schedule-list {
    width: 155px;
}

.schedule-list-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-bottom: 1px solid var(--body-color);
    position: relative;
    margin: 0 auto 50px auto;
    max-width: 550px;
}

    .schedule-list-wrap .box-shape {
        margin-bottom: -10px;
        position: relative;
        z-index: 2;
    }

    .schedule-list-wrap:after {
        content: '';
        height: 1px;
        width: 60px;
        position: absolute;
        bottom: -1px;
        left: calc(50% - 30px);
        background-color: #111;
    }

.schedule-list .box-title {
    font-size: 18px;
    color: var(--white-color);
    margin-bottom: 25px;
}

.schedule-list .box-time {
    color: var(--white-color);
    font-size: 30px;
    margin-bottom: 0;
}

/* Schedule 2 */
.schedule-sec2 {
    background-size: auto;
    background-position: bottom center;
    position: relative;
    z-index: 2;
    text-align: center;
    padding-top: 250px;
    /* Large devices */
}

@media (max-width: 1199px) {
    .schedule-sec2 {
        padding-top: 144px;
    }
}

.schedule-sec2:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 516px;
    background-color: var(--smoke-color);
    z-index: -1;
}

.schedule-sec2 .sec-title {
    font-size: 94px;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 0 240px;
}

.schedule-sec2 .schedule-img {
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    /* Large devices */
}

@media (max-width: 1199px) {
    .schedule-sec2 .schedule-img {
        max-width: 380px;
    }
}

.schedule-sec2 .schedule-list {
    width: auto;
}

.schedule-sec2 .schedule-list-wrap {
    max-width: 100%;
    border: none;
    margin: 0;
    /* Small devices */
}

    .schedule-sec2 .schedule-list-wrap:after {
        display: none;
    }

@media (max-width: 767px) {
    .schedule-sec2 .schedule-list-wrap {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 35px;
    }
}

.schedule-sec2 .schedule-list .box-title,
.schedule-sec2 .schedule-list .box-time {
    color: var(--title-color);
}

.schedule-sec2 .schedule-list .box-title {
    font-size: 24px;
    margin-bottom: 25px;
    border-bottom: 1px solid var(--theme-color);
    padding-bottom: 10px;
    margin-bottom: 20px;
}

.schedule-sec2 .schedule-list .th-btn {
    margin-top: 23px;
}

.schedule-box {
    padding: 0 80px 80px 80px;
    /* Large devices */
    /* Extra small devices */
}

@media (max-width: 1199px) {
    .schedule-box {
        padding: 0 40px 40px 40px;
    }
}

@media (max-width: 375px) {
    .schedule-box {
        padding: 0 20px 34px 20px;
    }
}

/* Medium devices */
@media (max-width: 991px) {
    .schedule-sec2 {
        padding-top: 40px;
    }

        .schedule-sec2:before {
            height: 100%;
        }

        .schedule-sec2 .sec-title {
            font-size: 60px;
            gap: 0 20px;
            /* Extra small devices */
        }
}

@media (max-width: 991px) and (max-width: 575px) {
    .schedule-sec2 .sec-title {
        font-size: 40px;
    }
}

@media (max-width: 991px) {
    .schedule-sec2 .schedule-img {
        display: none;
    }
}

/*------------------- 4.00. Service -------------------*/
/* Service Details --------------------------------*/
.page-title {
    margin-bottom: 20px;
}

.page-img {
    margin-bottom: 40px;
    overflow: hidden;
}

    .page-img img {
        width: 100%;
    }

.page-single {
    margin-bottom: 30px;
}

.widget-banner {
    text-align: center;
    padding: 35px 0;
}

    .widget-banner .box-title {
        font-size: 36px;
        color: var(--theme-color);
    }

    .widget-banner .box-text {
        color: var(--white-color);
    }

    .widget-banner .th-btn {
        margin-top: 60px;
    }

/*------------------- 4.00. gsap -------------------*/
.flipX {
    -webkit-transform: perspective(4000px) rotateY(90deg);
    transform: perspective(4000px) rotateY(90deg);
    scale: 0.6;
    opacity: 0;
}

.img-box7 .flipX {
    -webkit-transform: perspective(-400px) rotateY(90deg);
    transform: perspective(-400px) rotateY(90deg);
    -webkit-transform-origin: right;
    -ms-transform-origin: right;
    transform-origin: right;
}

.flipY {
    -webkit-transform: perspective(200px) rotateX(40deg);
    transform: perspective(200px) rotateX(40deg);
    scale: 0.6;
    opacity: 0;
    -webkit-transform-origin: bottom center;
    -ms-transform-origin: bottom center;
    transform-origin: bottom center;
}

.tx-split-text .split-line {
    overflow: hidden;
}

.title-ani,
.text-ani {
    text-align: inherit !important;
    /* Small devices */
}

    .title-ani > *,
    .text-ani > * {
        text-align: inherit !important;
    }

@media (max-width: 767px) {
    .title-ani.about-feature,
    .text-ani.about-feature {
        text-align: center !important;
    }
}

#smooth-wrapper {
    padding-top: var(--headerHeight);
}

/*=================================
    05. Spacing
==================================*/
/*-- Padding Left And Right --*/
.px-5 {
    padding-right: 5px;
    padding-left: 5px;
}

.px-10 {
    padding-right: 10px;
    padding-left: 10px;
}

.px-15 {
    padding-right: 15px;
    padding-left: 15px;
}

.px-20 {
    padding-right: 20px;
    padding-left: 20px;
}

.px-25 {
    padding-right: 25px;
    padding-left: 25px;
}

.px-30 {
    padding-right: 30px;
    padding-left: 30px;
}

.px-35 {
    padding-right: 35px;
    padding-left: 35px;
}

.px-40 {
    padding-right: 40px;
    padding-left: 40px;
}

.px-45 {
    padding-right: 45px;
    padding-left: 45px;
}

.px-50 {
    padding-right: 50px;
    padding-left: 50px;
}

/*-- Padding Top And Bottom --*/
.py-5 {
    padding-top: 5px;
    padding-bottom: 5px;
}

.py-10 {
    padding-top: 10px;
    padding-bottom: 10px;
}

.py-15 {
    padding-top: 15px;
    padding-bottom: 15px;
}

.py-20 {
    padding-top: 20px;
    padding-bottom: 20px;
}

.py-25 {
    padding-top: 25px;
    padding-bottom: 25px;
}

.py-30 {
    padding-top: 30px;
    padding-bottom: 30px;
}

.py-35 {
    padding-top: 35px;
    padding-bottom: 35px;
}

.py-40 {
    padding-top: 40px;
    padding-bottom: 40px;
}

.py-45 {
    padding-top: 45px;
    padding-bottom: 45px;
}

.py-50 {
    padding-top: 50px;
    padding-bottom: 50px;
}

/*-- Padding Top --*/
.pt-5 {
    padding-top: 5px;
}

.pt-10 {
    padding-top: 10px;
}

.pt-15 {
    padding-top: 15px;
}

.pt-20 {
    padding-top: 20px;
}

.pt-25 {
    padding-top: 25px;
}

.pt-30 {
    padding-top: 30px;
}

.pt-35 {
    padding-top: 35px;
}

.pt-40 {
    padding-top: 40px;
}

.pt-45 {
    padding-top: 45px;
}

.pt-50 {
    padding-top: 50px;
}

/*-- Padding Bottom --*/
.pb-5 {
    padding-bottom: 5px;
}

.pb-10 {
    padding-bottom: 10px;
}

.pb-15 {
    padding-bottom: 15px;
}

.pb-20 {
    padding-bottom: 20px;
}

.pb-25 {
    padding-bottom: 25px;
}

.pb-30 {
    padding-bottom: 30px;
}

.pb-35 {
    padding-bottom: 35px;
}

.pb-40 {
    padding-bottom: 40px;
}

.pb-45 {
    padding-bottom: 45px;
}

.pb-50 {
    padding-bottom: 50px;
}

/*-- Padding Left --*/
.pl-5 {
    padding-left: 5px;
}

.pl-10 {
    padding-left: 10px;
}

.pl-15 {
    padding-left: 15px;
}

.pl-20 {
    padding-left: 20px;
}

.pl-25 {
    padding-left: 25px;
}

.pl-30 {
    padding-left: 30px;
}

.pl-35 {
    padding-left: 35px;
}

.pl-40 {
    padding-left: 40px;
}

.pl-45 {
    padding-left: 45px;
}

.pl-50 {
    padding-left: 50px;
}

/*-- Padding Right --*/
.pr-5 {
    padding-right: 5px;
}

.pr-10 {
    padding-right: 10px;
}

.pr-15 {
    padding-right: 15px;
}

.pr-20 {
    padding-right: 20px;
}

.pr-25 {
    padding-right: 25px;
}

.pr-30 {
    padding-right: 30px;
}

.pr-35 {
    padding-right: 35px;
}

.pr-40 {
    padding-right: 40px;
}

.pr-45 {
    padding-right: 45px;
}

.pr-50 {
    padding-right: 50px;
}

.pb-60 {
    padding-bottom: 60px;
}

/*-- margin Left And Right --*/
.mx-5 {
    margin-right: 5px;
    margin-left: 5px;
}

.mx-10 {
    margin-right: 10px;
    margin-left: 10px;
}

.mx-15 {
    margin-right: 15px;
    margin-left: 15px;
}

.mx-20 {
    margin-right: 20px;
    margin-left: 20px;
}

.mx-25 {
    margin-right: 25px;
    margin-left: 25px;
}

.mx-30 {
    margin-right: 30px;
    margin-left: 30px;
}

.mx-35 {
    margin-right: 35px;
    margin-left: 35px;
}

.mx-40 {
    margin-right: 40px;
    margin-left: 40px;
}

.mx-45 {
    margin-right: 45px;
    margin-left: 45px;
}

.mx-50 {
    margin-right: 50px;
    margin-left: 50px;
}

/*-- margin Top And Bottom --*/
.my-5 {
    margin-top: 5px;
    margin-bottom: 5px;
}

.my-10 {
    margin-top: 10px;
    margin-bottom: 10px;
}

.my-15 {
    margin-top: 15px;
    margin-bottom: 15px;
}

.my-20 {
    margin-top: 20px;
    margin-bottom: 20px;
}

.my-25 {
    margin-top: 25px;
    margin-bottom: 25px;
}

.my-30 {
    margin-top: 30px;
    margin-bottom: 30px;
}

.my-35 {
    margin-top: 35px;
    margin-bottom: 35px;
}

.my-40 {
    margin-top: 40px;
    margin-bottom: 40px;
}

.my-45 {
    margin-top: 45px;
    margin-bottom: 45px;
}

.my-50 {
    margin-top: 50px;
    margin-bottom: 50px;
}

/*-- margin Top --*/
.mt-5 {
    margin-top: 5px;
}

.mt-10 {
    margin-top: 10px;
}

.mt-15 {
    margin-top: 15px;
}

.mt-20 {
    margin-top: 20px;
}

.mt-25 {
    margin-top: 25px;
}

.mt-30 {
    margin-top: 30px;
}

.mt-35 {
    margin-top: 35px;
}

.mt-40 {
    margin-top: 40px;
}

.mt-45 {
    margin-top: 45px;
}

.mt-50 {
    margin-top: 50px;
}

/*-- margin Bottom --*/
.mb-5 {
    margin-bottom: 5px;
}

.mb-10 {
    margin-bottom: 10px;
}

.mb-15 {
    margin-bottom: 15px;
}

.mb-20 {
    margin-bottom: 20px;
}

.mb-25 {
    margin-bottom: 25px;
}

.mb-30 {
    margin-bottom: 30px;
}

.mb-35 {
    margin-bottom: 35px;
}

.mb-40 {
    margin-bottom: 40px;
}

.mb-45 {
    margin-bottom: 45px;
}

.mb-50 {
    margin-bottom: 50px;
}

/*-- margin Left --*/
.ml-5 {
    margin-left: 5px;
}

.ml-10 {
    margin-left: 10px;
}

.ml-15 {
    margin-left: 15px;
}

.ml-20 {
    margin-left: 20px;
}

.ml-25 {
    margin-left: 25px;
}

.ml-30 {
    margin-left: 30px;
}

.ml-35 {
    margin-left: 35px;
}

.ml-40 {
    margin-left: 40px;
}

.ml-45 {
    margin-left: 45px;
}

.ml-50 {
    margin-left: 50px;
}

/*-- margin Right --*/
.mr-5 {
    margin-right: 5px;
}

.mr-10 {
    margin-right: 10px;
}

.mr-15 {
    margin-right: 15px;
}

.mr-20 {
    margin-right: 20px;
}

.mr-25 {
    margin-right: 25px;
}

.mr-30 {
    margin-right: 30px;
}

.mr-35 {
    margin-right: 35px;
}

.mr-40 {
    margin-right: 40px;
}

.mr-45 {
    margin-right: 45px;
}

.mr-50 {
    margin-right: 50px;
}

.mb-60 {
    margin-bottom: 60px;
}

.mb-33 {
    margin-bottom: 33px;
}

.mb-28 {
    margin-bottom: 28px;
}

.mt-n1 {
    margin-top: -.25rem;
}

.mt-n2 {
    margin-top: -.45rem;
}

.mt-n3 {
    margin-top: -0.8rem;
}

.mt-n4 {
    margin-top: -1.5rem;
}

.mt-n5 {
    margin-top: -3rem;
}

.mb-n1 {
    margin-bottom: -.25rem;
}

.mb-n2 {
    margin-bottom: -.45rem;
}

.mb-n3 {
    margin-bottom: -0.8rem;
}

.mb-n4 {
    margin-bottom: -1.5rem;
}

.mb-n5 {
    margin-bottom: -3rem;
}

.space,
.space-top {
    padding-top: var(--section-space);
}

.space,
.space-bottom {
    padding-bottom: var(--section-space);
}

.space-extra,
.space-extra-top {
    padding-top: calc(var(--section-space) - 30px);
}

.space-extra,
.space-extra-bottom {
    padding-bottom: calc(var(--section-space) - 30px);
}

.space-extra2,
.space-extra2-top {
    padding-top: calc(var(--section-space) - 40px);
}

.space-extra2,
.space-extra2-bottom {
    padding-bottom: calc(var(--section-space) - 40px);
}

/* Medium devices */
@media (max-width: 991px) {
    .space,
    .space-top {
        padding-top: var(--section-space-mobile);
    }

    .space,
    .space-bottom {
        padding-bottom: var(--section-space-mobile);
    }

    .space-extra,
    .space-extra-top {
        padding-top: calc(var(--section-space-mobile) - 30px);
    }

    .space-extra,
    .space-extra-bottom {
        padding-bottom: calc(var(--section-space-mobile) - 30px);
    }

    .space-top-md-none {
        padding-top: 0;
    }

    .space-extra2,
    .space-extra2-top {
        padding-top: 70px;
    }

    .space-extra2,
    .space-extra2-bottom {
        padding-bottom: 70px;
    }
}

/* =====================================================================
   Beverage / Wine list (_BeverageCategory partial on Wine.cshtml).
   Luxury classic look: ink text + gold accents, elegant category rules,
   dotted price leaders, dual price chips. Self-contained .bev-* namespace.
   Fully responsive (991 / 575 / 400).
   ===================================================================== */
.bev-wrap {
    --bev-gold: #b8974f;
    --bev-ink: #1f1f1f;
}

.bev-section {
    margin-top: 46px;
}

.bev-cat-head {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin-bottom: 26px;
}

.bev-cat-rule {
    flex: 1 1 auto;
    max-width: 180px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(184, 151, 79, .7), transparent);
}

.bev-cat-title {
    margin: 0;
    flex: 0 0 auto;
    font-size: 28px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--bev-gold);
    font-weight: 600;
    white-space: nowrap;
}

.bev-row {
    --bs-gutter-x: 56px;
}

.bev-item {
    padding: 14px 0;
    border-bottom: 1px dashed rgba(0, 0, 0, .08);
}

.bev-item:last-child {
    border-bottom: none;
}

.bev-item-top {
    display: flex;
    align-items: flex-end;
    gap: 8px;
}

.bev-name {
    margin: 0;
    font-size: 19px;
    line-height: 1.3;
    color: var(--bev-ink);
    font-weight: 600;
    flex: 0 1 auto;
}

.bev-alc {
    display: inline-block;
    margin-left: 8px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .5px;
    color: #7a5a24;
    background: linear-gradient(135deg, #f6ecd4, #e7d3a3);
    border: 1px solid rgba(184, 151, 79, .5);
    border-radius: 999px;
    padding: 1px 8px;
    vertical-align: middle;
    white-space: nowrap;
}

.bev-leader {
    flex: 1 1 auto;
    min-width: 18px;
    height: 0;
    transform: translateY(-6px);
    border-bottom: 1px dotted rgba(184, 151, 79, .6);
}

.bev-prices {
    flex: 0 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px;
}

.bev-price {
    display: inline-flex;
    align-items: baseline;
    gap: 5px;
    white-space: nowrap;
}

.bev-price + .bev-price {
    padding-left: 6px;
    border-left: 1px solid rgba(0, 0, 0, .12);
}

.bev-price-size {
    font-size: 11px;
    color: #9a9a9a;
    text-transform: lowercase;
}

.bev-price-amt {
    font-size: 15px;
    font-weight: 700;
    color: var(--bev-gold);
}

.bev-meta {
    margin-top: 4px;
    font-size: 13px;
    color: #6a6a6a;
    letter-spacing: .2px;
}

.bev-grapes {
    font-style: italic;
    color: #8a7a52;
}

.bev-notes {
    margin: 4px 0 0;
    font-size: 13px;
    line-height: 1.55;
    color: var(--body-color, #5c6574);
    font-style: italic;
}

@media (max-width: 991px) {
    .bev-row {
        --bs-gutter-x: 24px;
    }

    .bev-cat-title {
        font-size: 24px;
        letter-spacing: 2px;
    }
}

@media (max-width: 575px) {
    .bev-section {
        margin-top: 34px;
    }

    .bev-cat-rule {
        max-width: 60px;
    }

    .bev-cat-title {
        font-size: 20px;
    }

    .bev-name {
        font-size: 17px;
    }

    .bev-price-amt {
        font-size: 14px;
    }

    .bev-item-top {
        flex-wrap: wrap;
    }

    .bev-leader {
        display: none;
    }

    .bev-prices {
        width: 100%;
        justify-content: flex-start;
        margin-top: 2px;
    }
}

@media (max-width: 400px) {
    .bev-cat-title {
        font-size: 18px;
        letter-spacing: 1px;
    }
}

/* =====================================================================
   Testimonial section v3 (_TestimonialsSection.cshtml, 2026-07-09).
   LIGHT theme matching the home page (bg-smoke section, standard
   sub-title3/sec-title header, warm white cards with the site's orange
   --theme-color accents). Live Google rating pill + swiper review cards
   (avatar / amber stars / clamped text / source icon). .tst-* namespace.
   Responsive 991 / 575 / 360.
   ===================================================================== */
.tst-sec {
    --tst-accent: var(--theme-color, #E8A03A);
    padding: 100px 0;
    position: relative;
}

.tst-head { margin-bottom: 14px; }
.tst-title { margin-bottom: 22px; }

/* badge row: Google pill + TripAdvisor pill/widget side by side */
.tst-badges {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
}

/* TripAdvisor pill (always visible; links to the TA reviews page) */
.tst-tabadge {
    display: inline-flex; align-items: center; gap: 10px;
    background: #fff;
    border: 1px solid rgba(0, 170, 108, .35);
    border-radius: 999px; padding: 10px 20px;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(31, 31, 31, .08);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.tst-tabadge:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(31, 31, 31, .13);
    border-color: #00aa6c;
}
.tst-talogo {
    width: 30px; height: 30px; border-radius: 50%;
    background: #00aa6c;
    display: inline-flex; align-items: center; justify-content: center;
    color: #fff; font-size: 12px; font-weight: 800; letter-spacing: .5px;
}
.tst-taname { font-size: 15px; font-weight: 800; color: var(--title-color, #1F1F1F); }
.tst-tacta { background: #00aa6c; }
.tst-tabadge:hover .tst-tacta { background: var(--title-color, #1F1F1F); }

/* TA's official embed bubble (script-injected). The raw fallback link list is
   hidden — our styled pill covers the no-script case. */
.tst-tawidget .TA_links { display: none; }
.tst-tawidget { display: inline-flex; align-items: center; }
.tst-tawidget iframe, .tst-tawidget img { max-height: 46px; }

/* live Google rating pill — light card matching the theme */
.tst-gbadge {
    display: inline-flex; align-items: center; gap: 12px; flex-wrap: wrap; justify-content: center;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .07);
    border-radius: 999px; padding: 10px 22px;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(31, 31, 31, .08);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.tst-gbadge:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(31, 31, 31, .13);
    border-color: var(--tst-accent);
}
.tst-glogo {
    width: 30px; height: 30px; border-radius: 50%;
    background: #fff; border: 1px solid #eee;
    display: inline-flex; align-items: center; justify-content: center;
}
.tst-glogo i { color: #4285F4; font-size: 15px; }
.tst-grating { font-size: 21px; font-weight: 800; color: var(--title-color, #1F1F1F); }
.tst-gstars i { color: #f5a623; font-size: 13px; margin-right: 1px; }
.tst-gcount { color: var(--body-color, #5C6574); font-size: 13.5px; }
.tst-gcta {
    color: #fff; font-size: 12.5px; font-weight: 700; letter-spacing: .4px;
    background: var(--tst-accent);
    border-radius: 999px; padding: 6px 14px;
    transition: background .25s ease;
}
.tst-gbadge:hover .tst-gcta { background: var(--title-color, #1F1F1F); }
.tst-gcta i { font-size: 10px; }

/* review card — warm white, orange accents */
.tst-slider { padding: 14px 6px 20px; }

.tst-card {
    position: relative;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .05);
    border-radius: 20px;
    padding: 26px 24px 20px;
    height: 100%;
    display: flex; flex-direction: column;
    box-shadow: 0 10px 26px rgba(31, 31, 31, .07);
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.tst-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(31, 31, 31, .13);
    border-color: rgba(232, 160, 58, .45);
}

/* top accent hairline in theme orange */
.tst-card::before {
    content: '';
    position: absolute;
    top: 0; left: 24px; right: 24px; height: 3px;
    border-radius: 0 0 6px 6px;
    background: linear-gradient(90deg, transparent, var(--tst-accent), transparent);
    opacity: .8;
}

.tst-quote {
    position: absolute; top: 18px; right: 20px;
    width: 40px; height: 40px; border-radius: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--tst-accent);
    color: #fff; font-size: 15px;
    box-shadow: 0 6px 14px rgba(232, 160, 58, .38);
}

.tst-stars { margin-bottom: 12px; }
.tst-stars i { color: #f5a623; font-size: 14px; margin-right: 2px; }

.tst-text {
    margin: 0 0 18px;
    color: var(--body-color, #5C6574); font-size: 14.5px; line-height: 1.7;
    display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden;
}

.tst-foot {
    margin-top: auto; display: flex; align-items: center; gap: 11px;
    border-top: 1px dashed rgba(0, 0, 0, .09);
    padding-top: 14px;
}

.tst-avatar {
    width: 46px; height: 46px; border-radius: 50%; object-fit: cover; flex: 0 0 auto;
    border: 2px solid #fff;
    box-shadow: 0 3px 10px rgba(31, 31, 31, .16), 0 0 0 1px rgba(232, 160, 58, .35);
}
.tst-avatar-init {
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--tst-accent);
    color: #fff; font-weight: 800; font-size: 17px;
}

.tst-who { min-width: 0; display: flex; flex-direction: column; }
.tst-name { font-weight: 700; font-size: 14.5px; color: var(--title-color, #1F1F1F); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tst-meta { font-size: 11.5px; color: #9aa0a8; }

.tst-src {
    margin-left: auto; width: 32px; height: 32px; border-radius: 50%; flex: 0 0 auto;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 15px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .12);
}
.tst-src-google { background: #fff; border: 1px solid #ececec; }
.tst-src-google i { color: #4285F4; }
.tst-src-trip { background: #00aa6c; }
.tst-src-trip i { color: #fff; }
.tst-src-ta-txt { color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .4px; }
.tst-src-manual { background: var(--tst-accent); }
.tst-src-manual i { color: #fff; font-size: 13px; }

/* ---- responsive ---- */
@media (max-width: 991px) {
    .tst-sec { padding: 80px 0; }
}

@media (max-width: 575px) {
    .tst-sec { padding: 60px 0; }
    .tst-head { margin-bottom: 8px; }
    .tst-gbadge { padding: 8px 14px; gap: 8px; }
    .tst-grating { font-size: 18px; }
    .tst-gcount { font-size: 12px; }
    .tst-card { padding: 22px 18px 16px; border-radius: 16px; }
    .tst-text { font-size: 13.5px; -webkit-line-clamp: 6; }
}

@media (max-width: 360px) {
    .tst-gcta { display: none; }
}

/*# sourceMappingURL=style.css.map */

/* Beverage item photo (admin-linked via the Food/Wine image picker, 2026-07-10) */
.bev-item-haspic { display: flex; gap: 14px; align-items: flex-start; }
.bev-pic {
    flex: 0 0 auto; width: 64px; height: 64px; border-radius: 12px; overflow: hidden;
    border: 2px solid rgba(201, 164, 76, .55);
    box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
    background: #1c1c1c;
}
.bev-pic img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bev-item-haspic > .bev-item-top, .bev-item-haspic > .bev-meta, .bev-item-haspic > .bev-notes { min-width: 0; }
.bev-item-haspic { flex-wrap: wrap; }
.bev-item-haspic > .bev-pic + .bev-item-top { flex: 1 1 0; }
.bev-item-haspic > .bev-meta, .bev-item-haspic > .bev-notes { flex-basis: 100%; }
@media (max-width: 575.98px) { .bev-pic { width: 54px; height: 54px; } }

/* ==========================================================================
   Home Hero (redesign) — immersive rotating food photography, ink + orange.
   Self-contained .rvhero-* namespace; does not touch the theme .hero-1 rules.
   ========================================================================== */
.rvhero {
    --rvh-gold: var(--theme-color, #FA8507);
    position: relative;
    z-index: 2;
    min-height: 100vh;
    display: flex;
    align-items: center;
    overflow-x: hidden;
    background: radial-gradient(125% 125% at 18% 0%, #1a140c 0%, #0c0a08 46%, #050403 100%);
}

/* warm decorative glow behind the floating dishes */
.rvhero-glow {
    position: absolute;
    top: 50%;
    right: 4%;
    width: 640px;
    height: 640px;
    max-width: 60vw;
    transform: translateY(-50%);
    background: radial-gradient(circle, rgba(250, 133, 7, .24) 0%, rgba(250, 133, 7, 0) 66%);
    z-index: 1;
    pointer-events: none;
}

/* ---- Layout ---- */
.rvhero .container {
    position: relative;
    z-index: 3;
    width: 100%;
}

.rvhero-grid {
    display: flex;
    align-items: center;
    gap: 48px;
}

.rvhero-content {
    flex: 1 1 46%;
    max-width: 600px;
    padding: 130px 0;
}

.rvhero-content > * {
    opacity: 0;
    transform: translateY(26px);
    animation: rvhUp .9s cubic-bezier(.2, .7, .2, 1) forwards;
}

.rvhero-content > *:nth-child(1) { animation-delay: .15s; }
.rvhero-content > *:nth-child(2) { animation-delay: .30s; }
.rvhero-content > *:nth-child(3) { animation-delay: .45s; }
.rvhero-content > *:nth-child(4) { animation-delay: .60s; }
.rvhero-content > *:nth-child(5) { animation-delay: .75s; }

@keyframes rvhUp {
    to { opacity: 1; transform: none; }
}

.rvhero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    font-family: var(--style-font, cursive);
    font-size: 26px;
    line-height: 1;
    color: var(--rvh-gold);
    margin-bottom: 20px;
}

.rvhero-eyebrow-line {
    width: 46px;
    height: 2px;
    background: var(--rvh-gold);
    display: inline-block;
}

.rvhero-title {
    color: #fff;
    font-size: 118px;
    line-height: .95;
    letter-spacing: .01em;
    text-transform: uppercase;
    margin: 0 0 22px;
    text-shadow: 0 6px 34px rgba(0, 0, 0, .5);
}

    .rvhero-title span {
        color: var(--rvh-gold);
        display: block;
    }

.rvhero-lead {
    color: rgba(255, 255, 255, .84);
    font-size: 18px;
    line-height: 1.6;
    margin: 0 0 34px;
    max-width: 500px;
}

/* ---- Actions ---- */
.rvhero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 40px;
}

.rvhero-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 16px 34px;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1;
    border: 2px solid transparent;
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease, border-color .25s ease;
}

    .rvhero-btn i { font-size: 17px; }

.rvhero-btn-primary {
    background: linear-gradient(135deg, var(--rvh-gold), #ffb44d);
    color: #201400;
    box-shadow: 0 14px 34px -12px rgba(250, 133, 7, .8);
}

    .rvhero-btn-primary:hover {
        color: #201400;
        transform: translateY(-3px);
        box-shadow: 0 20px 40px -12px rgba(250, 133, 7, .9);
    }

.rvhero-btn-ghost {
    background: rgba(255, 255, 255, .06);
    border-color: rgba(255, 255, 255, .5);
    color: #fff;
    backdrop-filter: blur(4px);
}

    .rvhero-btn-ghost:hover {
        background: #fff;
        border-color: #fff;
        color: #1a1a1a;
        transform: translateY(-3px);
    }

/* ---- Fact chips ---- */
.rvhero-facts {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 12px 26px;
    margin: 0;
    padding: 26px 0 0;
    border-top: 1px solid rgba(255, 255, 255, .14);
}

.rvhero-fact {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    font-size: 14.5px;
    font-weight: 500;
    color: rgba(255, 255, 255, .82);
}

    .rvhero-fact i { color: var(--rvh-gold); font-size: 15px; }

.rvhero-fact-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
}

.rvhero-fact.is-open {
    color: #8df3ab;
}

    .rvhero-fact.is-open .rvhero-fact-dot {
        background: #38d36b;
        box-shadow: 0 0 0 4px rgba(56, 211, 107, .18);
        animation: rvhPulse 1.8s ease-in-out infinite;
    }

.rvhero-fact.is-closed {
    color: #ffb0b0;
}

    .rvhero-fact.is-closed .rvhero-fact-dot {
        background: #ff7a7a;
        box-shadow: 0 0 0 4px rgba(255, 122, 122, .18);
    }

@keyframes rvhPulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(56, 211, 107, .5); }
    50% { box-shadow: 0 0 0 7px rgba(56, 211, 107, 0); }
}

/* ---- Vertical social ---- */
.rvhero-social {
    position: absolute;
    right: 40px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
}

    .rvhero-social::before,
    .rvhero-social::after {
        content: "";
        width: 1px;
        height: 60px;
        background: rgba(255, 255, 255, .25);
    }

    .rvhero-social a {
        color: #fff;
        font-size: 15px;
        width: 38px;
        height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border: 1px solid rgba(255, 255, 255, .28);
        border-radius: 50%;
        transition: all .25s ease;
    }

        .rvhero-social a:hover {
            background: var(--rvh-gold);
            border-color: var(--rvh-gold);
            color: #201400;
            transform: translateY(-3px);
        }

/* ---- Scroll cue ---- */
.rvhero-scroll {
    position: absolute;
    left: 50%;
    bottom: 26px;
    transform: translateX(-50%);
    z-index: 4;
}

.rvhero-scroll-mouse {
    display: block;
    width: 26px;
    height: 42px;
    border: 2px solid rgba(255, 255, 255, .55);
    border-radius: 14px;
    position: relative;
}

    .rvhero-scroll-mouse > span {
        position: absolute;
        left: 50%;
        top: 8px;
        width: 4px;
        height: 8px;
        margin-left: -2px;
        border-radius: 2px;
        background: var(--rvh-gold);
        animation: rvhScroll 1.6s ease-in-out infinite;
    }

@keyframes rvhScroll {
    0% { opacity: 0; transform: translateY(0); }
    30% { opacity: 1; }
    100% { opacity: 0; transform: translateY(14px); }
}

/* ---- Floating signature dishes (right half) ---- */
.rvhero-dishes {
    flex: 1 1 56%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    max-width: 640px;
    margin-left: auto;
    padding: 20px 0;
    align-items: start;
}

.rvhero-dish {
    opacity: 0;
    animation: rvhFadeIn .8s ease forwards, rvhFloat 6s ease-in-out infinite;
    will-change: transform;
}

    /* 3-column zig-zag: the middle column (2, 5) floats lower */
    .rvhero-dish:nth-child(1) { animation-delay: .40s, 0s; }
    .rvhero-dish:nth-child(2) { animation-delay: .50s, .9s; margin-top: 42px; }
    .rvhero-dish:nth-child(3) { animation-delay: .60s, .4s; }
    .rvhero-dish:nth-child(4) { animation-delay: .70s, 1.2s; }
    .rvhero-dish:nth-child(5) { animation-delay: .80s, .6s; margin-top: 42px; }
    .rvhero-dish:nth-child(6) { animation-delay: .90s, 1.5s; }

    /* trim the reused signature card for the smaller hero cluster cards */
    .rvhero-dish .sig-card-v2 .rgal-name { font-size: 13px; line-height: 1.25; }
    .rvhero-dish .sig-card-v2 .rgal-price { font-size: 12.5px; }
    .rvhero-dish .sig-card-v2 .rgal-viewmenu { font-size: 9.5px; }
    .rvhero-dish .sig-card-v2 .sig-ribbon { font-size: 9px; padding: 4px 9px; }
    .rvhero-dish .sig-card-v2 .rgal-imginfo { padding: 12px 10px; }

@keyframes rvhFadeIn {
    to { opacity: 1; }
}

@keyframes rvhFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-12px); }
}

@media (prefers-reduced-motion: reduce) {
    .rvhero-dish { animation: rvhFadeIn .6s ease forwards; }
}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1399px) {
    .rvhero-title { font-size: 92px; }
    .rvhero-dishes { gap: 20px; }
}

@media (max-width: 1199px) {
    .rvhero-title { font-size: 78px; }
    .rvhero-content { flex-basis: 48%; }
    .rvhero-social { right: 16px; }
    /* reduce to 4 dishes in 2 columns */
    .rvhero-dishes { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; max-width: 440px; }
    .rvhero-dish:nth-child(n+5) { display: none; }
    .rvhero-dish:nth-child(5), .rvhero-dish:nth-child(3) { margin-top: 0; }
    .rvhero-dish:nth-child(2), .rvhero-dish:nth-child(4) { margin-top: 36px; }
    .rvhero-dish .sig-card-v2 .rgal-name { font-size: 14.5px; }
    .rvhero-dish .sig-card-v2 .rgal-price { font-size: 14px; }
}

@media (max-width: 991px) {
    .rvhero { min-height: 640px; }
    .rvhero-grid { gap: 30px; }
    .rvhero-title { font-size: 66px; }
    .rvhero-content { padding: 118px 0; flex-basis: 52%; }
    /* reduce to 2 dishes */
    .rvhero-dish:nth-child(n+3) { display: none; }
    .rvhero-dish:nth-child(2) { margin-top: 34px; }
    .rvhero-social {
        right: auto;
        left: 20px;
        top: auto;
        bottom: 22px;
        transform: none;
        flex-direction: row;
    }
        .rvhero-social::before,
        .rvhero-social::after { display: none; }
    .rvhero-scroll { display: none; }
}

@media (max-width: 767px) {
    .rvhero { min-height: 0; text-align: center; }
    .rvhero-grid { flex-direction: column; gap: 8px; }
    .rvhero-content {
        max-width: 100%;
        padding: 120px 0 20px;
        margin: 0 auto;
    }
    .rvhero-eyebrow { justify-content: center; font-size: 22px; }
    .rvhero-title { font-size: 60px; }
        .rvhero-title span { display: inline; }
    .rvhero-lead { margin-left: auto; margin-right: auto; }
    .rvhero-actions { justify-content: center; }
    .rvhero-facts { justify-content: center; }
    .rvhero-social { left: 50%; transform: translateX(-50%); }
    /* dishes drop below the text — 2 across, no masonry offset */
    .rvhero-dishes {
        flex: 1 1 auto;
        width: 100%;
        max-width: 460px;
        margin: 0 auto;
        padding: 6px 0 90px;
        gap: 16px;
    }
    .rvhero-dish { animation: rvhFadeIn .7s ease forwards; }
    .rvhero-dish:nth-child(2) { margin-top: 0; }
    .rvhero-glow { right: 50%; transform: translate(50%, -50%); top: 60%; }
}

@media (max-width: 480px) {
    .rvhero-title { font-size: 46px; }
    .rvhero-eyebrow { font-size: 20px; }
    .rvhero-lead { font-size: 16px; }
    .rvhero-btn { padding: 14px 26px; font-size: 15px; }
    .rvhero-content { padding: 104px 0 16px; }
    .rvhero-dishes { gap: 12px; }
}

@media (max-width: 360px) {
    .rvhero-title { font-size: 40px; }
    .rvhero-actions { flex-direction: column; }
    .rvhero-btn { width: 100%; justify-content: center; }
}

/* ==========================================================================
   Schedule Area (home opening hours) — live DB hours, ink + gold/orange.
   Self-contained .sched-* namespace so it never touches .schedule-sec* rules.
   ========================================================================== */
.sched-area {
    --sched-ink: #14110d;
    --sched-ink-2: #1f1b15;
    --sched-gold: var(--theme-color, #FA8507);
    --sched-line: rgba(255, 255, 255, .10);
    --sched-muted: rgba(255, 255, 255, .58);
}

.sched-shell {
    position: relative;
}

.sched-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    align-items: stretch;
    border-radius: 26px;
    overflow: hidden;
    box-shadow: 0 30px 70px -30px rgba(0, 0, 0, .55);
    background: var(--sched-ink);
}

/* ---- Hero image panel (full-bleed photo + overlay) ---- */
.sched-hero {
    position: relative;
    padding: 40px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 480px;
    background-color: var(--sched-ink);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
}

    .sched-hero::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(10, 8, 6, .35) 0%, rgba(10, 8, 6, .55) 42%, rgba(10, 8, 6, .92) 100%);
        z-index: 1;
    }

.sched-hero-badge {
    position: absolute;
    top: 26px;
    left: 26px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 14px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 700;
    backdrop-filter: blur(4px);
}

    .sched-hero-badge.is-open { color: #7dfaa5; background: rgba(56, 211, 107, .18); }
    .sched-hero-badge.is-open .sched-dot { background: #38d36b; animation: schedPulse 1.8s ease-in-out infinite; }
    .sched-hero-badge.is-closed { color: #ffb0b0; background: rgba(255, 90, 90, .2); }
    .sched-hero-badge.is-closed .sched-dot { background: #ff7a7a; }

.sched-hero-body {
    position: relative;
    z-index: 2;
}

.sched-hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 700;
    color: var(--sched-gold);
    margin-bottom: 10px;
}

    .sched-hero-eyebrow i { font-size: 15px; }

.sched-hero-title {
    color: #fff;
    font-size: 40px;
    line-height: 1.1;
    margin: 0 0 12px;
    text-shadow: 0 2px 18px rgba(0, 0, 0, .45);
}

.sched-hero-note {
    color: rgba(255, 255, 255, .82);
    font-size: 15px;
    line-height: 1.55;
    margin: 0;
    max-width: 440px;
}

/* ---- Hours card ---- */
.sched-card {
    position: relative;
    padding: 44px 44px 40px;
    background: linear-gradient(180deg, var(--sched-ink-2) 0%, var(--sched-ink) 100%);
    border-left: 1px solid var(--sched-line);
}

    .sched-card::before {
        content: "";
        position: absolute;
        inset: 0 0 auto 0;
        height: 4px;
        background: linear-gradient(90deg, var(--sched-gold), transparent 70%);
    }

.sched-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 22px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--sched-line);
}

.sched-title {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    font-size: 22px;
    line-height: 1.15;
    margin: 0;
}

    .sched-title i { color: var(--sched-gold); font-size: 19px; }

.sched-today-chip {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    color: var(--sched-gold);
    background: rgba(250, 133, 7, .12);
    border: 1px solid rgba(250, 133, 7, .35);
    padding: 5px 12px;
    border-radius: 999px;
}

.sched-status {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 7px 16px;
    border-radius: 999px;
    font-size: 13.5px;
    font-weight: 700;
    letter-spacing: .02em;
}

    .sched-status .sched-dot {
        width: 9px;
        height: 9px;
        border-radius: 50%;
        box-shadow: 0 0 0 4px rgba(255, 255, 255, .06);
    }

    .sched-status.is-open {
        color: #38d36b;
        background: rgba(56, 211, 107, .12);
    }

        .sched-status.is-open .sched-dot {
            background: #38d36b;
            animation: schedPulse 1.8s ease-in-out infinite;
        }

    .sched-status.is-closed {
        color: #ff7a7a;
        background: rgba(255, 122, 122, .12);
    }

        .sched-status.is-closed .sched-dot {
            background: #ff7a7a;
        }

@keyframes schedPulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(56, 211, 107, .5); }
    50% { box-shadow: 0 0 0 7px rgba(56, 211, 107, 0); }
}

/* ---- 7-day list ---- */
.sched-days {
    list-style: none;
    margin: 0 0 26px;
    padding: 0;
}

.sched-day {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 13px 16px;
    border-radius: 12px;
    border: 1px solid transparent;
    transition: background .2s ease, border-color .2s ease;
}

    .sched-day + .sched-day {
        border-top: 1px solid var(--sched-line);
    }

    .sched-day.is-today {
        background: linear-gradient(90deg, rgba(250, 133, 7, .16), rgba(250, 133, 7, .04));
        border-color: rgba(250, 133, 7, .45);
        border-top-color: rgba(250, 133, 7, .45);
    }

    .sched-day.is-off .sched-range {
        color: #ff7a7a;
    }

.sched-dayname {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
}

.sched-day.is-off .sched-dayname {
    color: var(--sched-muted);
}

.sched-todaytag {
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--sched-ink);
    background: var(--sched-gold);
    padding: 3px 8px;
    border-radius: 999px;
}

.sched-dayval {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: right;
    gap: 3px;
}

.sched-range {
    font-size: 15.5px;
    font-weight: 700;
    color: #f4e9d8;
    white-space: nowrap;
}

.sched-note {
    font-size: 11.5px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--sched-gold);
}

/* ---- CTA ---- */
.sched-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    padding-top: 22px;
    border-top: 1px solid var(--sched-line);
}

.sched-cta-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    font-size: 14px;
    color: var(--sched-muted);
}

    .sched-cta-label i {
        color: var(--sched-gold);
    }

.sched-phone {
    flex-shrink: 0;
}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1199px) {
    .sched-grid {
        grid-template-columns: 1fr;
    }

    .sched-hero {
        padding: 34px;
        min-height: 340px;
    }

    .sched-card {
        border-left: 0;
        border-top: 1px solid var(--sched-line);
    }
}

@media (max-width: 767px) {
    .sched-grid {
        border-radius: 20px;
    }

    .sched-card {
        padding: 30px 22px 28px;
    }

    .sched-hero {
        padding: 28px 22px;
        min-height: 300px;
    }

    .sched-hero-title {
        font-size: 32px;
    }
}

@media (max-width: 575px) {
    .sched-day {
        padding: 12px 12px;
    }

    .sched-dayname {
        font-size: 15px;
    }

    .sched-range {
        font-size: 14.5px;
    }

    .sched-cta {
        justify-content: center;
        text-align: center;
    }

    .sched-phone {
        width: 100%;
        text-align: center;
    }
}

@media (max-width: 400px) {
    .sched-card {
        padding: 26px 14px 24px;
    }

    .sched-day {
        gap: 10px;
    }

    .sched-hero-title {
        font-size: 27px;
    }
}

/* ==========================================================================
   Chef Details — "Team Area" profile (photo + bio) redesign. Ink + orange.
   Self-contained .chef-* namespace.
   ========================================================================== */
.chef-profile {
    --chef-gold: var(--theme-color, #FA8507);
}

/* ---- Photo side ---- */
.chef-photo {
    position: relative;
    padding: 20px;
    max-width: 560px;
}

.chef-photo-panel {
    position: absolute;
    inset: 20px;
    border-radius: 26px;
    background: radial-gradient(120% 120% at 20% 0%, #241b12 0%, #14100b 55%, #0c0a08 100%);
    box-shadow: 0 30px 70px -30px rgba(0, 0, 0, .55);
    z-index: 0;
}

.chef-photo-glow {
    position: absolute;
    left: -6%;
    bottom: 4%;
    width: 60%;
    height: 60%;
    background: radial-gradient(circle, rgba(250, 133, 7, .3) 0%, rgba(250, 133, 7, 0) 68%);
    z-index: 0;
    pointer-events: none;
}

.chef-photo::before {
    /* gold corner frame */
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 90px;
    height: 90px;
    border-top: 3px solid var(--chef-gold);
    border-left: 3px solid var(--chef-gold);
    border-top-left-radius: 20px;
    z-index: 2;
}

.chef-photo::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 90px;
    height: 90px;
    border-bottom: 3px solid var(--chef-gold);
    border-right: 3px solid var(--chef-gold);
    border-bottom-right-radius: 20px;
    z-index: 2;
}

.chef-photo-inner {
    position: relative;
    z-index: 1;
    text-align: center;
}

    .chef-photo-inner img {
        position: relative;
        max-width: 100%;
        height: auto;
        display: inline-block;
        filter: drop-shadow(0 26px 40px rgba(0, 0, 0, .5));
    }

.chef-photo-badge {
    position: absolute;
    right: 6px;
    top: 40px;
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    width: 104px;
    height: 104px;
    border-radius: 50%;
    text-align: center;
    color: #201400;
    background: linear-gradient(135deg, #ffd488 0%, var(--chef-gold) 62%, #d97a05 100%);
    box-shadow: 0 14px 30px -8px rgba(250, 133, 7, .7);
    font-weight: 800;
    line-height: 1.1;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .04em;
    padding: 8px;
    animation: chefFloat 5s ease-in-out infinite;
}

    .chef-photo-badge i { font-size: 20px; }

@keyframes chefFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

/* ---- Bio side ---- */
.chef-bio { max-width: 620px; }

.chef-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    font-family: var(--style-font, cursive);
    font-size: 24px;
    color: var(--chef-gold);
    line-height: 1;
    margin-bottom: 12px;
}

.chef-eyebrow-line {
    width: 40px;
    height: 2px;
    background: var(--chef-gold);
    display: inline-block;
}

.chef-name {
    margin: 0 0 18px;
    position: relative;
    padding-bottom: 20px;
}

    .chef-name::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 70px;
        height: 3px;
        border-radius: 2px;
        background: var(--chef-gold);
    }

.chef-story {
    position: relative;
    margin: 4px 0 4px;
    padding: 6px 8px 6px 30px;
}

    .chef-story::before {
        content: "";
        position: absolute;
        left: 0;
        top: 6px;
        bottom: 6px;
        width: 3px;
        border-radius: 3px;
        background: linear-gradient(180deg, var(--chef-gold), rgba(250, 133, 7, .15));
    }

.chef-quote {
    position: absolute;
    top: 2px;
    right: 4px;
    font-size: 46px;
    line-height: 1;
    color: rgba(250, 133, 7, .14);
    pointer-events: none;
}

.chef-story p {
    color: var(--body-color, #5C6574);
    font-size: 16px;
    line-height: 1.85;
    margin: 0 0 14px;
    white-space: normal;
}

    .chef-story p:last-child { margin-bottom: 0; }

.chef-lead {
    font-size: 18.5px !important;
    line-height: 1.7 !important;
    color: var(--title-color, #1F1F1F) !important;
    font-weight: 500;
}

    .chef-lead::first-letter {
        float: left;
        font-family: var(--title-font, serif);
        font-size: 58px;
        line-height: .82;
        font-weight: 700;
        color: var(--chef-gold);
        margin: 6px 12px 0 0;
    }

/* ---- Contact rows ---- */
.chef-contact {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin: 26px 0 30px;
}

.chef-contact-row {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px 12px 12px;
    border-radius: 14px;
    border: 1px solid rgba(0, 0, 0, .08);
    background: #fff;
    box-shadow: 0 8px 24px -14px rgba(0, 0, 0, .3);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

    .chef-contact-row:hover {
        transform: translateY(-3px);
        border-color: rgba(250, 133, 7, .4);
        box-shadow: 0 16px 30px -16px rgba(250, 133, 7, .5);
    }

.chef-ic {
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: var(--chef-gold);
    background: rgba(250, 133, 7, .1);
}

.chef-contact-txt {
    display: flex;
    flex-direction: column;
    font-weight: 700;
    color: var(--title-color, #1F1F1F);
    font-size: 16px;
    line-height: 1.2;
}

    .chef-contact-txt small {
        font-weight: 500;
        font-size: 12px;
        letter-spacing: .04em;
        text-transform: uppercase;
        color: var(--chef-gold);
        margin-bottom: 3px;
    }

/* ---- Follow / social ---- */
.chef-follow {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
    padding-top: 24px;
    border-top: 1px solid rgba(0, 0, 0, .08);
}

.chef-follow-label {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    font-size: 13px;
    color: var(--title-color, #1F1F1F);
}

.chef-social {
    display: inline-flex;
    gap: 10px;
}

    .chef-social a {
        width: 42px;
        height: 42px;
        border-radius: 50%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 15px;
        color: var(--title-color, #1F1F1F);
        border: 1px solid rgba(0, 0, 0, .15);
        transition: all .25s ease;
    }

        .chef-social a:hover {
            background: var(--chef-gold);
            border-color: var(--chef-gold);
            color: #201400;
            transform: translateY(-3px);
        }

/* ---- "Meet Our Chef" CTA (home teaser) ---- */
.chef-morebtn {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-left: auto;
    padding: 12px 26px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 15px;
    color: #201400;
    background: linear-gradient(135deg, #ffd488 0%, var(--chef-gold) 62%, #d97a05 100%);
    box-shadow: 0 12px 28px -12px rgba(250, 133, 7, .8);
    transition: transform .25s ease, box-shadow .25s ease, color .25s ease;
}

    .chef-morebtn:hover {
        color: #201400;
        transform: translateY(-3px);
        box-shadow: 0 18px 34px -12px rgba(250, 133, 7, .9);
    }

    .chef-morebtn i { font-size: 13px; transition: transform .25s ease; }
    .chef-morebtn:hover i { transform: translateX(4px); }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1199px) {
    .chef-name { font-size: 40px; }
}

@media (max-width: 991px) {
    .chef-photo { margin: 0 auto; }
    .chef-bio { max-width: 100%; }
}

@media (max-width: 575px) {
    .chef-photo { padding: 14px; }
        .chef-photo::before, .chef-photo::after { width: 64px; height: 64px; }
    .chef-photo-badge { width: 88px; height: 88px; font-size: 12px; top: 24px; }
        .chef-photo-badge i { font-size: 17px; }
    .chef-eyebrow { font-size: 21px; }
    .chef-contact-row { width: 100%; }
    .chef-follow { justify-content: center; }
    .chef-morebtn { margin-left: 0; width: 100%; justify-content: center; }
}

/* =====================================================================
   Wine / Beverage page (Views/Home/Wine.cshtml + _BeverageCategory).
   Light, elegant CARD-GRID design with a category filter bar.
   Burgundy + gold accents on warm cream. .wl-* namespace, fully responsive.
   ===================================================================== */
.winelux {
    --wl-gold: #b8974f;
    --wl-gold-2: #d8b25f;
    --wl-wine: #7c2e3b;
    --wl-ink: #2a201c;
    --wl-muted: #857567;
    position: relative;
    background: linear-gradient(180deg, #faf6ef 0%, #f4ece0 100%);
}

/* ---- Header ---- */
.wl-header { max-width: 720px; margin: 0 auto 6px; }

.wl-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: var(--style-font, cursive);
    font-size: 26px;
    line-height: 1;
    color: var(--wl-gold);
    margin-bottom: 10px;
}

.wl-title {
    color: var(--wl-ink);
    font-size: 46px;
    line-height: 1.1;
    margin: 0 0 14px;
}

.wl-sub {
    color: var(--wl-muted);
    font-size: 16px;
    line-height: 1.7;
    margin: 0 0 6px;
}

.wl-orn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 8px;
    margin-top: 8px;
    background: radial-gradient(circle, var(--wl-gold) 0 3px, transparent 3.5px) center / 8px 8px no-repeat;
}

    .wl-orn::before,
    .wl-orn::after {
        content: "";
        flex: 1 1 auto;
        height: 1px;
    }

    .wl-orn::before { background: linear-gradient(90deg, transparent, var(--wl-gold)); margin-right: 10px; }
    .wl-orn::after { background: linear-gradient(90deg, var(--wl-gold), transparent); margin-left: 10px; }

/* ---- Filter bar (category + quantity groups) ---- */
.wl-filters {
    display: flex;
    flex-direction: column;
    gap: 14px;
    max-width: 1050px;
    margin: 34px auto 44px;
    padding: 22px 24px;
    background: #fff;
    border: 1px solid rgba(124, 46, 59, .1);
    border-radius: 18px;
    box-shadow: 0 16px 40px -26px rgba(42, 32, 28, .5);
}

.wl-tabgroup {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

    .wl-tabgroup + .wl-tabgroup {
        padding-top: 14px;
        border-top: 1px dashed rgba(42, 32, 28, .1);
    }

.wl-flabel {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-width: 96px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--wl-muted);
}

    .wl-flabel i { color: var(--wl-gold); font-size: 13px; }

/* ---- Filter tabs ---- */
.wl-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    flex: 1 1 auto;
}

.wl-tab {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 20px;
    border-radius: 999px;
    border: 1px solid rgba(124, 46, 59, .16);
    background: #fff;
    color: var(--wl-ink);
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}

    .wl-tab i { font-size: 12px; color: var(--wl-gold); transition: color .2s ease; }

    .wl-tab:hover {
        border-color: var(--wl-gold);
        color: var(--wl-wine);
        transform: translateY(-2px);
    }

    .wl-tab.is-active {
        background: linear-gradient(135deg, var(--wl-wine), #9a3b4a);
        border-color: transparent;
        color: #fff;
        box-shadow: 0 10px 22px -10px rgba(124, 46, 59, .8);
    }

        .wl-tab.is-active i { color: var(--wl-gold-2); }

/* quantity chips get a gold active state to tell the two groups apart */
.wl-tab-qty.is-active {
    background: linear-gradient(135deg, var(--wl-gold-2), var(--wl-gold));
    box-shadow: 0 10px 22px -10px rgba(184, 151, 79, .85);
}

    .wl-tab-qty.is-active i { color: #fff; }

/* empty state */
.wl-noresult {
    text-align: center;
    color: var(--wl-muted);
    font-size: 15px;
    padding: 40px 0 10px;
}

    .wl-noresult i { color: var(--wl-gold); margin-right: 6px; }

/* ---- Category ---- */
.wl-cat { margin-bottom: 20px; }
.wl-cat.wl-anim { animation: wlFade .45s ease both; }

@keyframes wlFade {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: none; }
}

.wl-cat-head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 30px 0 24px;
}

.wl-cat-ic {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 17px;
    background: linear-gradient(135deg, var(--wl-gold-2), var(--wl-gold));
    box-shadow: 0 8px 18px -8px rgba(184, 151, 79, .8);
}

.wl-cat-title {
    margin: 0;
    flex: 0 0 auto;
    font-family: var(--title-font, serif);
    font-size: 27px;
    color: var(--wl-wine);
    font-weight: 600;
    letter-spacing: .3px;
}

.wl-cat-count {
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 700;
    color: var(--wl-gold);
    background: rgba(184, 151, 79, .12);
    border: 1px solid rgba(184, 151, 79, .3);
    border-radius: 999px;
    padding: 3px 10px;
}

.wl-cat-rule {
    flex: 1 1 auto;
    height: 1px;
    background: linear-gradient(90deg, rgba(184, 151, 79, .5), transparent);
}

/* ---- Card ---- */
.wl-card {
    position: relative;
    height: 100%;
    background: #fff;
    border-radius: 16px;
    padding: 22px 22px 20px;
    border: 1px solid rgba(42, 32, 28, .06);
    box-shadow: 0 12px 30px -20px rgba(42, 32, 28, .5);
    overflow: hidden;
    transition: transform .28s ease, box-shadow .28s ease;
}

    .wl-card::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 4px;
        background: linear-gradient(180deg, var(--wl-gold-2), var(--wl-wine));
    }

    .wl-card:hover {
        transform: translateY(-6px);
        box-shadow: 0 24px 44px -22px rgba(42, 32, 28, .55);
    }

.wl-card-head {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.wl-thumb {
    flex: 0 0 auto;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid rgba(184, 151, 79, .55);
    background: linear-gradient(135deg, #f6ecd6, #e7d3a3);
    box-shadow: 0 6px 14px rgba(42, 32, 28, .18);
}

    .wl-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
    .wl-thumb-ph i { color: var(--wl-wine); font-size: 22px; opacity: .85; }

.wl-card-headmeta { flex: 1 1 auto; min-width: 0; }

.wl-name {
    margin: 4px 0 0;
    font-family: var(--title-font, serif);
    font-size: 19px;
    line-height: 1.3;
    color: var(--wl-ink);
    font-weight: 600;
}

.wl-abv {
    display: inline-block;
    margin-top: 7px;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .4px;
    color: #6a4a12;
    background: linear-gradient(135deg, #f6ecd4, #e7d3a3);
    border: 1px solid rgba(184, 151, 79, .5);
    border-radius: 999px;
    padding: 2px 10px;
}

.wl-origin {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin: 14px 0 0;
    font-size: 13px;
    color: var(--wl-muted);
    font-style: italic;
}

    .wl-origin i { color: var(--wl-gold); font-size: 12px; font-style: normal; }

.wl-grapes {
    margin: 8px 0 0;
    font-size: 13px;
    font-weight: 600;
    color: var(--wl-wine);
    letter-spacing: .2px;
}

.wl-notes {
    margin: 8px 0 0;
    font-size: 13.5px;
    line-height: 1.6;
    color: #7a6f63;
    font-style: italic;
}

.wl-foot {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px dashed rgba(42, 32, 28, .12);
}

.wl-price {
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
    padding: 5px 12px;
    border-radius: 10px;
    background: rgba(124, 46, 59, .06);
    border: 1px solid rgba(124, 46, 59, .18);
}

    .wl-price b {
        font-size: 10.5px;
        font-weight: 600;
        color: #9a8248;
        text-transform: lowercase;
        letter-spacing: .3px;
    }

    .wl-price > span {
        font-size: 15px;
        font-weight: 800;
        color: var(--wl-wine);
    }

/* ---- CTA ---- */
.wl-cta { margin-top: 54px; }

.wl-resv-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 34px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 16px;
    color: #fff;
    background: linear-gradient(135deg, var(--wl-wine), #9a3b4a);
    box-shadow: 0 16px 34px -14px rgba(124, 46, 59, .8);
    transition: transform .25s ease, box-shadow .25s ease, color .25s ease;
}

    .wl-resv-btn i { color: var(--wl-gold-2); }
    .wl-resv-btn:hover { color: #fff; transform: translateY(-3px); box-shadow: 0 22px 40px -14px rgba(124, 46, 59, .9); }

.wl-empty { color: var(--wl-muted); }

/* =====================================================================
   Responsive
   ===================================================================== */
@media (max-width: 991px) {
    .wl-title { font-size: 38px; }
    .wl-cat-title { font-size: 24px; }
}

@media (max-width: 767px) {
    .wl-filters { padding: 16px; gap: 12px; }

    .wl-tabgroup {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }

    .wl-flabel { min-width: 0; }

    .wl-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 6px;
        margin: 0;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

        .wl-tab { flex: 0 0 auto; }
}

@media (max-width: 575px) {
    .winelux { }
    .wl-title { font-size: 30px; }
    .wl-eyebrow { font-size: 22px; }
    .wl-sub { font-size: 14.5px; }
    .wl-cat-head { gap: 10px; margin: 24px 0 20px; }
    .wl-cat-ic { width: 38px; height: 38px; font-size: 15px; }
    .wl-cat-title { font-size: 20px; }
    .wl-card { padding: 18px 18px 16px; border-radius: 14px; }
    .wl-name { font-size: 18px; }
}

@media (max-width: 400px) {
    .wl-title { font-size: 26px; }
    .wl-price > span { font-size: 14px; }
}

/* ---- T118: Floating (sticky) filter bar on scroll (mirrors .mf-sticky, Menu page) ---- */
.wl-sticky {
    position: fixed;
    left: 0;
    right: 0;
    top: 86px; /* JS overrides with live header height */
    z-index: 40; /* below .th-header (z-index:41) so header nav dropdowns render above the filter bar */
    padding: 10px 0;
    background: rgba(255, 255, 255, .97);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(36, 26, 23, .07);
    box-shadow: 0 14px 32px -18px rgba(36, 26, 23, .5);
    transform: translateY(-130%);
    opacity: 0;
    transition: transform .35s ease, opacity .3s ease, top .25s ease; /* top: smooths the post-settle recompute (T118 header-overlap fix) */
}

    .wl-sticky.is-shown { transform: none; opacity: 1; }

.wl-sticky-inner {
    max-width: 1050px; /* matches .wl-filters */
    margin: 0 auto;
    padding: 0 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.wl-sticky-row {
    display: flex;
    flex-wrap: nowrap;
    gap: 9px;
    overflow-x: auto;
    padding-bottom: 3px;
    justify-content: flex-start;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

    .wl-sticky-row::-webkit-scrollbar { height: 5px; }
    .wl-sticky-row::-webkit-scrollbar-thumb { background: rgba(36, 26, 23, .2); border-radius: 3px; }

    .wl-sticky-row .wl-tab { flex: 0 0 auto; }

/* compact chips inside the sticky bar (active gradients inherit from .wl-tab.is-active / .wl-tab-qty.is-active) */
.wl-sticky .wl-tab { padding: 5px 14px; font-size: 13px; box-shadow: none; }

@media (max-width: 575px) {
    .wl-sticky { padding: 8px 0; }
    .wl-sticky .wl-tab { padding: 4px 12px; font-size: 12.5px; }
}

/* =====================================================================
   Breadcrumb hero (site-wide) — dark hero look like the home page, with a
   cluster of floating dynamic signature dishes on the right. The .bcx-wrap
   class + the .bcx-dishes cluster are added by assets/js/breadcrumb-dishes.js
   from a template rendered in _Layout. .bcx-* namespace.
   ===================================================================== */
.breadcumb-wrapper.bcx-wrap {
    position: relative;
    background-color: #0c0a08;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    /* medium height band (was too tall with a 2x2 dish stack) */
    padding-top: 74px;
    padding-bottom: 74px;
    min-height: 0;
}

    .breadcumb-wrapper.bcx-wrap::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 0;
        /* T43 (2026-07-18): lightened so the real restaurant banner photo reads behind
           the text — left stays dark enough for the white title. */
        background:
            linear-gradient(90deg, rgba(8, 6, 5, .86) 0%, rgba(8, 6, 5, .68) 40%, rgba(8, 6, 5, .32) 100%),
            linear-gradient(0deg, rgba(8, 6, 5, .55) 0%, rgba(8, 6, 5, .1) 45%);
    }

    /* warm glow behind the dishes */
    .breadcumb-wrapper.bcx-wrap::after {
        content: "";
        position: absolute;
        right: 4%;
        top: 50%;
        width: 460px;
        height: 460px;
        max-width: 50vw;
        transform: translateY(-50%);
        background: radial-gradient(circle, rgba(250, 133, 7, .22) 0%, rgba(250, 133, 7, 0) 66%);
        z-index: 0;
        pointer-events: none;
    }

    .breadcumb-wrapper.bcx-wrap .container {
        position: relative;
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 44px;
    }

    .breadcumb-wrapper.bcx-wrap .breadcumb-content {
        text-align: left;
        flex: 1 1 auto;
        max-width: 620px;
    }

        /* refined eyebrow tag (gold pill + leading rule) instead of the old cursive line */
        .breadcumb-wrapper.bcx-wrap .breadcumb-content::before {
            content: "India Village \00B7 Interlaken";
            display: inline-flex;
            align-items: center;
            gap: 10px;
            color: var(--theme-color, #FA8507);
            font-size: 12px;
            font-weight: 700;
            letter-spacing: 3px;
            text-transform: uppercase;
            line-height: 1;
            margin-bottom: 18px;
            padding: 7px 14px 7px 0;
        }

        .breadcumb-wrapper.bcx-wrap .breadcumb-title {
            color: #fff;
            font-size: clamp(34px, 5vw, 56px);
            line-height: 1.06;
            margin: 0;
            text-shadow: 0 6px 30px rgba(0, 0, 0, .55);
        }

        /* gold accent underline under the title */
        .breadcumb-wrapper.bcx-wrap .breadcumb-title::after {
            content: "";
            display: block;
            width: 74px;
            height: 3px;
            margin-top: 16px;
            border-radius: 3px;
            background: linear-gradient(90deg, var(--theme-color, #FA8507), #ffd488);
        }

    .breadcumb-wrapper.bcx-wrap .breadcumb-menu {
        margin-top: 20px;
        display: inline-flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 6px;
        padding: 8px 16px;
        background: rgba(255, 255, 255, .06);
        border: 1px solid rgba(255, 255, 255, .12);
        border-radius: 40px;
        backdrop-filter: blur(4px);
    }

        .breadcumb-wrapper.bcx-wrap .breadcumb-menu li,
        .breadcumb-wrapper.bcx-wrap .breadcumb-menu li a {
            color: rgba(255, 255, 255, .82);
            font-size: 13.5px;
            font-weight: 500;
        }

        .breadcumb-wrapper.bcx-wrap .breadcumb-menu li::after {
            color: var(--theme-color, #FA8507);
        }

            .breadcumb-wrapper.bcx-wrap .breadcumb-menu li a:hover {
                color: var(--theme-color, #FA8507);
            }

/* ---- floating dishes (single compact row) ---- */
.bcx-dishes {
    flex: 0 0 auto;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    width: auto;
    max-width: min(54%, 540px);
}

.bcx-dish {
    flex: 1 1 0;
    min-width: 0;
    max-width: 128px;
    animation: bcxFloat 6s ease-in-out infinite;
    will-change: transform;
}

    .bcx-dish:nth-child(2) { margin-top: 22px; animation-delay: .8s; }
    .bcx-dish:nth-child(3) { animation-delay: .4s; }
    .bcx-dish:nth-child(4) { margin-top: 22px; animation-delay: 1.2s; }

@keyframes bcxFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-9px); }
}

.bcx-card {
    position: relative;
    border-radius: 14px;
    overflow: hidden;
    aspect-ratio: 4 / 5;
    border: 1px solid rgba(216, 178, 95, .35);
    box-shadow: 0 18px 40px -18px rgba(0, 0, 0, .8);
}

    .bcx-card img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

.bcx-ribbon {
    position: absolute;
    top: 7px;
    left: 7px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #201400;
    background: linear-gradient(135deg, #ffd488, var(--theme-color, #FA8507));
    box-shadow: 0 4px 10px rgba(0, 0, 0, .4);
}

.bcx-cardinfo {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 18px 9px 8px;
    background: linear-gradient(180deg, rgba(12, 9, 6, 0) 0%, rgba(12, 9, 6, .92) 100%);
}

.bcx-cardname {
    display: block;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bcx-cardprice {
    display: block;
    margin-top: 1px;
    color: var(--theme-color, #FA8507);
    font-size: 11px;
    font-weight: 800;
}

/* =====================================================================
   Responsive — hide the dish cluster on tablet/mobile, centre the title
   ===================================================================== */
@media (max-width: 991px) {
    .breadcumb-wrapper.bcx-wrap .container {
        justify-content: center;
    }

    .breadcumb-wrapper.bcx-wrap .breadcumb-content {
        text-align: center;
        max-width: 100%;
    }

        .breadcumb-wrapper.bcx-wrap .breadcumb-title::after {
            margin-left: auto;
            margin-right: auto;
        }

    .bcx-dishes { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    .bcx-dish { animation: none; }
}

/* =====================================================================
   Breadcrumb floating dishes now use the SAME _SignatureDishCard as the
   home hero (.rgal-card): image + Signature ribbon + View Dish overlay +
   add-to-cart FAB + dietary icons + name/price + View Menu link.
   Size them to a compact cluster that fits the breadcrumb band.
   (2026-07-11)
   ===================================================================== */
/* dish cards enlarged 20% (owner 2026-07-12) */
.bcx-wrap .bcx-dishes { max-width: min(70%, 768px); gap: 19px; }
.bcx-wrap .bcx-dish { max-width: 214px; }
.bcx-wrap .bcx-dish .rgal-card,
.bcx-wrap .bcx-dish .sig-card-v2 { width: 100%; margin: 0; }
/* compact photo height inside the breadcrumb (hero cards are taller) */
.bcx-wrap .bcx-dish .rgal-media { height: 259px; border-radius: 16px; }
.bcx-wrap .bcx-dish .rgal-card { background: transparent; box-shadow: 0 22px 46px -22px rgba(0, 0, 0, .85); }
/* keep the View Menu link readable but small in the cluster */
.bcx-wrap .bcx-dish .rgal-viewmenu { font-size: 13px; }
.bcx-wrap .bcx-dish .rgal-name { font-size: 16px; }
.bcx-wrap .bcx-dish .rgal-price { font-size: 16px; }
/* show at most 3 in the cluster on smaller desktops so it never crowds the title */
@media (max-width: 1300px) {
    .bcx-wrap .bcx-dish:nth-child(n+4) { display: none; }
}
@media (max-width: 1140px) {
    .bcx-wrap .bcx-dish:nth-child(n+3) { display: none; }
}

/* =====================================================================
   Menu page filters + signature suggestions (Views/Home/Menu.cshtml).
   Category + Dietary chip filters (orange theme) over the dish grid, and a
   "Chef's Signature Suggestions" band. .mf-* namespace, fully responsive.
   ===================================================================== */
.mfx { --mf-accent: var(--theme-color, #FA8507); --mf-green: #4e9e4e; --mf-ink: #241a17; --mf-muted: #857567; }

/* ---- Signature suggestions band ---- */
.mf-sig {
    margin: 4px auto 50px;
    padding: 40px clamp(16px, 4vw, 48px);
    border-radius: 22px;
    background: radial-gradient(130% 130% at 15% 0%, #241a10 0%, #17120b 55%, #0c0906 100%);
    position: relative;
    overflow: hidden;
}

    .mf-sig::after {
        content: "";
        position: absolute;
        right: -80px;
        top: 50%;
        width: 360px;
        height: 360px;
        transform: translateY(-50%);
        background: radial-gradient(circle, rgba(250, 133, 7, .18) 0%, rgba(250, 133, 7, 0) 68%);
        pointer-events: none;
    }

.mf-sig-head { text-align: center; margin-bottom: 26px; position: relative; z-index: 1; }

.mf-sig-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    font-family: var(--style-font, cursive);
    font-size: 24px;
    color: var(--mf-accent);
    margin-bottom: 6px;
}

.mf-sig-title { color: #fff; font-size: 32px; margin: 0; }
.mf-sig-sub { color: rgba(255, 255, 255, .72); font-size: 15px; margin: 8px 0 0; }
.mf-sig .slider-area { position: relative; z-index: 1; }

/* ---- Filter bar ---- */
.mf-filterbar {
    max-width: 1120px;
    margin: 0 auto 42px;
    padding: 26px 26px 22px;
    background: #fff;
    border: 1px solid rgba(36, 26, 23, .07);
    border-radius: 22px;
    box-shadow: 0 22px 54px -32px rgba(36, 26, 23, .5);
}

.mf-bar-hint {
    text-align: center;
    font-size: 13px;
    color: var(--mf-muted);
    margin-bottom: 20px;
}

    .mf-bar-hint i { color: var(--mf-accent); margin-right: 6px; }

/* Category icon tabs */
.mf-cats {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.mf-cat {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    padding: 7px 20px 7px 7px;
    border-radius: 999px;
    border: 1px solid rgba(36, 26, 23, .1);
    background: #fff;
    color: var(--mf-ink);
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 6px 16px -12px rgba(36, 26, 23, .5);
    transition: transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
}

.mf-cat-ic {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    color: var(--mf-accent);
    background: linear-gradient(135deg, #fff1de, #ffe1bd);
    transition: background .22s ease, color .22s ease, transform .22s ease;
}

.mf-cat:hover {
    transform: translateY(-3px);
    border-color: rgba(250, 133, 7, .5);
    box-shadow: 0 16px 28px -16px rgba(250, 133, 7, .6);
}

    .mf-cat:hover .mf-cat-ic { transform: scale(1.06); }

.mf-cat.is-active {
    background: linear-gradient(135deg, var(--mf-accent), #ffb44d);
    border-color: transparent;
    color: #241400;
    box-shadow: 0 16px 30px -12px rgba(250, 133, 7, .85);
}

    .mf-cat.is-active .mf-cat-ic {
        background: rgba(255, 255, 255, .3);
        color: #241400;
    }

/* Dietary row */
.mf-diets-row {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px dashed rgba(36, 26, 23, .1);
}

.mf-diets-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--mf-muted);
}

    .mf-diets-label i { color: var(--mf-green); }

.mf-diets { display: flex; flex-wrap: wrap; gap: 9px; }

.mf-diet {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 5px 16px 5px 5px;
    border-radius: 999px;
    border: 1px solid rgba(36, 26, 23, .12);
    background: #fff;
    color: var(--mf-ink);
    font-weight: 600;
    font-size: 13px;
    line-height: 1;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}

    /* circular icon badge, ~30% larger */
    .mf-diet img {
        width: 47px;
        height: 47px;
        border-radius: 50%;
        background: #fff;
        padding: 4px;
        object-fit: contain;
        border: 1px solid rgba(36, 26, 23, .12);
        box-shadow: 0 2px 7px rgba(36, 26, 23, .16);
    }

    .mf-diet:hover { transform: translateY(-2px); border-color: var(--mf-green); }

    .mf-diet.is-active {
        background: linear-gradient(135deg, var(--mf-green), #77c26f);
        border-color: transparent;
        color: #fff;
        box-shadow: 0 10px 22px -10px rgba(78, 158, 78, .85);
    }

        /* keep the icon in its white circle (visible) when the chip is active */
        .mf-diet.is-active img { filter: none; }

/* ---- Floating (sticky) filter bar on scroll ---- */
.mf-sticky {
    position: fixed;
    left: 0;
    right: 0;
    top: 86px;
    z-index: 40; /* below .th-header (z-index:41) so header nav dropdowns render above the filter bar */
    padding: 10px 0;
    background: rgba(255, 255, 255, .97);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(36, 26, 23, .07);
    box-shadow: 0 14px 32px -18px rgba(36, 26, 23, .5);
    transform: translateY(-130%);
    opacity: 0;
    transition: transform .35s ease, opacity .3s ease;
}

    .mf-sticky.is-shown { transform: none; opacity: 1; }

.mf-sticky-inner {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.mf-sticky-row {
    display: flex;
    flex-wrap: nowrap;
    gap: 9px;
    overflow-x: auto;
    padding-bottom: 3px;
    justify-content: flex-start;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

    .mf-sticky-row::-webkit-scrollbar { height: 5px; }
    .mf-sticky-row::-webkit-scrollbar-thumb { background: rgba(36, 26, 23, .2); border-radius: 3px; }

    .mf-sticky-row .mf-cat,
    .mf-sticky-row .mf-diet { flex: 0 0 auto; }

/* compact chips inside the sticky bar */
.mf-sticky .mf-cat { padding: 4px 15px 4px 4px; font-size: 13px; box-shadow: none; }
.mf-sticky .mf-cat-ic { width: 32px; height: 32px; font-size: 13px; }
.mf-sticky .mf-diet { padding: 4px 13px 4px 4px; font-size: 12.5px; }
.mf-sticky .mf-diet img { width: 34px; height: 34px; }

@media (max-width: 575px) {
    .mf-sticky { padding: 8px 0; }
    .mf-sticky .mf-cat-ic { width: 28px; height: 28px; }
    .mf-sticky .mf-diet img { width: 30px; height: 30px; }
}

/* ---- Grid + empty state ---- */
.mf-grid { margin-top: 4px; }

.mf-noresult {
    text-align: center;
    color: var(--mf-muted);
    font-size: 15px;
    padding: 46px 0 10px;
}

    .mf-noresult i { color: var(--mf-accent); margin-right: 6px; }

/* =====================================================================
   Responsive
   ===================================================================== */
@media (max-width: 991px) {
    .mf-sig-title { font-size: 27px; }
}

@media (max-width: 767px) {
    .mf-filterbar { padding: 18px 14px 16px; border-radius: 18px; }

    /* category tabs scroll horizontally on phones */
    .mf-cats {
        flex-wrap: nowrap;
        overflow-x: auto;
        justify-content: flex-start;
        padding-bottom: 8px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

        .mf-cat { flex: 0 0 auto; padding: 6px 16px 6px 6px; font-size: 13px; }

    .mf-cat-ic { width: 34px; height: 34px; font-size: 14px; }

    .mf-diets-row { justify-content: flex-start; }

    .mf-diets {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 6px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

        .mf-diet { flex: 0 0 auto; }

    .mf-sig { padding: 28px 16px; border-radius: 16px; }
}

/* =====================================================================
   Gallery page — luxury ink+gold MASONRY gallery. Photos keep their
   natural shape (no cropping — guests see the whole dish), sit in a
   gold-framed card with a hover "View" action, an always-visible name
   plate (when named) and a category chip. Magnific Popup lightbox.
   Rendered by Views/Home/_GalleryImages.cshtml (dbo.GalleryImages,
   managed on the Admin project's Restaurant Gallery page).
   Gold = var(--theme-color) so it always tracks the theme.

   Loaded UNCONDITIONALLY from _Layout (was inside VideoCustom.css, which
   only loads when welcome-popup media exists — so the gallery lost its
   styling on sessions without popup media). Keep this file always-on.
   ===================================================================== */

/* ---- filter tab bar: gold pill tabs ---- */
.rgal-filterbar { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-bottom: 8px; }
.rgal-filterbar .th-btn {
    border-radius: 999px;
    padding: 11px 26px;
    font-weight: 600;
    letter-spacing: .4px;
    border: 1.5px solid rgba(197, 157, 95, .55);
    background: transparent;
    color: var(--title-color, #1f1f1f);
    box-shadow: none;
    transition: color .25s ease, background-color .25s ease, border-color .25s ease, box-shadow .25s ease, transform .2s ease;
}
.rgal-filterbar .th-btn:before, .rgal-filterbar .th-btn:after { display: none !important; }
.rgal-filterbar .th-btn:hover { border-color: var(--theme-color, #C59D5F); color: var(--theme-color, #C59D5F); transform: translateY(-2px); }
.rgal-filterbar .th-btn.active {
    background: linear-gradient(135deg, #d8b877 0%, var(--theme-color, #C59D5F) 55%, #b98f4f 100%);
    border-color: transparent;
    color: #1c1c1c;
    box-shadow: 0 10px 22px rgba(197, 157, 95, .34);
}

/* ---- masonry card ---- */
.rgal-card {
    position: relative;
    display: block;
    border-radius: 16px;
    overflow: hidden;
    background: #14110d;
    box-shadow: 0 8px 22px rgba(20, 17, 13, .14);
    transform: translateY(0);
    transition: transform .35s ease, box-shadow .35s ease;
    isolation: isolate;
}
.rgal-card:before {   /* gold frame that lights up on hover */
    content: "";
    position: absolute; inset: 0;
    border: 1.5px solid transparent;
    border-radius: 16px;
    pointer-events: none;
    z-index: 3;
    transition: border-color .35s ease, box-shadow .35s ease;
}
.rgal-card:hover { transform: translateY(-7px); box-shadow: 0 20px 40px rgba(20, 17, 13, .3); }
.rgal-card:hover:before { border-color: rgba(197, 157, 95, .85); box-shadow: inset 0 0 0 3px rgba(197, 157, 95, .16); }

.rgal-media { position: relative; display: block; overflow: hidden; }
.rgal-media img {
    width: 100%;
    height: auto;              /* NATURAL ratio → masonry, no crop */
    display: block;
    transition: transform .7s cubic-bezier(.2, .6, .2, 1), filter .4s ease;
}
.rgal-card:hover .rgal-media img { transform: scale(1.07); filter: brightness(.72); }

/* category chip */
.rgal-chip {
    position: absolute; top: 12px; left: 12px; z-index: 2;
    padding: 5px 12px;
    border-radius: 999px;
    font-size: 11px; font-weight: 700; letter-spacing: .8px; text-transform: uppercase;
    color: #1c1c1c;
    background: rgba(255, 255, 255, .9);
    backdrop-filter: blur(2px);
    box-shadow: 0 3px 10px rgba(0, 0, 0, .18);
    transition: background-color .3s ease, color .3s ease;
}
.rgal-card:hover .rgal-chip { background: var(--theme-color, #C59D5F); color: #1c1c1c; }

/* hover overlay + centered view button */
.rgal-overlay {
    position: absolute; inset: 0; z-index: 2;
    display: flex; align-items: center; justify-content: center;
    background: radial-gradient(ellipse at center, rgba(28, 24, 18, .1) 0%, rgba(20, 17, 13, .55) 100%);
    opacity: 0;
    transition: opacity .35s ease;
    pointer-events: none;
}
.rgal-card:hover .rgal-overlay { opacity: 1; }
.rgal-view {
    display: inline-flex; flex-direction: column; align-items: center; gap: 6px;
    color: #1c1c1c;
    transform: scale(.6) translateY(8px);
    transition: transform .4s cubic-bezier(.34, 1.56, .64, 1);
}
.rgal-card:hover .rgal-view { transform: scale(1) translateY(0); }
.rgal-view i {
    width: 56px; height: 56px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 20px;
    background: linear-gradient(135deg, #e6cd97 0%, var(--theme-color, #C59D5F) 60%, #b98f4f 100%);
    box-shadow: 0 8px 20px rgba(0, 0, 0, .3);
}
.rgal-view-txt { color: #fff; font-size: 12px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; text-shadow: 0 1px 6px rgba(0, 0, 0, .5); }

/* always-visible name plate (from the Admin "Food / Photo name") */
.rgal-plate {
    display: flex; flex-direction: column; align-items: center; gap: 7px;
    padding: 14px 12px 16px;
    background: linear-gradient(180deg, #1c1811 0%, #14110d 100%);
    text-align: center;
    position: relative; z-index: 1;
}
.rgal-orn { position: relative; width: 34px; height: 2px; border-radius: 2px; background: linear-gradient(90deg, transparent, var(--theme-color, #C59D5F), transparent); }
.rgal-orn:after { content: "\2666"; position: absolute; top: -8px; left: 50%; transform: translateX(-50%); color: var(--theme-color, #C59D5F); font-size: 10px; line-height: 1; }
.rgal-name {
    font-family: var(--title-font, "ZCOOL XiaoWei", serif);
    color: #f4e7cb;
    font-size: 17px; line-height: 1.3; font-weight: 500;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    transition: color .3s ease;
}
.rgal-card:hover .rgal-name { color: #ffe9b8; }
.rgal-price { margin-top: 3px; color: var(--theme-color, #C59D5F); font-weight: 700; font-size: 14px; letter-spacing: .3px; }

/* =====================================================================
   "Our Kitchen Promise" — food quality / origin / allergy / vegan
   declarations (_FoodOriginDeclaration.cshtml, on Home + Menu). Ink+gold,
   trust-building cards + traceable-origin tiles. Multi-device.
   ===================================================================== */
.fod-section { padding: clamp(34px, 5vw, 64px) 0; background: linear-gradient(180deg, #faf6ee 0%, #f4ede0 100%); }
.fod-head { max-width: 780px; margin: 0 auto clamp(20px, 3vw, 32px); }
.fod-eyebrow {
    display: inline-flex; align-items: center; gap: 7px; margin-bottom: 10px;
    padding: 5px 15px; border-radius: 999px; font-size: 11px; font-weight: 800; letter-spacing: 1.6px; text-transform: uppercase;
    color: #1c1c1c; background: linear-gradient(135deg, #e6cd97 0%, var(--theme-color, #C59D5F) 60%, #b98f4f 100%);
    box-shadow: 0 5px 13px rgba(197, 157, 95, .3);
}
.fod-maintitle { font-family: var(--title-font, "ZCOOL XiaoWei", serif); color: #1c1c1c; font-size: clamp(21px, 2.8vw, 30px); line-height: 1.22; margin: 0 0 8px; }
.fod-lead { color: #5c5346; font-size: clamp(13px, 1.3vw, 15px); line-height: 1.6; margin: 0; }

.fod-card {
    position: relative; height: 100%; background: #fff; border-radius: 14px;
    padding: 16px 18px 17px; box-shadow: 0 8px 22px rgba(28, 24, 18, .07);
    border: 1px solid rgba(197, 157, 95, .18); overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease;
}
.fod-card:before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, #e6cd97, var(--theme-color, #C59D5F), #b98f4f); }
.fod-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(28, 24, 18, .12); }
.fod-cardhead { display: flex; align-items: center; gap: 12px; margin-bottom: 9px; }
.fod-ic {
    width: 40px; height: 40px; flex-shrink: 0; border-radius: 11px; display: flex; align-items: center; justify-content: center;
    font-size: 18px; color: #1c1c1c;
    background: linear-gradient(135deg, #f3e4bf 0%, #e6cd97 100%); box-shadow: 0 5px 12px rgba(197, 157, 95, .26);
}
.fod-title { font-family: var(--title-font, "ZCOOL XiaoWei", serif); color: #1c1c1c; font-size: 17px; line-height: 1.25; margin: 0; }
.fod-text { color: #5c5346; font-size: 13.5px; line-height: 1.6; margin: 0; }

/* per-declaration accent (top bar + icon tint) */
.fod-card--warn:before { background: linear-gradient(90deg, #f0b429, #d97706); }
.fod-card--warn .fod-ic { background: linear-gradient(135deg, #fde9c8, #f7c873); color: #8a5a00; }
.fod-card--bread:before { background: linear-gradient(90deg, #e6cd97, #b98f4f); }
.fod-card--bread .fod-ic { background: linear-gradient(135deg, #f3e4bf, #d9b877); color: #7a5c17; }
.fod-card--vegan:before { background: linear-gradient(90deg, #4caf50, #2e7d32); }
.fod-card--vegan .fod-ic { background: linear-gradient(135deg, #d6f0d8, #a9dcae); color: #1e6023; }
.fod-card--origin:before { background: linear-gradient(90deg, #14b8a6, var(--theme-color, #C59D5F)); }
.fod-card--origin .fod-ic { background: linear-gradient(135deg, #cdeeea, #9fddd5); color: #0b6b60; }

/* Ingredient Origins card */
.fod-origin-head { display: flex; gap: 12px; align-items: center; margin-bottom: 14px; }
.fod-origin-head .fod-ic { flex-shrink: 0; }
.fod-origins { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.fod-origin {
    position: relative; background: #faf6ee; border-radius: 11px; padding: 12px 10px 11px; text-align: center;
    border: 1px solid rgba(197, 157, 95, .2); transition: transform .25s ease, box-shadow .25s ease;
}
.fod-origin:hover { transform: translateY(-3px); box-shadow: 0 10px 22px rgba(28, 24, 18, .12); }
.fod-origin:after { content: ""; position: absolute; top: 0; left: 14px; right: 14px; height: 3px; border-radius: 3px; }
.fod-origin--teal:after { background: #14b8a6; }
.fod-origin--red:after { background: #e05656; }
.fod-origin-imgs { display: flex; justify-content: center; gap: 6px; margin-bottom: 8px; }
.fod-origin-imgs img { width: 46px; height: 46px; object-fit: cover; border-radius: 50%; border: 2px solid #fff; box-shadow: 0 3px 9px rgba(0, 0, 0, .16); }
.fod-origin-name { font-weight: 700; color: #1c1c1c; font-size: 13.5px; margin-bottom: 6px; }
.fod-origin-badge {
    display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: 999px;
    font-size: 11.5px; font-weight: 700; color: #1e6023; background: rgba(76, 175, 80, .14); border: 1px solid rgba(76, 175, 80, .4);
}
.fod-origin-badge i { color: #2e7d32; font-size: 11px; }
.fod-note {
    margin: 14px 0 0; padding: 10px 14px; border-radius: 10px; color: #8a5a00; font-size: 12.5px; line-height: 1.5;
    background: rgba(240, 180, 41, .12); border: 1px solid rgba(240, 180, 41, .35);
}
.fod-note i { color: #d97706; margin-right: 5px; }

@media (max-width: 991.98px) { .fod-origins { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575.98px) {
    .fod-card { padding: 14px 15px; border-radius: 13px; }
    .fod-cardhead { gap: 10px; margin-bottom: 7px; }
    .fod-ic { width: 36px; height: 36px; font-size: 16px; }
    .fod-title { font-size: 15.5px; }
    .fod-text { font-size: 13px; }
    .fod-origins { grid-template-columns: repeat(2, 1fr); gap: 9px; }
    .fod-origin-imgs img { width: 42px; height: 42px; }
}

/* =====================================================================
   Signature Dish carousel cards (Home/Index) — ink+gold hero cards.
   Data: dbo.GalleryImages IsSignatureDish (Admin-curated). Swiper unchanged.
   ===================================================================== */
.sig-card {
    position: relative; display: block; border-radius: 18px; overflow: hidden;
    background: #14110d; box-shadow: 0 10px 26px rgba(20, 17, 13, .18);
    transform: translateY(0); transition: transform .4s ease, box-shadow .4s ease; isolation: isolate;
}
.sig-card:before {
    content: ""; position: absolute; inset: 0; z-index: 3; pointer-events: none;
    border: 1.5px solid transparent; border-radius: 18px; transition: border-color .4s ease, box-shadow .4s ease;
}
.sig-card:hover { transform: translateY(-8px); box-shadow: 0 24px 46px rgba(20, 17, 13, .32); }
.sig-card:hover:before { border-color: rgba(197, 157, 95, .9); box-shadow: inset 0 0 0 4px rgba(197, 157, 95, .14); }

.sig-img { position: relative; width: 100%; aspect-ratio: 3 / 4; overflow: hidden; background: #0e0b07; }
.sig-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .7s cubic-bezier(.2,.6,.2,1), filter .4s ease; }
.sig-card:hover .sig-img img { transform: scale(1.08); filter: brightness(.72); }

.sig-ribbon {
    position: absolute; top: 14px; left: 14px; z-index: 2;
    display: inline-flex; align-items: center; gap: 6px;
    padding: 6px 14px; border-radius: 999px; font-size: 11.5px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase;
    color: #1c1c1c; background: linear-gradient(135deg, #e6cd97 0%, var(--theme-color, #C59D5F) 60%, #b98f4f 100%);
    box-shadow: 0 4px 12px rgba(0, 0, 0, .28);
}
.sig-ribbon i { font-size: 11px; }

.sig-body {
    position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 22px 18px 18px;
    background: linear-gradient(180deg, rgba(20,17,13,0) 0%, rgba(20,17,13,.6) 45%, rgba(14,11,7,.96) 100%);
    text-align: center;
}
.sig-name {
    font-family: var(--title-font, "ZCOOL XiaoWei", serif); color: #fff; font-size: 21px; line-height: 1.25; margin: 0 0 12px;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.sig-actions { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.sig-btn {
    display: inline-flex; align-items: center; gap: 8px; text-decoration: none;
    padding: 10px 22px; border-radius: 999px; font-weight: 700; color: #1c1c1c;
    background: linear-gradient(135deg, #e6cd97 0%, var(--theme-color, #C59D5F) 60%, #b98f4f 100%);
    box-shadow: 0 8px 20px rgba(197, 157, 95, .3); transition: transform .2s ease, box-shadow .2s ease;
}
.sig-btn:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(197, 157, 95, .42); color: #1c1c1c; }
.sig-btn i { font-size: 13px; }
.sig-link { color: #e9d9b6; font-size: 12.5px; font-weight: 600; letter-spacing: .5px; text-decoration: none; text-transform: uppercase; opacity: .9; }
.sig-link:hover { color: var(--theme-color, #C59D5F); text-decoration: underline; }

@media (max-width: 991.98px) { .sig-name { font-size: 19px; } .sig-img { aspect-ratio: 4 / 5; } }
@media (max-width: 575.98px) {
    .sig-card { border-radius: 14px; }
    .sig-card:hover { transform: none; }
    .sig-card:hover .sig-img img { transform: none; filter: none; }
    .sig-name { font-size: 18px; }
    .sig-body { padding: 18px 12px 14px; }
    .sig-ribbon { top: 10px; left: 10px; padding: 5px 11px; font-size: 10.5px; }
}

/* immersive info overlay on the photo — icons + name + price over a gradient */
.rgal-imginfo {
    position: absolute; left: 0; right: 0; bottom: 0; z-index: 2;
    padding: 46px 12px 14px; text-align: center;
    background: linear-gradient(180deg, rgba(14,11,7,0) 0%, rgba(14,11,7,.12) 26%, rgba(14,11,7,.72) 68%, rgba(14,11,7,.94) 100%);
}
/* dietary/attribute icons — a VERTICAL column of circular white badges down the
   LEFT side of the photo (always visible) */
.rgal-sideicons {
    position: absolute; left: 10px; top: 10px; z-index: 3;
    display: flex; flex-direction: column; gap: 7px;
}
.rgal-sideicons img {
    width: 44px; height: 44px; object-fit: contain; display: block;
    border-radius: 50%; background: #fff; padding: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .4);
}
.rgal-imgcat {
    display: inline-block; margin-bottom: 5px; color: var(--theme-color, #C59D5F);
    font-size: 10.5px; font-weight: 800; letter-spacing: 1.4px; text-transform: uppercase;
    text-shadow: 0 1px 5px rgba(0, 0, 0, .7);
}
.rgal-imginfo .rgal-name {
    font-family: var(--title-font, "ZCOOL XiaoWei", serif); color: #fff; font-size: 18px; line-height: 1.25; margin: 0;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .6);
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
/* price = clean gold text on the photo (NOT a button/pill) */
.rgal-imginfo .rgal-price {
    display: inline-block; margin-top: 5px; padding: 0; background: none; box-shadow: none; border-radius: 0;
    color: var(--theme-color, #C59D5F); font-weight: 800; font-size: 18px; letter-spacing: .4px;
    text-shadow: 0 2px 7px rgba(0, 0, 0, .8);
}

/* dish CATEGORY badge (Starter / Vegetarian Main Dishes / Main Dishes with Meat …) */
.rgal-type {
    display: inline-flex; align-items: center; gap: 6px; margin-bottom: 6px;
    padding: 3px 12px; border-radius: 999px; font-size: 10.5px; font-weight: 800; letter-spacing: .7px; text-transform: uppercase;
    color: #1c1c1c; line-height: 1.3;
    background: linear-gradient(135deg, #e6cd97 0%, var(--theme-color, #C59D5F) 60%, #b98f4f 100%);
    box-shadow: 0 3px 10px rgba(0, 0, 0, .32);
}
.rgal-type i { font-size: 10px; }

/* "View Menu" link on the photo */
.rgal-viewmenu { display: inline-block; margin-top: 7px; color: #e9d9b6; font-size: 12px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; text-decoration: none; }
.rgal-viewmenu:hover { color: var(--theme-color, #C59D5F); text-decoration: underline; }
.rgal-viewmenu i { font-size: 10px; margin-left: 3px; }

/* Signature Dish card = the gallery immersive card at a fixed photo ratio (for the
   carousel/grid), with the "Signature" ribbon; icons start below the ribbon. */
.sig-card-v2 .rgal-media { aspect-ratio: 3 / 4; }
.sig-card-v2 .rgal-media img { height: 100%; object-fit: cover; }
.sig-card-v2 .rgal-sideicons { top: 48px; }
.sig-card-v2 .sig-ribbon { top: 12px; left: 12px; }

/* small circular "add to cart" icon button floating on the photo (top-right) */
.rgal-media.rgal-openmodal { cursor: pointer; }
.rgal-add-fab {
    position: absolute; top: 12px; right: 12px; z-index: 4;
    width: 42px; height: 42px; border-radius: 50%; border: none; cursor: pointer;
    color: #1c1c1c; font-size: 16px;
    background: linear-gradient(135deg, #e6cd97 0%, var(--theme-color, #C59D5F) 60%, #b98f4f 100%);
    box-shadow: 0 5px 14px rgba(0, 0, 0, .32);
    display: inline-flex; align-items: center; justify-content: center;
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.rgal-add-fab:hover { transform: scale(1.1); box-shadow: 0 9px 20px rgba(0, 0, 0, .42); }
.rgal-add-fab:active { transform: scale(.96); }
.rgal-add-fab.is-done { background: #2e7d32; color: #fff; }

/* the plate sits under the photo on dish cards (name + price only) */
.rgal-card-dish { display: flex; flex-direction: column; }
.rgal-card-dish .rgal-plate { padding: 13px 12px 15px; }

@media (max-width: 575.98px) {
    .rgal-sideicons { gap: 5px; left: 7px; }
    .rgal-sideicons img { width: 37px; height: 37px; padding: 5px; }
    .rgal-add-fab { width: 38px; height: 38px; font-size: 15px; top: 9px; right: 9px; }
    .rgal-imginfo .rgal-name { font-size: 16px; }
}

/* =====================================================================
   Dish-detail modal (opened from a dish card) + shared-cart floating pill
   ===================================================================== */
.rgal-modal { position: fixed; inset: 0; z-index: 100000; display: none; }
.rgal-modal.is-open { display: block; }
.rgal-modal-backdrop { position: absolute; inset: 0; background: rgba(15, 12, 8, .72); backdrop-filter: blur(3px); animation: rgalFade .25s ease; }
@keyframes rgalFade { from { opacity: 0; } to { opacity: 1; } }
.rgal-modal-card {
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: min(920px, 94vw); max-height: 92vh; overflow: hidden;
    max-height: 92dvh;
    display: grid; grid-template-columns: 1.05fr 1fr;
    background: #17130d; color: #f3e7cd;
    border: 1px solid rgba(197, 157, 95, .4);
    border-radius: 20px; box-shadow: 0 30px 70px rgba(0, 0, 0, .55);
    animation: rgalPop .32s cubic-bezier(.34, 1.56, .64, 1);
}
@keyframes rgalPop { from { opacity: 0; transform: translate(-50%, -46%) scale(.96); } to { opacity: 1; transform: translate(-50%, -50%) scale(1); } }
.rgal-modal-x {
    position: absolute; top: 12px; right: 12px; z-index: 3;
    width: 40px; height: 40px; border-radius: 50%;
    border: none; cursor: pointer; color: #1c1c1c;
    background: rgba(255, 255, 255, .92);
    display: flex; align-items: center; justify-content: center; font-size: 16px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .3); transition: background-color .25s ease, transform .25s ease;
}
.rgal-modal-x:hover { background: var(--theme-color, #C59D5F); transform: rotate(90deg); }

.rgal-modal-media { position: relative; background: #0e0b07; min-height: 260px; }
.rgal-modal-media img { width: 100%; height: 100%; max-height: 92vh; object-fit: cover; display: block; }
    max-height: 92dvh;
.rgal-md-cat { top: 14px; left: 14px; }

.rgal-modal-body { padding: 26px 28px; overflow-y: auto; display: flex; flex-direction: column; }
.rgal-md-eyebrow { color: var(--theme-color, #C59D5F); font-size: 11px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; }
.rgal-md-name { font-family: var(--title-font, "ZCOOL XiaoWei", serif); color: #fff; font-size: 27px; line-height: 1.2; margin: 6px 0 12px; }
.rgal-md-tags { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 16px; }
.rgal-md-tag {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 6px 16px 6px 7px; border-radius: 999px; font-size: 14px; font-weight: 600;
    color: #f3e7cd;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(197, 157, 95, .45);
}
/* dietary icons DOUBLE size inside the dish-detail popup */
.rgal-md-tag img { width: 48px; height: 48px; object-fit: contain; border-radius: 50%; background: #fff; padding: 4px; box-shadow: 0 2px 8px rgba(0, 0, 0, .25); }
.rgal-md-desc { color: #d8cbb2; font-size: 14.5px; line-height: 1.65; margin: 0 0 16px; }
.rgal-md-pricewrap { display: flex; align-items: baseline; gap: 10px; padding-top: 6px; border-top: 1px solid rgba(197, 157, 95, .22); }
.rgal-md-pricelbl { color: #b7a888; font-size: 12px; text-transform: uppercase; letter-spacing: 1px; }
.rgal-md-price { color: var(--theme-color, #C59D5F); font-size: 26px; font-weight: 800; }
.rgal-md-orderrow { display: flex; align-items: center; gap: 12px; margin: 16px 0 6px; }
.rgal-md-stepper { display: inline-flex; align-items: center; gap: 4px; background: #221b12; border: 1px solid rgba(197, 157, 95, .4); border-radius: 999px; padding: 4px; }
.rgal-md-stepper button {
    width: 36px; height: 36px; border-radius: 50%; border: none; cursor: pointer;
    background: transparent; color: var(--theme-color, #C59D5F); font-size: 13px;
    display: flex; align-items: center; justify-content: center; transition: background-color .2s ease, color .2s ease;
}
.rgal-md-stepper button:hover { background: var(--theme-color, #C59D5F); color: #1c1c1c; }
.rgal-md-stepper span { min-width: 30px; text-align: center; font-weight: 700; color: #fff; font-size: 16px; }
.rgal-md-add {
    flex: 1 1 auto; border: none; cursor: pointer; border-radius: 999px; padding: 13px 20px;
    font-weight: 700; letter-spacing: .4px; color: #1c1c1c;
    background: linear-gradient(135deg, #e6cd97 0%, var(--theme-color, #C59D5F) 60%, #b98f4f 100%);
    box-shadow: 0 10px 24px rgba(197, 157, 95, .34);
    display: inline-flex; align-items: center; justify-content: center; gap: 9px;
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.rgal-md-add:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(197, 157, 95, .45); }
.rgal-md-add.is-done { background: #2e7d32; color: #fff; }
.rgal-md-note { min-height: 20px; font-size: 13px; margin: 10px 0 4px; color: #d8cbb2; }
.rgal-md-note.is-ok { color: #8ce49a; font-weight: 600; }
/* T126: locked (not available today) dish — order row out of the layout AND the tab order */
.rgal-modal.rgal-locked .rgal-md-orderrow { display: none; }
.rgal-md-note.is-locked { color: #e8b4a0; font-weight: 600; }
.rgal-md-note i { margin-right: 5px; }
.rgal-md-go { display: inline-flex; align-items: center; gap: 8px; color: var(--theme-color, #C59D5F); font-weight: 700; text-decoration: none; font-size: 14px; margin-top: 2px; }
.rgal-md-go:hover { color: #ffe9b8; text-decoration: underline; }
.rgal-md-fineprint { margin-top: 14px; color: #9a8c72; font-size: 11.5px; line-height: 1.5; }
.rgal-md-fineprint i { color: var(--theme-color, #C59D5F); }

/* floating "view cart" pill (persists across pages while the cart has items) */
.rgal-cartfab {
    position: fixed; right: 18px; bottom: 18px; z-index: 99990;
    display: none; align-items: center; gap: 9px;
    padding: 12px 18px; border-radius: 999px; text-decoration: none;
    color: #1c1c1c; font-weight: 700;
    background: linear-gradient(135deg, #e6cd97 0%, var(--theme-color, #C59D5F) 60%, #b98f4f 100%);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .35);
    transition: transform .2s ease, box-shadow .2s ease;
}
.rgal-cartfab.is-visible { display: inline-flex; }
.rgal-cartfab:hover { transform: translateY(-3px); box-shadow: 0 16px 34px rgba(0, 0, 0, .45); color: #1c1c1c; }
.rgal-cartfab i { font-size: 16px; }
.rgal-cartfab-count { min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; background: #1c1c1c; color: var(--theme-color, #C59D5F); font-size: 12px; display: inline-flex; align-items: center; justify-content: center; }

/* ---- modal responsive ---- */
@media (max-width: 767.98px) {
    .rgal-modal-card { grid-template-columns: 1fr; width: 94vw; max-height: 90vh; overflow-y: auto; }
    .rgal-modal-card { grid-template-columns: 1fr; width: 94vw; max-height: 90dvh; overflow-y: auto; }
    .rgal-modal-media { min-height: 0; }
    .rgal-modal-media img { max-height: 40vh; }
    .rgal-modal-media img { max-height: 40dvh; }
    .rgal-md-name { font-size: 23px; }
    .rgal-md-price { font-size: 23px; }
    .rgal-modal-body { padding: 20px; }
    .rgal-cartfab-txt { display: none; }
    .rgal-cartfab { right: 14px; bottom: 14px; padding: 12px 14px; }
}

/* masonry vertical gutter (horizontal spacing comes from the Bootstrap col
   padding, same as the original layout; isotope masonry stacks by height) */
.filter-active .filter-item { margin-bottom: 26px; }

/* ---- responsive ---- */
@media (max-width: 991.98px) {
    .rgal-card { border-radius: 14px; }
    .rgal-name { font-size: 15px; }
    .filter-active .filter-item { margin-bottom: 20px; }
}
@media (max-width: 575.98px) {
    .rgal-filterbar { gap: 8px; }
    .rgal-filterbar .th-btn { padding: 9px 18px; font-size: 13px; }
    .rgal-card { border-radius: 12px; box-shadow: 0 5px 14px rgba(20, 17, 13, .16); }
    .rgal-card:hover { transform: none; }                 /* no lift on touch */
    .rgal-card:hover .rgal-media img { transform: none; filter: none; }
    .rgal-overlay { display: none; }                      /* no hover hint on touch */
    .rgal-chip { top: 8px; left: 8px; padding: 4px 9px; font-size: 10px; }
    .rgal-plate { padding: 11px 8px 12px; }
    .rgal-name { font-size: 13.5px; }
    .filter-active .filter-item { margin-bottom: 14px; }
}

/* T525 2026-08-29: additive dvh companions for tablet-fit popup sweep (Cause A). */

/* =====================================================================
   Contact page redesign — "Get In Touch" (India Village Restaurant)
   Premium two-panel layout (dark info aside + white form card) + styled
   map. Multi-device responsive. Namespaced .ivc-* so nothing else changes.
   Theme: orange --theme-color with charcoal/ink accents.
   ===================================================================== */

:root {
    --ivc-ink: #1b1712;
    --ivc-ink-2: #2a2016;
    --ivc-accent: var(--theme-color, #f0592b);
    --ivc-gold: #e0a53c;
    --ivc-line: #ece3d6;
    --ivc-danger: #d64541;
}

/* ---------- section shell ---------- */
.ivc-section { padding: 90px 0; background: #faf6f0; }
.ivc-grid {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 0;
    border-radius: 26px;
    overflow: hidden;
    box-shadow: 0 40px 90px -50px rgba(27, 23, 18, .55);
    background: #fff;
}

/* ---------- left: info panel ---------- */
.ivc-info {
    position: relative;
    padding: 54px 46px;
    color: #f4ece0;
    background:
        radial-gradient(120% 90% at 100% 0%, rgba(240, 89, 43, .22), transparent 55%),
        linear-gradient(160deg, var(--ivc-ink) 0%, var(--ivc-ink-2) 100%);
    overflow: hidden;
}
.ivc-info::after {
    content: "";
    position: absolute;
    right: -70px; bottom: -70px;
    width: 220px; height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(224, 165, 60, .18), transparent 70%);
    pointer-events: none;
}
.ivc-eyebrow {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 12px; letter-spacing: 3px; text-transform: uppercase;
    color: var(--ivc-gold); font-weight: 700; margin-bottom: 14px;
}
.ivc-eyebrow::before { content: ""; width: 26px; height: 2px; background: var(--ivc-accent); display: inline-block; }
.ivc-title { color: #fff; font-size: clamp(26px, 3vw, 38px); line-height: 1.15; margin: 0 0 14px; }
.ivc-lead { color: #d7cbba; font-size: 15px; line-height: 1.7; margin-bottom: 30px; max-width: 46ch; }

.ivc-contacts { list-style: none; margin: 0 0 26px; padding: 0; }
.ivc-contacts li { display: flex; gap: 16px; align-items: flex-start; padding: 14px 0; border-bottom: 1px solid rgba(255, 255, 255, .08); }
.ivc-contacts li:last-child { border-bottom: 0; }
.ivc-ic {
    flex: 0 0 46px; width: 46px; height: 46px; border-radius: 13px;
    display: grid; place-items: center; font-size: 18px; color: #fff;
    background: linear-gradient(135deg, var(--ivc-accent), #c53d12);
    box-shadow: 0 12px 24px -12px rgba(240, 89, 43, .8);
}
.ivc-ct-label { font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: var(--ivc-gold); margin-bottom: 3px; }
.ivc-ct-val, .ivc-ct-val a { color: #f4ece0; font-size: 15px; line-height: 1.5; text-decoration: none; word-break: break-word; }
.ivc-ct-val a:hover { color: var(--ivc-accent); }

.ivc-social { display: flex; gap: 12px; margin-top: 6px; }
.ivc-social a {
    width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center;
    color: #f4ece0; border: 1px solid rgba(255, 255, 255, .18); transition: .25s ease;
}
.ivc-social a:hover { background: var(--ivc-accent); border-color: var(--ivc-accent); color: #fff; transform: translateY(-3px); }

.ivc-trust {
    margin-top: 26px; display: flex; align-items: center; gap: 10px;
    font-size: 12.5px; color: #cdbfad;
    background: rgba(224, 165, 60, .12); border: 1px solid rgba(224, 165, 60, .25);
    border-radius: 12px; padding: 11px 14px;
}
.ivc-trust i { color: var(--ivc-gold); font-size: 16px; }

/* ---------- right: form card ---------- */
.ivc-formcard { padding: 54px 46px; background: #fff; }
.ivc-form-eyebrow { color: var(--ivc-accent); font-weight: 700; letter-spacing: 2px; text-transform: uppercase; font-size: 12px; margin-bottom: 8px; }
.ivc-form-title { color: var(--ivc-ink); font-size: clamp(22px, 2.4vw, 30px); margin: 0 0 26px; }

.ivc-form .ivc-field { position: relative; margin-bottom: 20px; }
.ivc-form label.ivc-lbl { display: block; font-size: 12.5px; font-weight: 600; color: #6a5f52; margin-bottom: 7px; }
.ivc-form label.ivc-lbl .req { color: var(--ivc-accent); }
.ivc-form .form-control,
.ivc-form .form-select {
    width: 100%;
    background: #faf7f2;
    border: 1.5px solid var(--ivc-line);
    border-radius: 13px;
    padding: 14px 16px 14px 46px;
    font-size: 15px; color: var(--ivc-ink);
    transition: border-color .2s, box-shadow .2s, background .2s;
    height: auto;
}
.ivc-form textarea.form-control { padding-left: 46px; min-height: 130px; resize: vertical; }
.ivc-form .form-control:focus,
.ivc-form .form-select:focus {
    outline: none; background: #fff;
    border-color: var(--ivc-accent);
    box-shadow: 0 0 0 4px rgba(240, 89, 43, .12);
}
.ivc-form .form-control::placeholder { color: #a99e8f; }
.ivc-form .ivc-fi {
    position: absolute; left: 16px; top: 42px; color: var(--ivc-accent);
    font-size: 16px; pointer-events: none;
}
.ivc-form .ivc-field.ivc-noicon .form-control,
.ivc-form .ivc-field.ivc-noicon .form-select { padding-left: 16px; }

/* validation (Contactus.js toggles .is-invalid) */
.ivc-form .form-control.is-invalid,
.ivc-form .form-select.is-invalid {
    border-color: var(--ivc-danger);
    background: #fdf3f2;
    box-shadow: 0 0 0 4px rgba(214, 69, 65, .1);
}
.ivc-form .form-control.is-invalid ~ .ivc-fi,
.ivc-form .form-select.is-invalid ~ .ivc-fi { color: var(--ivc-danger); }
.ivc-err { display: none; color: var(--ivc-danger); font-size: 12px; margin-top: 6px; }
.ivc-form .form-control.is-invalid ~ .ivc-err,
.ivc-form .form-select.is-invalid ~ .ivc-err { display: block; }

/* honeypot — hidden from humans, catches bots */
.ivc-hp { position: absolute !important; left: -9999px !important; top: -9999px !important; width: 1px; height: 1px; opacity: 0; pointer-events: none; }

.ivc-rows { display: grid; grid-template-columns: 1fr 1fr; gap: 0 18px; }

/* buttons + security note */
.ivc-actions { margin-top: 8px; }
.ivc-form .th-btn { border-radius: 13px; }
.ivc-secnote {
    display: flex; align-items: flex-start; gap: 9px;
    margin-top: 16px; font-size: 12px; color: #7c7164; line-height: 1.5;
}
.ivc-secnote i { color: #1e9e63; font-size: 15px; margin-top: 1px; }
#captchaContainer { margin-bottom: 14px; }
.ivc-form .form-messages { min-height: 0; }

/* ---------- map ---------- */
.ivc-map-section { padding: 0 0 90px; background: #faf6f0; }
.ivc-map {
    border-radius: 22px; overflow: hidden; margin: 0 auto; max-width: 1290px;
    box-shadow: 0 30px 70px -40px rgba(27, 23, 18, .5);
    border: 6px solid #fff; line-height: 0;
}
.ivc-map iframe { width: 100%; height: 420px; border: 0; display: block; }

/* ---------- responsive ---------- */
@media (max-width: 991.98px) {
    .ivc-section { padding: 60px 0; }
    .ivc-grid { grid-template-columns: 1fr; border-radius: 20px; }
    .ivc-info, .ivc-formcard { padding: 40px 30px; }
    .ivc-map-section { padding: 0 0 60px; }
    .ivc-map iframe { height: 340px; }
}
@media (max-width: 575.98px) {
    .ivc-section { padding: 44px 0; }
    .ivc-info, .ivc-formcard { padding: 32px 22px; }
    .ivc-rows { grid-template-columns: 1fr; }
    .ivc-map { border-radius: 16px; border-width: 4px; }
    .ivc-map iframe { height: 280px; }
    .ivc-contacts li { padding: 12px 0; }
}

/* ------------------------------------------------------------------------------------------
   T288 — reCAPTCHA Enterprise CHECKBOX widget (Contact, Table Booking, Food Order, MyOrders).
   Ported verbatim from the RV Client (CustomLayout.css, T268c). The widget itself is an iframe
   Google renders at a fixed 304x78; these rules only centre it and let it scale down on narrow
   phones so it can never cause horizontal overflow.
   Lives in ContactLux.css because _Layout links that file unconditionally — it is therefore
   present on all four protected pages. Do NOT move these rules into a per-page stylesheet.
   ------------------------------------------------------------------------------------------ */
.rv-entcaptcha {
    margin: 14px 0 4px;
    display: flex;
    justify-content: center;
}

.rv-entcaptcha-note {
    display: block;
    margin: 0 0 10px;
    color: #b02a1c;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.45;
    text-align: center;
}

.rv-entcaptcha-note[hidden] { display: none; }

@media (max-width: 400px) {
    /* 304px + the card's own padding can exceed a 360px viewport — scale, never clip. */
    .rv-entcaptcha {
        transform: scale(0.86);
        transform-origin: center top;
        margin-bottom: -6px;
    }
}

/* ------------------------------------------------------------------------------------------
   T389 — "Verify I am Human" button (renders the checkbox ON DEMAND, close to submit time).
   Twin of the RV block in CustomLayout.css; kept here for the same reason as the rules above —
   _Layout links ContactLux.css unconditionally, so this covers Contact, Table Booking, Food
   Order and MyOrders. Do NOT move it into a per-page stylesheet (TableBooking.css is page-local).

   PRESENTATION ONLY: no fixed width, no transform of its own on the button, and no
   transition/animation (so no prefers-reduced-motion rule is owed).

   The [hidden] rules are load-bearing, not tidiness: .rv-entcaptcha is display:flex, which BEATS
   the browser's default [hidden]{display:none}, so without them the box would stay visible
   beside the button and the on-demand behaviour would be lost.
   ------------------------------------------------------------------------------------------ */
.rv-entcaptcha-defer {
    margin: 14px 0 4px;
    display: flex;
    justify-content: center;
}

/* T394 (2026-08-18) — restyled onto the .th-btn (assets/css/style.css :2268) primary-button
   FAMILY — solid theme-colour fill + a colour-swap hover, the same visual language as
   "Reserve My Table" (.th-btn.tb-lux-btn, _ReservationBookingForm.cshtml). SOURCE OF TRUTH for
   these values: .th-btn (assets/css/style.css :2268) + .tb-lux-btn (assets/css/TableBooking.css
   :202, border-radius:12px). Values are REPLICATED here, not inherited via the .th-btn class,
   because .th-btn also carries text-transform:uppercase, min-width:170px, padding:21px 32px,
   border-radius:0, overflow:hidden, position:relative and a ::before slide-fill hover transition
   — all of which would break the button's compact centred shape on the 2 dialog surfaces it
   renders inside (_FoodOrderAddItemsDialog.cshtml, _FoodOrderCardDialog.cshtml). Only the
   properties that carry the visual look (fill colour, text colour, weight, border-radius, and a
   simple hover colour-swap in place of the ::before slide) were copied. DRIFT RISK: if .th-btn or
   .tb-lux-btn is ever restyled, this copy must be updated to match by hand — check both places.
   .tb-lux-btn is loaded ONLY on the Reservation page (TableBooking.css); this block does not
   depend on it — every one of the 7 Verify surfaces gets the same look regardless of which page
   loads it, because ContactLux.css itself is site-wide (_Layout.cshtml).
   T395 (2026-08-18) — WCAG AA contrast fix hand-mirrored from .th-btn: #FA8507 is owner-fixed/
   immutable, so text goes var(--title-color) (was white, 6.61:1) and a 2px var(--title-color)
   border replaces border:0 (>=14.78:1 non-text boundary on every measured surface). Hover keeps
   the fill/text flip (dark fill + white text) to match .th-btn:hover exactly. Update THIS block
   by hand again if .th-btn's T395 colours ever change. */
.rv-entverify-btn {
    display: flex;                 /* block-level flex + auto margins = centred, no fixed width */
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: fit-content;
    min-height: 44px;              /* accessibility tap target */
    max-width: 100%;
    margin: 14px auto 4px;
    /* T395 fix loop 1 (F1): padding reduced 2px per side on both axes (border width) to absorb
       the new 2px border's box-model growth (202x48 -> was measured 206x52 without this) and
       keep rendered geometry at the pre-fix size. Unlike .th-btn, this button is fully
       content-sized (no min-width, only min-height:44px) so BOTH axes grew and both need
       compensating, not just the vertical one. */
    padding: 10px 18px;
    border: 2px solid var(--title-color, #1F1F1F);
    border-radius: 12px;
    background: var(--theme-color);
    color: var(--title-color, #1F1F1F);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    cursor: pointer;
    transition: background-color .2s ease, box-shadow .2s ease;
}

.rv-entverify-btn:hover {
    background: var(--title-color, #1F1F1F);
    color: var(--white-color, #fff);
    box-shadow: 0 8px 20px rgba(0, 0, 0, .18);
}

.rv-entverify-btn:active {
    /* T395 fix loop 1 (F2): a bare :active tap (no :hover) previously left the text at its
       default colour (white pre-T395), safe against the dark active background. Since T395
       made the default text colour var(--title-color) — the SAME colour as this active
       background — an unhovered tap rendered #1F1F1F text on a #1F1F1F fill (1.00:1) for the
       duration of the tap. Mirror .th-btn's hover/active behaviour: flip to white here too. */
    background: var(--title-color, #1F1F1F);
    color: var(--white-color, #fff);
}

.rv-entverify-btn:focus-visible {
    outline: 3px solid var(--title-color, #1F1F1F);
    outline-offset: 2px;
}

.rv-entverify-btn[hidden] { display: none; }

.rv-entcaptcha[hidden],
.rv-entcaptcha-defer[hidden] { display: none; }

@media (prefers-reduced-motion: reduce) {
    .rv-entverify-btn { transition: none; }
}

/* T393 — the ~24px shield-check glyph on the Verify button. .rv-entverify-btn is ALREADY
   display:flex; align-items:center; gap:8px (T389) — do NOT re-declare those here. */
.rv-entverify-ic { font-size: 24px; line-height: 1; }

/* T393 — the guarded submit button, hidden by JS until the check is solved. An author
   display: rule beats the UA's [hidden]{display:none} — exactly the trap T389's own [hidden]
   companions above exist for — and this must still win on a dialog surface where Bootstrap's
   own [hidden] rule is not loaded, so it is deliberately !important. */
[data-ent-submit][hidden] { display: none !important; }

@media (max-width: 400px) {
    .rv-entverify-btn { width: 100%; }

    .rv-entcaptcha-defer {
        transform: scale(0.86);
        transform-origin: center top;
        margin-bottom: -6px;
    }
}

/* =====================================================================
   About Us + Services redesign (India Village Restaurant, 2026-07-11)
   Warm, premium, fully-responsive. Namespaced .asx-* so nothing else
   changes. Theme orange (--theme-color) + charcoal ink. Preserves the
   existing SVG icon partials + localized titles.
   ===================================================================== */
:root {
    --asx-ink: #201a14;
    --asx-accent: var(--theme-color, #f0592b);
    --asx-gold: #e0a53c;
    --asx-cream: #fbf6ef;
    --asx-line: #efe4d5;
}

.asx-section { padding: 96px 0; }
.asx-section.asx-cream { background: var(--asx-cream); }
.asx-wrap { max-width: 1240px; margin: 0 auto; padding: 0 16px; }

/* ---- section heading ---- */
.asx-head { text-align: center; max-width: 720px; margin: 0 auto 46px; }
.asx-eyebrow {
    display: inline-flex; align-items: center; gap: 9px;
    color: var(--asx-accent); font-weight: 700; letter-spacing: 3px;
    text-transform: uppercase; font-size: 12.5px; margin-bottom: 14px;
}
.asx-eyebrow::before, .asx-eyebrow::after { content: ""; width: 26px; height: 2px; background: var(--asx-accent); opacity: .55; }
.asx-title { color: var(--asx-ink); font-size: clamp(28px, 3.4vw, 42px); line-height: 1.15; margin: 0; }
.asx-head .asx-lead { color: #6f6456; font-size: 15.5px; line-height: 1.75; margin-top: 16px; }

/* ---- feature / service cards ---- */
.asx-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 22px;
}
.asx-card {
    position: relative; background: #fff; border: 1px solid var(--asx-line);
    border-radius: 18px; padding: 30px 24px; text-align: center;
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
    overflow: hidden;
}
.asx-card::before {
    content: ""; position: absolute; inset: 0 0 auto 0; height: 4px;
    background: linear-gradient(90deg, var(--asx-accent), var(--asx-gold));
    transform: scaleX(0); transform-origin: left; transition: transform .3s ease;
}
.asx-card:hover { transform: translateY(-6px); box-shadow: 0 26px 50px -30px rgba(32, 26, 20, .5); border-color: transparent; }
.asx-card:hover::before { transform: scaleX(1); }
.asx-ic {
    width: 84px; height: 84px; margin: 0 auto 18px; border-radius: 50%;
    display: grid; place-items: center;
    background: radial-gradient(circle at 30% 25%, #fff, var(--asx-cream));
    border: 1px solid var(--asx-line);
    transition: background .28s ease, transform .28s ease;
}
.asx-card:hover .asx-ic { background: linear-gradient(135deg, rgba(240,89,43,.14), rgba(224,165,60,.14)); transform: scale(1.05); }
.asx-ic img, .asx-ic svg { width: 48px; height: 48px; object-fit: contain; }
.asx-card-title { color: var(--asx-ink); font-size: 18px; margin: 0; line-height: 1.35; font-weight: 600; }
.asx-card-title a { color: inherit; text-decoration: none; }
.asx-card:hover .asx-card-title { color: var(--asx-accent); }

/* ---- About split (image + story) ---- */
.asx-about { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.asx-about-figure { position: relative; }
.asx-about-figure .asx-about-img {
    width: 100%; border-radius: 22px; display: block;
    box-shadow: 0 40px 80px -46px rgba(32, 26, 20, .55);
}
.asx-about-figure::after {
    content: ""; position: absolute; left: -18px; bottom: -18px; width: 62%; height: 62%;
    border: 2px solid var(--asx-accent); border-radius: 22px; z-index: -1; opacity: .5;
}
.asx-about-badge {
    position: absolute; right: 18px; top: 18px; background: rgba(32, 26, 20, .82);
    color: #fff; border-radius: 14px; padding: 12px 18px; text-align: center; backdrop-filter: blur(3px);
}
.asx-about-badge b { display: block; font-size: 26px; color: var(--asx-gold); line-height: 1; }
.asx-about-badge span { font-size: 11px; letter-spacing: 1.5px; text-transform: uppercase; }
.asx-about-body .asx-eyebrow { justify-content: flex-start; }
.asx-about-body .asx-eyebrow::after { display: none; }
.asx-about-body .asx-title { text-align: left; font-size: clamp(26px, 3vw, 38px); }
.asx-about-body p { color: #6f6456; font-size: 15.5px; line-height: 1.8; margin: 16px 0 0; }
.asx-about-sign { margin-top: 26px; display: flex; align-items: center; gap: 14px; }
.asx-about-sign .asx-line { flex: 0 0 46px; height: 2px; background: var(--asx-accent); }
.asx-about-sign b { color: var(--asx-ink); font-size: 18px; }

/* ---- History timeline ---- */
.asx-story { background: var(--asx-ink); position: relative; }
.asx-story .asx-title, .asx-story .asx-eyebrow { color: #fff; }
.asx-story .asx-eyebrow { color: var(--asx-gold); }
.asx-timeline { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; position: relative; }
.asx-timeline::before {
    content: ""; position: absolute; left: 6%; right: 6%; top: 118px; height: 2px;
    background: linear-gradient(90deg, transparent, rgba(224,165,60,.5), transparent);
}
.asx-tl { text-align: center; position: relative; }
.asx-tl-img { width: 150px; height: 150px; margin: 0 auto 20px; border-radius: 50%; padding: 6px; background: linear-gradient(135deg, var(--asx-accent), var(--asx-gold)); }
.asx-tl-img img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; border: 4px solid var(--asx-ink); }
.asx-tl-year {
    display: inline-block; background: linear-gradient(135deg, var(--asx-accent), #c53d12);
    color: #fff; font-weight: 700; padding: 5px 16px; border-radius: 40px; font-size: 15px; margin-bottom: 10px;
    box-shadow: 0 10px 22px -12px rgba(240,89,43,.9);
}
.asx-tl p { color: #cdbfad; font-size: 14px; line-height: 1.65; margin: 0; }

/* ---- video teaser ---- */
.asx-video { position: relative; border-radius: 22px; overflow: hidden; max-width: 1000px; margin: 0 auto; box-shadow: 0 40px 80px -48px rgba(32,26,20,.6); }
.asx-video img { width: 100%; display: block; }
.asx-video .play-btn { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

/* ---- CTA banner ---- */
.asx-cta { position: relative; background-size: cover; background-position: center; border-radius: 0; }
.asx-cta::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(20,16,12,.82), rgba(20,16,12,.35)); }
.asx-cta-inner { position: relative; max-width: 620px; margin-left: auto; text-align: center; color: #fff; padding: 20px 0; }
.asx-cta-inner .asx-eyebrow { color: var(--asx-gold); justify-content: center; }
.asx-cta-inner h2 { color: #fff; font-size: clamp(26px, 3vw, 40px); margin: 0 0 24px; }

/* ---- responsive ---- */
@media (max-width: 991.98px) {
    .asx-section { padding: 68px 0; }
    .asx-about { grid-template-columns: 1fr; gap: 40px; }
    .asx-about-figure { max-width: 520px; margin: 0 auto; }
    .asx-timeline { grid-template-columns: repeat(2, 1fr); gap: 40px 26px; }
    .asx-timeline::before { display: none; }
    .asx-cta-inner { margin: 0 auto; }
}
@media (max-width: 575.98px) {
    .asx-section { padding: 52px 0; }
    .asx-grid { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; }
    .asx-card { padding: 22px 14px; border-radius: 15px; }
    .asx-ic { width: 68px; height: 68px; }
    .asx-ic img, .asx-ic svg { width: 38px; height: 38px; }
    .asx-card-title { font-size: 15px; }
    .asx-timeline { grid-template-columns: 1fr; }
    .asx-about-figure::after { display: none; }
}

/* ==========================================================================
   T175 — current-page header-nav highlight (class: iv-current)
   --------------------------------------------------------------------------
   The class is emitted server-side by Models\HeaderNav.cs from the current
   controller/action (see Views\Shared\_Layout.cshtml, both nav copies).

   iv-current is DELIBERATELY distinct from the theme's th-active, which is the
   mobile accordion open/closed state written by thmobilemenu — never reuse it.
   Marking a parent iv-current is styling only; it does NOT open the accordion.

   The vendor assets\css\style.css is never edited; everything lives here.
   Colours come from the theme's own --theme-color / --title-color variables.
   ========================================================================== */

/* ---------- Desktop nav (.main-menu) ---------- */
.main-menu ul li.iv-current > a {
    color: var(--theme-color);
}

/* underline sits inside the existing padding — no width/weight change,
   so nav item widths (and therefore the header layout) are untouched. */
.main-menu > ul > li.iv-current > a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 26px;
    height: 2px;
    background: var(--theme-color);
    border-radius: 2px;
    pointer-events: none;
}

/* the theme already uses ::after on a parent item for its +/- glyph —
   don't fight it: parents get colour only, no underline. */
.main-menu > ul > li.iv-current.menu-item-has-children > a::after {
    content: "\2b";
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    height: auto;
    background: none;
    border-radius: 0;
}

/* sub-menu entries */
.main-menu ul.sub-menu li.iv-current > a {
    color: var(--theme-color);
}

/* ---------- Mobile off-canvas nav (.th-mobile-menu) ---------- */
.th-mobile-menu ul li.iv-current > a {
    color: var(--theme-color);
    font-weight: inherit; /* never change weight — it would shift the row */
}

.th-mobile-menu ul li.iv-current > a::before {
    background-color: var(--theme-color);
}

@media (max-width: 400px) {
    .main-menu > ul > li.iv-current > a::after {
        bottom: 20px;
    }
}

/* T176: moved verbatim from Views/Shared/_Layout.cshtml (inline <style> block).
   Linked at the exact position the <style> block occupied so the cascade is unchanged. */

#countryDropdownMenu .dropdown-item {
    display: flex;
    align-items: center;
    gap: 8px; /* space between flag and text */
    padding: 6px 12px; /* consistent padding */
}

#countryDropdownMenu .fi {
    font-size: 1.2em; /* adjust flag size */
}

#countryDropdown {
    width: 100px;
    text-align: center;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis; /* adds "…" if text is too long */
}

.btn-close-white {
    filter: invert(1) grayscale(100%) brightness(200%);
}

/* T176: replacements for repeated inline style="" attributes in _Layout.cshtml */

.rv-preloader-dim {
    background-color: #1f1f1fa3 !important;
}

.rv-toastwrap-11 {
    z-index: 11;
}

.rv-toastwrap-9999 {
    z-index: 9999;
}

.rv-toast-closebtn {
    background-color: white;
    width: 20px;
    height: 20px;
}

/* ================================================================
   T408 — the sticky header row wrapped onto a second line
   ----------------------------------------------------------------
   .sticky-wrapper .menu-area .row is a Bootstrap row of three col-auto (logo,
   nav, actions). col-auto sizes to content, so as soon as the three exceed the
   row the ACTIONS column drops to a second line and the header doubles in height
   (measured 142-166px instead of 100px).

   Before this fix it wrapped at EVERY desktop width from 992 to 1600:

     width  row     logo + nav + actions  =  total   over
      1440  1425     238 + 746 + 643      =  1627    +202
      1200  1185     232 + 746 + 384      =  1362    +177
      1024  1009     232 + 746 + 198      =  1176    +167

   ⚠⚠ MEASURE THIS IN GERMAN, NEVER IN ENGLISH ALONE.
   The nav labels and the CTA are DB-driven and English dev data is far shorter
   than the real thing: "Book a Table" is ~170px but "Einen Tisch reservieren" is
   ~250px, and "Menu" becomes "Speisekarte". A first pass tuned on the English
   labels measured clean from 992px up and still wrapped in German at 1200, 1280,
   1366 and 1600. Every breakpoint below is set by what fits in GERMAN, so it has
   slack in English rather than the other way round.

   ⚠ ORGANISED BY BREAKPOINT BAND, WIDEST FIRST — not by property. Media queries
   add no specificity, so these rules are decided purely by source order. Written
   property-first, a narrow-band override placed above a wider-band rule silently
   loses; that happened during this fix (a 106px logo cap sat above the 132px one
   and never applied — computed max-width read 132px inside the band that was
   supposed to be 106px). Keep each band self-contained.
   ================================================================ */

/* --- the desktop nav now starts at 992, not 1200 (T482, 2026-08-24) --------
   T408 originally held the desktop nav back to 1200 because 7 German items
   didn't fit below it (measured 74px over at 992 with the tightest spacing
   that still looked deliberate). T482 recovers that 74px+ with the band
   directly below (flag-only country dropdown, a tighter logo cap, tighter
   nav-item margins, a tighter row gutter) and REMEASURED with the real
   headless-Chromium + real DB-localized EN/DE/FR labels (never English-only
   per the T408 note above) at 992/1024/1100/1199 WITH that recovery band
   applied:
     lang  992   1024  1100  1199   (all: single-line row, 100px height, 0px
     EN    fits  fits  fits  fits    page-level horizontal overflow)
     DE    fits  fits  fits  fits
     FR    fits  fits  fits  fits
   DE was the tightest case (logo+nav+actions summed ~6px over the row's
   inner width at exactly 992px with the FIRST recovery pass — logo cap
   106px/li margin 3px/guttter .5rem — and wrapped to a 142px 2nd line there
   only); the numbers above are the SECOND, shipped pass (logo cap 96px/li
   margin 2px/gutter .35rem) which closed that last 6px and is single-line
   at all 4 widths in all 3 languages. Branch A (this) was taken over the
   labelled-hamburger fallback (Branch B) because it genuinely fit — see
   02_plan.md / 03_progress.md for the full sweep JSON.

   Below 992 the hamburger takes over — it already carries the full menu.
   Safe to move here, unlike the equivalent change in the River Village
   client: this project's mobile menu (main.js "03. Mobile Menu") is a pure
   class toggle with no matchMedia and no hardcoded width, so the changeover
   lives entirely in these display rules. If that ever changes, the JS must
   move with them. */
@media (max-width: 991.98px) {
    .sticky-wrapper .menu-area .row > .col-auto.d-lg-block { display: none !important; }
    .sticky-wrapper .th-menu-toggle { display: block !important; }
}

/* --- 992-1199.98: nav is now shown here too, so buy back its width (T482) --
   #countryDropdown .rv-country-code is a new <span> wrapping the "DE"/"GB"/
   "FR"/"AE" text node in _Layout.cshtml (T221/T472 flag-only collapse
   pattern) — hiding it here keeps the flag + caret only, the dropdown still
   opens and each SetLanguage form still submits (unchanged markup/JS). */
@media (min-width: 992px) and (max-width: 1199.98px) {
    #countryDropdown { width: auto; padding-left: 8px; padding-right: 8px; }
    #countryDropdown .rv-country-code { display: none; }
    .sticky-wrapper .header-logo img { max-width: 96px; }
    .sticky-wrapper .main-menu > ul > li { margin: 0 2px; }
    .sticky-wrapper .menu-area > .container > .row { --bs-gutter-x: .35rem; }
}

/* --- 1200+: the desktop nav is shown, so buy back its width ------------------ */
@media (min-width: 1200px) {
    /* 12px each side on seven items is 168px spent on air; half is still clear */
    .sticky-wrapper .main-menu > ul > li { margin: 0 6px; }
    /* the logo renders at 188x60; height:auto preserves the aspect ratio */
    .sticky-wrapper .header-logo img { max-width: 150px; height: auto; }
    /* three col-auto at Bootstrap's default 1.5rem carry 72px of padding between
       them; 0.75rem is ample separation in a header row */
    .sticky-wrapper .menu-area > .container > .row { --bs-gutter-x: .75rem; }
}

/* --- 1200-1499: nav is present but the row is still tight ------------------- */
@media (min-width: 1200px) and (max-width: 1499.98px) {
    .sticky-wrapper .main-menu > ul > li { margin: 0 4px; }
    .sticky-wrapper .header-logo img { max-width: 132px; }
}

/* --- the reservation CTA waits until 1500 -----------------------------------
   The theme showed it from 1200 (d-xl-block). At 1200-1499 the German label
   ("Einen Tisch reservieren", ~250px) pushed the row over again — measured -14px
   at 1400. Safe to hold back because it is NOT the only route to booking: "Book
   Table" is its own top-level nav item pointing at the same action (the
   duplication is deliberate and documented at T175). */
@media (max-width: 1499.98px) {
    .sticky-wrapper .header-button > .th-btn { display: none !important; }
}

/* --- the phone block waits until 1800 ---------------------------------------
   .header-call is the single most expensive item in the actions cluster at 209px
   plus its gap. The theme held it back to 1400; in German that still overflowed
   by 135px at 1600 and 35px at 1700.
   ⚠ It is NOT duplicated in the top bar (that carries the address and opening
   hours), so do not "simplify" this by deleting the block — it must come back on
   a wide desktop, which is what this rule preserves. */
@media (max-width: 1799.98px) {
    .sticky-wrapper .header-call { display: none !important; }
}

/* =====================================================================
   SpiceLevels.css — T348 per-item spice selector (Mild / Medium / Spicy)
   and the small read-only chip that shows the chosen level.

   ⚠ OWN .ivspice-* PREFIX ON PURPOSE — do NOT fold these rules into
   FoodOrder.css / GalleryLux.css / style.css and do NOT extend .fo-* or
   .rgal-*. Under owner decision (b) this component renders on THREE pages
   (Food Order, Gallery dish modal, Menu feature cards) whose existing class
   families already overlap, so a leak in either direction is a real risk:
   a .fo-* rule silently restyling a gallery card, or vice versa. Everything
   here is scoped under .ivspice / .ivspice-chip and nothing else.

   ONE component, three density variants:
     .ivspice--card   Food Order dish card   — full 3-segment pill
     .ivspice--modal  Gallery dish modal     — full 3-segment pill
     .ivspice--menu   Menu feature cards     — compact, floats on the photo
   ===================================================================== */

:root {
    --ivspice-gold: #c9a44c;
    --ivspice-ink: #1f1f1f;
}

/* =====================================================================
   T358a — .ivic-*: the SHARED icon-with-accessible-name component
   (markup: Views\Shared\_IconWithLabel.cshtml).

   ⚠ Why it lives in THIS file: _Layout.cshtml links SpiceLevels.css
   unconditionally on every page (a plain <link>, not a bundle), so these rules
   are available everywhere the component can render — including MyOrders — with
   no new asset, no BundleConfig entry and no _Layout change. Phase B (T358b)
   renders the dietary-exclusion icons through the same component and will reuse
   these same rules.

   ⚠ Deliberately NOT prefixed .ivspice-*: this component is not spice-specific.
   Do not fold it into .fo-* / .rgal-* / .ivm-* either — same leak risk that gave
   .ivspice-* its own prefix in the first place.
   ===================================================================== */
.ivic {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    vertical-align: middle;
}

/* Size comes from the width/height ATTRIBUTES the partial emits (so the box is
   reserved before the image loads — no layout shift). Only override it in a
   media query where a context genuinely needs to shrink. */
.ivic-img {
    display: block;
    object-fit: contain;
    flex: 0 0 auto;
}

/* visible label variant */
.ivic-lbl {
    line-height: 1;
    white-space: nowrap;
}

/* visually-hidden label: removed from the page visually, still announced. */
.ivic-sr {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

/* ---------- base pill ---------- */
.ivspice {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin: 8px 0 0;
}

.ivspice-lbl {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: #8a6d23;
    margin-right: 2px;
}

.ivspice-opt {
    /* ≥44px tap target on every variant/width (WCAG target size). */
    min-height: 44px;
    min-width: 44px;
    /* T358a — the level WORD is no longer painted (icon + visually-hidden name), so
       the horizontal padding no longer has to reserve room for "Medium". Tightened
       12px -> 8px, which keeps the three options a compact set while min-width:44px
       still guarantees the tap target. */
    padding: 4px 8px;
    border: 1px solid #e3d3ab;
    border-radius: 999px;
    background: #fdfaf2;
    color: #6f5a22;
    font-size: 12.5px;
    font-weight: 700;
    line-height: 1.1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    /* T371 — positioning context for the tick badge (mirrors .ivdiet-opt).
       ⚠ REQUIRED: without it the absolutely-positioned .ivspice-tick escapes to the
       nearest positioned ancestor, which on the `menu` variant is .ivm-dish-spice
       (position:absolute, :256) — the tick would land in the wrong place entirely,
       not merely a few pixels off. Base rule, not per-variant, so no variant can be
       silently missed. */
    position: relative;
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}

.ivspice-opt:hover {
    border-color: var(--ivspice-gold);
    background: #f7edd6;
}

.ivspice-opt:focus-visible {
    outline: 3px solid var(--ivspice-ink);
    outline-offset: 2px;
}

/* T358a — the ACTIVE fill changed gold -> INK.
   ⚠ Not cosmetic drift: the owner's icons are a red chilli inside a GOLD rim, so on
   the previous gold gradient the rim blended into the background and the selected
   option read as the least legible of the three. Ink gives the gold/red art maximum
   contrast, and it matches the already-shipped Admin sibling (.fx-spice-opt.is-active
   in FoodOrders.css), so the two apps agree.
   Selection is signalled by THREE things, never colour alone (WCAG 1.4.1): the ink
   fill, a gold ring, and full-opacity art while unselected art sits back at .62. */
.ivspice-opt.is-active {
    background: linear-gradient(135deg, #1c1c1c, #3a2c10);
    border-color: #1c1c1c;
    color: #f3c96e;
    box-shadow: 0 0 0 2px rgba(201, 164, 76, .55), 0 2px 8px rgba(28, 28, 28, .3);
}

/* ---------- T358a: the level icons inside the selector ---------- */
/* The icon lives in the shared .ivic component (Views\Shared\_IconWithLabel.cshtml),
   sized 26px via width/height attributes so the box is reserved before load. It sits
   INSIDE the existing ≥44px option box, so no variant grows taller — T348's F2
   limitation (dish-modal add button below the fold) is deliberately not worsened. */
.ivspice-opt .ivic-img {
    opacity: .62;
    filter: saturate(.75);
    transition: opacity .18s ease, filter .18s ease, transform .18s ease;
}

.ivspice-opt:hover .ivic-img {
    opacity: .85;
    filter: none;
}

.ivspice-opt.is-active .ivic-img {
    opacity: 1;
    filter: none;
    transform: scale(1.06);
}

/* ---------- the read-only chip (cart line / order line) ---------- */
/* T358a — the chip is now ICON + VISIBLE WORD, not word alone.
   ⚠ The word STAYS on the chip on purpose, and this is a measured decision, not
   timidity about the owner's "icons instead of text": rendered at the chip's
   inline size the Mild and Medium emblems are not reliably distinguishable from
   each other (they differ only in ring style and flame height; only Hot, a solid
   red disc, reads at that size). "Icons instead of text" is honoured where the
   guest CHOOSES — the 26px selector — while the small read-only chips keep the
   word so a line can never be misread. Do not drop the word here without
   re-measuring at 16px. */
.ivspice-chip {
    display: inline-block;
    /* right margin so the chip never collides with what follows it (MyOrders renders
       "<name> <chip> ×2"); harmless where the chip is last (the cart line). */
    margin: 0 4px 0 6px;
    padding: 1px 8px;
    border: 1px solid #e3d3ab;
    border-radius: 999px;
    background: #fdf6e8;
    color: #8a5a17;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.5;
    white-space: nowrap;
    vertical-align: middle;
}

/* ---------- variant: Gallery dish modal ---------- */
/* The roomiest surface. Sits directly above the add-to-cart row so it can
   never push that button below the fold — see the 360px rule further down. */
.rgal-md-spicewrap {
    margin: 10px 0 0;
}

.ivspice--modal {
    margin: 0;
}

/* ---------- variant: Food Order dish card (T365) ---------- */
/* ⚠ Until T365 this variant had NO rules at all — it silently inherited the base,
   which is sized for the roomiest surface (the modal). Measured at HEAD on the
   real page: `.fo-dish-info` is only ~109-169px wide at 992-1280px, so the three
   word-bearing options WRAPPED — the spice row rendered 144px tall at 1280px and
   176px at 992px, i.e. three or four stacked 44px rows inside a card whose photo
   is 72px. That vertical stack, not the horizontal width, is what read as
   "unnecessarily wide". Every lever below is horizontal-per-option, so more
   options fit per line and the row wraps onto fewer of them.

   ⚠ The level WORD stays (T358b owner amendment M4 — "Spicy icon should be with
   name like mild, medium or Hot"; the Mild and Medium emblems are not reliably
   distinguishable from each other at small sizes, see the note at :164). Only its
   font-size shrinks here. Dropping it would reverse an explicit owner decision.

   ⚠ min-height / min-width:44px are NOT touched — T358a was REOPENED because two
   controls shipped under the WCAG target size. Padding, gap and font-size only. */
.ivspice--card {
    gap: 4px;
    margin: 6px 0 0;
}

.ivspice--card .ivspice-lbl {
    font-size: 10px;
    letter-spacing: .2px;
    margin-right: 0;
}

.ivspice--card .ivspice-opt {
    padding: 4px 6px;
}

/* Scoped override of the shared .ivic gap (base 4px) — never edit .ivic itself,
   it is the shared icon-with-accessible-name component used well beyond here. */
.ivspice--card .ivspice-opt .ivic {
    gap: 2px;
}

/* 22px is not a guess: it is the size .ivspice--menu already ships and which was
   measured clean at 360px (see :265-268 and the measured note below it). */
.ivspice--card .ivspice-opt .ivic-img {
    width: 22px;
    height: 22px;
}

.ivspice--card .ivspice-opt .ivic-lbl {
    font-size: 10.5px;
}

/* ---------- variant: Menu feature cards ---------- */
/* ⚠ position:absolute is deliberate — these cards are a photo-overlay design
   and the pill must NOT enter the flow, or the card grid reflows (column
   count / card height would change vs. an unflagged control card).
   Top-left is the dietary badges and top-right is the add-to-cart button, so
   the pill sits UNDER the add button on the right edge. */
.ivm-dish-spice {
    position: absolute;
    top: 62px;                 /* 44px add button + 8px gap + 10px top inset */
    right: 10px;
    z-index: 4;
    max-width: calc(100% - 20px);
}

.ivspice--menu {
    margin: 0;
    justify-content: flex-end;
    gap: 4px;
    padding: 4px 6px;
    border-radius: 999px;
    background: rgba(20, 20, 20, .58);
    backdrop-filter: blur(2px);
}

.ivspice--menu .ivspice-lbl {
    display: none;             /* the tightest layout in the app — no room for a label */
}

.ivspice--menu .ivspice-opt {
    min-height: 44px;
    /* ⚠ T358a — was 40px (T348). It was NON-BINDING then, because the option contained
       the WORD and "Medium" alone is wider than 40px, so the box measured >=44px by
       accident. Going icon-only made 40px the binding constraint and the option measured
       42x44 — i.e. UNDER the 44px WCAG target size, at every width. Found by measuring
       the shipped CSS in a real browser, not by reading it. Raised to 44px: costs 6px
       across the three options, and the pill still sits inside
       max-width: calc(100% - 20px) on the tightest 360px card (re-measured). */
    min-width: 44px;
    padding: 3px 9px;
    font-size: 11.5px;
}

/* ---------- responsive ---------- */
@media (max-width: 575.98px) {
    .ivspice {
        gap: 5px;
    }

    .ivspice-opt {
        padding: 4px 7px;
        font-size: 12px;
    }

    /* T358a — one notch smaller on phones. Overrides the 26px width/height
       attributes the partial emits; min-height:44px still holds the tap target. */
    .ivspice-opt .ivic-img {
        width: 24px;
        height: 24px;
    }
}

/* T358a — the tightest layout in the app: the Menu feature card's floating pill.
   The icon drops to 22px there so three options + the dark backing pill still fit
   inside `max-width: calc(100% - 20px)` on a 360px card. */
.ivspice--menu .ivspice-opt .ivic-img {
    width: 22px;
    height: 22px;
}

/* T348 §4.2 — the Menu-card abbreviation fallback (M ｜ Md ｜ S below 400px) was
   REMOVED after measurement. The plan made this a measure-then-decide call, and the
   full-word pill measures clean on the tightest card in the app. Measured live with
   this whole block deleted (so the base + <=575.98px rules are what apply):
     360px  pill 184px, ONE row, no option clipped (scrollWidth == clientWidth on all
            three), pill right edge 337 <= card right edge 348, options 45/67/50 x 44px,
            card box 336x253 — IDENTICAL to an unflagged control card (no grid reflow),
            page-level scrollWidth == clientWidth == 360 (same as /Home/Contact).
     400 / 575 / 1280px — same result; full words at every width.
   Full words win on legibility, so the abbreviation is gone rather than kept "just in
   case". ⚠ Do NOT reintroduce it without re-measuring at 360px. */

/* At phone height the modal must keep its add-to-cart button reachable, so the
   selector above it stays as short as possible (measure vertical containment,
   not just overflow — a width pass can be GREEN while the button is unreachable). */
@media (max-height: 700px) {
    .rgal-md-spicewrap {
        margin-top: 6px;
    }

    .ivspice--modal .ivspice-opt {
        min-height: 44px;
        padding: 2px 10px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ivspice-opt {
        transition: none;
    }

    /* T358a — the icon's own transition AND the 1.06 scale on the active option.
       The selected state stays fully signalled without motion (ink fill + gold ring
       + full-opacity art), so dropping the transform costs no information. */
    .ivspice-opt .ivic-img {
        transition: none;
    }

    .ivspice-opt.is-active .ivic-img {
        transform: none;
    }
}

/* ---------- T371: the CSS-only tick badge (owner request A) ---------- */
/* ⚠ ITS OWN CLASS, DELIBERATELY. SpiceLevels.css:371 forbids merging these two
   controls: "the two controls deliberately look related but are NOT the same
   component." Do NOT reuse .ivdiet-tick on spice markup and do NOT merge them —
   spice is role="radiogroup"/radio (single-select), dietary is role="group"/checkbox
   (multi-select). The separation is an a11y distinction, not cosmetics.

   ⚠ Gated on .is-active (spice), NOT .is-on (dietary) — never conflate the two.

   ⚠ CSS-ONLY: a \2713 glyph, NO new image binary in ANY repo. ⚖ T362 is open
   precisely because ~2.0 MB of unused PNGs were nearly published into an app that
   does not use them.

   Absolutely positioned so it cannot change the option's box and therefore cannot
   push the Gallery dish-modal add button further below the fold (T348's F2
   limitation must not regress). Visually identical to .ivdiet-tick on purpose, so
   the two rows read as one design language while remaining two components.

   This is the THIRD non-colour selection signal (WCAG 1.4.1): tick + ink fill +
   full-opacity art (unselected art sits back at .62). */
.ivspice-tick {
    position: absolute;
    top: -3px;
    right: -3px;
    width: 17px;
    height: 17px;
    border-radius: 50%;
    display: none;
    background: #1c7a3e;
    border: 2px solid #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .35);
}

.ivspice-opt.is-active .ivspice-tick {
    display: block;
}

.ivspice-tick::after {
    /* U+2713 CHECK MARK — a font glyph, not an asset. */
    content: "\2713";
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
}

/* =====================================================================
   T358b — .ivdiet-*: the MULTI-SELECT dietary-requirement selector
   (markup: Views\Home\_DietarySelector.cshtml) and .ivdiet-chip, the small
   read-only chip that shows the chosen set on a cart / order line.

   ⚠ OWN .ivdiet-* PREFIX, for the same reason .ivspice-* has one: this
   component renders on the SAME three pages (Food Order, Gallery dish modal,
   Menu feature cards) whose .fo-* / .rgal-* / .ivm-* families already overlap.
   Do NOT fold these rules into those files and do NOT extend .ivspice-* —
   the two controls deliberately look related but are NOT the same component.

   ⚠ THE TICK IS CSS-ONLY — a ::after glyph, NO new image binary in ANY repo,
   and categorically none in RV Client. ⚖ T362 is open precisely because ~2.0 MB
   of unused watermarked PNGs were nearly published into an app that does not use
   them; this component is deliberately structured not to repeat it.

   ⚠ Selection is signalled by THREE things, never colour alone (WCAG 1.4.1):
   the tick badge, the ink fill + gold ring, and full-opacity art (unselected art
   sits back at .62, exactly like .ivspice-opt).
   ===================================================================== */

.ivdiet {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin: 8px 0 0;
}

.ivdiet-lbl {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: #8a6d23;
    margin-right: 2px;
}

.ivdiet-opt {
    /* ≥44px tap target on every variant/width (WCAG target size). T358a was
       REOPENED for exactly this — two choosing controls shipped at 42×44 and
       40×40 and had to be corrected. Do not shrink these two values. */
    min-height: 44px;
    min-width: 44px;
    padding: 4px 8px;
    border: 1px solid #e3d3ab;
    /* T363 — SQUARE badge, matching .fo-dish-icons' 8px, replacing the 999px PILL.
       ⚠ RADIUS ONLY — a pure shape change with NO size change: with the label visually
       hidden the content is ~26px icon + 4px/8px padding ≈ 42×34, so the min-* values
       above already win and the control is already 44×44. The two min-* lines above must
       NOT shrink (T358a was REOPENED for exactly that). This also reaches the `modal` and
       `menu` variants via the shared base class — deliberate, consistent, one-line revert. */
    border-radius: 8px;
    background: #fdfaf2;
    color: #6f5a22;
    font-size: 12.5px;
    font-weight: 700;
    line-height: 1.1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    /* positioning context for the tick badge */
    position: relative;
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}

.ivdiet-opt:hover {
    border-color: var(--ivspice-gold);
    background: #f7edd6;
}

.ivdiet-opt:focus-visible {
    /* NEVER outline:none — this control is keyboard-operable end to end. */
    outline: 3px solid var(--ivspice-ink);
    outline-offset: 2px;
}

/* Selected. Same ink+gold treatment as .ivspice-opt.is-active so the two rows
   read as one design language, while remaining separate components. */
.ivdiet-opt.is-on {
    background: linear-gradient(135deg, #1c1c1c, #3a2c10);
    border-color: #1c1c1c;
    color: #f3c96e;
    box-shadow: 0 0 0 2px rgba(201, 164, 76, .55), 0 2px 8px rgba(28, 28, 28, .3);
}

/* T363 — hidden by GalleryLux.js's per-dish modal filter (`o.hidden = true`).
   Belt-and-braces, not load-bearing today: Bootstrap already ships an AUTHOR-level
   `[hidden]{display:none!important}` rule (bootstrap.min.css) that beats the
   `display:inline-flex` above on its own — measured live (Stage 4, T363): removing
   this block leaves the computed style at `display:none` unchanged. This rule keeps
   the modal filter working even if Bootstrap's own [hidden] rule is ever dropped or
   downgraded, so it stays — but do not describe it as REQUIRED; it is not, today. */
.ivdiet-opt[hidden],
.ivdiet[hidden] {
    display: none !important;
}

/* T363 — squareness guaranteed in CSS, not left to the width/height ATTRIBUTES the
   partial emits, so the acceptance measurement is meaningful and cannot drift if a
   caller ever changes the "size" ViewData. Same 26px the spice row uses, so the two
   rows still line up. object-fit:contain ⇒ nothing cropped or distorted. */
.ivdiet-opt .ivic-img {
    width: 26px;
    height: 26px;
    object-fit: contain;
    opacity: .62;
    filter: saturate(.75);
    transition: opacity .18s ease, filter .18s ease, transform .18s ease;
}

.ivdiet-opt:hover .ivic-img {
    opacity: .85;
    filter: none;
}

.ivdiet-opt.is-on .ivic-img {
    opacity: 1;
    filter: none;
    transform: scale(1.06);
}

/* ---------- the CSS-only tick badge (owner M3) ---------- */
/* Absolutely positioned so it cannot change the option's box and therefore cannot
   push the dish-modal add button further below the fold (T348's F2 limitation must
   not regress — FR-14). Rendered only when selected. */
.ivdiet-tick {
    position: absolute;
    top: -3px;
    right: -3px;
    width: 17px;
    height: 17px;
    border-radius: 50%;
    display: none;
    background: #1c7a3e;
    border: 2px solid #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .35);
}

.ivdiet-opt.is-on .ivdiet-tick {
    display: block;
}

.ivdiet-tick::after {
    /* U+2713 CHECK MARK — a font glyph, not an asset. */
    content: "\2713";
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
}

/* ---------- density variants ---------- */
/* "menu" is the tightest layout in the app; the Menu feature card's spice pill is
   deliberately position:absolute so the grid cannot reflow (FR-14). The dietary row
   is laid out in normal flow inside the same card body and simply wraps. */
.ivdiet--menu {
    gap: 4px;
    margin-top: 6px;
}

.ivdiet--menu .ivdiet-opt {
    padding: 4px 6px;
}

/* ---------- variant: Food Order dish card (T365) ---------- */
/* ⚠⚠ READ THIS BEFORE "OPTIMISING" THIS BLOCK — the honest ceiling here is SMALL.
   The dietary option is icon-only (`{ "text", "hidden" }`), so its content is only
   ~26px icon + 8px padding ≈ 42x34. `min-width:44px` on .ivdiet-opt is therefore
   ALREADY the binding dimension, which means:

       REDUCING .ivdiet-opt PADDING CHANGES THE RENDERED WIDTH BY EXACTLY ZERO.

   Verified live at HEAD: every option measures 44x44 at every width. The only
   honest levers left are the row gap and the label, worth ~15-20px across the
   5-option worst case — NOT the ~80px the spice row gives. That is the correct
   outcome, not a shortfall.

   ⚠ Do NOT reach for min-width / min-height to close the gap. T358a was REOPENED
   specifically because two controls shipped at 42x44 and 40x40, under the WCAG
   target size. A 5-option row is SUPPOSED to be >= 5x44 = 220px wide. The padding
   line below is kept only so the icon is centred consistently with the spice row;
   it is deliberately not doing any width work. */
.ivdiet--card {
    gap: 4px;
    /* tighter than the base 8px so this row and the spice row above it read as one
       block rather than two detached strips (they remain two separate components,
       two roles, two JS handlers — see the partial's own banner). */
    margin: 4px 0 0;
}

.ivdiet--card .ivdiet-lbl {
    font-size: 10px;
    letter-spacing: .2px;
    margin-right: 0;
}

.ivdiet--card .ivdiet-opt {
    padding: 4px 6px;
}

/* T371 (owner request C, superseding an earlier 35px-only request) — the dietary
   selector's icons take the .fo-dish-icons badge look.
   ⚠ SCOPED to .ivdiet--card ONLY. NEVER edit the shared .ivic / .ivic-img base
   (SpiceLevels.css:233 verbatim: "never edit .ivic itself") — it is consumed by the
   spice, Gallery, Menu and Signature surfaces too.
   Mirrors FoodOrder.css:168-173 (+:406 for the phone size), read-only reference.
   ⚠ NO `transition` here on purpose: the base rule .ivdiet-opt .ivic-img (:523-530)
   already declares `transition: opacity .18s, filter .18s, transform .18s`, and the
   `transition` SHORTHAND would RESET the opacity/filter transitions if re-declared.
   ⚠ NO `object-fit` here on purpose: the base rule already sets `contain`. */
.ivdiet--card .ivdiet-opt .ivic-img {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: #fff;
    padding: 3px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, .16);
}

/* T371 — hover affordance, matching .fo-dish-icons img:hover.
   ⚠ :not(.is-on) is LOAD-BEARING, not stylistic (Q4: "selection wins over hover").
   Without it this selector (0,5,0) would out-specify the selected rule
   .ivdiet-opt.is-on .ivic-img (0,3,0) at :537-541, and a SELECTED option would jump
   1.06 -> 1.2 on hover — selection is information, hover is only affordance.
   :not(.is-on) makes the two mutually exclusive, so the outcome can never be broken
   by a later source-order edit. */
.ivdiet--card .ivdiet-opt:not(.is-on):hover .ivic-img {
    transform: scale(1.2);
}

/* ---------- the read-only chip (cart line / order line / bill) ---------- */
/* ⚠ Renders ONLY when the set is non-empty — never an empty chip, a stray
   separator, or the literal "null" (FR-19: a pre-feature line is byte-identical). */
.ivdiet-chip {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 8px;
    border-radius: 999px;
    background: #eef7f0;
    border: 1px solid #bfe0c9;
    color: #1c5c33;
    font-size: 11.5px;
    font-weight: 700;
    line-height: 1.5;
    vertical-align: middle;
    white-space: normal;
}

@media (max-width: 575.98px) {
    /* Keep the seven options usable at 360px: they wrap onto as many rows as
       needed rather than overflowing the card (page-level horizontal overflow is
       measured against an untouched control page — never a rect sweep). */
    .ivdiet {
        gap: 5px;
    }

    .ivdiet-opt {
        padding: 4px 6px;
    }

    /* T371 — matches FoodOrder.css:406 (.fo-dish-icons img at 45px on phones). */
    .ivdiet--card .ivdiet-opt .ivic-img {
        width: 45px;
        height: 45px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ivdiet-opt,
    .ivdiet-opt .ivic-img {
        transition: none;
    }

    .ivdiet-opt.is-on .ivic-img {
        transform: none;
    }

    /* T371 — the .is-on transform was already cancelled above; the HOVER transform is
       new in this task and was not covered, because none existed until now. A 1.2x
       scale IS motion — shipping it un-cancelled would be a real a11y regression. */
    .ivdiet--card .ivdiet-opt:not(.is-on):hover .ivic-img {
        transform: none;
    }
}

