/* Minification failed. Returning unminified contents.
(3,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(5,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(7,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(9,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(15,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(17,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(22,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(23,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(24,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(25,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(26,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(27,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(28,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(29,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(30,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(31,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(32,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(33,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(34,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(35,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(36,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(37,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(38,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(39,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(41,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(42,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(43,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(44,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(45,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(46,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(47,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(48,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(49,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(50,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(51,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(53,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(54,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(55,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(56,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(57,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(58,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(59,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(60,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(62,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(63,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(64,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(65,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(66,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(67,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(68,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(69,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(71,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(72,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(73,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(74,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(75,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(76,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(78,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(79,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(80,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(82,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(84,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(85,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(87,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(88,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(120,21): run-time error CSS1039: Token not allowed after unary operator: '-font-family-base'
(124,15): run-time error CSS1039: Token not allowed after unary operator: '-text'
(127,26): run-time error CSS1039: Token not allowed after unary operator: '-background-color'
(159,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(163,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(213,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(215,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(226,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(231,15): run-time error CSS1039: Token not allowed after unary operator: '-black'
(236,17): run-time error CSS1039: Token not allowed after unary operator: '-black'
(243,15): run-time error CSS1039: Token not allowed after unary operator: '-black'
(245,20): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(440,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(558,15): run-time error CSS1039: Token not allowed after unary operator: '-darkgray'
(623,26): run-time error CSS1039: Token not allowed after unary operator: '-line'
(624,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(628,26): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(631,15): run-time error CSS1039: Token not allowed after unary operator: '-text'
(641,24): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(643,28): run-time error CSS1039: Token not allowed after unary operator: '-white'
(654,24): run-time error CSS1039: Token not allowed after unary operator: '-line-strong'
(664,28): run-time error CSS1039: Token not allowed after unary operator: '-whitegray'
(665,17): run-time error CSS1039: Token not allowed after unary operator: '-darkgray'
(667,24): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(686,15): run-time error CSS1039: Token not allowed after unary operator: '-black'
(688,26): run-time error CSS1039: Token not allowed after unary operator: '-line'
(689,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(721,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(727,26): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color'
(728,26): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color'
(734,28): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color-hover'
(735,24): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color-hover'
(744,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(749,28): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(750,24): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(751,17): run-time error CSS1039: Token not allowed after unary operator: '-white'
(756,26): run-time error CSS1039: Token not allowed after unary operator: '-disabled-button-background-color'
(757,15): run-time error CSS1039: Token not allowed after unary operator: '-disabled-button-text-color'
(758,26): run-time error CSS1039: Token not allowed after unary operator: '-disabled-button-border-color'
(765,27): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(772,26): run-time error CSS1039: Token not allowed after unary operator: '-active-button-background-color'
(773,22): run-time error CSS1039: Token not allowed after unary operator: '-active-button-border-color'
(784,26): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color'
(786,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(799,33): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(807,15): run-time error CSS1039: Token not allowed after unary operator: '-black'
(824,26): run-time error CSS1039: Token not allowed after unary operator: '-request-feedback-ink'
(873,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(883,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(884,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(888,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(889,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(893,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(900,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(907,44): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(908,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(915,58): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(916,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(925,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(930,28): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(931,24): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(932,17): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(940,26): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(941,22): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(942,15): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(946,28): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(947,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(948,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(954,44): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(955,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(956,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(962,58): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(963,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(964,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(972,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(983,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(989,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(990,28): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(991,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(997,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(1072,20): run-time error CSS1039: Token not allowed after unary operator: '-surface-soft'
(1073,15): run-time error CSS1039: Token not allowed after unary operator: '-text'
(1075,30): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1085,19): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(1089,31): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1126,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(1152,26): run-time error CSS1039: Token not allowed after unary operator: '-line-strong'
(1153,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(1154,15): run-time error CSS1039: Token not allowed after unary operator: '-text'
(1155,20): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(1161,24): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(1162,28): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(1177,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(1183,33): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1225,26): run-time error CSS1039: Token not allowed after unary operator: '-line'
(1226,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(1227,20): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(1228,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(1292,30): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1317,28): run-time error CSS1039: Token not allowed after unary operator: '-bs-gutter-x'
(1410,17): run-time error CSS1039: Token not allowed after unary operator: '-darkgray'
(1411,26): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1411,50): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1415,19): run-time error CSS1039: Token not allowed after unary operator: '-black'
(1450,21): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(1452,15): run-time error CSS1039: Token not allowed after unary operator: '-text'
(1458,21): run-time error CSS1039: Token not allowed after unary operator: '-line-height-tight'
(1463,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(1468,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-3xl'
(1481,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-2xl'
(1485,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xl'
(1490,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-lg'
(1495,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(1564,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(1565,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(1565,40): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(1676,15): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1685,15): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1701,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1726,15): run-time error CSS1039: Token not allowed after unary operator: '-darkgray'
(1733,17): run-time error CSS1039: Token not allowed after unary operator: '-black'
(1737,15): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1755,26): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1760,28): run-time error CSS1039: Token not allowed after unary operator: '-highlight'
(1764,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1765,15): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1769,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1780,50): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1780,66): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1797,29): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1813,26): run-time error CSS1039: Token not allowed after unary operator: '-background-color'
(1821,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1858,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1870,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1884,28): run-time error CSS1039: Token not allowed after unary operator: '-secondary'
(1891,29): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1931,19): run-time error CSS1039: Token not allowed after unary operator: '-black'
(1940,30): run-time error CSS1039: Token not allowed after unary operator: '-checkbox-border-color'
(1941,30): run-time error CSS1039: Token not allowed after unary operator: '-checkbox-background-color'
(1953,24): run-time error CSS1039: Token not allowed after unary operator: '-highlight'
(1954,40): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(1966,30): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1967,26): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1968,34): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(1973,31): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(1975,30): run-time error CSS1039: Token not allowed after unary operator: '-highlight'
(1980,17): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(1984,17): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(1988,26): run-time error CSS1039: Token not allowed after unary operator: '-surface-soft'
(1992,44): run-time error CSS1039: Token not allowed after unary operator: '-surface-soft'
(1992,68): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(1996,44): run-time error CSS1039: Token not allowed after unary operator: '-surface-dark'
(1996,68): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(1997,15): run-time error CSS1039: Token not allowed after unary operator: '-white'
(2006,17): run-time error CSS1039: Token not allowed after unary operator: '-white'
(2012,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(2013,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(2014,15): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(2015,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(2025,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(2026,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2032,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(2033,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(2039,17): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(2039,32): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(2040,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(2041,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(2042,122): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-dark'
(2042,147): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(2043,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-lg'
(2063,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(2068,17): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(2073,30): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2079,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(2080,19): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(2090,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(2099,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(2100,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(2101,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(2109,27): run-time error CSS1039: Token not allowed after unary operator: '-radius-xs'
(2110,30): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2116,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(2116,28): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(2118,17): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(2119,30): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(2120,33): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(2129,13): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(2137,15): run-time error CSS1039: Token not allowed after unary operator: '-white'
(2172,17): run-time error CSS1039: Token not allowed after unary operator: '-white'
(2178,25): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(2200,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(2201,15): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2213,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2226,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(2236,15): run-time error CSS1039: Token not allowed after unary operator: '-white'
(2241,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(2242,122): run-time error CSS1039: Token not allowed after unary operator: '-white'
(2243,15): run-time error CSS1039: Token not allowed after unary operator: '-text'
(2249,17): run-time error CSS1039: Token not allowed after unary operator: '-heading'
(2253,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(2257,17): run-time error CSS1039: Token not allowed after unary operator: '-heading'
(2272,19): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(2278,19): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(2323,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2334,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2342,17): run-time error CSS1039: Token not allowed after unary operator: '-highlight'
(2368,19): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(2373,19): run-time error CSS1039: Token not allowed after unary operator: '-darkgray'
(2379,21): run-time error CSS1039: Token not allowed after unary operator: '-black'
(2384,21): run-time error CSS1039: Token not allowed after unary operator: '-black'
(2432,54): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2446,30): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2490,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2578,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2635,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(2635,40): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(2665,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(2665,40): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(2672,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(2672,42): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(2684,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(2684,42): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(2698,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(2761,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2820,26): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(2905,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(2906,122): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-dark'
(2906,147): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(2907,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(2908,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-lg'
(2932,15): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(2944,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(2952,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(2974,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(2979,17): run-time error CSS1039: Token not allowed after unary operator: '-white'
(2983,24): run-time error CSS1039: Token not allowed after unary operator: '-white'
(2984,26): run-time error CSS1039: Token not allowed after unary operator: '-white'
(2985,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(3012,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(3013,30): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(3015,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(3016,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(3017,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(3049,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(3065,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(3066,44): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(3066,66): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(3067,15): run-time error CSS1039: Token not allowed after unary operator: '-black'
(3097,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(3098,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(3103,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(3180,30): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(3205,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(3210,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(3243,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(3248,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(3264,44): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-dark'
(3264,69): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(3288,44): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(3288,66): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(3478,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(3480,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(3486,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(3498,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(3510,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(3533,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(3535,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(3546,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(3556,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(3622,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(3649,26): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(3663,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(3681,24): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3681,48): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3685,17): run-time error CSS1039: Token not allowed after unary operator: '-black'
(3686,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(3699,30): run-time error CSS1039: Token not allowed after unary operator: '-highlight'
(3725,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(3735,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(3789,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(3791,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(3796,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(3797,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(3829,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(3869,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(3876,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(3884,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(3997,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(4007,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(4021,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(4023,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(4029,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(4063,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(4094,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(4104,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(4111,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(4113,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(4121,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(4134,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(4148,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(4169,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(4171,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(4178,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(4187,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(4201,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(4201,42): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(4207,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(4213,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(4343,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(4343,42): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(4422,28): run-time error CSS1039: Token not allowed after unary operator: '-bs-success-border-subtle'
(4426,28): run-time error CSS1039: Token not allowed after unary operator: '-bs-warning-border-subtle'
(4430,28): run-time error CSS1039: Token not allowed after unary operator: '-bs-danger-border-subtle'
(4522,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4523,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4524,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4525,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4526,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4527,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4528,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4529,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4530,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4531,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4532,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4533,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4534,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4535,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4554,22): run-time error CSS1039: Token not allowed after unary operator: '-cc-z'
(4572,17): run-time error CSS1039: Token not allowed after unary operator: '-cc-padding'
(4573,23): run-time error CSS1039: Token not allowed after unary operator: '-cc-radius'
(4574,26): run-time error CSS1039: Token not allowed after unary operator: '-cc-bg'
(4575,15): run-time error CSS1039: Token not allowed after unary operator: '-cc-fg'
(4576,17): run-time error CSS1039: Token not allowed after unary operator: '-cc-z'
(4577,20): run-time error CSS1039: Token not allowed after unary operator: '-cc-shadow'
(4578,19): run-time error CSS1039: Token not allowed after unary operator: '-cc-font-size'
(4598,25): run-time error CSS1039: Token not allowed after unary operator: '-cc-radius'
(4598,46): run-time error CSS1039: Token not allowed after unary operator: '-cc-radius'
(4599,22): run-time error CSS1039: Token not allowed after unary operator: '-cc-accept-bg'
(4633,15): run-time error CSS1039: Token not allowed after unary operator: '-cc-muted'
(4638,15): run-time error CSS1039: Token not allowed after unary operator: '-cc-link'
(4644,17): run-time error CSS1039: Token not allowed after unary operator: '-cc-link-hover'
(4686,26): run-time error CSS1039: Token not allowed after unary operator: '-cc-accept-bg'
(4687,22): run-time error CSS1039: Token not allowed after unary operator: '-cc-accept-bg'
(4693,28): run-time error CSS1039: Token not allowed after unary operator: '-cc-accept-bg-hover'
(4697,26): run-time error CSS1039: Token not allowed after unary operator: '-cc-secondary-bg'
(4701,28): run-time error CSS1039: Token not allowed after unary operator: '-cc-secondary-bg-hover'
(4711,28): run-time error CSS1039: Token not allowed after unary operator: '-cc-secondary-bg-hover'
(4716,22): run-time error CSS1039: Token not allowed after unary operator: '-cc-z'
(4853,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(4854,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(4864,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(4872,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(4890,30): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(4903,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(4904,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(4911,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(4951,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(4952,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(4953,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(4957,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5024,30): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(5031,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(5035,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(5036,56): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5041,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(5047,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(5053,25): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(5054,23): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(5055,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5079,22): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(5080,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(5090,44): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5090,70): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(5090,97): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5094,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5095,50): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(5095,77): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(5100,52): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5100,74): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5110,15): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(5115,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5121,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(5128,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-xl'
(5129,123): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-dark'
(5129,148): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(5130,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(5131,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(5146,15): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5151,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5167,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(5177,15): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5183,28): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5184,24): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5185,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5195,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(5203,45): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5210,33): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(5221,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(5239,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(5240,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(5250,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(5251,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5258,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(5286,27): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(5287,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5298,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(5299,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(5305,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(5306,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(5307,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(5317,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(5321,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(5322,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(5323,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5330,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-xl'
(5331,44): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-dark'
(5331,69): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(5332,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(5338,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(5347,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(5351,30): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5355,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(5360,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5368,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5376,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5382,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(5386,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5387,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(5392,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-xl'
(5393,123): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-dark'
(5393,148): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(5394,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(5398,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-xl'
(5399,123): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-dark'
(5399,148): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(5405,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(5410,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(5411,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(5412,26): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5417,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5422,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(5436,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(5437,29): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5443,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(5444,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5448,26): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5453,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(5455,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(5459,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(5460,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5466,15): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5471,26): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5472,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5473,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5477,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(5483,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(5499,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(5611,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5618,311): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5645,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(5655,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5669,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5683,22): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5684,24): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5685,17): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5692,19): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5699,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5704,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5705,26): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5706,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5714,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(5735,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(5778,18): run-time error CSS1039: Token not allowed after unary operator: '-bar-height'
(5784,40): run-time error CSS1039: Token not allowed after unary operator: '-bar-delay'
(5788,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5800,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(5816,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5827,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(5846,15): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5855,17): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5865,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(5866,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5867,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5873,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5896,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5900,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5923,15): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5929,17): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(5933,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5937,44): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(5942,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(5947,15): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6003,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(6036,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6037,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6038,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6044,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6045,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6051,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6060,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6065,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6071,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6075,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6076,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6080,44): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6093,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(6094,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6095,26): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6100,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6105,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(6115,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(6119,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6120,29): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6124,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(6130,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(6131,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(6132,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6136,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(6137,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(6143,15): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(6148,26): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6149,22): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6150,15): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(6154,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(6260,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(6261,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6280,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(6285,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6286,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6287,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6304,26): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6305,24): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6350,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6428,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(6440,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(6440,48): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(6441,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6460,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(6490,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(6498,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(6499,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(6533,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6541,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(6552,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(6554,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(6599,32): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6607,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6628,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6633,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(6637,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6638,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6639,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6644,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6651,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6657,26): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6658,24): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6659,19): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(6667,15): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(6678,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(6679,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6683,30): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(6703,33): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(6727,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(6753,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(6755,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6763,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(6771,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(6806,42): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(6808,100): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6808,175): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6809,66): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6810,43): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(6833,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(6852,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(6871,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(6886,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6902,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(6904,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6921,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(6933,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6972,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(6978,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6982,50): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(6982,77): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(6990,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(6991,52): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(6991,74): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7062,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(7063,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(7114,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7122,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7160,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7168,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7172,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(7178,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7220,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7220,40): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7254,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7254,46): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7266,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7266,40): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7371,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(7431,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(7512,17): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(7512,32): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(7513,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(7514,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7515,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(7516,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7517,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(7526,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border-dark'
(7527,208): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-dark'
(7527,233): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(7528,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(7532,22): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(7533,44): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(7533,70): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(7534,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7540,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(7541,23): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(7543,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(7544,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(7546,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(7557,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(7558,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7565,15): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7570,23): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(7581,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(7593,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(7595,20): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(7601,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(7605,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7606,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7607,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7614,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7621,15): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(7625,24): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(7626,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(7627,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7637,19): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(7665,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(7666,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(7667,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(7668,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(7686,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7695,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7703,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7704,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(7713,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7724,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7730,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(7740,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(7741,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7742,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7818,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7823,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7829,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(7835,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(7836,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(7844,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(7873,23): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(7878,99): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(7880,31): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7881,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7881,40): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7886,27): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7886,44): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(7895,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7896,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7969,28): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7970,30): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(7989,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(7990,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(7991,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(7992,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(7993,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(9781,28): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color'
(9782,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(9790,26): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color-hover'
(9791,24): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color-hover'
(10104,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10130,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(10136,19): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10282,19): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10296,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10300,20): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(10302,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(10303,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(10304,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(10327,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(10328,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(10329,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(10333,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10341,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(10348,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10354,30): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(10368,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(10369,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(10370,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(10376,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(10382,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10401,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10408,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(10436,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(10453,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10472,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10486,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(10491,19): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10507,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(10508,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(10509,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(10516,26): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10544,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(10550,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(10554,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10590,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10597,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10613,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(10655,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(10952,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(10958,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(10959,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(10960,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11010,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(11309,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(11329,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-xl'
(11330,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(11360,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(11368,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(11389,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(11402,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(11416,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(11421,15): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(11440,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(11465,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(11466,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(11483,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(11495,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11500,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11532,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(11545,30): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(11546,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(11556,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11567,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(11568,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11614,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(11615,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(11616,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(11617,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(11647,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(11648,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11661,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(11662,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-dark'
(11663,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(11679,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(11707,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(11708,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(11748,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(11759,22): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11775,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(11789,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(11790,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(11792,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11801,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11806,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(11817,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(11824,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11879,17): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(11880,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(11881,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11885,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-xl'
(11887,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(11890,22): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(11891,23): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(11909,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(11913,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(11925,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(11931,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(11932,17): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(11932,32): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(11933,27): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(11934,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(11935,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(11936,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(11959,49): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(11970,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(11984,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(11989,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(12007,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12016,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12046,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(12047,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(12048,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12049,33): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(12054,26): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(12062,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(12063,20): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(12103,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12111,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12120,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12126,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12144,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(12149,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12167,34): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12190,27): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(12191,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(12192,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12199,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12206,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12221,37): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12226,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(12281,26): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12282,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12283,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(12284,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(12295,26): run-time error CSS1039: Token not allowed after unary operator: '-surface-soft'
(12299,31): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12320,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-lg'
(12323,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(12349,26): run-time error CSS1039: Token not allowed after unary operator: '-surface-soft'
(12350,33): run-time error CSS1039: Token not allowed after unary operator: '-line'
(12370,15): run-time error CSS1039: Token not allowed after unary operator: '-darkgray'
(12378,15): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12379,21): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(12384,30): run-time error CSS1039: Token not allowed after unary operator: '-line'
(12391,15): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12414,26): run-time error CSS1039: Token not allowed after unary operator: '-surface-soft'
(12415,30): run-time error CSS1039: Token not allowed after unary operator: '-line'
(12421,15): run-time error CSS1039: Token not allowed after unary operator: '-black'
(12424,26): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12431,28): run-time error CSS1039: Token not allowed after unary operator: '-highlight'
(12436,15): run-time error CSS1039: Token not allowed after unary operator: '-darkgray'
(12442,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12449,42): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(12450,122): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(12450,148): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(12475,13): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(12489,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(12490,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(12491,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12492,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(12503,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(12504,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(12519,16): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(12520,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12521,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(12522,21): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(12530,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(12541,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(12543,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12544,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(12549,17): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(12549,34): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(12553,23): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(12568,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12569,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(12570,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(12571,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(12572,33): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(12572,57): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(12572,92): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(12572,116): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(12572,150): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(12572,174): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(12577,24): run-time error CSS1039: Token not allowed after unary operator: '-line-strong'
(12578,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(12587,96): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(12615,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(12615,28): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(12617,23): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(12618,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12619,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(12627,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12629,21): run-time error CSS1039: Token not allowed after unary operator: '-line-height-tight'
(12638,16): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(12639,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12640,21): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(12655,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(12661,21): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(12662,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12663,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(12669,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12675,23): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(12685,13): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(12690,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12691,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(12692,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(12693,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(12694,33): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(12694,57): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(12694,92): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(12694,116): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(12694,150): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(12694,174): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(12703,17): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(12707,30): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12711,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-lg'
(12717,17): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(12718,27): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12719,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(12720,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(12725,25): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(12730,25): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(12737,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12743,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(12744,23): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(12745,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12746,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(12751,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12758,13): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(12765,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(12766,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(12770,17): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(12770,34): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(12776,13): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(12786,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(12791,25): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(12792,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12793,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(12804,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12805,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(12806,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(12807,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12809,35): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(12809,59): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(12809,100): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(12809,124): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(12809,158): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(12809,182): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(12814,31): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(12825,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(12836,24): run-time error CSS1039: Token not allowed after unary operator: '-line-strong'
(12837,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(12843,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(12844,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(12853,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12865,18): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(12865,35): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(12866,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12868,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-tight'
(12876,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xl'
(12880,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-lg'
(12889,25): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(12893,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12895,33): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(12902,24): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(12906,22): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(12910,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(12910,34): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(12911,33): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(12912,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(12913,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(12914,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(12915,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(12922,18): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(12923,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(12936,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12941,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(12947,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(12958,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(12968,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(12969,20): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(12970,21): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(12971,30): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(12976,20): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(13005,26): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(13006,35): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(13017,23): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(13027,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(13046,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13047,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13048,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13049,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13050,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13054,15): run-time error CSS1039: Token not allowed after unary operator: '-lead-ink'
(13192,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(13192,41): run-time error CSS1039: Token not allowed after unary operator: '-lead-muted'
(13199,19): run-time error CSS1039: Token not allowed after unary operator: '-lead-ink'
(13207,17): run-time error CSS1039: Token not allowed after unary operator: '-lead-ink'
(13226,19): run-time error CSS1039: Token not allowed after unary operator: '-lead-ink'
(13235,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(13235,43): run-time error CSS1039: Token not allowed after unary operator: '-lead-muted'
(13327,17): run-time error CSS1039: Token not allowed after unary operator: '-lead-muted'
(13354,20): run-time error CSS1039: Token not allowed after unary operator: '-lead-soft'
(13355,15): run-time error CSS1039: Token not allowed after unary operator: '-lead-muted'
(13401,26): run-time error CSS1039: Token not allowed after unary operator: '-lead-line'
(13411,22): run-time error CSS1039: Token not allowed after unary operator: '-lead-accent'
(13428,17): run-time error CSS1039: Token not allowed after unary operator: '-lead-muted'
(13470,15): run-time error CSS1039: Token not allowed after unary operator: '-lead-ink'
(13497,20): run-time error CSS1039: Token not allowed after unary operator: '-lead-soft'
(13548,15): run-time error CSS1039: Token not allowed after unary operator: '-lead-muted'
(13711,28): run-time error CSS1039: Token not allowed after unary operator: '-lead-line'
(13722,35): run-time error CSS1039: Token not allowed after unary operator: '-lead-line'
(13723,22): run-time error CSS1039: Token not allowed after unary operator: '-lead-soft'
(13740,19): run-time error CSS1039: Token not allowed after unary operator: '-lead-ink'
(13852,15): run-time error CSS1039: Token not allowed after unary operator: '-lead-ink'
(14072,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14073,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14074,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14075,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14076,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14077,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14078,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14079,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14080,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14081,21): run-time error CSS1039: Token not allowed after unary operator: '-font-family-base'
(14086,44): run-time error CSS1039: Token not allowed after unary operator: '-bk-soft'
(14086,60): run-time error CSS1039: Token not allowed after unary operator: '-bk-surface'
(14099,72): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14101,67): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14104,87): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14105,97): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14108,95): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14108,126): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14108,191): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(14109,93): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14111,81): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14111,106): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14113,108): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14120,44): run-time error CSS1039: Token not allowed after unary operator: '-booking-gap'
(14131,81): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14131,112): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(14131,142): run-time error CSS1039: Token not allowed after unary operator: '-bk-surface'
(14131,173): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(14134,141): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14134,166): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14137,61): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14138,51): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14141,139): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14141,170): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14141,213): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14142,74): run-time error CSS1039: Token not allowed after unary operator: '-line-strong'
(14142,106): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(14143,51): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14143,78): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(14144,85): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14147,64): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14148,126): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14151,124): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14152,110): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14152,141): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(14152,184): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14154,170): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14154,201): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(14154,244): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14155,34): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14157,81): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14159,48): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14159,75): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14160,46): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14163,101): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14164,56): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14166,72): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14166,103): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(14166,146): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14168,77): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14168,104): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14168,129): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14169,150): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14172,83): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14174,60): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14176,133): run-time error CSS1039: Token not allowed after unary operator: '-booking-gap'
(14180,36): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14182,86): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14182,117): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(14182,175): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14184,52): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14190,167): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14190,198): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(14190,228): run-time error CSS1039: Token not allowed after unary operator: '-bk-soft'
(14190,251): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14191,97): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14191,131): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14194,58): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(14194,88): run-time error CSS1039: Token not allowed after unary operator: '-bk-dark'
(14194,129): run-time error CSS1039: Token not allowed after unary operator: '-shadow-md'
(14195,49): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14200,40): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14210,48): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(14210,87): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(14210,121): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14212,110): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(14215,291): run-time error CSS1039: Token not allowed after unary operator: '-bk-dark'
(14215,332): run-time error CSS1039: Token not allowed after unary operator: '-shadow-md'
(14216,119): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14225,126): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14225,151): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14226,60): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14227,71): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14228,175): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14228,224): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14229,152): run-time error CSS1039: Token not allowed after unary operator: '-bk-soft'
(14230,68): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14231,48): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14232,66): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14233,168): run-time error CSS1039: Token not allowed after unary operator: '-bk-dark'
(14235,158): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14235,183): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14239,130): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14242,66): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14243,46): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14245,61): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14246,61): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14252,102): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14252,133): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(14252,181): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(14254,369): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(14255,136): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14260,55): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14262,68): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14262,93): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14265,21): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14265,197): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14269,95): run-time error CSS1039: Token not allowed after unary operator: '-booking-progress-dot'
(14269,146): run-time error CSS1039: Token not allowed after unary operator: '-booking-progress-dot'
(14269,207): run-time error CSS1039: Token not allowed after unary operator: '-booking-progress-dot'
(14269,274): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14270,60): run-time error CSS1039: Token not allowed after unary operator: '-bk-dark'
(14271,145): run-time error CSS1039: Token not allowed after unary operator: '-booking-progress-dot'
(14271,300): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14272,55): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14274,60): run-time error CSS1039: Token not allowed after unary operator: '-booking-progress-dot'
(14274,97): run-time error CSS1039: Token not allowed after unary operator: '-booking-progress-dot'
(14274,165): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14274,226): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14275,67): run-time error CSS1039: Token not allowed after unary operator: '-bk-dark'
(14275,95): run-time error CSS1039: Token not allowed after unary operator: '-bk-dark'
(14276,66): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14276,93): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14276,118): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14277,56): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14282,164): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14290,59): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14292,56): run-time error CSS1039: Token not allowed after unary operator: '-bk-muted'
(14298,69): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14298,110): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14308,64): run-time error CSS1039: Token not allowed after unary operator: '-bk-ink'
(14310,274): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14315,66): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14319,115): run-time error CSS1039: Token not allowed after unary operator: '-bk-accent'
(14333,275): run-time error CSS1039: Token not allowed after unary operator: '-bk-dark'
(14333,316): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(14336,86): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14336,116): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(14341,70): run-time error CSS1039: Token not allowed after unary operator: '-booking-scroll-offset'
(14344,145): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14358,43): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14358,76): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14362,54): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14370,42): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14374,67): run-time error CSS1039: Token not allowed after unary operator: '-bk-line'
(14388,48): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14403,23): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14418,26): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(14434,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(14435,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14436,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(14437,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(14438,35): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(14438,59): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(14439,25): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(14439,49): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(14440,24): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(14440,48): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(14446,24): run-time error CSS1039: Token not allowed after unary operator: '-line-strong'
(14447,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-card'
(14453,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(14467,15): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14468,19): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(14475,19): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(14476,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(14484,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(14495,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(14496,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(14503,15): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(14504,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(14505,32): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(14510,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(14517,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(14518,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(14524,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(14525,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(14530,23): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(14537,19): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(14537,34): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(14537,49): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(14538,33): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(14539,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14540,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(14541,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(14542,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(14550,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(14562,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(14564,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(14568,22): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(14569,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(14570,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(14575,26): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(14579,18): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(14579,35): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(14580,19): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(14581,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(14582,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14585,14): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(14586,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(14594,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14595,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(14596,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(14600,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(14611,32): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(14621,25): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14623,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-tight'
(14628,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(14629,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(14639,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14643,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14649,15): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14655,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14656,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(14657,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(14658,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(14659,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(14669,25): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(14670,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(14680,22): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(14681,19): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(14683,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14684,46): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-dark'
(14684,68): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-darker'
(14685,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-light'
(14686,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-md'
(14709,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(14714,48): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(14724,18): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(14724,38): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14733,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(14734,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(14735,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(14745,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(14747,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(14748,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(14755,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(14757,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-tight'
(14765,19): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(14767,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(14772,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(14779,15): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14780,16): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14785,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(14786,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(14801,24): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(14810,19): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(14811,33): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(14825,24): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(14826,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(14832,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(14833,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(14843,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14877,15): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14883,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14883,34): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(14884,33): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(14889,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(14890,16): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14897,24): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(14898,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-base'
(14908,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(14912,22): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(14916,26): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(14920,18): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(14920,35): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(14923,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14924,58): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(14937,18): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(14937,35): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(14938,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(14947,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(14948,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(14949,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(14956,19): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(14957,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(14958,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(14959,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(14984,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(14993,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(15011,22): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(15035,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15040,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(15050,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(15053,14): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(15063,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15069,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15069,34): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15069,49): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15069,64): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15072,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(15080,22): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15082,24): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15088,19): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15088,36): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15088,51): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15108,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(15115,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15118,18): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15119,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15121,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(15133,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(15134,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(15135,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15136,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(15140,35): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(15140,59): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(15141,31): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(15141,55): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(15142,24): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(15142,48): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(15147,24): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15148,17): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-dark'
(15161,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15181,23): run-time error CSS1039: Token not allowed after unary operator: '-space-7'
(15186,25): run-time error CSS1039: Token not allowed after unary operator: '-font-size-2xl'
(15194,23): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15195,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(15199,23): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15204,25): run-time error CSS1039: Token not allowed after unary operator: '-font-size-base'
(15209,23): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15213,23): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(15213,38): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15217,26): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15221,23): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15221,38): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15245,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15250,21): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15264,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15265,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15266,17): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15266,34): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(15272,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15274,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(15275,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(15285,15): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15292,27): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(15293,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(15300,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15301,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-2xl'
(15303,21): run-time error CSS1039: Token not allowed after unary operator: '-line-height-tight'
(15309,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(15310,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-base'
(15311,21): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(15317,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15328,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15334,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(15339,23): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15341,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(15347,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15347,34): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15347,49): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15354,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15355,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15355,32): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15361,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15362,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(15369,23): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(15370,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(15371,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(15383,23): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(15384,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(15385,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(15400,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15403,20): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15416,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(15423,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15429,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(15435,19): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15439,20): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15440,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15441,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(15449,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15452,24): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15459,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15460,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(15466,16): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(15467,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(15468,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(15475,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(15496,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15506,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(15517,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15518,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(15527,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15535,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15540,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(15541,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(15542,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15543,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(15552,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(15553,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15559,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(15568,17): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(15569,27): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(15570,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(15571,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(15572,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(15583,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15587,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(15588,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(15589,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(15590,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15591,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(15600,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15602,17): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15611,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15616,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15623,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15627,22): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15628,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(15629,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(15630,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(15646,15): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15646,35): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15648,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(15648,44): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(15667,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15670,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15670,32): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15670,47): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15670,67): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15677,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15685,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15686,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(15695,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(15706,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(15726,21): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15731,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15731,28): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15747,17): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15747,34): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15747,49): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15764,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(15765,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(15766,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15775,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(15776,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15782,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(15792,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15801,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15808,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15812,20): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15813,26): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(15814,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(15815,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(15827,15): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15827,35): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15829,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(15829,44): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(15851,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15854,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15854,32): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15854,47): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15854,67): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(15861,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15874,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15875,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(15883,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(15890,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(15897,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15905,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(15912,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(15932,21): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15937,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(15937,28): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15949,17): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15949,34): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(15949,49): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15966,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(15967,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(15968,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15977,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(15978,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(15984,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(15989,23): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(15994,15): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16003,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16004,21): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16010,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(16011,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(16029,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16030,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(16040,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(16041,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(16042,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16051,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(16052,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16057,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(16063,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16073,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16074,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16088,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16091,24): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16097,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16110,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(16111,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(16122,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16123,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(16130,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16131,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16138,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16139,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(16166,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16176,22): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16190,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16196,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16199,99): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(16213,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16216,17): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(16216,32): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(16216,47): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(16216,67): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(16221,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16222,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-2xl'
(16224,21): run-time error CSS1039: Token not allowed after unary operator: '-line-height-tight'
(16230,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16231,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-base'
(16232,21): run-time error CSS1039: Token not allowed after unary operator: '-line-height-base'
(16236,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16237,20): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(16241,23): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(16245,25): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(16246,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16247,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16254,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(16262,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16264,17): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16284,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16294,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16298,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(16304,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16305,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(16311,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16312,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16325,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(16326,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(16338,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16344,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16345,23): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(16351,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16356,15): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(16361,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16362,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(16367,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16368,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16376,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16379,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16380,24): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16395,13): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(16405,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16411,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(16412,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16427,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16431,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16433,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16440,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16448,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16460,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(16461,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(16471,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16472,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-lg'
(16479,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16487,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16493,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16499,13): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(16501,17): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16503,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(16505,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16513,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-soft'
(16514,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16520,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(16530,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16531,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16537,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16538,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-lg'
(16545,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16546,21): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16553,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16556,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16557,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16563,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16564,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16574,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(16597,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16598,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16604,17): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16604,32): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16615,25): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16620,101): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(16659,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16660,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16669,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16670,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16676,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16690,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16691,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16697,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16707,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(16717,13): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(16728,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16740,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(16741,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(16752,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16758,13): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(16763,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16764,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(16772,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16777,23): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16787,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16800,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16805,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16813,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16816,17): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16818,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(16819,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(16824,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16825,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(16832,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(16838,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16843,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16856,23): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(16857,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(16858,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(16872,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16883,24): run-time error CSS1039: Token not allowed after unary operator: '-space-8'
(16887,21): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16893,13): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(16895,23): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16896,17): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(16898,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-lg'
(16901,10): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(16907,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(16914,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(16915,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xl'
(16917,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-tight'
(16922,17): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16923,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(16930,13): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(16936,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16947,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16962,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16968,22): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(16970,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(16971,22): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(16986,15): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16987,18): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16990,27): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(16990,46): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(16991,22): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(16997,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16999,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16999,32): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(16999,47): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(16999,67): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(17005,23): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17014,22): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17016,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(17017,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-md'
(17019,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-tight'
(17024,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(17034,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(17041,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17051,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(17056,17): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(17060,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17060,32): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(17074,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(17075,26): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(17083,28): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(17089,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(17095,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(17101,23): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17102,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(17103,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-base'
(17120,17): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17129,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(17130,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(17131,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(17141,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(17146,31): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(17153,19): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(17173,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17174,17): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(17174,32): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(17174,47): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17176,98): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(17186,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(17187,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xl'
(17189,23): run-time error CSS1039: Token not allowed after unary operator: '-line-height-tight'
(17200,16): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(17201,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(17202,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(17216,13): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17221,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17221,32): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(17226,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17228,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17230,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(17231,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-light'
(17241,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(17242,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(17250,17): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(17251,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(17258,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17273,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17293,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17295,17): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17295,37): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17295,63): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17295,78): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17298,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(17299,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(17300,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-main'
(17324,27): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(17334,13): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17335,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17340,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(17354,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(17360,15): run-time error CSS1039: Token not allowed after unary operator: '-color-text-muted'
(17361,19): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xs'
(17385,23): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(17386,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(17390,17): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17396,13): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17398,17): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17398,32): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(17409,20): run-time error CSS1039: Token not allowed after unary operator: '-color-bg-white'
(17431,15): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(17466,23): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17470,25): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17471,23): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17475,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xl'
(17492,26): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(17496,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17497,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17506,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17511,26): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17517,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17521,41): run-time error CSS1039: Token not allowed after unary operator: '-font-size-2xl'
(17525,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-sm'
(17538,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17552,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17552,34): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17552,49): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17552,69): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17556,21): run-time error CSS1039: Token not allowed after unary operator: '-font-size-xl'
(17575,18): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17579,35): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17580,36): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17584,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17588,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17589,19): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17597,19): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17609,19): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17617,25): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17623,15): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17637,15): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17638,25): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17660,15): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17693,25): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17694,24): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17698,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17703,15): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17704,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17704,34): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17704,49): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17704,69): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17724,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17737,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17737,37): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17742,15): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17743,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17743,34): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17743,49): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17743,69): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17752,15): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17756,21): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17758,27): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(17770,15): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17778,38): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17783,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17807,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17820,17): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17820,37): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17850,26): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17862,15): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17864,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17866,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-md'
(17881,27): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17882,26): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17902,19): run-time error CSS1039: Token not allowed after unary operator: '-space-4'
(17906,38): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(17912,15): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17914,26): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(17994,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(17995,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18003,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18004,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18008,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18009,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18063,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18064,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18065,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18066,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18067,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18068,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18069,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18070,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18071,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18072,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18073,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18074,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18075,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18076,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18077,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18078,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18079,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18080,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18081,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18082,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18083,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
 */
:root {
    /* Brand palette */
    --color-bg-dark: #0B0B0B;
    --color-bg-darker: #050505;
    --color-bg-light: #F7F4EC;
    --color-bg-white: #FFFFFF;
    --color-text-main: #151515;
    --color-text-muted: #6B6B6B;
    --color-text-light: #F8F8F8;
    --color-primary: #FFED00;
    --color-primary-dark: #D8C700;
    --color-primary-soft: #FFF8B8;
    --color-border: rgba(21, 21, 21, 0.12);
    --color-border-dark: rgba(255, 255, 255, 0.14);
    --shadow-soft: 0 18px 45px rgba(0, 0, 0, 0.14);
    --shadow-card: 0 12px 32px rgba(0, 0, 0, 0.10);
    --background-color: var(--color-bg-white);
    --primary: var(--color-primary);
    --highlight: var(--color-primary-dark);
    --accent: var(--color-primary);
    --accent-dark: var(--color-primary-dark);
    --ink: var(--color-text-main);
    --ink-soft: #2b2b2b;
    --text: var(--color-text-main);
    --muted: var(--color-text-muted);
    --muted-light: #888888;
    --line: var(--color-border);
    --line-strong: rgba(17, 17, 17, 0.22);
    --surface: var(--color-bg-white);
    --surface-soft: var(--color-bg-light);
    --surface-warm: #fbf0d7;
    --surface-dark: var(--color-bg-dark);
    --surface-dark-soft: #1a1a1a;
    --gray: #d8d5ce;
    --darkgray: #777777;
    --whitegray: #ececec;
    --white: var(--color-bg-white);
    --bglight: var(--color-bg-light);
    --black: var(--color-text-main);
    /* Typography */
    --font-family-base: 'Poppins', Arial, sans-serif;
    --font-size-xs: 0.78rem;
    --font-size-sm: 0.9rem;
    --font-size-base: 1rem;
    --font-size-md: 1.125rem;
    --font-size-lg: 1.35rem;
    --font-size-xl: 1.75rem;
    --font-size-2xl: 2.25rem;
    --font-size-3xl: 3rem;
    --line-height-tight: 1.15;
    --line-height-base: 1.65;
    /* Spacing */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --space-7: 3rem;
    --space-8: 4.5rem;
    /* Shape and elevation */
    --radius-xs: 4px;
    --radius-sm: 6px;
    --radius-md: 16px;
    --radius-lg: 24px;
    --radius-pill: 999px;
    --shadow-sm: 0 2px 10px rgba(0, 0, 0, 0.06);
    --shadow-md: var(--shadow-soft);
    --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.18);
    /* Button Colors */
    --submit-button-background-color: var(--primary);
    --submit-button-background-color-hover: var(--highlight);
    --button-background-color: var(--surface);
    --button-background-color-hover: var(--surface-soft);
    --active-button-background-color: var(--submit-button-background-color-hover);
    --active-button-border-color: var(--line-strong);
    /* Disabled Button Colors */
    --disabled-button-background-color: var(--whitegray);
    --disabled-button-text-color: #666666;
    --disabled-button-border-color: #999999;
    /* Focus Outline */
    --focus-outline-color: rgba(255, 204, 0, 0.95);
    /* Checkbox colors */
    --checkbox-background-color: #f3f3f3;
    --checkbox-border-color: var(--line-strong);
    /* Transition Variables */
    --transition-speed: 160ms;
    --transition-ease: ease-out;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

  *:focus {
    outline: none;
  }

html {
  width: 100%;
  height: 100%;
}

body {
  width: 100%;
  min-height: 100%;
  /*max-width: 100%;*/
  /*overflow-x: hidden;*/
}

  body.modal-open {
    overflow: hidden !important;
  }

html,
body {
  vertical-align: central;
  font-family: var(--font-family-base);
  font-size: 16px;
  font-style: normal;
  text-decoration: none;
  color: var(--text);
  text-rendering: optimizeLegibility;
  scroll-behavior: smooth;
  background-color: var(--background-color);
  margin: 0;
  padding: 0;
}


/* Shared public navigation, buttons and forms; original cascade order retained. */


.navbar-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  padding: 1rem 0;
  background: transparent;
  box-shadow: none;
  transition: padding 200ms ease, transform 200ms ease;
}

.navbar-shell {
  padding-left: 1rem;
  padding-right: 1rem;
}

.navbar-menu-root {
  position: relative;
}

.navbar-frame {
  border: 1px solid rgba(17, 17, 17, 0.08);
  border-radius: var(--radius-md);
  background-color: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(14px) saturate(125%);
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  box-shadow: var(--shadow-sm);
  transition: border-radius 200ms ease, box-shadow 200ms ease, background-color 200ms ease, border-color 200ms ease, backdrop-filter 200ms ease, -webkit-backdrop-filter 200ms ease;
}


.navbar-inner {
  min-height: 3.85rem;
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.navbar-brand {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  margin-right: 0;
}

  .navbar-brand img {
    width: 100%;
    max-width: 210px;
    transition: max-width 200ms ease;
  }

.navbar-collapse {
  flex: 1 1 auto;
}

.navbar-primary-nav {
  display: flex;
  align-items: center;
  gap: 0.1rem;
}

.navbar-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.42rem;
  flex-shrink: 0;
}

.navbar-zone-link {
  min-height: 2.25rem;
  padding: 0.42rem 0.78rem;
  border-radius: var(--radius-pill);
  transition: padding 200ms ease, min-height 200ms ease, font-size 200ms ease, box-shadow 200ms ease;
  box-shadow: var(--shadow-sm);
}

.nav-link {
  text-decoration: none;
  padding: 0.32rem 0.56rem;
  font-size: 0.91rem;
  line-height: 1.15;
  transition: background-color 180ms ease, color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
  position: relative;
  box-shadow: none;
  border-radius: var(--radius-sm);
}

.navbar-primary-nav .nav-link {
  font-weight: 500;
  color: var(--black);
}

  .navbar-primary-nav .nav-link:hover,
  .navbar-panel-links .nav-link:hover {
    color: var(--black);
    transform: none;
    box-shadow: none;
    background: rgba(255, 237, 0, 0.5);
  }

.nav-link.active {
  color: var(--black);
  font-weight: 700;
  background: var(--primary);
}

.navbar-container.toggled .navbar-frame {
  background-color: rgba(255, 255, 255, 0.76);
}

.navbar-container.condensed {
  padding: 0.24rem 0;
}

  .navbar-container.condensed .navbar-frame {
    border-color: rgba(255, 255, 255, 0.45);
    border-radius: 0.9rem;
    background-color: rgba(255, 255, 255, 0.48);
    backdrop-filter: blur(22px) saturate(160%);
    -webkit-backdrop-filter: blur(22px) saturate(160%);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.42);
  }

  .navbar-container.condensed .navbar-inner {
    min-height: 3.35rem;
    padding-top: 0.24rem;
    padding-bottom: 0.24rem;
    gap: 0.7rem;
  }

  .navbar-container.condensed .navbar-brand img {
    max-width: 176px;
  }

  .navbar-container.condensed .nav-link,
  .navbar-container.condensed .navbar-zone-link {
    font-size: 0.87rem;
  }

  .navbar-container.condensed .nav-link {
    padding: 0.27rem 0.5rem;
  }

  .navbar-container.condensed .navbar-zone-link {
    min-height: 2.05rem;
    padding: 0.36rem 0.66rem;
  }

.jumbotron-menu {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  display: block;
  padding: 0.65rem 0 0;
  transform: translateY(-8px);
  transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
  overflow: visible;
  z-index: 1010;
  pointer-events: none;
}

.navbar-panel {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(17, 17, 17, 0.06);
  border-radius: 1.1rem;
  background-color: rgba(255, 255, 255, 0.62);
  backdrop-filter: blur(20px) saturate(155%);
  -webkit-backdrop-filter: blur(20px) saturate(155%);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.38);
  padding: 1.2rem;
  transition: background-color 200ms ease, border-color 200ms ease, box-shadow 200ms ease, backdrop-filter 200ms ease, -webkit-backdrop-filter 200ms ease;
}

  .navbar-panel::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.44), rgba(255, 255, 255, 0.14) 52%, rgba(255, 255, 255, 0.3));
    opacity: 0.72;
    pointer-events: none;
    transition: opacity 200ms ease;
  }

  .navbar-panel > * {
    position: relative;
    z-index: 1;
  }

.navbar-container.condensed .navbar-panel {
  border-color: rgba(255, 255, 255, 0.42);
  background-color: rgba(255, 255, 255, 0.44);
  backdrop-filter: blur(26px) saturate(175%);
  -webkit-backdrop-filter: blur(26px) saturate(175%);
  box-shadow: 0 20px 46px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.48);
}

  .navbar-container.condensed .navbar-panel::before {
    opacity: 0.95;
  }

.navbar-container.toggled .jumbotron-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.navbar-panel-groups,
.jumbotron-menu .jumbotron-groups {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.navbar-panel-group,
.jumbotron-menu .jumbotron-group {
  flex: 1 1 calc(33.33% - 1rem);
  min-width: 220px;
}

.navbar-panel-group--primary-mobile {
  display: none;
  margin-bottom: 1.25rem;
}

.navbar-title {
  display: inline-block;
  margin-bottom: 0.8rem;
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: rgba(17, 17, 17, 0.78);
}

.navbar-panel-links,
.jumbotron-menu .navbar-nav {
  margin-bottom: 0;
  list-style: none;
  padding: 0;
}

  .navbar-panel-links .nav-item + .nav-item,
  .jumbotron-menu .navbar-nav .nav-item + .nav-item {
    margin-top: 0.15rem;
  }

  .navbar-panel-links .nav-link,
  .jumbotron-menu .navbar-nav .nav-link {
    display: block;
    padding: 0.6rem 0.8rem;
    border-radius: 0.9rem;
  }

/* Hamburger menu stijl */
.hamburger-container {
  z-index: 1100;
  display: flex;
  justify-content: center;
  align-items: center;
}

.hamburger-menu {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(17, 17, 17, 0.1);
  border-radius: 999px;
  cursor: pointer;
  padding: 0;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.22rem;
  height: 2.6rem;
  width: 2.6rem;
  transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

  .hamburger-menu span {
    display: block;
    height: 2px;
    width: 1.02rem;
    background-color: #1f2933;
    border-radius: 999px;
    transform-origin: center;
    transition: transform 0.26s ease, opacity 0.2s ease, width 0.2s ease;
  }

  .hamburger-menu:hover {
    background: #ffffff;
    border-color: rgba(17, 17, 17, 0.18);
    box-shadow: 0 8px 18px rgba(15, 18, 24, 0.08);
  }

  .hamburger-menu:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
  }

/* Geanimeerde overgang bij openen/sluiten */
.navbar-container.toggled .hamburger-menu span:nth-child(1) {
  transform: translateY(0.3rem) rotate(45deg);
}

.navbar-container.toggled .hamburger-menu {
  background: #ffffff;
  border-color: rgba(17, 17, 17, 0.18);
  box-shadow: 0 8px 20px rgba(15, 18, 24, 0.1);
}

  .navbar-container.toggled .hamburger-menu span:nth-child(2) {
    opacity: 0;
  }

  .navbar-container.toggled .hamburger-menu span:nth-child(3) {
    transform: translateY(-0.3rem) rotate(-45deg);
  }

@media (max-width: 1199px) {
  .navbar-container {
    padding: 0.3rem 0;
  }

  .navbar-frame {
    border-radius: 0.95rem;
  }

  .navbar-inner {
    min-height: 3.45rem;
    gap: 0.55rem;
    padding: 0.28rem 1rem;
  }

  .navbar-brand img {
    max-width: 174px;
  }

  .navbar-container.toggled {
    height: 100vh;
    height: 100dvh;
  }

  .navbar-collapse {
    display: none !important;
  }

  .navbar-zone-link {
    min-height: 2.08rem;
    padding: 0.38rem 0.68rem;
    font-size: 0.84rem;
  }

  .jumbotron-menu {
    left: 0;
    right: 0;
    padding: 0.55rem 0 1rem;
    max-height: calc(100vh - 4.65rem);
    max-height: calc(100dvh - 4.65rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  .navbar-panel {
    padding: 0.85rem;
    border-radius: 1rem;
  }

  .navbar-panel-groups,
  .jumbotron-menu .jumbotron-groups {
    flex-direction: column;
    gap: 1.25rem;
  }

  .navbar-panel-group,
  .jumbotron-menu .jumbotron-group {
    min-width: 0;
  }

  .navbar-panel-group--primary-mobile {
    display: block;
  }

  .navbar-title {
    margin-bottom: 0.55rem;
  }

  .navbar-panel-links .nav-link,
  .jumbotron-menu .navbar-nav .nav-link {
    padding: 0.58rem 0.72rem;
    border-radius: 0.8rem;
  }}

@media (max-width: 768px) {
  .navbar-actions {
    gap: 0.32rem;
  }

  .navbar-zone-link {
    min-height: 1.95rem;
    padding: 0.34rem 0.58rem;
    font-size: 0.82rem;
  }

  .jumbotron-menu {
    padding-top: 0.48rem;
    padding-bottom: 0.75rem;
    font-size: 1rem;
  }}

/* Algemene label styling voor tekstvelden, selecties en textarea's */
.title-text {
  display: block;
  color: var(--darkgray);
  font-size: 1rem;
  margin-bottom: 0;
}

  .title-text sup {
    top: -0.8em;
  }

/* Form-item base styles */
.form-item {
  position: relative;
  margin-bottom: 0.25em;
  padding: 0 0 0.2em 0;
  box-sizing: border-box;
}

  /* Validatieboodschappen direct onder het invoerveld */
  .form-item .field-validation-error {
    color: #FF0000;
    font-size: 0.8rem;
    position: absolute;
    right: 0;
    bottom: -1em;
    user-select: none;
    z-index: 1;
  }

  .form-item .g-recaptcha {
  }

  .form-item button.mvc-btn {
    min-width: 160px;
  }

/* Mobile responsiveness for smaller screens */
@media (max-width: 600px) {
  .form-item {
    margin-bottom: 0.6em;
  }

    .form-item .title-text {
      font-size: 0.8rem;
    }

    .form-item .field-validation-error {
      font-size: 0.7rem;
      bottom: -1em; /* Iets hogere positie op kleinere schermen */
    }

    .form-item .btn-group-login {
      display: flex;
      gap: 1rem;
      flex-wrap: wrap;
    }}

/* Basis styling voor datetime, tekst, wachtwoord en andere invoervelden */
input[type="text"]:not(.k-input-inner),
input[type="password"],
input[type="number"],
input[type="date"],
select,
textarea {
  width: 100%;
  padding: 0.72rem 0.85rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  box-sizing: border-box;
  margin-bottom: 0.5em;
  resize: vertical;
  background-color: var(--surface);
  transition: border-color 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease;
  font-size: 1rem;
  color: var(--text);
}

  /* Focus-staat */
  input[type="text"]:focus:not(.k-input-inner),
  input[type="password"]:focus,
  input[type="number"]:focus,
  input[type="date"]:focus,
  select:focus,
  textarea:focus {
    border-color: var(--primary);
    outline: none;
    background-color: var(--white);
    box-shadow: 0 0 0 3px rgba(255, 237, 0, 0.25);
  }

  /* Hover-effect */
  input[type="text"]:hover:not(.k-input-inner),
  input[type="password"]:hover,
  input[type="number"]:hover,
  input[type="date"]:hover,
  select:hover,
  textarea:hover {
    border-color: var(--line-strong);
  }

  /* Disabled velden */
  input[type="text"]:disabled,
  input[type="password"]:disabled,
  input[type="number"]:disabled,
  input[type="date"]:disabled,
  select:disabled,
  textarea:disabled {
    background-color: var(--whitegray);
    color: var(--darkgray);
    cursor: not-allowed;
    border-color: var(--gray);
    opacity: 0.6;
  }

  /* Invalid input styling */
  input:invalid,
  textarea:invalid,
  select:invalid,
  input[type="date"]:invalid {
    border-color: #FF0000;
    background-color: #fff5f5;
  }




/* Button */
/* Base Button Styles */
.mvc-btn {
  color: var(--black);
  padding: 0.82rem 1.2rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-pill);
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.25;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  user-select: none;
  touch-action: manipulation;
  outline: none;
  background-clip: padding-box;
  /*min-width: 100px;*/
  z-index: 1;
}

  .mvc-btn:hover {
    filter: none;
    transform: translateY(-1px);
  }

  .mvc-btn:hover,
  .mvc-btn:active,
  .mvc-btn:focus {
    z-index: 10;
  }

  .mvc-btn:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
  }

/* Primary Button */
.mvc-btn--primary {
  background-color: var(--submit-button-background-color);
  border: 1px solid var(--submit-button-background-color);
  color: #111111;
  box-shadow: 0 14px 28px rgba(255, 237, 0, 0.26);
}

  .mvc-btn--primary:hover {
    background-color: var(--submit-button-background-color-hover);
    border-color: var(--submit-button-background-color-hover);
    color: #111111;
    box-shadow: 0 16px 34px rgba(200, 145, 0, 0.28);
  }

/* Secondary Button */
.mvc-btn--secondary {
  background-color: transparent;
  border: 1px solid rgba(17, 17, 17, 0.28);
  color: var(--ink);
  box-shadow: none;
}

  .mvc-btn--secondary:hover {
    background-color: var(--ink);
    border-color: var(--ink);
    color: var(--white);
  }

/* Disabled State */
.mvc-btn:disabled, .mvc-btn--disabled {
  background-color: var(--disabled-button-background-color);
  color: var(--disabled-button-text-color);
  border: 1px solid var(--disabled-button-border-color);
  cursor: not-allowed;
  pointer-events: none;
  filter: grayscale(1);
}

.mvc-btn:focus {
  outline: 2px solid var(--focus-outline-color);
  outline-offset: 4px;
}

/* Active State */
.mvc-btn:active {
  transform: scale(0.98);
  background-color: var(--active-button-background-color);
  border-color: var(--active-button-border-color);
}

/* Icon button */
.mvc-btn--icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  padding: 0.72rem 1rem;
  font-weight: 700;
  background-color: var(--submit-button-background-color);
  border: none;
  box-shadow: var(--shadow-sm);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  /*text-transform: uppercase;*/
  line-height: 1;
}

  .mvc-btn--icon:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
  }

.mvc-btn--border-bottom {
  border: 1px solid transparent;
  border-bottom: 1px solid var(--gray);
}

.mvc-btn--sm {
  padding: 7px 14px;
}

.download-icon {
  color: var(--black);
}

/* Button feedback follows the request, while preserving its label and dimensions. */
.request-feedback--busy {
  position: relative;
  color: transparent;
  cursor: progress;
}
.request-feedback--busy > :not(.request-feedback__spinner) { opacity: 0; }
.request-feedback__spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 18px;
  margin: -9px 0 0 -9px;
  border: 2px solid var(--request-feedback-ink, currentColor);
  border-right-color: transparent;
  border-radius: 50%;
  animation: request-feedback-spin .8s linear infinite;
}
@keyframes request-feedback-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .request-feedback__spinner { animation: none; }
}

/* Shared header downloads, also used by layouts without the public page styles. */
ul.list-downloads {
  list-style: none;
  margin: 0;
  padding-left: 0;
  padding-bottom: 1em;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

@media (min-width: 992px) {
  .navbar-container > .container,
  .site-container {
    max-width: 1008px;
  }}

@media (min-width: 1200px) {
  .navbar-container > .container,
  .site-container {
    max-width: 1200px;
  }}

@media (min-width: 1400px) {
  .navbar-container > .container,
  .site-container {
    max-width: 1380px;
  }}

.navbar-frame {
  border-color: rgba(21, 21, 21, 0.1);
  background-color: rgba(255, 255, 255, 0.86);
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.08);
}

.navbar-panel {
  border-color: rgba(21, 21, 21, 0.1);
  background-color: rgba(255, 255, 255, 0.9);
  box-shadow: var(--shadow-card);
}

  .navbar-panel::before {
    background: linear-gradient(135deg, rgba(255, 241, 184, 0.42), rgba(255, 255, 255, 0.18));
  }

.navbar-primary-nav .nav-link:hover,
.navbar-panel-links .nav-link:hover,
.jumbotron-menu .navbar-nav .nav-link:hover {
  background: var(--color-primary-soft);
  color: var(--color-text-main);
}

.nav-link.active {
  background: var(--color-primary);
  color: var(--color-text-main);
}

.hamburger-menu:hover {
  background: var(--color-primary-soft);
  border-color: rgba(255, 237, 0, 0.6);
}

.mvc-btn {
  min-height: 3rem;
  padding: 0.86rem 1.25rem;
  border-radius: var(--radius-sm);
  font-weight: 800;
  letter-spacing: 0;
}

.mvc-btn--primary,
.btn-primary {
  background: linear-gradient(180deg, var(--color-primary) 0%, #F5DD00 100%);
  border-color: var(--color-primary);
  color: #111111;
  box-shadow: 0 14px 30px rgba(255, 237, 0, 0.24);
}

  .mvc-btn--primary:hover,
  .btn-primary:hover {
    background: linear-gradient(180deg, #FFF34A 0%, var(--color-primary-dark) 100%);
    border-color: var(--color-primary-dark);
    color: #111111;
    box-shadow: 0 18px 36px rgba(200, 145, 0, 0.28);
  }

.mvc-btn--secondary,
.btn-outline-primary {
  background-color: transparent;
  border-color: rgba(21, 21, 21, 0.28);
  color: var(--color-text-main);
}

  .mvc-btn--secondary:hover,
  .btn-outline-primary:hover {
    background-color: var(--color-text-main);
    border-color: var(--color-text-main);
    color: var(--color-bg-white);
  }

.mvc-btn--icon {
  border: 1px solid transparent;
}

.navbar-zone-link.mvc-btn--secondary {
  background-color: var(--color-text-main);
  border-color: var(--color-text-main);
  color: var(--color-bg-white);
}

  .navbar-zone-link.mvc-btn--secondary:hover {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: var(--color-text-main);
  }

/* ---- Debiscom brand refresh phase 3: brighter yellow, lighter surfaces ---- */
.mvc-btn--primary,
.btn-primary {
  background: linear-gradient(180deg, var(--color-primary) 0%, #F5DD00 100%);
  border-color: var(--color-primary);
  color: var(--color-text-main);
  box-shadow: 0 14px 30px rgba(255, 237, 0, 0.24);
}

  .mvc-btn--primary:hover,
  .btn-primary:hover {
    background: linear-gradient(180deg, #FFF34A 0%, var(--color-primary) 100%);
    border-color: var(--color-primary-dark);
    color: var(--color-text-main);
    box-shadow: 0 18px 36px rgba(255, 237, 0, 0.28);
  }

/* ---- Debiscom brand refresh phase 4: full-bleed hero and clearer buttons ---- */
.mvc-btn {
  min-height: 3.15rem;
  padding: 0.9rem 1.45rem;
  border-radius: var(--radius-pill);
  border-width: 1.5px;
  font-size: 0.98rem;
  font-weight: 850;
  letter-spacing: 0;
}

.mvc-btn--secondary,
.btn-outline-primary {
  border-color: rgba(21, 21, 21, 0.18);
  background-color: #ffffff;
  color: var(--color-text-main);
  box-shadow: 0 10px 28px rgba(15, 18, 24, 0.06);
}

  .mvc-btn--secondary:hover,
  .btn-outline-primary:hover {
    border-color: var(--color-primary);
    background-color: var(--color-primary);
    color: var(--color-text-main);
    box-shadow: 0 16px 34px rgba(255, 237, 0, 0.26);
  }

.navbar-zone-link,
.footer-primary-link {
  border-radius: var(--radius-pill);
}

.navbar-container--landing-menu-hidden {
  display: none;
}

@media (max-width: 375px) {
  .navbar-inner {
    gap: 0.4rem;
    padding-right: 0.65rem;
    padding-left: 0.65rem;
  }

  .navbar-brand img {
    max-width: 142px;
  }}

header,
section {
  padding-top: 50px;
  padding-bottom: 50px;
  z-index: 1;
  position: relative;
}

  section.extra-padding {
    padding-top: 100px;
    padding-bottom: 200px;
  }

form {
  z-index: 1;
}

sup .badge {
  font-size: 1em;
}

nav.quicklinks {
  height: 100%;
}



main {
  background: rgba(255,255,255,1);
  /*box-shadow: 0px 0px 100px 0px rgba(0,0,0,0.10);
    -webkit-box-shadow: 0px 0px 100px 0px rgba(0,0,0,0.10);
    -moz-box-shadow: 0px 0px 100px 0px rgba(0,0,0,0.10);*/
  margin-top: 128px;
  /* 'clip' beperkt horizontale overflow zonder van main een
       scroll-container te maken. Met 'hidden' werd overflow-y impliciet
       'auto', wat een tweede (interne) verticale scrollbalk veroorzaakte. */
  overflow-x: clip;
  position: relative;
}

@media (max-width: 991px) {
  main {
    margin-top: 104px;
  }
}

@media (max-width: 768px) {
  main {
    margin-top: 96px;
  }
}

.site-footer {
  margin-top: 4rem;
  padding: 4.5rem 0 0;
  position: relative;
  overflow: hidden;
  background: var(--surface-soft);
  color: var(--text);
  font-size: 0.95rem;
  border-top: 4px solid var(--primary);
}

  .site-footer a {
    color: inherit;
    text-decoration: none;
  }

    .site-footer a:hover,
    .site-footer a:focus {
      color: var(--ink);
    }

    .site-footer a:focus-visible {
      outline: 2px solid var(--primary);
      outline-offset: 4px;
    }

.footer-shell {
  position: relative;
  z-index: 1;
}

.footer-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2rem;
  align-items: center;
  padding-bottom: 2.35rem;
  border-bottom: 1px solid #e5e7eb;
}

.footer-brand {
  display: grid;
  gap: 1.15rem;
}

.footer-logo {
  display: inline-flex;
  width: fit-content;
}

  .footer-logo img {
    width: 100%;
    max-width: 300px;
    height: auto;
  }

.footer-brand p {
  max-width: 46rem;
  margin: 0;
  color: var(--muted);
  font-size: 1rem;
  line-height: 1.65;
}

.footer-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-end;
  align-items: center;
}

.footer-primary-link {
  min-height: 3rem;
  border-radius: 6px;
  white-space: nowrap;
}

.footer-quick-link {
  min-height: 3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  padding: 0.65rem 1rem;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  color: var(--text);
  background: var(--surface);
  transition: border-color 180ms ease, background-color 180ms ease, color 180ms ease;
}

  .footer-quick-link:hover,
  .footer-quick-link:focus {
    border-color: var(--ink);
    background-color: var(--ink);
    color: #ffffff !important;
  }

.footer-grid {
  display: grid;
  grid-template-columns: 0.9fr 0.9fr minmax(280px, 1.15fr) 0.9fr;
  gap: 1.75rem;
  padding: 2.5rem 0;
  align-items: start;
}

.footer-heading {
  margin: 0 0 1rem;
  padding: 0 0 0.65rem;
  color: var(--ink);
  font-size: 0.85rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  border-bottom: 2px solid var(--primary);
  display: inline-block;
}

.footer-links,
.footer-contact-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-links {
  display: grid;
  gap: 0.7rem;
}

  .footer-links a {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    color: #4b5563;
    line-height: 1.45;
    transition: color 180ms ease, transform 180ms ease;
  }

    .footer-links a::before {
      content: "";
      width: 0.38rem;
      height: 0.38rem;
      flex: 0 0 auto;
      border-radius: 2px;
      background-color: #111827;
      opacity: 1;
    }

    .footer-links a:hover,
    .footer-links a:focus {
      transform: translateX(3px);
    }

.footer-contact-card {
  padding: 1.35rem 1.5rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
}

  .footer-contact-card address,
  .footer-contact-list li {
    display: grid;
    grid-template-columns: 1.45rem minmax(0, 1fr);
    gap: 0.75rem;
    align-items: start;
  }

  .footer-contact-card address {
    margin: 0 0 1rem;
    color: #374151;
    line-height: 1.55;
  }

  .footer-contact-card i,
  .footer-contact-list i,
  .footer-quick-link i {
    color: #6b7280;
    line-height: 1.45;
  }

  .footer-contact-card small {
    display: inline-block;
    margin-top: 0.25rem;
    color: #9ca3af;
    font-size: 0.82rem;
  }

.footer-contact-list {
  display: grid;
  gap: 0.75rem;
}

  .footer-contact-list a {
    color: #374151;
    word-break: break-word;
  }

.footer-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 1rem;
}

  .footer-socials a {
    width: 2.4rem;
    height: 2.4rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background-color: #ffffff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
  }

    .footer-socials a:hover,
    .footer-socials a:focus {
      border-color: #c9a800;
      background-color: var(--primary);
      transform: translateY(-2px);
      box-shadow: 0 4px 10px rgba(255, 237, 0, 0.35);
    }

  .footer-socials img {
    width: 1.05rem;
    height: 1.05rem;
    object-fit: contain;
  }

.footer-bottom-shell {
  display: flex;
  justify-content: center;
  border-top: 1px solid #e5e7eb;
  background: #ffffff;
  color: #9ca3af;
  font-size: 0.875rem;
}

.footer-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1rem;
  margin: 0 calc(-1 * var(--bs-gutter-x, 0.75rem));
  padding: 1.1rem 2rem;
}

  .footer-bottom a {
    color: #6b7280;
    transition: color 150ms ease;
  }

    .footer-bottom a:hover {
      color: #111827;
    }

.footer-partner-badge {
  display: inline-flex;
  justify-content: flex-end;
  margin-top: 0.5rem;
}

  .footer-partner-badge img {
    height: 56px;
    width: auto;
    border-radius: 5px;
  }

@media (max-width: 991px) {
  .site-footer {
    margin-top: 3rem;
    padding-top: 3.25rem;
  }

  .footer-cta {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .footer-cta-actions {
    justify-content: flex-start;
  }

  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  .site-footer {
    margin-top: 2.5rem;
    padding-top: 2.75rem;
  }

  .footer-cta-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .footer-primary-link,
  .footer-quick-link {
    width: 100%;
  }

  .footer-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
    padding: 2rem 0;
  }

  .footer-contact-card {
    padding: 1rem;
  }

  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}

.flex-1 {
  flex: 1;
}

.list-unstyled {
  /*line-height: 1.25;*/
}

.list-flex {
  margin: 0;
  padding: 0;
}

  .list-flex li {
    display: flex;
    padding-bottom: 0.5em;
    color: var(--darkgray);
    transition: all var(--transition-speed) var(--transition-ease);
  }

    .list-flex li:hover {
      color: var(--black)
    }

.list-flex-label {
  flex-grow: 1;
  line-height: 2;
}

/* --- Telerik overrides --- */
.k-imageeditor {
  display: flex;
  flex-flow: column;
  width: 100% !important;
}

.k-imageeditor-header {
  flex: 0 1 auto;
}

.k-imageeditor-content {
  flex: 1 1 auto;
  height: 100% !important;
}

/* --- Components --- */
.maxwidth-lg {
  max-width: 100%;
}

.maxwidth-md {
  max-width: 75%;
}

/* --- Reusable components --- */
p {
  line-height: var(--line-height-base);
  font-weight: 400;
  color: var(--text);
  margin-bottom: 1rem;
}

/* Algemene styling voor headings */
h1, h2, h3, h4, h5 {
  line-height: var(--line-height-tight);
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 0.85rem;
  padding-top: 1rem;
  color: var(--ink);
}

/* Specifieke aanpassingen per heading */
h1 {
  font-size: var(--font-size-3xl);
}

  h1 span {
    font-weight: 300;
    line-height: 1;
  }

    h1 span.sub {
      font-size: 0.5em;
    }

h2 {
  font-size: var(--font-size-2xl);
}

h3 {
  font-size: var(--font-size-xl);
  line-height: 1.22;
}

h4 {
  font-size: var(--font-size-lg);
  line-height: 1.22;
}

h5 {
  font-size: var(--font-size-md);
  line-height: 1.2;
  font-weight: 600;
}

  /* Bold styling voor sterke tekst in headings */
  h1 strong, h2 strong, h3 strong, h4 strong, h5 strong {
    font-weight: bold;
    /* font-size: 1.2em veroorzaakt onverwacht grote letters wanneer resource-strings <strong> bevatten */
  }

/* Mobiele versie */
@media (max-width: 768px) {
  h1, h2, h3, h4, h5 {
    padding-top: 0.5rem; /* Minder padding op mobiele apparaten */
    margin: 0.4em 0; /* Compactere marges */
  }

  h1 {
    font-size: 2rem; /* Kleiner voor kleinere schermen */
  }

  h2 {
    font-size: 1.75rem;
  }

  h3 {
    font-size: 1.5rem;
  }

  h4 {
    font-size: 1.25rem;
  }

  h5 {
    font-size: 1rem;
  }

  /* Subtext binnen h1 wordt kleiner */
  h1 span.sub {
    font-size: 0.4em;
  }

  /* Bold styling blijft consistent */
  h1 strong, h2 strong, h3 strong, h4 strong, h5 strong {
    font-size: 1.1em; /* Iets kleinere grootte op mobiel */
  }
}

/* Specifieke styling voor de #News sectie */
#News h2 {
  font-size: 1.25rem;
}

#News .dbcard .dbcard__header-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#News .dbcard .dbcard__header-img {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(18rem, 24vw, 24rem);
  margin: 0 0 25px 0 !important;
  padding: clamp(1rem, 2vw, 1.5rem);
  overflow: hidden;
  background: var(--color-bg-white);
  border-radius: var(--radius-md) var(--radius-md) 0 0;
}

/* Specifieke styling voor de .news-content sectie */
.news-content {
  font-size: 1.1rem;
  line-height: 1.6;
  color: #444;
  padding-top: 2rem;
}

  /* Headers in .news-content */
  .news-content h1,
  .news-content h2,
  .news-content h3,
  .news-content h4,
  .news-content h5 {
    line-height: 1.2;
    font-weight: 500;
    margin: 1em 0 0.5em 0;
    color: #333;
  }

  /* Specifieke grootte per heading binnen .news-content */
  .news-content h1 {
    font-size: 2em;
  }

  .news-content h2 {
    font-size: 1.75em;
  }

  .news-content h3 {
    font-size: 1.5em;
  }

  .news-content h4 {
    font-size: 1.25em;
  }

  .news-content h5 {
    font-size: 1em;
  }

    /* Extra styling voor vetgedrukte tekst binnen headers */
    .news-content h1 strong,
    .news-content h2 strong,
    .news-content h3 strong,
    .news-content h4 strong,
    .news-content h5 strong {
      font-weight: 900;
      font-size: 1.1em;
    }

  /* Paragrafen in .news-content */
  .news-content p {
    margin: 0.6em 0; /* Ruimte tussen paragrafen */
    font-size: 1.125rem; /* Iets groter voor betere leesbaarheid */
    line-height: 1.8; /* Grotere regelafstand voor tekst */
    color: #555;
  }

/* Medium */
@media (max-width: 768px) {
  .news-content {
    font-size: 1rem;
    padding-top: 1.5rem; /* Iets minder ruimte op kleinere schermen */
  }

    .news-content h1,
    .news-content h2,
    .news-content h3,
    .news-content h4,
    .news-content h5 {
      font-weight: 600;
    }

    .news-content h1 {
      font-size: 1.5em;
      font-weight: 700;
    }

    .news-content h2 {
      font-size: 1.3em;
      font-weight: 600;
    }

    .news-content h3 {
      font-size: 1.2em;
      font-weight: 500;
    }

    .news-content h4 {
      font-size: 1.1em;
      font-weight: 500;
    }

    .news-content h5 {
      font-size: 1em;
      font-weight: 500;
    }

    .news-content p {
      font-size: 1rem;
      line-height: 1.7; /* Iets compactere regelafstand */
    }
}

.highlight-title {
  padding-top: 25px;
  font-size: 5em;
  color: var(--primary);
  font-weight: 500;
  line-height: 1;
  display: block;
}

a.highlight-title {
  padding-top: 25px;
  font-size: 5em;
  color: var(--primary);
  font-weight: 500;
  line-height: 1;
  display: inline-block;
  text-decoration: none;
  position: relative;
  transition: color 0.3s ease, letter-spacing 0.3s ease;
}

  a.highlight-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -5px;
    width: 0;
    height: 3px;
    background-color: var(--primary);
    opacity: 0;
    transition: width 0.3s ease, opacity 0.3s ease;
  }

  a.highlight-title:hover {
    letter-spacing: 1px;
  }

    a.highlight-title:hover::after {
      width: 100%;
      opacity: 1;
    }


/* Medium */
@media (max-width: 768px) {
  .highlight-title {
    font-size: 3em;
    font-weight: 700;
  }
}

.sub-title {
  padding-bottom: 25px;
  color: var(--darkgray);
  font-size: calc(1em + 1vmin);
  line-height: 1.5;
  display: block;
}

  .sub-title u {
    color: var(--black);
  }

.primary-color {
  color: var(--primary);
}

.action-icon {
  text-decoration: none;
  border-radius: 5px;
  display: flex;
  align-items: center;
  font-size: 1.2rem;
  transition: all 200ms ease-in-out;
  padding: 0.5em 1em;
}

.user-button i {
  margin-right: 0.5em;
}

.btn-primary {
  background-color: var(--primary);
  border: none;
}

  .btn-primary:hover {
    background-color: var(--highlight);
  }

.btn-outline-primary {
  border-color: var(--primary);
  color: var(--primary);
}

  .btn-outline-primary:hover {
    background-color: var(--primary);
    color: white;
  }


.marked {
  position: relative;
  text-decoration: none;
  color: black;
  font-weight: 700;
  z-index: 1;
  background-image: linear-gradient(180deg, var(--primary), var(--primary));
  background-position: 0 50%;
  background-repeat: no-repeat;
  background-size: 100% 33%;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  display: inline;
  padding: 0 4px;
  margin: 0 -4px;
  transition: background-size 0.3s ease, color 0.3s ease;
}

  .marked:hover {
    background-size: 100% 100%;
  }

  .marked:focus {
    outline: 2px solid var(--primary);
    outline-offset: 2px;
  }

  .marked:active {
    background-size: 100% 100%;
    transform: scale(0.98);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  }

.marked-more {
  position: relative;
  text-decoration: none;
  color: black;
  font-weight: 700;
  padding: 5px 20px;
  background-color: var(--background-color);
  border-radius: 5px;
  transition: background-color 0.3s ease, color 0.3s ease;
}

  .marked-more::before {
    content: '\002B';
    position: absolute;
    color: var(--primary);
    left: 6px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.2em;
    text-shadow: 0px 0px 2px rgba(0, 0, 0, 1);
    transition: transform 0.3s ease, color 0.3s ease, text-shadow 0.3s ease;
  }


  .marked-more:hover {
  }

    .marked-more:hover::before {
      transform: translateY(-50%) rotate(90deg);
      color: black;
    }

a.primary,
p > a:not([class]) {
  position: relative;
  text-decoration: none;
  color: black;
  background-color: transparent;
  border-radius: 5px;
  z-index: 1;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  display: inline-block;
  transition: all 0.3s ease;
}

  a.primary::before,
  p > a:not([class])::before {
    content: '';
    position: absolute;
    z-index: -1;
    background-color: var(--primary);
    height: 3px;
    bottom: 0;
    left: 0;
    right: 0;
    transform: scaleX(1);
    transform-origin: left;
    transition: transform 0.3s ease;
  }

  a.primary:hover,
  p > a:not([class]):hover {
    background-color: var(--primary);
  }

    a.primary:hover::before,
    a.primary:active::before,
    a.primary:focus::before,
    p > a:not([class]):hover::before,
    p > a:not([class]):active::before,
    p > a:not([class]):focus::before {
      transform: scaleX(0);
    }

  a.primary:active,
  p > a:not([class]):active {
    background-color: var(--secondary);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    transform: scale(0.98);
  }

  a.primary:focus,
  p > a:not([class]):focus {
    outline: 2px solid var(--primary);
    outline-offset: 3px;
  }



.overflowy-scroll {
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  max-width: 100%;
}


/* Base Checkbox Styles */
.mvc-checkbox {
  width: 100%;
  margin: 0.5em 0;
  box-sizing: border-box;
}

  /* Visueel verbergen van de daadwerkelijke checkbox */
  .mvc-checkbox input[type="checkbox"] {
    display: none;
  }

    /* Custom label styling */
    .mvc-checkbox input[type="checkbox"] + input + label {
      display: block;
      position: relative;
      padding-left: 35px;
      cursor: pointer;
      user-select: none;
      font-size: 1rem;
      line-height: 1.5;
      transition: color 0.2s ease-in-out;
    }

    /* Hover-effect op tekst */
    .mvc-checkbox input[type="checkbox"]:hover + input + label:hover {
      color: var(--black);
    }

    /* Custom checkbox-styling */
    .mvc-checkbox input[type="checkbox"] + input + label:before {
      content: "";
      display: block;
      width: 1.4em;
      height: 1.4em;
      border: 1px solid var(--checkbox-border-color);
      background-color: var(--checkbox-background-color);
      position: absolute;
      left: 0;
      top: 0;
      border-radius: 4px;
      transition: all 0.2s ease-in-out;
      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
    }

    /* Hover- en focus-effect voor de custom checkbox */
    .mvc-checkbox input[type="checkbox"]:hover + input + label:before,
    .mvc-checkbox input[type="checkbox"]:focus + input + label:before {
      background: var(--highlight);
      box-shadow: inset 0 0 0 1px var(--gray);
      transform: scale(1.05);
    }

    /* Ingedrukte checkbox-staat */
    .mvc-checkbox input[type="checkbox"]:active + input + label:before {
      transform: scale(0.95);
      box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
    }

    /* Geselecteerde checkbox-staat */
    .mvc-checkbox input[type="checkbox"]:checked + input + label:before {
      background-color: var(--primary);
      border-color: var(--primary);
      box-shadow: 0 0 0 1px var(--gray);
    }

    /* Duidelijke focus-stijl */
    .mvc-checkbox input[type="checkbox"]:focus + input + label:before {
      outline: 3px solid var(--focus-outline-color);
      outline-offset: 2px;
      background-color: var(--highlight);
    }

/* ---- Design system helpers ---- */
.section-shell {
  padding: var(--space-8) 0;
}

.section-shell--compact {
  padding: var(--space-7) 0;
}

.section-muted {
  background-color: var(--surface-soft);
}

.section-warm {
  background: linear-gradient(180deg, var(--surface-soft) 0%, var(--surface) 100%);
}

.section-dark {
  background: linear-gradient(135deg, var(--surface-dark) 0%, var(--color-bg-darker) 100%);
  color: var(--white);
}

  .section-dark h1,
  .section-dark h2,
  .section-dark h3,
  .section-dark h4,
  .section-dark h5,
  .section-dark p {
    color: var(--white);
  }

.section-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: var(--space-3);
  color: var(--color-primary-dark);
  font-size: var(--font-size-md);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

  .section-eyebrow::before {
    content: "";
    width: 0.55rem;
    height: 0.55rem;
    border-radius: var(--radius-pill);
    background: var(--primary);
    box-shadow: 0 0 0 4px rgba(255, 237, 0, 0.24);
  }

.section-intro {
  max-width: 44rem;
  color: var(--muted);
  font-size: var(--font-size-md);
}

.hero-section {
  position: relative;
  overflow: hidden;
  padding: var(--space-8) var(--space-7);
  border: 1px solid var(--color-border-dark);
  border-radius: var(--radius-lg);
  background: radial-gradient(circle at 82% 22%, rgba(255, 237, 0, 0.18), transparent 30%), linear-gradient(135deg, var(--color-bg-dark) 0%, var(--color-bg-darker) 100%);
  box-shadow: var(--shadow-lg);
}

  .hero-section::before {
    content: none;
    position: absolute;
    inset: 0;
    background: none;
    pointer-events: none;
  }

  .hero-section > * {
    position: relative;
    z-index: 1;
  }

.hero-actions,
.cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
}

.solution-grid {
  row-gap: var(--space-5);
}

.solution-card {
  height: 100%;
  border-top: 4px solid var(--primary);
}

  .solution-card .dbcard__body {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-5);
  }

  .solution-card .marked,
  .solution-card .mvc-btn {
    margin-top: auto;
  }

.benefit-list {
  display: grid;
  gap: var(--space-3);
  margin: 0;
  padding: 0;
  list-style: none;
}

  .benefit-list li {
    display: grid;
    grid-template-columns: 1rem minmax(0, 1fr);
    gap: var(--space-3);
    color: var(--text);
    line-height: var(--line-height-base);
  }

    .benefit-list li::before {
      content: "";
      width: 0.55rem;
      height: 0.55rem;
      margin-top: 0.55rem;
      border-radius: var(--radius-xs);
      background-color: var(--primary);
    }

.trust-strip {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4) var(--space-6);
  align-items: center;
  padding: var(--space-5) 0;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.site-cta,
.cta-band {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-5);
  align-items: center;
  overflow: hidden;
  padding: clamp(2rem, 4vw, 4.25rem);
  border: 1px solid rgba(255, 237, 0, 0.28);
  border-radius: clamp(1.5rem, 3vw, 2.25rem);
  background: radial-gradient(circle at 12% 8%, rgba(255, 237, 0, 0.24), transparent 28%), radial-gradient(circle at 88% 34%, rgba(255, 237, 0, 0.16), transparent 24%), linear-gradient(135deg, #242512 0%, #111418 46%, #07090c 100%);
  box-shadow: 0 24px 70px rgba(8, 10, 14, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  color: var(--white);
}

  .site-cta::before,
  .cta-band::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image: linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px);
    background-size: 34px 34px;
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.62), transparent 78%);
    opacity: 0.38;
  }

  .site-cta::after,
  .cta-band::after {
    content: "";
    position: absolute;
    inset: auto -8% -42% 52%;
    z-index: -1;
    height: 14rem;
    border-radius: 999px;
    background: rgba(255, 237, 0, 0.22);
    filter: blur(54px);
  }

  .site-cta h2,
  .site-cta h3,
  .site-cta h4,
  .site-cta p,
  .cta-band h2,
  .cta-band h3,
  .cta-band h4,
  .cta-band p {
    color: var(--white);
  }

  .site-cta h2,
  .cta-band h2 {
    max-width: 13ch;
    margin-bottom: var(--space-3);
    font-size: clamp(2rem, 3vw, 3.05rem);
    line-height: 1.05;
  }

  .site-cta p,
  .cta-band p {
    max-width: 48rem;
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.82);
    font-size: clamp(1rem, 1.2vw, 1.13rem);
  }

.site-cta__content {
  position: relative;
  z-index: 1;
}

.site-cta__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  margin-bottom: var(--space-3);
  color: var(--primary);
  font-size: 0.92rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

  .site-cta__eyebrow::before {
    content: "";
    width: 0.68rem;
    height: 0.68rem;
    border-radius: 999px;
    background: var(--primary);
    box-shadow: 0 0 24px rgba(255, 237, 0, 0.72);
  }

.site-cta__actions,
.cta-actions {
  position: relative;
  z-index: 1;
}

.site-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  justify-content: flex-end;
}

.site-cta__button.mvc-btn--primary {
  box-shadow: 0 14px 34px rgba(255, 237, 0, 0.24);
}

.site-cta__button--secondary.mvc-btn--secondary {
  border-color: rgba(255, 255, 255, 0.24);
  color: var(--white);
  background: rgba(255, 255, 255, 0.08);
}

.site-cta--light {
  border-color: var(--color-border);
  background: radial-gradient(circle at 10% 20%, rgba(255, 237, 0, 0.28), transparent 24%), linear-gradient(135deg, var(--white) 0%, #f8f8f5 100%);
  color: var(--text);
}

  .site-cta--light h2,
  .site-cta--light h3,
  .site-cta--light h4 {
    color: var(--heading);
  }

  .site-cta--light p {
    color: var(--text-muted);
  }

  .site-cta--light .site-cta__eyebrow {
    color: var(--heading);
  }

.site-cta--stacked {
  grid-template-columns: minmax(0, 1fr);
  align-content: space-between;
}

  .site-cta--stacked .site-cta__actions {
    justify-content: flex-start;
  }

@media (max-width: 768px) {
  .section-shell,
  .section-shell--compact {
    padding: var(--space-7) 0;
  }

  .hero-section,
  .site-cta,
  .cta-band {
    padding: var(--space-6);
  }

  .site-cta,
  .cta-band {
    grid-template-columns: minmax(0, 1fr);
  }

  .hero-actions,
  .site-cta__actions,
  .cta-actions {
    align-items: stretch;
    flex-direction: column;
  }

    .hero-actions .mvc-btn,
    .site-cta__actions .mvc-btn,
    .cta-actions .mvc-btn {
      width: 100%;
    }
}


ul.list1,
ul.list2,
ul.list3,
ul.list4,
ul.list-steps {
  list-style: none;
  margin: 0;
  padding-left: 1em;
  padding-bottom: 1em;
  position: relative;
}

  ul.list1 > li::before,
  ul.list2 > li::before {
    content: '\25A0'; /* Vierkant symbool */
    margin-left: -1em;
    display: inline-block;
    width: 1em;
    vertical-align: text-bottom;
  }

  ul.list1 > li::before {
    color: var(--primary);
  }

  ul.list3 a {
    text-decoration: none;
    color: inherit;
    transition: color 0.3s ease, transform 0.3s ease; /* Consistente animaties */
  }

  ul.list3 > li::before {
    content: '>';
    color: var(--primary);
    margin-left: -1em;
    display: inline-block;
    width: 1em;
    font-weight: 500;
  }

  ul.list3 a:hover {
    color: var(--highlight); /* Extra visueel onderscheid bij hover */
    transform: scale(1.05); /* Subtiel vergroot bij hover */
  }

ul.list5 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  white-space: nowrap;
  font-size: 1.25rem;
  line-height: 1;
  font-weight: 400;
}

  ul.list5 li {
    padding: 0 1em 0.5em 0;
    margin-right: 1em;
    position: relative;
  }

    ul.list5 li:not(:last-child)::after {
      content: "/";
      position: absolute;
      right: -4px;
      color: var(--gray);
    }

    ul.list5 li a {
      text-decoration: none;
      color: var(--darkgray);
      transition: color 0.3s ease, transform 0.3s ease;
      display: inline-block;
    }

      ul.list5 li a:hover {
        color: var(--black);
        transform: scale(1.05);
      }

      ul.list5 li a.active {
        color: var(--black);
        font-weight: 700;
        text-decoration: underline; /* Extra accent voor actieve links */
      }



/* Medium */
@media (max-width: 768px) {
  ul.list5 {
    font-size: 1rem;
  }

    ul.list5 li {
      padding: 0 0.5em 0.75em 0;
      margin-right: .5em;
    }
}

.justify-content-center > nav > ul {
  justify-content: center;
}


ul.list-steps {
  margin-bottom: 3em;
}

  ul.list-steps::before {
    content: url('/Content/common/images/flag.svg');
    position: absolute;
    top: 100%;
    height: 3em;
    left: 0;
  }

  ul.list-steps li {
    position: relative;
    margin: 0;
    margin-left: -1em;
    padding-bottom: 1em;
    padding-left: 75px;
    padding-top: 10px;
  }

    ul.list-steps li::before {
      content: '';
      position: absolute;
      background-image: radial-gradient(circle, var(--primary) 3px, rgba(236,236,236,0) 3px);
      background-size: 40px 30px;
      background-repeat: repeat-y;
      background-origin: border-box;
      background-position: left top;
      width: 40px;
      left: 0;
      bottom: 1em;
      top: 1em;
    }

    ul.list-steps li::after {
      content: '';
      position: absolute;
      border: 2px solid var(--primary);
      border-radius: 50%;
      background: white;
      color: white;
      text-align: center;
      vertical-align: middle;
      width: 40px;
      height: 40px;
      left: 0;
      top: 0;
    }


.img-absolute-centerfit {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* --- Team cards --- */
.team-member {
  /*margin: 25px;*/
  margin-bottom: 50px;
  max-width: 300px;
  position: relative;
}

.team-member {
  display: grid;
}

.tm-name,
.tm-function,
.tm-description {
  margin: 0;
  padding: 0;
  line-height: 1.25;
}

  .tm-name span,
  .tm-function span {
    color: var(--primary);
    padding-right: 4px;
    letter-spacing: 2px;
    margin: 0;
  }

.tm-description {
  padding: 10px 0;
  font-size: 1em;
  text-align: justify;
}

.tm-image-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 300px;
  height: 330px;
}

.feature {
  margin-bottom: 5em;
}

  .feature:last-child {
    margin-bottom: 0;
  }

  .feature .img-bg {
    transition: all 0.3s ease-in;
    opacity: 0.6;
  }

  .feature:hover .img-bg {
    opacity: 0.3;
  }

  .feature .img-logo, .feature .img-icon {
    /*-webkit-filter: grayscale(100%);*/
    /*filter: grayscale(100%);*/
    position: absolute;
    border-radius: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    padding: 0 2em;
    max-height: 75%;
    max-width: 75%;
  }

  .feature .img-icon {
    width: 50%;
    height: 50%;
    object-fit: contain;
  }


  .feature:hover .img-logo,
  .feature:hover .img-icon {
    /*-webkit-filter: grayscale(0);*/
    /*filter: grayscale(0);*/
  }

/* Basisstijl voor alle img-containers */
.img-container {
  position: relative;
  z-index: 1;
  /*margin-top: 1rem;*/
}

  .img-container.bg-fill {
    background-color: #EBEAE5;
    min-height: 250px;
    /*border-radius: 25px;*/
  }

  .img-container img {
    max-width: 100%;
    object-fit: cover;
    border-radius: 25px;
  }

  /* Algemene pseudo-elementstijl */
  .img-container::after,
  .img-container::before {
    content: '';
    position: absolute;
    background-color: var(--primary);
    border-radius: 25px;
    z-index: -1;
  }

  /* Specifieke stijlen per variant */
  .img-container.style1::after {
    width: 70%;
    height: 60px;
    right: 0;
    bottom: 0;
    left: 0;
    transform: translateY(50%);
    margin: 0 auto;
  }

  .img-container.style1::before {
    width: 70%;
    height: 60px;
    right: 0;
    bottom: 0;
    left: 0;
    transform: translateY(50%);
    opacity: 0.5;
    margin: 0 auto;
    z-index: 1;
  }

  .img-container.style2 img {
    object-fit: contain;
    /*border-radius: 25px;*/
  }

.dbcard--media {
  overflow: visible;
}

  .dbcard--media .dbcard__body {
    position: relative;
    z-index: 2;
  }

.db-media.img-container.style2 {
  width: 100%;
}

.showcase-card__media {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 180px;
  height: 180px !important;
  min-height: 0 !important;
  max-height: 180px;
  padding: 1.15rem 1.6rem;
  overflow: visible;
  border-radius: var(--radius-md) var(--radius-md) 0 0;
  background-color: #EBEAE5;
}

#Features .showcase-card .showcase-card__media {
  flex-basis: 180px;
  height: 180px !important;
}

.showcase-card__media .img-logo {
  position: absolute;
  z-index: 2;
  display: block;
  top: 50%;
  left: 50%;
  width: calc(100% - 3.2rem);
  height: calc(100% - 2.3rem);
  max-width: 88%;
  max-height: 9.4rem;
  padding: 0;
  border-radius: 0;
  object-fit: contain;
  transform: translate(-50%, -50%);
}

.db-media--layered {
  isolation: isolate;
  height: 200px;
  min-height: 0;
  overflow: visible;
  border-radius: var(--radius-md) var(--radius-md) 0 0;
  background-color: #EBEAE5;
}

  .db-media--layered::before {
    inset: 0;
    z-index: 2;
    border-radius: var(--radius-md) var(--radius-md) 0 0;
    background: linear-gradient(180deg, rgba(15, 18, 24, 0.06) 0%, rgba(15, 18, 24, 0.34) 100%);
    pointer-events: none;
  }

  .db-media--layered .img-bg {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    border-radius: var(--radius-md) var(--radius-md) 0 0;
    object-fit: cover;
  }

  .db-media--layered .img-logo {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    width: min(52%, 17rem);
    height: 5.8rem;
    max-width: 52%;
    max-height: 5.8rem;
    padding: 0.8rem 1rem;
    border-radius: var(--radius-sm);
    background: rgba(255, 255, 255, 0.86);
    object-fit: contain;
    transform: translate(-50%, -50%);
    box-shadow: 0 16px 32px rgba(15, 18, 24, 0.18);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
  }

  .db-media--layered::after,
  .showcase-card__media::after {
    z-index: 4;
    pointer-events: none;
  }

.img-container.style2::after {
  width: 60%;
  height: 50px;
  right: 0;
  top: 0;
  left: 0;
  transform: translateY(-50%);
  margin: 0 auto;
  z-index: 1;
}

.img-container.style2.db-media--layered::after,
.img-container.style2.showcase-card__media::after {
  z-index: 4;
  pointer-events: none;
}

.img-container.style2.half::after {
  z-index: -1;
}

.img-container.style3::after {
  width: min(70%, 22rem);
  height: 3.2rem;
  right: -1.35rem;
  bottom: -0.85rem;
  z-index: 0;
  margin: 0;
}

.img-container.style3 {
  isolation: isolate;
  overflow: visible;
}

  .img-container.style3 img {
    position: relative;
    z-index: 2;
    display: block;
  }

  .img-container.style3::before {
    width: min(36%, 10rem);
    height: 3.2rem;
    right: -1.35rem;
    bottom: -0.85rem;
    z-index: 1;
    margin: 0;
    background-color: var(--primary);
  }

  .img-container.style3::after {
    opacity: 0.42;
    transform: translate(-0.9rem, -0.65rem);
  }

  .img-container.style3::before {
    transform: none;
  }

  .img-container.style3::before,
  .img-container.style3::after {
    pointer-events: none;
  }

  .img-container.style3.full::before,
  .img-container.style3.full::after {
    z-index: 1;
  }

  .img-container.style3.full::after {
    z-index: 1;
  }

@media (min-width: 992px) {
  .section-shell .row.align-items-center .db-media.img-container.style3 {
    position: sticky;
    top: 7.5rem;
    align-self: flex-start;
  }
}

.img-container.style4 {
  width: 100%;
  height: 250px;
}

  .img-container.style4 img {
    border-bottom-left-radius: 35px;
    border-top-left-radius: 35px;
    height: 100%;
    width: 100%;
  }

  .img-container.style4::after {
    width: 75%;
    height: 60px;
    bottom: 0;
    transform: translate(-65%, 50%);
    margin: 0 auto;
  }

.img-container.style5 {
  height: 150px;
  width: 250px;
  padding: 25px;
  margin: 5px;
  border: 1px solid var(--gray);
}

  .img-container.style5 img {
    max-width: 100%;
    max-height: 100%;
    border-radius: 0px;
    object-fit: contain;
  }

.img-container.style6 {
  margin-left: 75px;
}

  .img-container.style6::after {
    width: 30px;
    height: 100%;
    top: 0;
    left: 0;
    transform: translateX(-50%) rotate(20deg);
    z-index: 2;
  }

.img-container.style7 {
  margin-left: 75px;
}

  .img-container.style7::after {
    width: 80%;
    height: 12%;
    top: 8%;
    right: -8%;
    transform: rotate(20deg);
    z-index: 2;
  }

.img-container-inner {
  position: relative;
  width: 100%;
  height: 100%;
}

/* Images container */
.images-container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-evenly;
  gap: 10px;
  width: 100%;
  height: 100%;
  padding: 1em;
  padding-top: 2em;
  align-content: stretch;
  min-height: 250px;
}

  .images-container img {
    max-height: 60px;
    max-width: 200px;
    width: auto;
    object-fit: contain;
    transition: all 200ms ease-in-out;
    border-radius: 0 !important;
  }

    .images-container img:hover {
      transform: scale(0.95);
    }



.feature-item p {
  line-height: 1;
  margin-top: 1rem;
  margin-bottom: 0
}

.homepage-hero {
  position: relative;
  overflow: hidden;
  width: calc(100% + 7rem);
  margin-left: -3.5rem;
  margin-right: -3.5rem;
  padding: 5rem 4.5rem;
  border-radius: var(--radius-lg);
  background: radial-gradient(circle at 78% 20%, rgba(255, 237, 0, 0.22), transparent 30%), linear-gradient(135deg, var(--color-bg-dark) 0%, var(--color-bg-darker) 100%);
  border: 1px solid var(--color-border-dark);
  box-shadow: var(--shadow-lg);
}

  .homepage-hero::before {
    content: none;
    position: absolute;
    inset: 0;
    background: none;
    pointer-events: none;
  }

  .homepage-hero > .row {
    position: relative;
    z-index: 1;
  }

.homepage-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.35rem;
  padding: 0;
  border-radius: 0;
  background-color: transparent;
  color: var(--color-primary);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

  .homepage-hero-eyebrow::before {
    content: "";
    width: 0.65rem;
    height: 0.65rem;
    border-radius: 999px;
    background: var(--primary);
    box-shadow: 0 0 0 4px rgba(255, 237, 0, 0.2);
  }

.homepage-hero-title {
  /*max-width: 11ch;*/
  margin-bottom: 1.25rem;
  padding-top: 0;
  color: var(--color-text-light);
  font-size: clamp(3.1rem, 5vw, 5rem);
  line-height: 1;
  letter-spacing: 0;
}

.homepage-hero-subtitle {
  max-width: 39rem;
  margin-bottom: 0;
  padding-bottom: 0;
  color: rgba(248, 248, 248, 0.78);
  font-size: 1.18rem;
  line-height: 1.6;
}

.homepage-hero-actions {
  margin-top: 2rem;
}

  .homepage-hero-actions .mvc-btn {
    min-width: 0;
    padding: 0.95rem 1.35rem;
    border-radius: var(--radius-pill);
  }

  .homepage-hero-actions .mvc-btn--secondary {
    border-color: rgba(255, 255, 255, 0.46);
    color: var(--white);
  }

    .homepage-hero-actions .mvc-btn--secondary:hover {
      background: var(--white);
      border-color: var(--white);
      color: var(--color-text-main);
    }

.homepage-hero-visual {
  position: relative;
  min-height: 0;
}

.homepage-hero-image {
  position: absolute;
  /*inset: 2.25rem;*/
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.homepage-choice-grid,
.homepage-pillars {
  row-gap: 1rem;
}

.homepage-choice-card,
.homepage-solution-card {
  margin-bottom: 0;
}

.homepage-choice-card {
  border: 1px solid var(--color-border);
  border-top: 5px solid var(--primary);
  border-left-width: 1px;
  border-radius: var(--radius-md);
  background: var(--color-bg-white);
  box-shadow: var(--shadow-soft);
  transition: transform 200ms ease, box-shadow 200ms ease, border-color 200ms ease;
}

  .homepage-choice-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 24px 44px rgba(0, 0, 0, 0.14);
    border-color: rgba(255, 237, 0, 0.66);
  }

  .homepage-choice-card .dbcard__title,
  .homepage-solution-card .dbcard__title {
    font-size: 1.25rem;
    margin-bottom: 0.2rem;
  }

  .homepage-choice-card .dbcard__body,
  .homepage-solution-card .dbcard__body {
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  .homepage-choice-card .dbcard__body {
    gap: 0.7rem;
    padding: 1.7rem;
    align-items: flex-start;
  }

    .homepage-choice-card .dbcard__body > p:first-of-type {
      font-size: 1rem;
      line-height: 1.45;
      color: var(--color-text-muted);
    }

    .homepage-choice-card .dbcard__body p:last-child,
    .homepage-solution-card .dbcard__body p:last-child {
      margin-top: auto;
      margin-bottom: 0;
    }

.homepage-choice-icon {
  width: 4rem;
  height: 4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.35rem;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  color: var(--black);
  box-shadow: 0 16px 28px rgba(255, 237, 0, 0.28);
}

  .homepage-choice-icon svg {
    width: 1.9rem;
    height: 1.9rem;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

/* ---- Homepage section spacing ---- */
/*
    Consistent vertical rhythm:
    - Desktop:  section gap = 6rem (via padding-top on each section)
    - Hero is tighter: 3.5rem bottom
    - KnowledgeSharing gets extra horizontal padding to clear the accent bar
*/

#Header {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}

#CustomSolutions {
  margin-top: 1rem;
  padding-left: 2rem;
  padding-right: 2rem;
  border-radius: var(--radius-lg);
  background: var(--color-bg-light);
}

#Services {
  padding-bottom: 6rem;
  background: var(--color-bg-white);
}

#KnowledgeSharing {
  padding-top: 5rem;
  padding-bottom: 5rem;
  padding-left: 2.75rem;
  padding-right: 2.75rem;
  background: linear-gradient(135deg, #fffef0 0%, #fafaf5 60%, #f5f5ee 100%);
  border-top: 1px solid rgba(17, 17, 17, 0.07);
  border-bottom: 1px solid rgba(17, 17, 17, 0.07);
  border-radius: 2rem;
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.05);
  position: relative;
  overflow: hidden;
}

  #KnowledgeSharing::before {
    content: '';
    position: absolute;
    left: 0;
    top: 2.5rem;
    bottom: 2.5rem;
    width: 5px;
    border-radius: 0 4px 4px 0;
    background: linear-gradient(180deg, #ffed00 0%, #ffcc00 100%);
    box-shadow: 0 0 16px rgba(255, 237, 0, 0.5);
  }

#CustomSolutions .row:first-child {
  margin-bottom: 0.75rem;
}

#CustomSolutions h2 {
  margin-bottom: 0.55rem;
}

#CustomSolutions p {
  max-width: 34rem;
}

/* ---- Services section ---- */
#Services > .row {
  padding-top: 4rem;
  padding-bottom: 4rem;
  border-top: 1px solid rgba(17, 17, 17, 0.06);
}

#Services h3 {
  margin-bottom: 1.25rem;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

#Services h4 {
  margin-bottom: 1.25rem;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

#Services .homepage-pillars {
  row-gap: 1.5rem;
  column-gap: 0;
}

  #Services .homepage-pillars .dbcard {
    background: transparent;
    border: none;
    border-top: 2px solid rgba(17, 17, 17, 0.1);
    border-radius: 0;
    box-shadow: none;
    margin-bottom: 0;
    padding-left: 0.25rem;
    transition: border-color 220ms ease;
  }

    #Services .homepage-pillars .dbcard:hover {
      border-top-color: var(--primary);
      transform: none;
      box-shadow: none;
    }

    #Services .homepage-pillars .dbcard .dbcard__body {
      padding: 1.25rem 1rem 0.5rem 0;
    }

.homepage-pillar-number {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: rgba(17, 17, 17, 0.3);
  margin-bottom: 0.75rem;
  font-variant-numeric: tabular-nums;
}

#Services .homepage-pillars .dbcard__title {
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.25;
  margin-bottom: 0.6rem;
  color: var(--color-text-main);
}

#Services .homepage-pillars p {
  font-size: 0.93rem;
  color: var(--color-text-muted);
  line-height: 1.6;
  margin-bottom: 0;
}

/* ---- Homepage logos ---- */
.homepage-logos {
  min-height: auto;
  padding-top: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem 2rem;
  align-items: center;
}

  .homepage-logos img {
    max-height: 2.75rem;
    width: auto;
    /* min-width voorkomt dat flex-items instorten naar 0px vÃ³Ã³r het laden van de afbeelding */
    min-width: 3rem;
    filter: grayscale(1) opacity(0.65);
    transition: filter 200ms ease;
  }

    .homepage-logos img:hover {
      filter: grayscale(0) opacity(1);
    }

/* ---- KnowledgeSharing ---- */
#KnowledgeSharing h4 {
  letter-spacing: -0.03em;
  margin-bottom: 1.25rem;
  font-size: clamp(1.45rem, 2.8vw, 2rem);
  color: var(--color-text-main);
}

#KnowledgeSharing p {
  max-width: 38rem;
  color: var(--color-text-muted);
  line-height: 1.65;
}

#KnowledgeSharing .marked {
  font-weight: 700;
}

/* ---- Homepage SEO card ---- */
#HomepageSEO {
  padding-top: 5rem;
  padding-bottom: 0rem;
}

.homepage-seo-card {
  border-radius: 1.75rem;
  background: linear-gradient(135deg, var(--color-bg-dark) 0%, var(--color-bg-darker) 100%);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
  overflow: hidden;
}

  .homepage-seo-card .dbcard__body {
    padding: 3rem 3.25rem;
  }

.homepage-seo-card-inner {
  display: flex;
  gap: 2.25rem;
  align-items: flex-start;
}

.homepage-seo-icon {
  flex-shrink: 0;
  width: 3.5rem;
  height: 3.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 1rem;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  color: #111111;
  box-shadow: 0 8px 24px rgba(255, 237, 0, 0.28);
  margin-top: 0.2rem;
}

  .homepage-seo-icon svg {
    width: 1.6rem;
    height: 1.6rem;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

.homepage-seo-card h4 {
  margin-bottom: 1rem;
  color: #ffffff;
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  letter-spacing: -0.02em;
}

.homepage-seo-card p {
  color: #ffffff !important;
  line-height: 1.7;
  margin-bottom: 0.75rem;
}

  .homepage-seo-card p:last-child {
    margin-bottom: 0;
  }

.homepage-seo-card strong {
  color: #ffffff;
  font-weight: 700;
}

@media (max-width: 991px) {
  .homepage-hero {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding: 2.25rem 1.5rem;
    border-radius: 1.75rem;
  }

  .homepage-hero-title {
    max-width: none;
    /* Max afgestemd op desktop-waarde bij 992px (~3.2rem) om een abrupte sprong te vermijden */
    font-size: clamp(2rem, 9vw, 3.2rem);
  }

  .homepage-hero-subtitle {
    max-width: none;
    font-size: 1.05rem;
  }

  .homepage-hero-visual {
    min-height: 300px;
  }

    .homepage-hero-visual::before {
      /*inset: 1rem;*/
    }

  .homepage-choice-card .dbcard__body {
    padding: 1.35rem;
  }

  #Services,
  #CustomSolutions,
  #HomepageSEO {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }

  #KnowledgeSharing {
    padding-top: 3rem;
    padding-bottom: 3rem;
    padding-left: 2rem;
    padding-right: 1.5rem;
    border-radius: 1rem;
  }

    #KnowledgeSharing::before {
      top: 1.5rem;
      bottom: 1.5rem;
    }

  #Services > .row {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .homepage-logos {
    gap: 1rem 1.5rem;
  }

    .homepage-logos img {
      max-height: 2.25rem;
    }

  .homepage-seo-card .dbcard__body {
    padding: 2rem 1.75rem;
  }

  .homepage-seo-card-inner {
    flex-direction: column;
    gap: 1.25rem;
  }
}

/* PDF viewer */
.document-viewer-overlay {
  position: fixed;
  inset: 0;
  z-index: 1055;
  display: grid;
  pointer-events: none;
  visibility: hidden;
}

  .document-viewer-overlay.is-open {
    pointer-events: auto;
    visibility: visible;
  }

.document-viewer-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(15, 18, 24, 0);
  transition: background 180ms ease;
}

.document-viewer-overlay.is-open .document-viewer-backdrop {
  background: rgba(15, 18, 24, 0.45);
}

.document-viewer-shell {
  position: absolute;
  padding: 0;
  inset: 1.15rem;
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: 0.75rem;
  background: #f7f7f4;
  box-shadow: 0 28px 80px rgba(15, 18, 24, 0.32);
  opacity: 0;
  transform: translateY(0.75rem) scale(0.985);
  transition: opacity 180ms ease, transform 180ms ease;
}

.document-viewer-overlay.is-open .document-viewer-shell {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.document-viewer-body {
  min-height: 0;
  overflow: hidden;
}

.document-viewer-overlay-open {
  overflow: hidden;
}

.document-viewer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 4rem;
  gap: 0.85rem;
  padding: 0.72rem 0.8rem 0.72rem 1rem;
  border-bottom: 1px solid rgba(21, 21, 21, 0.08);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 10px 24px rgba(15, 18, 24, 0.06);
  z-index: 4;
}

.document-viewer-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 2.35rem;
  height: 2.35rem;
  border: 1px solid rgba(21, 21, 21, 0.14);
  border-radius: var(--radius-sm);
  background: #ffffff;
  color: var(--color-text-main);
  cursor: pointer;
}

  .document-viewer-close:hover,
  .document-viewer-close:focus {
    border-color: var(--color-primary);
    background: rgba(255, 237, 0, 0.22);
  }

.document-viewer-title-block {
  display: grid;
  flex: 1 1 auto;
  min-width: 0;
  gap: 0.05rem;
}

.document-viewer-eyebrow {
  color: var(--color-text-muted);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: uppercase;
}

.document-viewer-title-block .modal-title,
.document-viewer-page-header h1 {
  margin: 0;
  padding: 0;
  color: var(--color-text-main);
  font-size: 1.05rem;
  font-weight: 850;
  line-height: 1.2;
}

.document-viewer-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 1 auto;
  gap: 0.45rem;
  margin-left: auto;
  min-width: 0;
}

.document-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-height: 1.8rem;
  padding: 0.28rem 0.42rem;
  border: 1px solid transparent;
  border-radius: var(--radius-pill);
  background: #ffffff;
  color: var(--color-text-main);
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

  .document-status-badge::before {
    content: "";
    width: 0.48rem;
    height: 0.48rem;
    border-radius: var(--radius-pill);
    background: #8a9a87;
  }

.document-status-badge--attention {
  background: transparent;
  border-color: transparent;
}

  .document-status-badge--attention::before {
    background: var(--color-primary);
    box-shadow: 0 0 0 4px rgba(255, 237, 0, 0.22);
  }

.document-status-badge--success {
  background: transparent;
  border-color: transparent;
}

  .document-status-badge--success::before {
    background: #2ecc71;
  }

.document-status-badge--rejected {
  background: transparent;
  border-color: transparent;
  color: #7a2118;
}

  .document-status-badge--rejected::before {
    background: #c0392b;
  }

.document-viewer-page {
  display: grid;
  gap: 1rem;
  min-height: calc(100vh - 9rem);
}

.document-viewer-page-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 0 0;
}

.pdf-container {
  display: flex !important;
  width: 100%;
  align-items: stretch;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  position: relative;
}

  .pdf-container.is-loading .k-loading-mask,
  .pdf-container.is-loading .k-loading-image,
  .pdf-container.is-loading .k-loading-color,
  body.document-preview-loading .k-loading-mask,
  body.document-preview-loading .k-loading-image,
  body.document-preview-loading .k-loading-color,
  body.document-preview-loading .k-loader-container,
  body.document-preview-loading .k-loading,
  body.document-preview-loading .k-i-loading {
    display: none !important;
  }

.document-preview-loader,
.document-preview-boot {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  color: var(--color-text-main);
  text-align: center;
}

.pdf-container.is-loading .document-preview-loader {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: flex;
  flex-direction: column;
  background: rgba(247, 247, 244, 0.92);
  backdrop-filter: blur(8px);
}

.document-preview-boot {
  position: fixed;
  inset: 0;
  z-index: 1055;
  display: flex;
  flex-direction: column;
  background: rgba(247, 247, 244, 0.96);
}

.document-preview-loader-spinner {
  width: 3.1rem;
  height: 3.1rem;
  border: 4px solid rgba(21, 21, 21, 0.12);
  border-top-color: var(--color-primary);
  border-radius: 50%;
  animation: document-preview-spin 780ms linear infinite;
}

.document-preview-loader-title {
  margin-top: 0.2rem;
  font-size: 1.05rem;
  font-weight: 850;
  line-height: 1.2;
}

.document-preview-loader-text {
  max-width: 19rem;
  color: var(--color-text-muted);
  font-size: 0.92rem;
  line-height: 1.45;
}

@keyframes document-preview-spin {
  to {
    transform: rotate(360deg);
  }
}

.pdf-container > .buttons {
  display: none;
}

.buttons {
  display: flex;
  flex-wrap: nowrap !important;
  transition: all var(--transition-speed) var(--transition-ease);
}

  .buttons a {
    color: var(--black);
    background-color: var(--primary);
    text-decoration: none;
    margin: 0.2em;
    height: 42px;
    padding: 0.5em 1em;
    border-radius: 0.5em;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5em;
  }

    .buttons a:hover {
      background-color: var(--highlight);
      opacity: 1;
    }

    .buttons a img {
      max-height: 100%;
    }

.pdf-action-buttons {
  gap: 0.4rem;
  opacity: 1 !important;
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

  .pdf-action-buttons a,
  .pdf-action-buttons button {
    min-width: 2.55rem;
    height: 2.55rem;
    margin: 0;
    padding: 0 0.78rem;
    border-radius: var(--radius-sm);
  }

.document-viewer-actions .document-viewer-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border: 1px solid rgba(21, 21, 21, 0.08);
  background: #ffffff;
  color: var(--color-text-main);
  cursor: pointer;
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1;
  box-shadow: none;
  text-decoration: none;
}

.document-viewer-actions--header {
  flex-wrap: nowrap !important;
  min-width: 0;
  max-width: 100%;
}

.document-viewer-action-group {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 0.35rem;
}

.document-viewer-action-separator {
  align-self: stretch;
  width: 1px;
  min-height: 1.7rem;
  margin: 0.22rem 0.12rem;
  background: rgba(21, 21, 21, 0.12);
}

.document-options-modified-dot {
  display: none;
  width: 0.42rem;
  height: 0.42rem;
  border-radius: 50%;
  background: #c9a800;
  box-shadow: 0 0 0 3px rgba(255, 237, 0, 0.24);
}

.document-viewer-action.is-modified .document-options-modified-dot {
  display: inline-block;
}

.document-options-modified-label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.document-viewer-actions .document-viewer-action:hover,
.document-viewer-actions .document-viewer-action:focus {
  border-color: var(--color-primary);
  background: rgba(255, 237, 0, 0.24);
  color: var(--color-text-main);
  transform: translateY(-1px);
}

.document-viewer-actions .document-viewer-action--primary {
  border-color: var(--color-primary);
  background: var(--color-primary);
}

.document-viewer-actions .document-viewer-action--danger {
  border-color: rgba(192, 57, 43, 0.24);
  background: rgba(192, 57, 43, 0.08);
  color: #7a2118;
}

  .document-viewer-actions .document-viewer-action--danger:hover,
  .document-viewer-actions .document-viewer-action--danger:focus {
    border-color: #c0392b;
    background: rgba(192, 57, 43, 0.14);
    color: #7a2118;
  }

.document-viewer-actions .document-viewer-action .lnr {
  font-size: 1.05rem;
  line-height: 1;
}

.document-options-list {
  display: grid;
  gap: 0.22rem;
}

  .document-options-list li {
    align-items: center;
    min-height: 3.15rem;
    gap: 0.65rem;
    padding: 0.52rem 0.68rem;
    border: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: var(--radius-sm);
    background: #ffffff;
  }

.document-option-item--main {
  margin-top: 0.55rem;
  background: #f8f8f5 !important;
}

  .document-option-item--main:first-child {
    margin-top: 0;
  }

.document-option-item--dependent {
  position: relative;
  margin-left: 0.8rem;
  border-color: rgba(21, 21, 21, 0.065) !important;
}

  .document-option-item--dependent::before {
    content: '';
    position: absolute;
    top: -0.28rem;
    bottom: 50%;
    left: -0.52rem;
    width: 0.4rem;
    border-bottom: 1px solid rgba(21, 21, 21, 0.2);
    border-left: 1px solid rgba(21, 21, 21, 0.2);
    border-radius: 0 0 0 0.35rem;
  }

.document-option-copy {
  display: grid;
  min-width: 0;
  gap: 0.12rem;
}

  .document-option-copy .list-flex-label {
    min-width: 0;
    margin: 0;
    color: var(--color-text-main);
    font-size: 0.91rem;
    line-height: 1.35;
  }

.document-option-badge,
.document-option-required {
  color: var(--color-text-muted);
  font-size: 0.72rem;
  font-weight: 800;
}

.document-option-badge {
  justify-self: start;
  padding: 0.15rem 0.45rem;
  border-radius: var(--radius-pill);
  background: rgba(21, 21, 21, 0.06);
}

.document-option-item.is-parent-disabled {
  border-color: rgba(21, 21, 21, 0.05) !important;
  background: #f7f7f5;
}

  .document-option-item.is-parent-disabled .document-option-copy .list-flex-label,
  .document-option-item.is-parent-disabled .document-option-badge,
  .document-option-item.is-parent-disabled .document-option-required {
    color: #92928e;
  }

.document-option-unavailable {
  display: none;
  color: #7a6c52;
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1.25;
}

.document-option-item.is-parent-disabled .document-option-unavailable {
  display: inline;
}

.document-options-footer {
  position: sticky;
  bottom: -1.15rem;
  z-index: 2;
  margin: 0.15rem -1.15rem -1.15rem;
  padding: 0.8rem 1.15rem 1.15rem;
  border-top: 1px solid rgba(21, 21, 21, 0.08);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 -10px 22px rgba(15, 18, 24, 0.045);
  backdrop-filter: blur(8px);
}

.document-signature-body {
  display: grid;
  gap: 1rem;
}

.document-comment-body {
  display: grid;
  gap: 1rem;
}

.document-comment-textarea {
  min-height: 9rem;
  resize: vertical;
}

.document-action-sheet {
  position: fixed;
  inset: 0;
  z-index: 1065;
  display: grid;
  pointer-events: none;
  visibility: hidden;
}

  .document-action-sheet.is-open {
    pointer-events: auto;
    visibility: visible;
  }

.document-action-sheet-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(15, 18, 24, 0);
  cursor: default;
  transition: background 180ms ease;
}

.document-action-sheet.is-open .document-action-sheet-backdrop {
  background: rgba(15, 18, 24, 0.28);
}

.document-action-panel-shell {
  position: absolute;
  inset: 0 0 0 auto;
  display: grid;
  grid-template-rows: auto 1fr;
  width: min(28rem, calc(100vw - 1rem));
  height: 100%;
  overflow: hidden;
  border-left: 1px solid rgba(21, 21, 21, 0.1);
  background: #ffffff;
  box-shadow: -18px 0 46px rgba(15, 18, 24, 0.2);
  transform: translateX(104%);
  transition: transform 220ms ease;
}

.document-action-sheet.is-open .document-action-panel-shell {
  transform: translateX(0);
}

.document-action-panel-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.1rem 1.15rem;
  border-bottom: 1px solid rgba(21, 21, 21, 0.08);
  background: #fbfbf8;
}

.document-action-panel-eyebrow {
  display: block;
  margin-bottom: 0.25rem;
  color: var(--color-text-muted);
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: uppercase;
}

.document-action-panel-header h2 {
  margin: 0;
  color: var(--color-text-main);
  font-size: 1.2rem;
  font-weight: 850;
  line-height: 1.2;
}

.document-action-panel-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 2.35rem;
  height: 2.35rem;
  border: 1px solid rgba(21, 21, 21, 0.12);
  border-radius: var(--radius-sm);
  background: #ffffff;
  color: var(--color-text-main);
  cursor: pointer;
}

  .document-action-panel-close:hover,
  .document-action-panel-close:focus {
    border-color: var(--color-primary);
    background: rgba(255, 237, 0, 0.22);
  }

.document-action-panel-content {
  min-height: 0;
  overflow: auto;
}

.document-action-panel {
  display: none;
  padding: 1.15rem;
}

  .document-action-panel.is-active {
    display: block;
  }

.document-action-form {
  display: grid;
  gap: 0.72rem;
}

.document-action-form-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.65rem;
  padding-top: 0.25rem;
}

  .document-action-form-footer .mvc-btn {
    min-height: 2.85rem;
    padding: 0.72rem 1rem;
    border-radius: var(--radius-sm);
  }

.document-action-sheet-open {
  overflow: hidden;
}

.document-danger-button {
  background: #c0392b;
  border-color: #c0392b;
  color: #ffffff;
}

  .document-danger-button:hover,
  .document-danger-button:focus {
    background: #a93226;
    border-color: #a93226;
    color: #ffffff;
  }

.document-signature-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.7rem;
}

.document-signature-editor {
  display: grid;
  gap: 0.55rem;
  padding: 0.55rem;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-md);
  background: #fbfbf8;
}

.document-signature-methods {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.3rem;
  padding: 0.3rem;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-pill);
  background: #f5f5f2;
}

.document-signature-method {
  min-height: 2.5rem;
  border: 0;
  border-radius: var(--radius-pill);
  background: transparent;
  color: var(--color-text-muted);
  font-size: 0.88rem;
  font-weight: 800;
  cursor: pointer;
}

  .document-signature-method.is-active {
    background: #ffffff;
    color: var(--color-text-main);
    box-shadow: 0 3px 12px rgba(15, 18, 24, 0.1);
  }

.document-signature-type-panel {
  padding: 0.2rem 0.2rem 0;
  border: 0;
  background: transparent;
}

.document-signature-hint {
  display: block;
  margin-top: 0.4rem;
  color: var(--color-text-muted);
  font-size: 0.78rem;
  line-height: 1.4;
}

.document-signature-pad.is-typed-preview .signature-canvas {
  border-style: solid;
  background: #fffef8;
  pointer-events: none;
}

.document-signature-pad {
  padding: 0.55rem;
  border: 0;
  border-radius: var(--radius-sm);
  background: transparent;
  box-shadow: none;
}

.document-signature-pad-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.42rem;
}

  .document-signature-pad-header .title-text {
    margin: 0;
  }

.document-signature-clear {
  min-height: 2.15rem;
  padding: 0.38rem 0.72rem;
  border: 1px solid rgba(21, 21, 21, 0.16);
  border-radius: var(--radius-pill);
  background: #ffffff;
  color: var(--color-text-main);
  font-size: 0.82rem;
  font-weight: 800;
}

  .document-signature-clear:hover,
  .document-signature-clear:focus {
    border-color: var(--color-primary);
    background: rgba(255, 237, 0, 0.2);
  }

.signature-canvas {
  display: block;
  width: 100%;
  height: 168px;
  border: 1px dashed rgba(21, 21, 21, 0.2);
  border-radius: var(--radius-sm);
  background: #ffffff;
  touch-action: none;
}

[data-document-panel="signature"] .document-action-form-footer {
  margin-top: 0.05rem;
  padding-top: 0.7rem;
  border-top: 1px solid rgba(21, 21, 21, 0.08);
}

.document-reject-confirmation {
  padding: 0.72rem 0.8rem;
  border-left: 3px solid #c0392b;
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
  background: rgba(192, 57, 43, 0.06);
}

  .document-reject-confirmation p {
    margin: 0 0 0.12rem;
    color: var(--color-text-main);
    font-size: 0.92rem;
    font-weight: 800;
  }

  .document-reject-confirmation span {
    color: var(--color-text-muted);
    font-size: 0.78rem;
  }

.document-reject-textarea {
  min-height: 7rem;
}

@media (max-width: 991px) {
  .document-viewer-shell {
    inset: 0.55rem;
  }

  .document-viewer-header,
  .document-viewer-page-header {
    align-items: stretch;
    flex-direction: column;
    gap: 0.65rem;
  }

  .document-viewer-header {
    padding: 0.75rem;
  }

  .document-viewer-header-actions {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    width: 100%;
    gap: 0.45rem;
    margin-left: 0;
  }

  .document-viewer-page-header .document-viewer-header-actions {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .document-viewer-actions--header {
    justify-content: flex-start;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    padding-bottom: 0.15rem !important;
    scrollbar-width: thin;
  }

    .document-viewer-actions--header .document-viewer-action {
      flex: 0 0 auto;
      white-space: nowrap;
    }

  .document-status-badge {
    min-height: 2.4rem;
  }

  .document-preview-loader-text {
    max-width: min(19rem, calc(100vw - 3rem));
  }
}

@media (max-width: 600px) {
  .document-viewer-shell {
    inset: 0;
    border: 0;
    border-radius: 0;
  }

  .pdf-action-buttons a,
  .pdf-action-buttons button {
    width: 2.55rem;
    min-width: 2.55rem;
    height: 2.55rem;
    padding: 0;
  }

  .document-viewer-actions .document-viewer-action > span:not(.lnr):not(.document-options-modified-dot):not(.document-options-modified-label) {
    display: none;
  }

  .document-viewer-title-block .modal-title,
  .document-viewer-page-header h1 {
    font-size: 1rem;
  }

  .document-viewer-header,
  .document-viewer-page-header {
    gap: 0.55rem;
  }

  .document-viewer-header-actions {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .document-status-badge {
    grid-column: 1 / -1;
    justify-self: start;
    min-height: 1.95rem;
    padding: 0.32rem 0.58rem;
    font-size: 0.78rem;
  }

  .document-viewer-page-header .document-status-badge {
    grid-column: 1 / -1;
  }

  .document-viewer-actions--header {
    grid-column: 1;
    justify-content: flex-start;
  }

  .document-viewer-close {
    grid-column: 2;
    align-self: start;
    width: 2.55rem;
    height: 2.55rem;
  }

  .document-signature-fields {
    grid-template-columns: 1fr;
  }

  .signature-canvas {
    height: 150px;
  }

  .document-action-panel-shell {
    inset: auto 0 0 0;
    width: 100%;
    max-height: 88vh;
    height: min(88vh, 42rem);
    border-top: 1px solid rgba(21, 21, 21, 0.1);
    border-left: 0;
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
    box-shadow: 0 -18px 42px rgba(15, 18, 24, 0.2);
    transform: translateY(104%);
  }

  .document-action-sheet.is-open .document-action-panel-shell {
    transform: translateY(0);
  }

  .document-action-panel-header,
  .document-action-panel {
    padding: 0.95rem;
  }

  .document-options-footer {
    bottom: -0.95rem;
    margin: 0.15rem -0.95rem -0.95rem;
    padding: 0.75rem 0.95rem 0.95rem;
  }

    .document-action-panel-header h2 {
      font-size: 1.05rem;
    }

  .document-action-form-footer {
    display: grid;
    grid-template-columns: 1fr;
  }

    .document-action-form-footer .mvc-btn {
      width: 100%;
    }
}


/* ---- Alerts ---- */
.alert-container {
  position: fixed;
  top: 120px;
  right: 20px;
  width: auto;
  max-width: 400px;
  z-index: 9999;
}

  .alert-container .alert {
    margin-bottom: 10px;
    opacity: 0;
    transform: translateY(-10px);
    animation: fadeSlideIn 0.4s ease forwards;
    color: #212529;
    border-radius: 0.75rem;
    backdrop-filter: blur(6px);
    background-color: rgba(255, 255, 255, 0.8);
    border: none;
    position: relative;
    overflow: hidden;
  }

    /* Timerbalk onderaan */
    .alert-container .alert.alert-timer::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      height: 3px;
      width: 100%;
      transition: width 5s linear;
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
      border-radius: 0;
    }

    .alert-container .alert.alert-timer.alert-timer-start::after {
      width: 0%;
    }

  /* Type-specific timerbalk kleur */
  .alert-container .alert-success::after {
    background-color: var(--bs-success-border-subtle);
  }

  .alert-container .alert-warning::after {
    background-color: var(--bs-warning-border-subtle);
  }

  .alert-container .alert-danger::after {
    background-color: var(--bs-danger-border-subtle);
  }

  /* Glow per type */
  .alert-container .alert-success {
    box-shadow: 0 0 12px rgba(25, 135, 84, 0.2);
  }

  .alert-container .alert-warning {
    box-shadow: 0 0 12px rgba(255, 193, 7, 0.2);
  }

  .alert-container .alert-danger {
    box-shadow: 0 0 12px rgba(220, 53, 69, 0.2);
  }

  .alert-container .alert-success:hover {
    background-color: rgba(25, 135, 84, 0.2);
  }

  .alert-container .alert-warning:hover {
    background-color: rgba(255, 193, 7, 0.2);
  }

  .alert-container .alert-danger:hover {
    background-color: rgba(220, 53, 69, 0.2);
  }

/* Animatie voor inkomend effect */
@keyframes fadeSlideIn {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }

  60% {
    opacity: 1;
    transform: translateY(4px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Mobiel: centreren en wat extra padding */
@media (max-width: 600px) {
  .alert-container {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: 90vw;
    padding: 0 10px;
    font-size: 0.9rem;
  }
}




/* --- Socials ---*/
.socials {
  display: flex;
  gap: 10px;
  align-items: center;
}

  .socials a {
    display: inline-block;
    width: 35px;
    height: 35px;
  }

    .socials a img {
      width: 100%;
      height: auto;
      transition: opacity 0.3s ease;
    }

    .socials a:hover img {
      opacity: 0.7;
    }

/* ===========================
   Cookie Consent Banner (GCM)
   - A11y: focus-visible, contrast
   - Animations: slide/fade in/out
   - Theming: CSS variables + light/dark
   - RTL safe
   =========================== */
:root {
  --cc-bg: #111111;
  --cc-fg: #ffffff;
  --cc-muted: rgba(255, 255, 255, 0.78);
  --cc-link: #f6c915;
  --cc-link-hover: #111111;
  --cc-accept-bg: #f6c915;
  --cc-accept-bg-hover: #ffd93d;
  --cc-secondary-bg: rgba(255, 255, 255, 0.1);
  --cc-secondary-bg-hover: rgba(255, 255, 255, 0.18);
  --cc-radius: 8px;
  --cc-shadow: 0 22px 70px rgba(0,0,0,.48);
  --cc-font-size: 15px;
  --cc-padding: 1.35rem;
  --cc-z: 1080;
}

/* Light mode (system) */
/*@media (prefers-color-scheme: light) {
    :root {
        --cc-bg: rgba(255, 255, 255, 0.98);
        --cc-fg: #111;
        --cc-link: #c89100;
        --cc-link-hover: #151515;
        --cc-shadow: 0 12px 24px rgba(0,0,0,.15);
    }
}*/

/* Backdrop */
.cookie-consent-backdrop {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.55);
  z-index: calc(var(--cc-z) - 1);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease;
}

  .cookie-consent-backdrop.is-visible {
    opacity: 1;
    pointer-events: auto;
  }

/* Container */
.cookie-consent {
  position: fixed;
  inset: auto 0 2rem 0;
  margin: 0 auto;
  max-width: 1120px;
  width: min(94vw, 1120px);
  padding: var(--cc-padding);
  border-radius: var(--cc-radius);
  background-color: var(--cc-bg);
  color: var(--cc-fg);
  z-index: var(--cc-z);
  box-shadow: var(--cc-shadow);
  font-size: var(--cc-font-size);
  line-height: 1.55;
  text-align: left;
  opacity: 0;
  transform: translateY(22px) scale(.985);
  pointer-events: none;
  transition: opacity .25s ease, transform .25s ease;
}

  .cookie-consent.is-visible {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
  }

  .cookie-consent::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    border-radius: var(--cc-radius) 0 0 var(--cc-radius);
    background: var(--cc-accept-bg);
  }

.cookie-consent__content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.25rem;
  align-items: center;
}

.cookie-consent__copy {
  padding-left: .65rem;
}

.cookie-consent__title {
  display: block;
  margin-bottom: .35rem;
  color: #fff;
  font-size: 1.05rem;
  font-weight: 800;
}

/* Respecteer reduced motion */
@media (prefers-reduced-motion: reduce) {
  .cookie-consent {
    transition: none;
    transform: none;
  }
}

/* Tekst & links */
.cookie-consent p {
  margin: 0;
  padding: 0;
  color: var(--cc-muted);
  font-size: .95rem;
}

.cookie-consent a {
  color: var(--cc-link) !important;
  text-decoration: underline;
}

  .cookie-consent a:hover,
  .cookie-consent a:focus-visible {
    color: var(--cc-link-hover) !important;
    outline: none;
  }

/* Knoppen container */
.cookie-buttons {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  flex-wrap: wrap;
  min-width: 420px;
}

/* Algemene knopstijl */
.cookie-consent button {
  appearance: none;
  border: 1px solid rgba(255,255,255,.2);
  padding: 12px 16px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform .06s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
  min-width: 130px;
  color: #fff;
  box-shadow: none;
}

  .cookie-consent button:active {
    transform: translateY(1px);
  }

  /* Focus states (keyboard) */
  .cookie-consent button:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 2px;
    box-shadow: 0 0 0 4px rgba(255, 237, 0, .45);
  }

/* Variants */
#cc-accept {
  background-color: var(--cc-accept-bg);
  border-color: var(--cc-accept-bg);
  color: #111;
  min-width: 160px;
}

  #cc-accept:hover {
    background-color: var(--cc-accept-bg-hover);
  }

#cc-decline {
  background-color: var(--cc-secondary-bg);
}

  #cc-decline:hover {
    background-color: var(--cc-secondary-bg-hover);
    border-color: rgba(255,255,255,.35);
  }

/* Settings/Customize btn (optioneel) */
#cc-settings {
  background-color: transparent;
}

  #cc-settings:hover {
    background-color: var(--cc-secondary-bg-hover);
    border-color: rgba(255,255,255,.35);
  }

#cc-modal {
  z-index: calc(var(--cc-z) + 1);
}

  #cc-modal .modal-content {
    border: 0;
    border-radius: 8px;
    box-shadow: 0 22px 60px rgba(0,0,0,.26);
  }

  #cc-modal .modal-title {
    font-weight: 800;
  }

  #cc-modal .form-check {
    padding: 1rem 1rem 1rem 2.75rem;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 8px;
    background: #fafafa;
  }

/* RTL */
:root[dir="rtl"] .cookie-buttons,
[dir="rtl"] .cookie-buttons {
  justify-content: flex-start;
}

/* Mobile tweaks */
@media (max-width: 600px) {
  .cookie-consent {
    width: 94vw;
    font-size: 14px;
    padding: 1rem;
    text-align: left;
    inset: auto 0 1rem 0;
  }

  .cookie-consent__content {
    grid-template-columns: 1fr;
    gap: .9rem;
  }

  .cookie-consent p {
    font-size: 14px;
  }

  .cookie-buttons {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    justify-content: center;
    min-width: 0;
  }

  .cookie-consent button {
    width: 100%;
    min-width: 0;
  }
}

/* Print: niet tonen */
@media print {
  .cookie-consent {
    display: none !important;
  }
}


/* --- Loader ---*/
#loader {
  position: fixed;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  z-index: 10000;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 20px;
  margin-bottom: 10px;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

@media (max-width: 600px) {
  #loader {
    padding: 20px; /* Reduce padding on smaller screens */
    margin-bottom: 5px;
  }
}

/* --- Contactpage --- */

/* --- Mediaqueries --- */
/* Large */
@media (max-width: 992px) {
  .maxwidth-lg {
    max-width: 75%;
  }

  .maxwidth-md {
    max-width: 60%;
  }
}

/* Medium */
@media (max-width: 768px) {
  .maxwidth-lg {
  }


  .maxwidth-md {
    max-width: 50%;
  }
}

/* Small */
@media (max-width: 576px) {
  /* Voeg indien nodig stijlen toe */
}

/* Animations */
@keyframes fade-left {
  0% {
    transform: translateX(-100px);
    opacity: 0;
  }

  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

.homepage-hero-panel {
  position: relative;
  overflow: hidden;
  max-width: 26rem;
  margin-left: auto;
  padding: 1.5rem;
  border: 1px solid var(--color-border-dark);
  border-radius: var(--radius-md);
  background: rgba(255, 255, 255, 0.06);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.22);
}

  .homepage-hero-panel::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 4px;
    background: var(--color-primary);
    pointer-events: none;
  }

.homepage-hero-panel-label {
  display: block;
  margin-bottom: 1.1rem;
  color: rgba(248, 248, 248, 0.62);
  font-size: var(--font-size-sm);
  font-weight: 700;
}

.homepage-hero-panel ul {
  display: grid;
  gap: 0.8rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.homepage-hero-panel li {
  display: grid;
  grid-template-columns: 2.4rem minmax(0, 1fr);
  gap: 0.85rem;
  align-items: center;
  padding: 0.95rem 0;
  border-top: 1px solid var(--color-border-dark);
}

  .homepage-hero-panel li:first-child {
    border-top: 0;
  }

  .homepage-hero-panel li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: var(--radius-pill);
    background: var(--color-primary);
    color: #111111;
    font-size: 0.74rem;
    font-weight: 800;
  }

.homepage-hero-panel strong {
  color: var(--color-text-light);
  font-size: 1.04rem;
  line-height: 1.25;
}

#Services.section-shell > .row {
  padding-top: 0;
  padding-bottom: 0;
  border-top: 0;
}

  #Services.section-shell > .row + .row {
    margin-top: 3rem;
  }

#Proof {
  margin-top: 1rem;
}

.homepage-proof-copy {
  flex: 1 1 22rem;
  max-width: 34rem;
}

  .homepage-proof-copy h2 {
    margin-bottom: 1rem;
  }

  .homepage-proof-copy p:last-child {
    margin-bottom: 0;
  }

.trust-strip .homepage-logos {
  flex: 1 1 28rem;
  justify-content: flex-start;
  padding-top: 0;
}

#Proof .trust-strip {
  padding: 2rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-bg-light);
}

#TestimonialsCarousel {
  background: var(--color-bg-white);
}

#ContactCTA .cta-band {
  margin-top: 1rem;
}

  #ContactCTA .cta-band p {
    max-width: 44rem;
    margin-bottom: 0;
  }

#HomepageSEO.section-shell--compact {
  padding-bottom: 0;
}

@media (max-width: 991px) {
  .homepage-hero-panel {
    max-width: none;
    margin-left: 0;
  }

  .trust-strip {
    align-items: flex-start;
  }
}

#TestimonialsCarousel {
  position: relative;
  padding-bottom: 3rem;
}

  #TestimonialsCarousel .carousel-inner {
    padding: 1rem 3rem 3rem;
    min-height: 320px;
  }

  #TestimonialsCarousel .testimonials-carousel-img {
    max-height: 220px;
    width: auto;
    object-fit: contain;
  }

  #TestimonialsCarousel .carousel-control-prev,
  #TestimonialsCarousel .carousel-control-next {
    width: 3rem;
    filter: invert(1) grayscale(1) brightness(0);
    opacity: 0.35;
    transition: opacity 180ms ease;
  }

    #TestimonialsCarousel .carousel-control-prev:hover,
    #TestimonialsCarousel .carousel-control-next:hover {
      opacity: 0.85;
    }

  #TestimonialsCarousel .testimonials-carousel-indicators {
    bottom: 0;
    gap: 6px;
    margin: 0;
  }

    #TestimonialsCarousel .testimonials-carousel-indicators button {
      width: 28px;
      height: 5px;
      border-radius: 999px;
      border: none;
      background-color: var(--gray, #dadfe1);
      opacity: 1;
      transition: background-color 200ms ease, width 200ms ease;
    }

      #TestimonialsCarousel .testimonials-carousel-indicators button.active {
        width: 44px;
        background-color: var(--primary, #ffed00);
      }

#TestimonialsCarousel {
  border-radius: var(--radius-md);
  background: linear-gradient(180deg, #fffdf5 0%, var(--color-bg-white) 100%);
}

  #TestimonialsCarousel .carousel-inner {
    border: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.76);
    box-shadow: 0 18px 58px rgba(15, 23, 42, 0.06);
  }

  #TestimonialsCarousel .testimonials-carousel-img {
    border-radius: var(--radius-sm) !important;
    box-shadow: 0 14px 42px rgba(15, 23, 42, 0.10) !important;
  }

  #TestimonialsCarousel .blockquote {
    position: relative;
    margin-bottom: var(--space-4);
    padding-top: var(--space-5);
    color: var(--color-text-main);
  }

    #TestimonialsCarousel .blockquote::before {
      content: "\201C";
      position: absolute;
      top: -0.38em;
      left: -0.08em;
      color: rgba(255, 237, 0, 0.72);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 4rem;
      line-height: 1;
      pointer-events: none;
    }

    #TestimonialsCarousel .blockquote p {
      position: relative;
      margin-bottom: 0;
      font-size: clamp(1.1rem, 2vw, 1.45rem);
      font-weight: 700;
      line-height: 1.35;
    }

  #TestimonialsCarousel .blockquote-footer {
    margin-top: var(--space-3);
    color: var(--color-text-muted);
    font-weight: 700;
  }

/* ---- Debiscom brand refresh phase 1 ---- */
body {
  overflow-x: hidden;
}

main {
  background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-light) 52%, var(--color-bg-white) 100%);
}

.marked {
  color: var(--color-text-main);
  background-image: linear-gradient(180deg, var(--color-primary-soft), var(--color-primary-soft));
  background-size: 100% 42%;
}

  .marked:hover {
    background-image: linear-gradient(180deg, var(--color-primary), var(--color-primary));
  }

.section-shell,
.section-shell--compact {
  padding-top: 4.75rem;
  padding-bottom: 4.75rem;
}

.section-eyebrow {
  color: var(--color-primary-dark);
  letter-spacing: 0;
}

  .section-eyebrow::before {
    background: var(--color-primary);
    box-shadow: 0 0 0 4px rgba(255, 237, 0, 0.18);
  }

.section-intro,
.section-intro p {
  color: var(--color-text-muted);
}

.homepage-hero {
  width: 100%;
  margin: 0;
  padding: 4.75rem 4rem;
  border-radius: var(--radius-xl);
  background: linear-gradient(120deg, rgba(255, 237, 0, 0.16) 0%, rgba(255, 237, 0, 0) 28%), linear-gradient(145deg, var(--color-bg-dark) 0%, var(--color-bg-darker) 100%);
  border-color: var(--color-border-dark);
  box-shadow: var(--shadow-soft);
}

  .homepage-hero::after {
    content: "";
    position: absolute;
    right: 2rem;
    bottom: 2rem;
    width: min(38%, 26rem);
    height: 1px;
    background: linear-gradient(90deg, rgba(255, 237, 0, 0), rgba(255, 237, 0, 0.8));
    pointer-events: none;
  }

.homepage-hero-eyebrow {
  color: var(--color-primary);
  letter-spacing: 0;
}

  .homepage-hero-eyebrow::before {
    background: var(--color-primary);
    box-shadow: 0 0 0 4px rgba(255, 237, 0, 0.2);
  }

.homepage-hero-title {
  max-width: 12ch;
  font-size: 4.25rem;
  letter-spacing: 0;
}

.homepage-hero-subtitle {
  max-width: 42rem;
  color: rgba(248, 248, 248, 0.78);
}

.homepage-hero-actions .mvc-btn {
  border-radius: var(--radius-sm);
}

.homepage-hero-actions .mvc-btn--secondary,
.cta-band .mvc-btn--secondary,
.section-dark .mvc-btn--secondary {
  border-color: rgba(255, 255, 255, 0.42);
}

.section-dark .mvc-btn--secondary {
  color: var(--color-bg-white);
}

  .homepage-hero-actions .mvc-btn--secondary:hover,
  .cta-band .mvc-btn--secondary:hover,
  .section-dark .mvc-btn--secondary:hover {
    background-color: var(--color-bg-white);
    border-color: var(--color-bg-white);
    color: var(--color-text-main);
  }

.homepage-hero-visual {
  min-height: 0;
}

.homepage-hero-panel {
  max-width: 25rem;
  padding: 1.15rem;
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.075);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.28);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

  .homepage-hero-panel::before {
    background: linear-gradient(90deg, var(--color-primary) 0%, rgba(255, 237, 0, 0.24) 100%);
  }

.homepage-hero-panel-header {
  display: grid;
  gap: 0.2rem;
  padding: 0.35rem 0.25rem 1rem;
  border-bottom: 1px solid var(--color-border-dark);
}

  .homepage-hero-panel-header span,
  .homepage-hero-panel-metrics small {
    color: rgba(248, 248, 248, 0.58);
    font-size: 0.8rem;
    font-weight: 700;
  }

  .homepage-hero-panel-header strong {
    color: var(--color-text-light);
    font-size: 1.15rem;
  }

.homepage-hero-panel-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
  padding: 1rem 0 0.85rem;
}

  .homepage-hero-panel-metrics > div {
    min-height: 8.5rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 0.6rem;
    padding: 1rem;
    border: 1px solid var(--color-border-dark);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.08);
  }

  .homepage-hero-panel-metrics span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.1rem;
    height: 2.1rem;
    border-radius: var(--radius-pill);
    background: var(--color-primary);
    color: #111111;
    font-size: 0.72rem;
    font-weight: 900;
  }

  .homepage-hero-panel-metrics strong {
    color: var(--color-text-light);
    font-size: 1rem;
    line-height: 1.25;
  }

.homepage-hero-panel-list {
  display: grid;
  gap: 0.7rem;
  margin: 0;
  padding: 1rem 0.25rem 0;
  list-style: none;
}

  .homepage-hero-panel-list li {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0;
    border-top: 0;
    color: rgba(248, 248, 248, 0.78);
    font-size: 0.92rem;
  }

    .homepage-hero-panel-list li::before {
      content: "";
      width: 0.48rem;
      height: 0.48rem;
      flex: 0 0 auto;
      border-radius: var(--radius-pill);
      background: var(--color-primary);
    }

#Header {
  padding-top: 3rem;
  padding-bottom: 3.5rem;
}

#CustomSolutions {
  margin-top: 0;
  padding: 4rem 2.5rem;
  border: 1px solid var(--color-border);
  background: var(--color-bg-light);
  box-shadow: none;
}

.homepage-choice-card,
.homepage-solution-card {
  border-color: var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
}

.homepage-choice-card {
  border-top: 0;
}

  .homepage-choice-card:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 237, 0, 0.58);
    box-shadow: var(--shadow-soft);
  }

.homepage-choice-icon {
  border-radius: var(--radius-sm);
  background: var(--color-primary-soft);
  color: var(--color-text-main);
  box-shadow: none;
}

#Services {
  margin-top: 1.5rem;
  padding: 4.75rem 2.5rem;
  border-radius: var(--radius-xl);
  background: linear-gradient(145deg, var(--color-bg-dark) 0%, var(--color-bg-darker) 100%);
  color: var(--color-text-light);
}

  #Services h2,
  #Services .section-intro,
  #Services .section-intro p {
    color: var(--color-text-light);
  }

    #Services .section-intro p,
    #Services .homepage-pillars p {
      color: rgba(248, 248, 248, 0.72);
    }

  #Services .homepage-pillars .dbcard {
    border-top-color: var(--color-border-dark);
  }

    #Services .homepage-pillars .dbcard:hover {
      border-top-color: var(--color-primary);
    }

  #Services .homepage-pillars .dbcard__title {
    color: var(--color-text-light);
    letter-spacing: 0;
  }

  #Services .homepage-pillar-number {
    color: var(--color-primary);
  }

  #Services .solution-card {
    border-top: 0;
  }

.homepage-solution-card {
  background: var(--color-bg-white);
}

  .homepage-solution-card .dbcard__body {
    padding: 1.9rem;
  }

  .homepage-solution-card .dbcard__title {
    color: var(--color-text-main);
    letter-spacing: 0;
  }

  .homepage-solution-card p,
  .homepage-solution-card li {
    color: var(--color-text-muted);
  }

#Proof .trust-strip {
  background: var(--color-bg-white);
  box-shadow: var(--shadow-card);
}

.cta-band {
  border-color: rgba(255, 237, 0, 0.36);
  border-radius: var(--radius-xl);
  background: linear-gradient(120deg, rgba(255, 237, 0, 0.14) 0%, rgba(255, 237, 0, 0) 34%), linear-gradient(145deg, var(--color-bg-dark) 0%, var(--color-bg-darker) 100%);
  box-shadow: var(--shadow-soft);
}

.homepage-seo-card {
  border-radius: var(--radius-xl);
  background: linear-gradient(120deg, rgba(255, 237, 0, 0.14) 0%, rgba(255, 237, 0, 0) 36%), linear-gradient(145deg, var(--color-bg-dark) 0%, var(--color-bg-darker) 100%);
}

  .homepage-seo-card h2,
  .homepage-seo-card h3,
  .homepage-seo-card h4 {
    color: var(--color-text-light);
    letter-spacing: 0;
  }

.site-footer {
  background: var(--color-bg-darker);
  color: var(--color-text-light);
  border-top-color: var(--color-primary);
}

  .site-footer a:hover,
  .site-footer a:focus {
    color: var(--color-primary);
  }

.footer-cta,
.footer-bottom-shell {
  border-color: var(--color-border-dark);
}

.footer-brand p,
.footer-links a,
.footer-contact-card address,
.footer-contact-list a,
.footer-contact-card small,
.footer-bottom,
.footer-bottom a {
  color: rgba(248, 248, 248, 0.68);
}

.footer-heading {
  color: var(--color-text-light);
  border-bottom-color: var(--color-primary);
  letter-spacing: 0;
}

.footer-logo {
  padding: 0.65rem 0.8rem;
  border-radius: var(--radius-sm);
  background: var(--color-bg-white);
}

.footer-links a::before {
  background-color: var(--color-primary);
}

.footer-contact-card,
.footer-quick-link {
  border-color: var(--color-border-dark);
  background: rgba(255, 255, 255, 0.06);
  color: var(--color-text-light);
}

.footer-socials a {
  border-color: var(--color-border-dark);
  background: var(--color-bg-white);
}

.footer-contact-card i,
.footer-contact-list i,
.footer-quick-link i {
  color: var(--color-primary);
}

.footer-quick-link:hover,
.footer-quick-link:focus {
  background-color: var(--color-bg-white);
  border-color: var(--color-bg-white);
  color: var(--color-text-main) !important;
}

.footer-bottom-shell {
  background: var(--color-bg-darker);
}

@media (max-width: 991px) {
  .homepage-hero {
    padding: 3rem 1.75rem;
    border-radius: var(--radius-lg);
  }

  .homepage-hero-title {
    max-width: none;
    font-size: 3rem;
  }

  .homepage-hero-visual {
    min-height: 0;
  }

  #CustomSolutions,
  #Services {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    border-radius: var(--radius-lg);
  }
}

@media (max-width: 600px) {
  .section-shell,
  .section-shell--compact {
    padding-top: 3.25rem;
    padding-bottom: 3.25rem;
  }

  .homepage-hero {
    padding: 2.35rem 1.15rem;
  }

  .homepage-hero-title {
    font-size: 2.45rem;
    line-height: 1.05;
  }

  .homepage-hero-subtitle {
    font-size: 1rem;
  }

  .homepage-hero-panel {
    max-width: none;
  }

  .homepage-hero-panel-metrics {
    grid-template-columns: 1fr;
  }

  #CustomSolutions,
  #Services {
    padding: 3rem 1rem;
  }
}

/* ---- Debiscom brand refresh phase 2: lighter motion layer ---- */
@keyframes dbFadeUp {
  from {
    opacity: 0;
    transform: translateY(18px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes dbFloat {
  0%, 100% {
    transform: translate3d(0, 0, 0);
  }

  50% {
    transform: translate3d(0, -9px, 0);
  }
}

@keyframes dbBarRise {
  from {
    transform: scaleY(0.18);
    opacity: 0.45;
  }

  to {
    transform: scaleY(1);
    opacity: 1;
  }
}

@keyframes dbSoftGlow {
  0%, 100% {
    opacity: 0.58;
    transform: translate3d(0, 0, 0);
  }

  50% {
    opacity: 0.85;
    transform: translate3d(-10px, 8px, 0);
  }
}

@keyframes homeHeroGlowMove {
  from {
    transform: translate3d(-1.5%, -1%, 0) scale(1);
  }

  to {
    transform: translate3d(1.5%, 1%, 0) scale(1.04);
  }
}

@keyframes homeHeroGridDrift {
  0% {
    background-position: 0 0, 0 0;
    opacity: 0.54;
  }

  50% {
    opacity: 0.72;
  }

  100% {
    background-position: 32px 32px, 32px 32px;
    opacity: 0.54;
  }
}

main {
  background: var(--color-bg-white);
}

.homepage-hero {
  isolation: isolate;
  padding: 4.7rem 4rem 3.1rem;
  border-color: rgba(21, 21, 21, 0.08);
  background: linear-gradient(rgba(21, 21, 21, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(21, 21, 21, 0.035) 1px, transparent 1px), radial-gradient(circle at 12% 5%, rgba(255, 237, 0, 0.18), transparent 24rem), radial-gradient(circle at 92% 4%, rgba(255, 237, 0, 0.16), transparent 24rem), var(--color-bg-white);
  background-size: 32px 32px, 32px 32px, auto, auto, auto;
  box-shadow: none;
}

  .homepage-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background: radial-gradient(circle at 18% 8%, rgba(255, 237, 0, 0.22), transparent 20rem), radial-gradient(circle at 82% 12%, rgba(255, 237, 0, 0.18), transparent 22rem);
    filter: blur(12px);
    animation: dbSoftGlow 7s ease-in-out infinite;
    pointer-events: none;
  }

  .homepage-hero::after {
    z-index: -1;
    inset: auto 6% 0;
    width: auto;
    height: 1px;
    background: linear-gradient(90deg, rgba(21, 21, 21, 0), rgba(21, 21, 21, 0.12), rgba(21, 21, 21, 0));
  }

.homepage-hero-eyebrow {
  padding: 0.55rem 0.9rem;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-pill);
  background: rgba(255, 255, 255, 0.78);
  color: #3d4350;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
  animation: dbFadeUp 560ms ease-out both;
}

.homepage-hero-title {
  position: relative;
  max-width: 11ch;
  color: var(--color-text-main);
  font-size: clamp(4.5rem, 7vw, 6.25rem);
  line-height: 1;
  animation: dbFadeUp 640ms 80ms ease-out both;
}

  .homepage-hero-title::after {
    content: "";
    position: absolute;
    left: min(48%, 8.2ch);
    bottom: 0.18em;
    width: min(42%, 5.2em);
    height: 0.18em;
    z-index: -1;
    background: var(--color-primary);
  }

.homepage-hero-subtitle {
  color: #3e4654;
  font-size: 1.2rem;
  animation: dbFadeUp 640ms 160ms ease-out both;
}

.homepage-hero-actions {
  animation: dbFadeUp 640ms 240ms ease-out both;
}

  .homepage-hero-actions .mvc-btn--primary {
    background: var(--color-text-main);
    border-color: var(--color-text-main);
    color: var(--color-bg-white);
    box-shadow: 0 18px 34px rgba(0, 0, 0, 0.18);
  }

    .homepage-hero-actions .mvc-btn--primary:hover {
      background: #000000;
      border-color: #000000;
      color: var(--color-bg-white);
      box-shadow: 0 22px 42px rgba(0, 0, 0, 0.22);
    }

  .homepage-hero-actions .mvc-btn--secondary {
    background: rgba(255, 255, 255, 0.74);
    border-color: rgba(21, 21, 21, 0.12);
    color: var(--color-text-main);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.06);
  }

    .homepage-hero-actions .mvc-btn--secondary:hover {
      background: var(--color-primary);
      border-color: var(--color-primary);
      color: var(--color-text-main);
    }

.homepage-dashboard-card {
  position: relative;
  max-width: 31rem;
  margin-left: auto;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 32px 75px rgba(0, 0, 0, 0.18);
  overflow: visible;
  animation: dbFadeUp 720ms 180ms ease-out both;
}

.homepage-dashboard-topbar {
  display: flex;
  align-items: center;
  gap: 0.48rem;
  min-height: 2.6rem;
  padding: 0 1.1rem;
  border-bottom: 1px solid rgba(21, 21, 21, 0.08);
  color: #5d6675;
  font-size: 0.78rem;
}

.homepage-window-dot {
  width: 0.58rem;
  height: 0.58rem;
  border-radius: var(--radius-pill);
}

.homepage-window-dot--red {
  background: #ff6b6b;
}

.homepage-window-dot--yellow {
  background: #ffbd4a;
}

.homepage-window-dot--green {
  background: #4fd26b;
}

.homepage-dashboard-url {
  margin-left: 0.45rem;
  font-weight: 600;
}

.homepage-dashboard-body {
  position: relative;
  padding: 1.8rem 1.35rem 9rem;
}

.homepage-dashboard-label {
  margin-bottom: 1.1rem;
  color: #5d6675;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

.homepage-dashboard-bars {
  height: 11rem;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 0.55rem;
  align-items: end;
}

  .homepage-dashboard-bars span {
    height: var(--bar-height);
    min-height: 2.2rem;
    border-radius: 0.9rem 0.9rem 0 0;
    background: #151a22;
    transform-origin: bottom;
    animation: dbBarRise 720ms cubic-bezier(0.22, 1, 0.36, 1) both;
    animation-delay: calc(280ms + var(--bar-delay));
  }

  .homepage-dashboard-bars .homepage-dashboard-bar--accent {
    background: var(--color-primary);
  }

.homepage-dashboard-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: 1.45rem;
}

  .homepage-dashboard-stats > div {
    padding: 0.9rem;
    border-radius: var(--radius-sm);
    background: #f4f5f7;
  }

  .homepage-dashboard-stats small,
  .homepage-dashboard-floating small {
    display: block;
    color: #5d6675;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
  }

  .homepage-dashboard-stats strong {
    display: block;
    margin-top: 0.25rem;
    color: var(--color-text-main);
    font-size: 1.1rem;
  }

.homepage-dashboard-floating {
  position: absolute;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-md);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 22px 44px rgba(0, 0, 0, 0.14);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  animation: dbFloat 5.2s ease-in-out infinite;
}

.homepage-dashboard-floating--metric {
  top: 3.25rem;
  left: -1.6rem;
  padding: 0.85rem 1.05rem;
}

.homepage-dashboard-floating--sync {
  right: -1rem;
  bottom: 4.55rem;
  padding: 0.9rem 1.1rem;
  background: #11161e;
  color: var(--color-bg-white);
  animation-delay: 760ms;
}

  .homepage-dashboard-floating--sync small {
    color: rgba(255, 255, 255, 0.58);
  }

  .homepage-dashboard-floating--sync strong {
    color: var(--color-bg-white);
  }

.homepage-dashboard-icon {
  width: 2.55rem;
  height: 2.55rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  border-radius: var(--radius-sm);
  background: var(--color-primary);
  color: var(--color-text-main);
  font-size: 1.1rem;
}

.homepage-dashboard-floating strong {
  display: block;
  color: var(--color-text-main);
  line-height: 1.2;
}

.homepage-hero-trust {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.8rem;
  margin-top: 2.2rem;
  color: #3e4654;
  font-size: 0.94rem;
  animation: dbFadeUp 640ms 320ms ease-out both;
}

  .homepage-hero-trust span {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
  }

  .homepage-hero-trust i {
    color: var(--color-text-main);
  }

#CustomSolutions {
  background: var(--color-bg-white);
  border-color: transparent;
  box-shadow: none;
}

  #CustomSolutions .row:first-child {
    margin-bottom: 1.6rem;
  }

.homepage-choice-card,
.homepage-solution-card {
  box-shadow: 0 16px 42px rgba(15, 18, 24, 0.08);
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease, background-color 220ms ease;
}

  .homepage-choice-card:hover,
  .homepage-solution-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 26px 58px rgba(15, 18, 24, 0.13);
  }

.homepage-choice-grid > div:nth-child(2) .homepage-choice-card {
  background: radial-gradient(circle at 80% 70%, rgba(255, 237, 0, 0.15), transparent 16rem), #11161e;
  color: var(--color-bg-white);
}

  .homepage-choice-grid > div:nth-child(2) .homepage-choice-card h3,
  .homepage-choice-grid > div:nth-child(2) .homepage-choice-card p,
  .homepage-choice-grid > div:nth-child(2) .homepage-choice-card .marked {
    color: var(--color-bg-white);
  }

.homepage-choice-grid > div:nth-child(2) .homepage-choice-icon {
  background: var(--color-primary);
}

.homepage-choice-grid > div:nth-child(1) .homepage-choice-card {
  background: linear-gradient(135deg, var(--color-primary) 0%, #FFE75E 100%);
}

  .homepage-choice-grid > div:nth-child(1) .homepage-choice-card p,
  .homepage-choice-grid > div:nth-child(1) .homepage-choice-card .marked {
    color: var(--color-text-main);
  }

.homepage-choice-grid > div:nth-child(1) .homepage-choice-icon {
  background: #11161e;
  color: var(--color-primary);
}

#Services {
  margin-top: 0;
  border-radius: 0;
}

#Proof .trust-strip {
  background: #f7f8fa;
}

@media (prefers-reduced-motion: reduce) {
  .homepage-hero::before,
  .homepage-hero-eyebrow,
  .homepage-hero-title,
  .homepage-hero-subtitle,
  .homepage-hero-actions,
  .homepage-dashboard-card,
  .homepage-dashboard-bars span,
  .homepage-dashboard-floating,
  .homepage-hero-trust {
    animation: none;
  }
}

@media (max-width: 991px) {
  .homepage-hero {
    padding: 3.35rem 1.5rem 2.6rem;
  }

  .homepage-hero-title {
    font-size: clamp(3rem, 12vw, 4.6rem);
  }

  .homepage-dashboard-card {
    max-width: none;
    margin: 0;
  }

  .homepage-dashboard-floating--metric {
    left: 0.9rem;
  }

  .homepage-dashboard-floating--sync {
    right: 0.9rem;
  }
}

@media (max-width: 600px) {
  .homepage-hero {
    padding: 2.75rem 1rem 2.2rem;
  }

  .homepage-hero-eyebrow {
    align-items: flex-start;
    border-radius: var(--radius-md);
  }

  .homepage-hero-title {
    font-size: 3rem;
  }

  .homepage-dashboard-body {
    padding: 1.2rem 0.9rem 1rem;
  }

  .homepage-dashboard-floating {
    position: static;
    margin-bottom: 0.85rem;
    animation: none;
  }

  .homepage-dashboard-bars {
    height: 8rem;
    gap: 0.35rem;
  }

  .homepage-dashboard-stats {
    grid-template-columns: 1fr;
  }

  .homepage-hero-trust {
    flex-direction: column;
    gap: 0.65rem;
  }
}

.homepage-hero-actions .mvc-btn--primary {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-text-main);
  box-shadow: 0 18px 34px rgba(255, 237, 0, 0.26);
}

  .homepage-hero-actions .mvc-btn--primary:hover {
    background: #FFF34A;
    border-color: var(--color-primary);
    color: var(--color-text-main);
    box-shadow: 0 22px 42px rgba(255, 237, 0, 0.32);
  }

.homepage-dashboard-floating--sync {
  background: #ffffff;
  color: var(--color-text-main);
  border-color: rgba(21, 21, 21, 0.1);
}

  .homepage-dashboard-floating--sync small {
    color: #6b7280;
  }

  .homepage-dashboard-floating--sync strong {
    color: var(--color-text-main);
  }

.homepage-choice-grid > div:nth-child(2) .homepage-choice-card {
  background: radial-gradient(circle at 80% 70%, rgba(255, 237, 0, 0.2), transparent 16rem), linear-gradient(135deg, #ffffff 0%, #f7f8fa 100%);
  color: var(--color-text-main);
}

  .homepage-choice-grid > div:nth-child(2) .homepage-choice-card h3,
  .homepage-choice-grid > div:nth-child(2) .homepage-choice-card p,
  .homepage-choice-grid > div:nth-child(2) .homepage-choice-card .marked {
    color: var(--color-text-main);
  }

.homepage-choice-grid > div:nth-child(2) .homepage-choice-icon {
  background: var(--color-primary);
  color: var(--color-text-main);
}

.homepage-choice-grid > div:nth-child(1) .homepage-choice-card {
  background: linear-gradient(135deg, var(--color-primary) 0%, #FFF36B 100%);
}

#Services {
  background: radial-gradient(circle at 32% 0%, rgba(255, 237, 0, 0.2), transparent 24rem), linear-gradient(145deg, #17191d 0%, #0f1216 100%);
}

.cta-band,
.homepage-seo-card {
  background: linear-gradient(120deg, rgba(255, 237, 0, 0.16) 0%, rgba(255, 237, 0, 0) 34%), linear-gradient(145deg, #17191d 0%, #0f1216 100%);
}

.site-footer {
  background: var(--color-bg-light);
  color: var(--color-text-main);
  border-top-color: var(--color-primary);
}

  .site-footer a:hover,
  .site-footer a:focus {
    color: var(--color-text-main);
  }

.footer-cta,
.footer-bottom-shell {
  border-color: var(--color-border);
}

.footer-brand p,
.footer-links a,
.footer-contact-card address,
.footer-contact-list a,
.footer-contact-card small,
.footer-bottom,
.footer-bottom a {
  color: var(--color-text-muted);
}

.footer-heading {
  color: var(--color-text-main);
  border-bottom-color: var(--color-primary);
}

.footer-logo {
  background: var(--color-bg-white);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

.footer-contact-card,
.footer-quick-link {
  border-color: var(--color-border);
  background: var(--color-bg-white);
  color: var(--color-text-main);
}

.footer-socials a {
  border-color: var(--color-border);
  background: var(--color-bg-white);
}

.footer-contact-card i,
.footer-contact-list i,
.footer-quick-link i {
  color: var(--color-primary-dark);
}

.footer-quick-link:hover,
.footer-quick-link:focus {
  background-color: var(--color-text-main);
  border-color: var(--color-text-main);
  color: var(--color-bg-white) !important;
}

.footer-bottom-shell {
  background: var(--color-bg-white);
}

.responsive-heading {
  text-wrap: balance;
  overflow-wrap: normal;
}

body.home-page main {
  margin-top: 0;
}

body.landing-page main {
  margin-top: 0;
}

.homepage-hero {
  width: 100vw;
  max-width: none;
  min-height: min(800px, 100vh);
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: clamp(8rem, 12vw, 10.5rem) max(1.25rem, calc((100vw - 1320px) / 2 + 1.25rem)) clamp(3.2rem, 5vw, 4.75rem);
  border-left: 0;
  border-right: 0;
  border-radius: 0;
  background: radial-gradient(circle at 8% 7%, rgba(255, 237, 0, 0.22), transparent 24rem), radial-gradient(circle at 90% 5%, rgba(255, 237, 0, 0.16), transparent 27rem), linear-gradient(180deg, #fffef7 0%, #ffffff 48%, #fffefb 100%);
  background-size: auto, auto, auto;
}

body.home-page #Header.homepage-hero {
  padding: clamp(8rem, 12vw, 10.5rem) max(1.25rem, calc((100vw - 1320px) / 2 + 1.25rem)) clamp(3.2rem, 5vw, 4.75rem);
}

.homepage-hero::before {
  content: "";
  position: absolute;
  inset: -18%;
  z-index: 0;
  background: radial-gradient(circle at 20% 22%, rgba(255, 237, 0, 0.12), transparent 26rem), radial-gradient(circle at 78% 22%, rgba(255, 237, 0, 0.08), transparent 28rem), radial-gradient(circle at 50% 86%, rgba(21, 21, 21, 0.04), transparent 32rem);
  filter: blur(12px);
  opacity: 0.62;
  animation: homeHeroGlowMove 14s ease-in-out infinite alternate;
  pointer-events: none;
}

.homepage-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  width: auto;
  height: auto;
  background-image: linear-gradient(rgba(21, 21, 21, 0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(21, 21, 21, 0.06) 1px, transparent 1px);
  background-size: 32px 32px;
  opacity: 0.54;
  animation: homeHeroGridDrift 18s linear infinite;
  pointer-events: none;
}

.homepage-hero > .row,
.homepage-hero > .homepage-hero-trust {
  position: relative;
  z-index: 1;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
}

.homepage-hero > .row {
  min-height: 30rem;
}

.homepage-hero-eyebrow {
  margin-bottom: 1.75rem;
  color: #3d4350;
  font-size: 0.8rem;
}

.homepage-hero-title {
  max-width: 12ch;
  margin-bottom: 1.45rem;
  font-size: clamp(3.5rem, 6.2vw, 5.35rem);
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: 0;
}

  .homepage-hero-title::after {
    content: none;
  }

.homepage-hero-title-underline {
  position: relative;
  z-index: 0;
  display: inline-block;
}

  .homepage-hero-title-underline::after {
    content: "";
    position: absolute;
    left: 0.04em;
    right: 0.02em;
    bottom: 0.08em;
    z-index: -1;
    height: 0.14em;
    border-radius: var(--radius-pill);
    background: var(--color-primary);
  }

.homepage-hero-subtitle {
  max-width: 45rem;
  margin-bottom: 0;
  color: #3f4652;
  font-size: 1.22rem;
  line-height: 1.55;
}

.homepage-hero-actions {
  margin-top: 2.35rem;
  gap: 1rem;
}

  .homepage-hero-actions .mvc-btn {
    min-height: 3.45rem;
    padding: 1rem 1.55rem;
    border-radius: var(--radius-pill);
    font-size: 1rem;
  }

  .homepage-hero-actions .mvc-btn--primary {
    border-color: var(--color-primary);
    background: var(--color-primary);
    color: var(--color-text-main);
  }

    .homepage-hero-actions .mvc-btn--primary::after {
      content: "->";
      margin-left: 0.35rem;
    }

  .homepage-hero-actions .mvc-btn--secondary {
    border: 1.5px solid rgba(21, 21, 21, 0.14);
    background: rgba(255, 255, 255, 0.92);
    color: #080b10;
    font-weight: 850;
    box-shadow: 0 14px 34px rgba(15, 18, 24, 0.08);
  }

    .homepage-hero-actions .mvc-btn--secondary:hover {
      border-color: var(--color-text-main);
      background: var(--color-text-main);
      color: #ffffff;
      box-shadow: 0 18px 42px rgba(15, 18, 24, 0.18);
    }

.homepage-dashboard-card {
  max-width: 36rem;
  border-radius: 1.35rem;
  box-shadow: 0 34px 86px rgba(15, 18, 24, 0.18);
}

.homepage-dashboard-body {
  padding: 2rem 1.55rem 8.1rem;
}

.homepage-dashboard-bars {
  height: 12.5rem;
  gap: 0.7rem;
}

  .homepage-dashboard-bars span {
    border-radius: 0.8rem 0.8rem 0 0;
    background: #151a22;
  }

.homepage-dashboard-floating--metric {
  top: 3.6rem;
  left: -2.3rem;
}

.homepage-dashboard-floating--sync {
  right: -1.5rem;
  bottom: 4.7rem;
}

.homepage-hero-trust {
  margin-top: 1.8rem;
  padding-bottom: 0.2rem;
}

#CustomSolutions {
  padding-top: 5rem;
}

  #CustomSolutions .section-eyebrow {
    color: var(--color-text-main);
  }

@media (max-width: 1200px) {
  .homepage-hero-title {
    font-size: clamp(3.1rem, 6.5vw, 4.5rem);
  }

  .homepage-dashboard-card {
    max-width: 31rem;
  }
}

@media (max-width: 991px) {
  .homepage-hero {
    min-height: 0;
    padding: 7.5rem 1.25rem 3.5rem;
  }

  body.home-page #Header.homepage-hero {
    padding: 7.5rem 1.25rem 3.5rem;
  }

  .homepage-hero > .row {
    min-height: 0;
  }

  .homepage-hero-title {
    max-width: none;
    font-size: clamp(2.9rem, 9vw, 4.1rem);
  }

  .homepage-dashboard-card {
    max-width: none;
  }
}

@media (max-width: 600px) {
  .homepage-hero {
    padding: 6.7rem 1rem 2.65rem;
    background-size: auto, auto, auto;
  }

  body.home-page #Header.homepage-hero {
    padding: 6.7rem 1rem 2.65rem;
  }

  .homepage-hero::after {
    background-size: 28px 28px;
    opacity: 0.44;
  }

  .homepage-hero-title {
    font-size: clamp(2.55rem, 11.5vw, 3.35rem);
    line-height: 1.03;
  }

  .homepage-hero-actions .mvc-btn {
    width: 100%;
  }

  .homepage-dashboard-body {
    padding-bottom: 1rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .homepage-hero::before,
  .homepage-hero::after {
    animation: none;
  }
}

/* ---- Focused updates: homepage testimonials, final CTA and e-commerce portfolio ---- */
.homepage-testimonials {
  overflow: hidden;
  padding: clamp(2rem, 4vw, 3rem);
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-lg);
  background: linear-gradient(135deg, #ffffff 0%, #fbfaf5 58%, #f4f5f7 100%);
  box-shadow: 0 20px 55px rgba(15, 18, 24, 0.07);
}

  .homepage-testimonials::before {
    content: "";
    position: absolute;
    top: 0;
    right: clamp(1.25rem, 6vw, 5rem);
    width: min(18rem, 42vw);
    height: 0.32rem;
    border-radius: 0 0 var(--radius-pill) var(--radius-pill);
    background: var(--color-primary);
  }

  .homepage-testimonials > .row {
    position: relative;
    z-index: 1;
  }

.homepage-testimonials__intro {
  max-width: 28rem;
}

  .homepage-testimonials__intro h2 {
    margin-bottom: 1rem;
    font-size: clamp(2rem, 3.5vw, 3rem);
    font-weight: 900;
  }

  .homepage-testimonials__intro p {
    color: var(--color-text-muted);
    font-size: 1rem;
    line-height: 1.65;
  }

#TestimonialsCarousel.homepage-testimonials {
  padding-bottom: clamp(3.25rem, 5vw, 4rem);
}

  #TestimonialsCarousel.homepage-testimonials .carousel-inner {
    min-height: 21.5rem;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  #TestimonialsCarousel.homepage-testimonials .carousel-item {
    min-height: 21.5rem;
  }

  #TestimonialsCarousel.homepage-testimonials .homepage-testimonial-card {
    display: grid;
    grid-template-columns: minmax(160px, 0.34fr) minmax(0, 1fr);
    gap: clamp(1.2rem, 2.5vw, 2rem);
    align-items: center;
    height: 21.5rem;
    padding: clamp(1rem, 2.5vw, 1.8rem);
    border: 1px solid rgba(21, 21, 21, 0.09);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.86);
    box-shadow: 0 16px 42px rgba(15, 18, 24, 0.07);
  }

  #TestimonialsCarousel.homepage-testimonials .homepage-testimonial-card__media {
    min-width: 0;
    overflow: hidden;
    border-radius: var(--radius-sm);
    background: var(--color-bg-light);
    aspect-ratio: 4 / 3;
  }

  #TestimonialsCarousel.homepage-testimonials .testimonials-carousel-img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  #TestimonialsCarousel.homepage-testimonials .homepage-testimonial-card__body {
    min-height: 0;
    max-height: 100%;
    overflow-y: auto;
    padding-right: 0.25rem;
  }

  #TestimonialsCarousel.homepage-testimonials .blockquote {
    margin-bottom: 1rem;
    padding-top: 0.75rem;
  }

    #TestimonialsCarousel.homepage-testimonials .blockquote::before {
      top: -0.26em;
      left: 0;
      color: rgba(255, 237, 0, 0.9);
      font-size: 2.7rem;
    }

    #TestimonialsCarousel.homepage-testimonials .blockquote p {
      color: var(--color-text-main);
      font-size: clamp(1rem, 1.2vw, 1.18rem);
      font-weight: 500;
      line-height: 1.58;
    }

  #TestimonialsCarousel.homepage-testimonials .blockquote-footer {
    margin-top: 0.9rem;
    color: var(--color-text-muted);
    font-weight: 700;
  }

  #TestimonialsCarousel.homepage-testimonials .carousel-control-prev,
  #TestimonialsCarousel.homepage-testimonials .carousel-control-next {
    width: 2.5rem;
    height: 2.5rem;
    top: auto;
    bottom: 0;
    border: 1px solid rgba(21, 21, 21, 0.12);
    border-radius: var(--radius-pill);
    background: #ffffff;
    box-shadow: var(--shadow-sm);
    filter: none;
    opacity: 1;
    transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
  }

    #TestimonialsCarousel.homepage-testimonials .carousel-control-prev:hover,
    #TestimonialsCarousel.homepage-testimonials .carousel-control-next:hover {
      border-color: rgba(21, 21, 21, 0.24);
      box-shadow: 0 8px 22px rgba(15, 18, 24, 0.10);
      transform: translateY(-1px);
    }

  #TestimonialsCarousel.homepage-testimonials .carousel-control-prev {
    left: auto;
    right: 3rem;
  }

  #TestimonialsCarousel.homepage-testimonials .carousel-control-next {
    right: 0;
  }

  #TestimonialsCarousel.homepage-testimonials .carousel-control-prev-icon,
  #TestimonialsCarousel.homepage-testimonials .carousel-control-next-icon {
    width: 1rem;
    height: 1rem;
    filter: invert(1) grayscale(1) brightness(0);
  }

  #TestimonialsCarousel.homepage-testimonials .testimonials-carousel-indicators {
    right: auto;
    bottom: 0.75rem;
    left: 0;
    justify-content: flex-start;
    max-width: calc(100% - 6.5rem);
  }

    #TestimonialsCarousel.homepage-testimonials .testimonials-carousel-indicators button {
      width: 1.35rem;
      height: 0.24rem;
      background-color: rgba(21, 21, 21, 0.18);
    }

      #TestimonialsCarousel.homepage-testimonials .testimonials-carousel-indicators button.active {
        width: 2.15rem;
        background-color: var(--color-primary);
      }

.homepage-final-cta {
  position: relative;
  overflow: hidden;
  border-color: rgba(21, 21, 21, 0.08);
  background: linear-gradient(135deg, #ffffff 0%, #f7f8fa 58%, #fff9a8 100%);
  color: var(--color-text-main);
  box-shadow: 0 22px 58px rgba(15, 18, 24, 0.08);
}

  .homepage-final-cta::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(21, 21, 21, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(21, 21, 21, 0.05) 1px, transparent 1px);
    background-size: 34px 34px;
    opacity: 0.34;
    pointer-events: none;
  }

  .homepage-final-cta > .row {
    position: relative;
    z-index: 1;
  }

  .homepage-final-cta h2,
  .homepage-final-cta p {
    color: var(--color-text-main);
  }

  .homepage-final-cta p {
    max-width: 46rem;
    color: var(--color-text-muted);
  }

  .homepage-final-cta .mvc-btn--primary {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: var(--color-text-main);
    box-shadow: 0 14px 30px rgba(255, 237, 0, 0.28);
  }

  .homepage-final-cta .site-cta__eyebrow {
    color: var(--color-text-main);
    font-size: 0.95rem;
  }

  .homepage-final-cta .site-cta__button--secondary.mvc-btn--secondary {
    border-color: rgba(21, 21, 21, 0.14);
    background: rgba(255, 255, 255, 0.82);
    color: var(--color-text-main);
    box-shadow: 0 12px 28px rgba(15, 18, 24, 0.08);
  }

    .homepage-final-cta .site-cta__button--secondary.mvc-btn--secondary:hover,
    .homepage-final-cta .site-cta__button--secondary.mvc-btn--secondary:focus {
      border-color: var(--color-text-main);
      background: var(--color-text-main);
      color: var(--color-bg-white);
    }

.homepage-final-cta__accent {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  margin-bottom: 0.7rem;
  color: var(--color-primary-dark);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

  .homepage-final-cta__accent::before {
    content: "";
    width: 0.55rem;
    height: 0.55rem;
    border-radius: var(--radius-pill);
    background: var(--color-primary);
  }

.portfolio-section {
  border-top: 1px solid var(--color-border);
}

.portfolio-card {
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

  .portfolio-card:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 237, 0, 0.75);
    box-shadow: 0 18px 44px rgba(15, 18, 24, 0.11);
  }

.portfolio-card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 10rem;
  padding: 1.3rem;
  background: linear-gradient(135deg, #f7f8fa 0%, #ffffff 100%);
  border-bottom: 1px solid var(--color-border);
}

  .portfolio-card__media img {
    width: 100%;
    max-width: 9.5rem;
    max-height: 6rem;
    object-fit: contain;
  }

.portfolio-card .dbcard__body {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  padding: 1.25rem;
}

.portfolio-card .dbcard__title {
  margin: 0;
  padding-top: 0;
}

.portfolio-card p {
  margin-bottom: 0;
  color: var(--color-text-muted);
  font-size: 0.95rem;
}

.data-management-examples .portfolio-card {
  min-width: 0;
}

  .data-management-examples .portfolio-card .team-card__function {
    align-self: flex-start;
    max-width: 100%;
    white-space: normal;
  }

.portfolio-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

  .portfolio-card__tags span {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    padding: 0.32rem 0.65rem;
    border: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: var(--radius-pill);
    background: rgba(255, 237, 0, 0.18);
    color: var(--color-text-main);
    font-size: 0.76rem;
    font-weight: 700;
  }

.portfolio-card__action {
  margin-top: auto;
  padding-top: 0.3rem;
  color: var(--color-text-muted);
  font-size: 0.9rem;
  font-weight: 800;
}

.webshop-portfolio__item {
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-lg, 12px);
  background: #fff;
  box-shadow: 0 6px 28px rgba(15, 18, 24, 0.07);
  transition: box-shadow 180ms ease;
}

.webshop-portfolio__item:focus-within {
  box-shadow: 0 12px 32px rgba(15, 18, 24, 0.12);
}

.webshop-portfolio__media {
  aspect-ratio: 4 / 3;
  background: #f7f8fa;
  overflow: hidden;
}

.webshop-portfolio__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

@media (hover: hover) and (pointer: fine) {
  .webshop-portfolio__item:hover { box-shadow: 0 12px 32px rgba(15, 18, 24, 0.12); }
  .webshop-portfolio__media img { transition: object-position 5.5s ease-in-out; }
  .webshop-portfolio__item:hover .webshop-portfolio__media img { object-position: center bottom; }
}

.webshop-portfolio__body {
  padding: 1.2rem;
  overflow-wrap: anywhere;
}

.webshop-portfolio__body h3 { font-size: 1.2rem; }
.webshop-portfolio__body p { color: var(--color-text-muted); }
.webshop-portfolio__customer { font-weight: 700; }
.webshop-portfolio__link { display: inline-block; padding: .35rem 0; font-weight: 700; color: var(--color-text-main); text-decoration: underline; text-decoration-color: var(--color-primary); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.webshop-portfolio__link:focus-visible { outline: 3px solid var(--color-primary); outline-offset: 3px; }
.webshop-portfolio__pending { color: var(--color-text-muted); font-size: .9rem; }

@media (prefers-reduced-motion: reduce) {
  .webshop-portfolio__item { transition: none; }
  .webshop-portfolio__media img { transition: none; }
  .webshop-portfolio__item:hover .webshop-portfolio__media img { object-position: center top; }
}

/* ---- Public layout rhythm and portal login ---- */
.portal-login-page {
  max-width: 1180px;
}

.portal-login-section {
  padding: clamp(1.5rem, 4vw, 4rem) 0 clamp(4rem, 7vw, 6rem);
}

.portal-login-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(360px, 0.92fr);
  gap: 0;
  align-items: stretch;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background: linear-gradient(135deg, #ffffff 0%, #f8f8f4 66%, #fffbd1 100%);
  box-shadow: 0 18px 50px rgba(15, 18, 24, 0.07);
}

.portal-login-intro,
.portal-login-card {
  position: relative;
  min-width: 0;
}

.portal-login-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 31rem;
  padding: clamp(2rem, 5vw, 4rem);
  overflow: hidden;
  background: linear-gradient(120deg, rgba(255, 237, 0, 0.14) 0%, rgba(255, 237, 0, 0) 34%), linear-gradient(145deg, #222418 0%, #12161a 58%, #0b0d10 100%);
  color: var(--color-text-light);
}

  .portal-login-intro::after {
    content: "";
    position: absolute;
    right: clamp(1.5rem, 5vw, 4rem);
    bottom: clamp(1.5rem, 5vw, 3.5rem);
    width: min(18rem, 42%);
    height: 1px;
    border-radius: 0;
    border: 0;
    background: linear-gradient(90deg, rgba(255, 237, 0, 0), rgba(255, 237, 0, 0.7));
  }

  .portal-login-intro h1 {
    max-width: 11ch;
    margin: 0 0 1rem;
    padding-top: 0;
    color: var(--color-text-light);
    font-size: clamp(2.3rem, 5vw, 3rem);
    font-weight: 900;
    line-height: 1.02;
    letter-spacing: 0;
  }

  .portal-login-intro p {
    max-width: 34rem;
    margin: 0;
    color: rgba(248, 248, 248, 0.78);
    font-size: clamp(1rem, 1.3vw, 1.16rem);
  }

  .portal-login-intro .section-eyebrow {
    color: var(--color-primary);
  }

.portal-login-visual {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-top: clamp(1.5rem, 4vw, 2.75rem);
}

  .portal-login-visual span {
    display: inline-grid;
    place-items: center;
    width: 2.65rem;
    height: 2.65rem;
    border: 1px solid rgba(255, 237, 0, 0.22);
    border-radius: var(--radius-pill);
    background: rgba(255, 237, 0, 0.12);
    color: var(--color-primary);
    font-size: 1.2rem;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.04);
  }

.portal-login-card {
  display: flex;
  align-items: center;
  padding: clamp(1.5rem, 4vw, 3rem);
}

.portal-login-form {
  width: 100%;
  max-width: 32rem;
  margin: 0 auto;
  padding: clamp(1.35rem, 3vw, 2.15rem);
  border: 1px solid rgba(21, 21, 21, 0.07);
  border-radius: var(--radius-md);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 14px 34px rgba(15, 18, 24, 0.055);
}

  .portal-login-form .form-item {
    margin-bottom: 1rem;
    padding-bottom: 0;
  }

  .portal-login-form .title-text {
    margin-bottom: 0.45rem;
    color: var(--color-text-main);
    font-size: 0.92rem;
    font-weight: 800;
  }

  .portal-login-form input[type="text"],
  .portal-login-form input[type="password"] {
    min-height: 3.2rem;
    margin-bottom: 0;
    border-color: rgba(21, 21, 21, 0.16);
    background: #ffffff;
    font-weight: 600;
  }

  .portal-login-form input::placeholder {
    color: rgba(21, 21, 21, 0.42);
    font-weight: 500;
  }

  .portal-login-form .field-validation-error {
    position: static;
    display: block;
    margin-top: 0.35rem;
  }

.portal-login-options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

  .portal-login-options .mvc-checkbox {
    width: auto;
    margin: 0;
  }

    .portal-login-options .mvc-checkbox label {
      margin-bottom: 0;
      color: var(--color-text-muted);
      font-size: 0.92rem;
      font-weight: 700;
    }

.portal-login-forgot {
  color: var(--color-text-main);
  font-size: 0.92rem;
  font-weight: 800;
  text-decoration: none;
  background-image: linear-gradient(180deg, var(--color-primary-soft), var(--color-primary-soft));
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 100% 38%;
}

  .portal-login-forgot:hover,
  .portal-login-forgot:focus {
    color: var(--color-text-main);
    background-image: linear-gradient(180deg, var(--color-primary), var(--color-primary));
  }

.portal-login-captcha {
  padding: 0.75rem 0 0;
  /*overflow-x: auto;*/
  border-top: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: 0;
  background: transparent;
}

  .portal-login-captcha .g-recaptcha {
    min-height: 78px;
  }

.portal-login-actions {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 0 !important;
}

  .portal-login-actions .mvc-btn {
    min-width: 10.5rem;
  }

.auth-page {
  max-width: 1180px;
}

.auth-section--compact {
  padding-top: clamp(1.5rem, 4vw, 3rem);
  padding-bottom: clamp(3rem, 6vw, 5rem);
}

.auth-shell--compact {
  grid-template-columns: minmax(0, 0.68fr) minmax(360px, 0.86fr);
}

.auth-intro--compact {
  min-height: 25rem;
  padding: clamp(1.75rem, 4vw, 3.25rem);
}

  .auth-intro--compact h1 {
    max-width: 13ch;
    font-size: clamp(2.05rem, 4vw, 3.25rem);
  }

.auth-intro__note {
  margin-top: 1rem !important;
  padding-left: 1rem;
  border-left: 3px solid rgba(255, 237, 0, 0.76);
  color: rgba(248, 248, 248, 0.7) !important;
  font-size: 0.94rem !important;
}

.auth-visual--compact {
  margin-top: clamp(1.1rem, 3vw, 2rem);
}

  .auth-visual--compact span {
    width: 2.35rem;
    height: 2.35rem;
    font-size: 1.05rem;
  }

.auth-form--compact {
  max-width: 29rem;
}

.auth-form input[readonly] {
  background: var(--color-bg-light);
  color: var(--color-text-muted);
}

.auth-captcha {
  margin-top: 0.35rem;
}

.auth-actions {
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-top: 0.2rem;
}

  .auth-actions .mvc-btn {
    min-width: 12rem;
  }

.auth-secondary-link {
  flex: 0 1 auto;
  white-space: nowrap;
}

.section-flow {
  position: relative;
  isolation: isolate;
  margin: clamp(1.5rem, 4vw, 3.5rem) 0;
}

/*  .section-flow::before {
    content: "";
    position: absolute;
    top: clamp(2rem, 4vw, 3rem);
    bottom: clamp(2rem, 4vw, 3rem);
    left: clamp(0.75rem, 2.5vw, 1.75rem);
    z-index: -1;
    width: 1px;
    background: linear-gradient(180deg, rgba(255, 237, 0, 0), rgba(216, 199, 0, 0.46), rgba(255, 237, 0, 0));
  }*/

.section-flow__item {
  position: relative;
  margin: 0;
}

  .section-flow__item + .section-flow__item {
    margin-top: clamp(0.75rem, 2vw, 1.35rem);
  }

.section-flow__item--soft {
  border: 1px solid rgba(21, 21, 21, 0.07);
  border-radius: var(--radius-lg);
  background: linear-gradient(135deg, rgba(255, 237, 0, 0.08), rgba(255, 255, 255, 0) 38%), rgba(248, 248, 244, 0.76);
}

.section-flow__item--quiet {
  padding-right: clamp(1rem, 3vw, 2.5rem);
  padding-left: clamp(1rem, 3vw, 2.5rem);
  border: 1px solid rgba(21, 21, 21, 0.06);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.72);
}

.section-flow__item--cta {
  padding-top: clamp(1.25rem, 3vw, 2rem);
}

.section-flow .trust-strip {
  padding: clamp(1.25rem, 3vw, 2.25rem) 0;
  border-color: rgba(21, 21, 21, 0.08);
  background: transparent !important;
  box-shadow: none !important;
}

.section-flow .site-cta {
  box-shadow: 0 18px 48px rgba(8, 10, 14, 0.14);
}

.section-flow--closing #JoinUs.section-flow__item--soft {
  border: 0;
  border-radius: 0;
  background: transparent;
}

.section-flow--closing #JoinUs + #ContactCTA {
  margin-top: 0;
  padding-top: 0;
}

  .section-flow--closing #JoinUs + #ContactCTA .site-cta {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }

.flow-connected-cta {
  border-color: rgba(21, 21, 21, 0.08);
  background: radial-gradient(circle at 88% 18%, rgba(255, 237, 0, 0.28), transparent 30%), linear-gradient(135deg, #ffffff 0%, #f7f8fa 62%, #fff9a8 100%);
  color: var(--color-text-main);
  box-shadow: 0 22px 58px rgba(15, 18, 24, 0.08);
}

  .flow-connected-cta h2,
  .flow-connected-cta h3,
  .flow-connected-cta h4,
  .flow-connected-cta p {
    color: var(--color-text-main);
  }

  .flow-connected-cta p {
    color: var(--color-text-muted);
  }

  .flow-connected-cta .site-cta__button--secondary.mvc-btn--secondary {
    border-color: rgba(21, 21, 21, 0.14);
    background: rgba(255, 255, 255, 0.82);
    color: var(--color-text-main);
  }

/* Lighter connected endings for public proof, story and CTA areas. */
.homepage-section-flow #Proof {
  margin-top: clamp(2rem, 5vw, 4rem);
  padding-top: clamp(1.25rem, 3vw, 2rem);
  padding-bottom: clamp(0.75rem, 2vw, 1.25rem);
  border: 0;
  border-radius: 0;
  background: transparent;
}

  .homepage-section-flow #Proof .trust-strip,
  .section-flow--proof #Customers .trust-strip {
    display: grid;
    grid-template-columns: minmax(260px, 0.62fr) minmax(0, 1fr);
    gap: clamp(1.5rem, 4vw, 3rem);
    align-items: center;
    padding: 0;
    border: 0;
  }

  .homepage-section-flow #Proof .homepage-proof-copy p,
  .section-flow--proof #Customers .homepage-proof-copy p {
    margin-bottom: 0.65rem;
  }

  .homepage-section-flow #Proof .homepage-logos,
  .section-flow--proof #Customers .homepage-logos {
    justify-content: flex-start;
    opacity: 0.68;
  }

    .homepage-section-flow #Proof .homepage-logos img,
    .section-flow--proof #Customers .homepage-logos img {
      filter: grayscale(1);
    }

.homepage-section-flow #TestimonialsCarousel.homepage-testimonials {
  margin-top: clamp(1.25rem, 3vw, 2rem);
  border: 0;
  border-radius: var(--radius-lg) var(--radius-lg) 0 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.92) 0%, rgba(251, 250, 245, 0.92) 62%, rgba(247, 248, 250, 0.92) 100%);
  box-shadow: 0 10px 28px rgba(15, 18, 24, 0.035);
}

  .homepage-section-flow #TestimonialsCarousel.homepage-testimonials::before {
    height: 0.2rem;
    opacity: 0.5;
  }

#TestimonialsCarousel.homepage-testimonials .homepage-testimonial-card {
  border-color: rgba(21, 21, 21, 0.04);
  background: rgba(255, 255, 255, 0.56);
  box-shadow: none;
}

#TestimonialsCarousel.homepage-testimonials .testimonials-carousel-indicators {
  right: auto;
  left: 50%;
  justify-content: center;
  max-width: min(100%, 24rem);
  margin-right: 0;
  margin-left: 0;
  transform: translateX(-50%);
}

.homepage-section-flow #ContactCTA {
  margin-top: 0;
  padding-top: 0;
}

  .homepage-section-flow #ContactCTA .homepage-final-cta {
    border: 0;
    border-top: 1px solid rgba(21, 21, 21, 0.045);
    border-radius: 0 0 var(--radius-lg) var(--radius-lg);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.94) 0%, rgba(247, 248, 250, 0.94) 58%, rgba(255, 249, 168, 0.92) 100%);
    box-shadow: 0 10px 28px rgba(15, 18, 24, 0.035);
  }

    .homepage-section-flow #ContactCTA .homepage-final-cta::before {
      content: none;
    }

.section-flow--closing #JoinUs .join-card {
  border: 0;
  border-bottom: 1px solid rgba(21, 21, 21, 0.07);
  border-radius: var(--radius-lg) var(--radius-lg) 0 0;
  background: linear-gradient(135deg, rgba(255, 237, 0, 0.12), rgba(255, 255, 255, 0.72) 42%, rgba(248, 248, 244, 0.82));
  box-shadow: none;
  margin-bottom: 0;
}

.section-flow--closing #JoinUs .join-card__icon {
  box-shadow: none;
}

.section-flow--closing #ContactCTA .site-cta {
  box-shadow: 0 18px 45px rgba(8, 10, 14, 0.13);
}

.section-flow--proof #Customers {
  padding-top: clamp(1.5rem, 4vw, 2.5rem);
  padding-bottom: clamp(1rem, 3vw, 1.75rem);
  border: 0;
  border-radius: 0;
  background: transparent;
}

.section-flow--proof #ERPQuote {
  margin-top: clamp(0.5rem, 2vw, 1rem);
}

  .section-flow--proof #ERPQuote .site-cta {
    box-shadow: 0 18px 48px rgba(8, 10, 14, 0.16);
  }

.section-flow--proof #Testimonials {
  margin-top: clamp(1rem, 3vw, 2rem);
  padding-top: clamp(1.5rem, 4vw, 2.5rem);
  border: 0;
  border-radius: 0;
  background: transparent;
}

  .section-flow--proof #Testimonials .dbcard {
    border-color: rgba(21, 21, 21, 0.07);
    box-shadow: 0 10px 28px rgba(15, 18, 24, 0.055);
  }

@media (max-width: 991px) {
  .portal-login-shell {
    grid-template-columns: 1fr;
  }

  .portal-login-intro {
    min-height: 0;
  }

  .portal-login-form {
    max-width: none;
  }

  .auth-shell--compact {
    grid-template-columns: 1fr;
  }

  .auth-intro--compact {
    min-height: 0;
  }

  .homepage-testimonials {
    padding: 1.5rem;
  }

  #TestimonialsCarousel.homepage-testimonials .carousel-inner,
  #TestimonialsCarousel.homepage-testimonials .carousel-item {
    min-height: 38rem;
  }

  #TestimonialsCarousel.homepage-testimonials .homepage-testimonial-card {
    grid-template-columns: 1fr;
    height: 38rem;
    align-items: stretch;
  }

  #TestimonialsCarousel.homepage-testimonials .homepage-testimonial-card__media {
    aspect-ratio: 16 / 9;
    max-height: 18rem;
  }

  #TestimonialsCarousel.homepage-testimonials .homepage-testimonial-card__body {
    max-height: none;
  }

  .homepage-final-cta .cta-actions {
    justify-content: flex-start !important;
  }

  .homepage-section-flow #Proof .trust-strip,
  .section-flow--proof #Customers .trust-strip {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .portal-login-section {
    padding-top: 1.25rem;
  }

  .portal-login-shell,
  .portal-login-form {
    border-radius: var(--radius-md);
  }

  .portal-login-intro,
  .portal-login-card,
  .portal-login-form {
    padding: 1.15rem;
  }

    .portal-login-intro h1 {
      max-width: 13ch;
    }

  .portal-login-visual {
    margin-top: 1rem;
  }

    .portal-login-visual span {
      width: 2.35rem;
      height: 2.35rem;
      font-size: 1.05rem;
    }

  .portal-login-options,
  .portal-login-actions,
  .auth-actions {
    align-items: stretch;
    flex-direction: column;
  }

    .portal-login-actions .mvc-btn,
    .auth-actions .mvc-btn {
      width: 100%;
    }

  .auth-section--compact {
    padding-top: 1.25rem;
    padding-bottom: 2.5rem;
  }

  .auth-intro__note {
    padding-left: 0.75rem;
    font-size: 0.9rem !important;
  }

  .auth-secondary-link {
    align-self: flex-start;
  }

  .section-flow::before {
    display: none;
  }

  .section-flow__item--quiet {
    padding-right: 1rem;
    padding-left: 1rem;
  }

  .homepage-testimonials {
    padding: 1.1rem;
    border-radius: var(--radius-md);
  }

  #TestimonialsCarousel.homepage-testimonials .carousel-inner,
  #TestimonialsCarousel.homepage-testimonials .carousel-item {
    min-height: 40rem;
  }

  #TestimonialsCarousel.homepage-testimonials .homepage-testimonial-card {
    height: 40rem;
    padding: 0.9rem;
  }

  #TestimonialsCarousel.homepage-testimonials .testimonials-carousel-indicators {
    position: static;
    max-width: none;
    margin-top: 0.8rem;
    transform: none;
  }

  #TestimonialsCarousel.homepage-testimonials .carousel-control-prev,
  #TestimonialsCarousel.homepage-testimonials .carousel-control-next {
    bottom: -0.25rem;
  }

  .homepage-final-cta .mvc-btn {
    width: 100%;
  }
}
/* ---- Scroll-reveal basisstijlen ---- */
/*
    Elementen met [data-reveal] starten onzichtbaar en verschuiven omhoog.
    Zodra de IntersectionObserver de klasse .is-visible toevoegt, speelt
    de CSS-transitie af. Bij prefers-reduced-motion: geen beweging, wel fade.
*/
[data-reveal] {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 560ms cubic-bezier(0.22, 1, 0.36, 1), transform 560ms cubic-bezier(0.22, 1, 0.36, 1);
}

  /* will-change wordt door JS alleen tijdens het animeren toegevoegd
       (klasse .is-animating) en daarna weer verwijderd, zodat er niet
       permanent voor elk element een compositielaag blijft bestaan.
       Dat voorkomt haperend scrollen en onnodig geheugengebruik. */
  [data-reveal].is-animating {
    will-change: opacity, transform;
  }

  [data-reveal].is-visible {
    opacity: 1;
    transform: translateY(0);
  }

  /* Vertraging per kaartje via data-reveal-delay (ms) */
  [data-reveal][data-reveal-delay="100"] {
    transition-delay: 100ms;
  }

  [data-reveal][data-reveal-delay="200"] {
    transition-delay: 200ms;
  }

  [data-reveal][data-reveal-delay="300"] {
    transition-delay: 300ms;
  }

  [data-reveal][data-reveal-delay="400"] {
    transition-delay: 400ms;
  }

@media (prefers-reduced-motion: reduce) {
  [data-reveal] {
    transform: none;
    transition: opacity 400ms ease;
  }
}
/* ---- Generic page hero ---- */
.page-hero {
  position: relative;
  overflow: hidden;
  padding: var(--space-8) var(--space-7);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-bg-white);
  color: var(--color-text-main);
  box-shadow: var(--shadow-soft);
}

  .page-hero > * {
    position: relative;
    z-index: 1;
  }

.page-hero--dark {
  border-color: var(--color-border-dark);
  background: radial-gradient(ellipse at 78% 15%, rgba(255, 237, 0, 0.22) 0%, transparent 42%), radial-gradient(ellipse at 12% 88%, rgba(255, 237, 0, 0.09) 0%, transparent 32%), linear-gradient(150deg, var(--color-bg-dark) 0%, var(--color-bg-darker) 100%);
  color: var(--color-text-light);
}

.page-hero--light {
  border-color: var(--color-border);
  background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-light) 100%);
  color: var(--color-text-main);
}

.page-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: var(--space-5);
  padding: 0.55rem 0.9rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  background: rgba(255, 255, 255, 0.78);
  color: var(--color-text-muted);
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}

  .page-hero__eyebrow::before {
    content: "";
    width: 0.55rem;
    height: 0.55rem;
    flex: 0 0 auto;
    border-radius: var(--radius-pill);
    background: var(--color-primary);
    box-shadow: 0 0 0 4px rgba(255, 237, 0, 0.24);
  }

.page-hero--dark .page-hero__eyebrow {
  border-color: rgba(255, 237, 0, 0.3);
  background: rgba(255, 237, 0, 0.08);
  color: var(--color-primary);
}

.page-hero__title {
  max-width: 17ch;
  margin-bottom: var(--space-4);
  color: inherit;
  font-size: clamp(2.8rem, 5vw, 4.6rem);
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1.02;
}

.page-hero__subtitle {
  max-width: 45rem;
  margin-bottom: 0;
  color: var(--color-text-muted);
  font-size: 1.2rem;
  line-height: 1.55;
}

.page-hero--dark .page-hero__subtitle {
  color: rgba(255, 255, 255, 0.85);
}

.page-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
  margin-top: var(--space-6);
}

  .page-hero__actions .mvc-btn {
    min-height: 3.25rem;
    padding: 0.95rem 1.45rem;
    border-radius: var(--radius-pill);
  }

.page-hero--dark .page-hero__actions .mvc-btn--primary {
  border-color: var(--color-primary);
  background: var(--color-primary);
  color: var(--color-text-main);
  box-shadow: 0 14px 28px rgba(255, 237, 0, 0.35);
}

  .page-hero--dark .page-hero__actions .mvc-btn--primary:hover {
    border-color: #fff34a;
    background: #fff34a;
    color: var(--color-text-main);
    box-shadow: 0 18px 36px rgba(255, 237, 0, 0.4);
  }

.page-hero--dark .page-hero__actions .mvc-btn--secondary {
  border-color: rgba(255, 255, 255, 0.45);
  background: transparent;
  color: var(--color-bg-white);
}

  .page-hero--dark .page-hero__actions .mvc-btn--secondary:hover {
    border-color: var(--color-bg-white);
    background: var(--color-bg-white);
    color: var(--color-text-main);
  }

.page-hero__visual {
  position: relative;
  min-width: 0;
}

@media (max-width: 768px) {
  .page-hero {
    padding: var(--space-6);
  }

  .page-hero__title {
    max-width: none;
    font-size: clamp(2.65rem, 12vw, 3.8rem);
  }

  .page-hero__actions {
    align-items: stretch;
    flex-direction: column;
  }

    .page-hero__actions .mvc-btn {
      width: 100%;
    }
}

/* ---- Hero-visual: stat-kaartjes ---- */

.page-hero__visual-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  max-width: 22rem;
}

.hero-stat-card {
  background: var(--color-bg-light);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
  padding: 1.6rem 1.4rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.4rem;
  transition: transform 280ms ease, box-shadow 280ms ease, border-color 280ms ease;
  position: relative;
  overflow: hidden;
}

  .hero-stat-card::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--color-primary);
    transform: scaleX(0);
    transition: transform 280ms ease;
    transform-origin: left;
  }

  .hero-stat-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.14);
    border-color: var(--color-primary);
  }

    .hero-stat-card:hover::before {
      transform: scaleX(1);
    }

.hero-stat-card--accent {
  background: var(--color-primary);
  border-color: var(--color-primary-dark);
}

  .hero-stat-card--accent::before {
    display: none;
  }

  .hero-stat-card--accent .hero-stat-number,
  .hero-stat-card--accent .hero-stat-label {
    color: var(--color-text-main);
  }

  .hero-stat-card--accent .hero-stat-number {
    font-size: 1.8rem;
  }

.hero-stat-number {
  font-size: 1.75rem;
  font-weight: 800;
  line-height: 1;
  color: var(--color-text-main);
  letter-spacing: -0.02em;
}

.hero-stat-label {
  font-size: 0.72rem;
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
}

/* ---- Icoon-wrap op de feature-cards ---- */
.feature-icon-wrap {
  width: 3rem;
  height: 3rem;
  border-radius: var(--radius-sm);
  background: var(--color-primary);
  color: var(--color-text-main);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  margin-bottom: 1rem;
  transition: transform 280ms ease, box-shadow 280ms ease;
  box-shadow: 0 4px 12px rgba(255, 237, 0, 0.25);
}

.dbcard:hover .feature-icon-wrap {
  transform: scale(1.1) rotate(-4deg);
  box-shadow: 0 6px 18px rgba(255, 237, 0, 0.38);
}

/* ---- Grotere section-titels op pagina-secties ---- */
#OnsVerhaal h2,
#OnsAanpak h2,
#Expertise h2,
#TheTeam h2 {
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1.05;
}

/* ---- Vlag-icoon naast stap 05 ---- */
/*.db-timeline__item-flag {
  color: var(--color-primary);
  font-size: 1.1rem;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: var(--radius-pill);
  background: rgba(255, 237, 0, 0.12);
  box-shadow: inset 0 0 0 1px rgba(255, 237, 0, 0.28);
  margin-top: 0;
}*/

/* ---- Team member cards ---- */
.team-card {
  /* Reset dbcard defaults â€” balloon SVG is de visuele container */
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0;
  overflow: visible;
  transition: transform 300ms ease;
}

  .team-card:hover {
    transform: translateY(-6px);
    box-shadow: none !important;
  }

.team-card__img {
  width: min(100%, 20.5rem);
  aspect-ratio: 9 / 10;
  margin: 0 auto;
  overflow: hidden;
  background: transparent;
}

.team-card__info {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  padding: 1rem clamp(0.75rem, 2vw, 1.25rem) 1.35rem;
}

.team-card__name {
  font-size: 1.08rem;
  font-weight: 700;
  color: var(--color-text-main);
  line-height: 1.3;
}

  .team-card__name span {
    color: var(--color-primary);
    margin-right: 0.2rem;
  }

.team-card__function {
  font-size: 0.72rem;
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
  margin-top: 0.1rem;
  padding: 0.2rem 0.55rem;
  background: var(--color-bg-light);
  border: 1px solid var(--color-border);
  border-radius: 2rem;
  display: inline-block;
  width: fit-content;
}

.team-card__description {
  font-size: 0.93rem;
  color: var(--color-text-muted);
  margin-top: 0.7rem;
  margin-bottom: 0;
  line-height: 1.65;
}

@media (max-width: 991.98px) {
  .team-card__img {
    width: min(100%, 19rem);
  }
}

@media (max-width: 575.98px) {
  .team-card__img {
    width: min(100%, 18rem);
  }

  .team-card__info {
    padding-right: 0.4rem;
    padding-left: 0.4rem;
  }
}

/* ---- Onderste sectie-samenhang: Join + CTA visueel verbinden ---- */
#JoinUs {
  padding-bottom: 0;
}

  #JoinUs + #ContactCTA {
    padding-top: var(--space-4);
  }

/* ---- Join-card ---- */
.join-card {
  background: radial-gradient(circle at 5% 50%, rgba(255, 237, 0, 0.15), transparent 22rem), var(--color-bg-light);
  border-color: rgba(255, 237, 0, 0.35);
  border-left: 4px solid var(--color-primary);
  border-radius: var(--radius-lg) var(--radius-lg) 0 0;
  margin-bottom: 0;
}

#ContactCTA .cta-band {
  border-radius: 0 0 var(--radius-lg) var(--radius-lg) !important;
  border-top: none !important;
  margin-top: 0;
}

.join-card__icon {
  width: 3.8rem;
  height: 3.8rem;
  border-radius: 50%;
  background: var(--color-primary);
  color: var(--color-text-main);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  box-shadow: 0 4px 16px rgba(255, 237, 0, 0.3);
}

/* ---- Responsive ---- */
@media (max-width: 991px) {
  .page-hero__visual-grid {
    max-width: none;
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (max-width: 600px) {
  .page-hero__visual-grid {
    grid-template-columns: 1fr 1fr;
  }
}


/* ============================================================
   MERCATOR ERP PAGE â€” page-specific overrides
   ============================================================ */

/* ---- Inline page navigation (section links in hero) ---- */
.inline-page-nav {
  margin-top: 0.5rem;
}

  .inline-page-nav nav ul.list5 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    padding: 0;
    margin: 0;
    list-style: none;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1;
  }

    .inline-page-nav nav ul.list5 li {
      padding: 0;
      margin: 0;
    }

      .inline-page-nav nav ul.list5 li::after {
        display: none;
      }

      .inline-page-nav nav ul.list5 li a {
        display: inline-block;
        padding: 0.45em 1em;
        border-radius: 2rem;
        border: 1px solid rgba(255, 255, 255, 0.22);
        color: rgba(255, 255, 255, 0.82);
        background: rgba(255, 255, 255, 0.06);
        text-decoration: none;
        transition: background 200ms ease, border-color 200ms ease, color 200ms ease;
        white-space: nowrap;
      }

        .inline-page-nav nav ul.list5 li a:hover {
          background: rgba(255, 237, 0, 0.14);
          border-color: rgba(255, 237, 0, 0.55);
          color: #ffffff;
          transform: none;
        }

        .inline-page-nav nav ul.list5 li a.active {
          background: var(--color-primary);
          border-color: var(--color-primary);
          color: #111111;
          font-weight: 700;
          text-decoration: none;
        }

/* ---- Prominentere sectietitels ---- */
.section-title--large {
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.15;
}
/* Pill / tag */
.db-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.3rem 0.75rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  background: var(--color-bg-light);
  color: var(--color-text-main);
  font-size: var(--font-size-xs);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1;
}

.erp-advisory-page {
  max-width: 960px;
  margin: 0 auto;
  padding: 7.5rem 1rem 4rem;
  color: #070b12;
}

.erp-advisory-hero {
  max-width: 760px;
  margin: 0 auto 3rem;
  padding: 0;
  text-align: center;
}

.erp-advisory-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  margin-bottom: 1.35rem;
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  background: #f2f4f7;
  color: #111827;
  font-size: 0.85rem;
  font-weight: 700;
}

.erp-advisory-hero h1 {
  margin: 0;
  font-size: clamp(2.45rem, 6vw, 4.25rem);
  font-weight: 900;
  line-height: 0.96;
  letter-spacing: 0;
}

.erp-advisory-hero mark {
  background: linear-gradient(transparent 47%, #ffed00 47%, #ffed00 78%, transparent 78%);
  color: inherit;
  padding: 0 0.08em;
}

.erp-advisory-hero p {
  max-width: 720px;
  margin: 1.25rem auto 0;
  color: #253044;
  font-size: 1.08rem;
  line-height: 1.55;
}

.erp-advisory-status {
  margin: 0 auto 1.25rem;
  padding: 1rem 1.1rem;
  border-radius: 16px;
  border: 1px solid #d9dee8;
  background: #ffffff;
  box-shadow: 0 12px 35px rgba(15, 23, 42, 0.08);
}

  .erp-advisory-status.is-success {
    border-color: #b7e4c7;
    background: #f1fbf4;
    color: #166534;
  }

  .erp-advisory-status.is-warning {
    border-color: #ffe58a;
    background: #fffbed;
    color: #7a4b00;
  }

.erp-advisory-wizard,
.erp-advisory-result,
.erp-advisory-unavailable {
  border: 1px solid #d9dee8;
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 22px 50px rgba(15, 23, 42, 0.11);
}

.erp-advisory-unavailable {
  max-width: 720px;
  margin: 0 auto;
  padding: clamp(1.8rem, 4vw, 2.75rem);
  text-align: center;
}

  .erp-advisory-unavailable span {
    display: inline-flex;
    margin-bottom: 0.8rem;
    color: #667085;
    font-size: 0.82rem;
    font-weight: 900;
    text-transform: uppercase;
  }

  .erp-advisory-unavailable h2 {
    margin: 0;
    color: #070b12;
    font-size: clamp(1.75rem, 4vw, 2.2rem);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.15;
  }

  .erp-advisory-unavailable p {
    max-width: 540px;
    margin: 0.85rem auto 0;
    color: #38445a;
    font-size: 1rem;
    line-height: 1.55;
  }

.erp-advisory-wizard {
  padding: clamp(1.6rem, 4vw, 2.55rem);
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff 0, #ffffff 72%, #fafbfc 100%);
}

.landing-hero .homepage-hero-title {
  max-width: 18ch;
  font-size: clamp(3rem, 5.5vw, 4.8rem);
}

.erp-advisory-progress > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-bottom: 0.6rem;
  font-size: 0.9rem;
}

.erp-advisory-progress > span {
  display: block;
  width: 100%;
  height: 6px;
  border-radius: 999px;
  background: #eef1f5;
  overflow: hidden;
}

.erp-advisory-progress i {
  display: block;
  width: 20%;
  height: 100%;
  border-radius: inherit;
  background: #ffed00;
  transition: width 180ms ease;
}

.erp-advisory-wizard.has-errors .erp-advisory-progress i {
  background: #d92d20;
}

.erp-advisory-step {
  display: none;
  padding-top: clamp(1.8rem, 4vw, 2.5rem);
  min-height: 330px;
}

  .erp-advisory-step.is-active {
    display: block;
    animation: erp-advisory-step-in 180ms ease-out both;
  }

  .erp-advisory-step.is-empty {
    display: none !important;
  }

@keyframes erp-advisory-step-in {
  from {
    opacity: 0;
    transform: translateY(7px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.erp-advisory-step h2,
.erp-advisory-result h2 {
  margin: 0;
  font-size: clamp(1.75rem, 4vw, 2.15rem);
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1.15;
}

.erp-advisory-step p,
.erp-advisory-result p {
  margin: 0.8rem 0 0;
  color: #38445a;
  font-size: 1rem;
  line-height: 1.55;
}

.erp-advisory-step fieldset {
  margin: 2.2rem 0 0;
  border: 0;
  padding: 0;
}

.erp-advisory-step legend,
.erp-advisory-input-grid span,
.erp-advisory-range-label span {
  display: block;
  margin-bottom: 0.75rem;
  color: #070b12;
  font-size: 0.95rem;
  font-weight: 800;
}

.erp-advisory-segments,
.erp-advisory-options,
.erp-advisory-radio-cards,
.erp-advisory-module-codes,
.erp-advisory-input-grid,
.erp-advisory-result__totals,
.erp-advisory-result__tables {
  display: grid;
  gap: 0.75rem;
}

.erp-advisory-estimate-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.5rem;
}

.erp-advisory-estimate-card {
  padding: clamp(1.15rem, 3vw, 1.55rem);
  border: 1px solid #e6e9ef;
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0, #fafbfc 100%);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.07);
}

  .erp-advisory-estimate-card:first-child {
    border-top: 4px solid #ffed00;
  }

  .erp-advisory-estimate-card:last-child {
    border-top: 4px solid #070b12;
  }

  .erp-advisory-estimate-card > span {
    display: inline-flex;
    margin-bottom: 0.65rem;
    color: #667085;
    font-size: 0.82rem;
    font-weight: 900;
    text-transform: uppercase;
  }

  .erp-advisory-estimate-card h3 {
    margin: 0;
    color: #070b12;
    font-size: 1.22rem;
    font-weight: 900;
    letter-spacing: 0;
  }

  .erp-advisory-estimate-card dl {
    display: grid;
    gap: 0;
    margin: 1.15rem 0 0;
  }

    .erp-advisory-estimate-card dl > div {
      display: flex;
      justify-content: space-between;
      gap: 1rem;
      padding: 0.78rem 0;
      border-top: 1px solid #eef1f5;
    }

  .erp-advisory-estimate-card dt,
  .erp-advisory-estimate-card dd {
    margin: 0;
  }

  .erp-advisory-estimate-card dt {
    color: #38445a;
    font-weight: 800;
  }

  .erp-advisory-estimate-card dd {
    color: #070b12;
    font-weight: 900;
    text-align: right;
    white-space: nowrap;
  }

.erp-advisory-estimate-note {
  padding: 0.9rem 1rem;
  border-radius: 14px;
  background: #fffdf0;
  color: #38445a;
}

.erp-advisory-segments {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

  .erp-advisory-segments button,
  .erp-advisory-option,
  .erp-advisory-radio-cards label,
  .erp-advisory-module-codes label {
    border: 1px solid #d9dee8;
    border-radius: 16px;
    background: #ffffff;
    color: #070b12;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
  }

  .erp-advisory-segments button {
    min-height: 46px;
    padding: 0.65rem 0.8rem;
    font-weight: 800;
  }

    .erp-advisory-segments button.is-selected,
    .erp-advisory-option.is-selected,
    .erp-advisory-radio-cards label.is-selected {
      border-color: #070b12;
      background: #070b12;
      color: #ffffff;
    }

.erp-advisory-range-label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-top: 2.2rem;
}

.erp-advisory-range {
  width: 100%;
  accent-color: #070b12;
}

.erp-advisory-range-scale {
  display: flex;
  justify-content: space-between;
  color: #38445a;
  font-size: 0.85rem;
}

.erp-advisory-options {
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  margin-top: 1.75rem;
}

.erp-advisory-options--functional {
  grid-template-columns: 1fr;
}

.erp-advisory-option,
.erp-advisory-radio-cards label {
  display: block;
  padding: 1rem;
}

.erp-advisory-option {
  cursor: default;
}

  .erp-advisory-option input,
  .erp-advisory-radio-cards input,
  .erp-advisory-module-codes input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
  }

  .erp-advisory-option strong,
  .erp-advisory-radio-cards strong {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 1rem;
  }

  .erp-advisory-option span,
  .erp-advisory-radio-cards span {
    display: block;
    color: inherit;
    opacity: 0.78;
    font-size: 0.9rem;
    line-height: 1.35;
  }

.erp-advisory-module-codes {
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  margin-top: 1rem;
}

  .erp-advisory-module-codes label {
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.55rem;
    font-weight: 800;
  }

    .erp-advisory-module-codes label.is-selected {
      border-color: #ffed00;
      background: #fff9b8;
    }

.erp-advisory-basis {
  margin-top: 1.75rem;
  padding: clamp(1.15rem, 3vw, 1.6rem);
  border: 1px solid #e6e9ef;
  border-left: 6px solid #ffed00;
  border-radius: 16px;
  background: #fffdf0;
}

  .erp-advisory-basis > span,
  .erp-advisory-report-grid span {
    display: block;
    color: #667085;
    font-size: 0.82rem;
    font-weight: 900;
    text-transform: uppercase;
  }

  .erp-advisory-basis strong {
    display: block;
    margin-top: 0.4rem;
    font-size: clamp(1.35rem, 3vw, 1.8rem);
    font-weight: 900;
  }

.erp-advisory-counts .is-hidden,
.erp-advisory-module-option.is-hidden,
.erp-advisory-attention.is-hidden {
  display: none;
}

.erp-advisory-module-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 0.75rem;
  margin-top: 1.75rem;
}

.erp-advisory-module-option {
  display: grid;
  gap: 0.45rem;
}

  .erp-advisory-module-option.is-main-question {
    margin-top: 0.35rem;
  }

    .erp-advisory-module-option.is-main-question > .erp-advisory-option {
      background: linear-gradient(135deg, #ffffff 0, #fbfcfe 100%);
      box-shadow: 0 9px 24px rgba(15, 23, 42, 0.055);
    }

  .erp-advisory-module-option.is-subquestion {
    position: relative;
    margin-top: -0.25rem;
    padding-left: 1rem;
    border-left: 3px solid #ffed00;
  }

    .erp-advisory-module-option.is-subquestion > .erp-advisory-option {
      border-color: #e4e8ef;
      background: #fbfcfe;
    }

  .erp-advisory-module-option.has-exclusive-children {
    padding-bottom: 0.35rem;
  }

  .erp-advisory-module-option.is-exclusive-child > .erp-advisory-option {
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease, background 160ms ease;
  }

    .erp-advisory-module-option.is-exclusive-child > .erp-advisory-option.is-positive {
      border-color: #070b12;
      background: #fffef0;
      box-shadow: 0 10px 24px rgba(15, 23, 42, 0.09);
      transform: translateY(-1px);
    }

  .erp-advisory-module-option .erp-advisory-option {
    min-height: 100%;
  }

  .erp-advisory-module-option.is-disabled .erp-advisory-option {
    border-color: #e5e7eb;
    background: #f6f7f9;
    color: #465062;
  }

.erp-advisory-option em {
  display: inline-flex;
  margin: 0 0 0.55rem;
  padding: 0.22rem 0.55rem;
  border-radius: 999px;
  background: #fff9b8;
  color: #7a5b00;
  font-size: 0.78rem;
  font-weight: 900;
  font-style: normal;
  line-height: 1.35;
}

.erp-advisory-attention {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 38px;
  padding: 0.55rem 0.75rem;
  border: 1px dashed #d9dee8;
  border-radius: 12px;
  background: #ffffff;
  color: #38445a;
  font-size: 0.88rem;
  font-weight: 700;
}

  .erp-advisory-attention input {
    width: 16px;
    height: 16px;
    accent-color: #070b12;
  }

  .erp-advisory-attention.is-selected {
    border-color: #070b12;
    background: #fff9b8;
    color: #070b12;
  }

.erp-advisory-input-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 1.75rem;
}

  .erp-advisory-input-grid label.is-wide {
    grid-column: 1 / -1;
  }

  .erp-advisory-input-grid input,
  .erp-advisory-input-grid textarea {
    width: 100%;
    min-height: 48px;
    border: 1px solid #d9dee8;
    border-radius: 14px;
    padding: 0.75rem 0.9rem;
    color: #070b12;
    background: #ffffff;
  }

  .erp-advisory-input-grid small {
    display: block;
    margin-top: 0.45rem;
    color: #667085;
    font-size: 0.82rem;
    line-height: 1.35;
  }

.erp-advisory-slider-list label {
  position: relative;
  padding: 1rem;
  border: 1px solid #e6e9ef;
  border-radius: 16px;
  background: #ffffff;
}

.erp-advisory-slider-list input[type="range"] {
  min-height: 0;
  padding: 0;
  border: 0;
  accent-color: #070b12;
}

.erp-advisory-slider-value {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.5rem;
  min-height: 2rem;
  margin-top: 0.55rem;
  border-radius: 999px;
  background: #070b12;
  color: #ffffff;
  font-size: 0.95rem;
  font-weight: 900;
}

.erp-advisory-slider-list small {
  display: block;
  margin-top: 0.45rem;
  color: #667085;
  font-size: 0.86rem;
  line-height: 1.35;
}

.erp-advisory-input-grid textarea {
  resize: vertical;
}

.erp-advisory-radio-cards {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 1.75rem;
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.erp-advisory-answer-choices,
.erp-advisory-step .erp-advisory-answer-choices {
  display: flex;
  gap: 0.55rem;
  margin: 1rem 0 0;
  padding: 0;
  border: 0;
}

  .erp-advisory-answer-choices label {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 76px;
    min-height: 44px;
    padding: 0.55rem 1rem;
    border: 1px solid #cfd6e3;
    border-radius: 999px;
    background: #ffffff;
    color: #070b12;
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 900;
  }

    .erp-advisory-answer-choices label.is-selected {
      border-color: #070b12;
      background: #070b12;
      color: #ffffff;
    }

.erp-advisory-option .erp-advisory-answer-choices label span {
  display: inline;
  opacity: 1;
  font-size: inherit;
}

.erp-advisory-answer-choices label:focus-within {
  outline: 3px solid rgba(7, 11, 18, 0.22);
  outline-offset: 2px;
}

.erp-advisory-answer-choices input {
  position: absolute;
  opacity: 0;
}

.erp-advisory-exclusive-choice,
.erp-advisory-step .erp-advisory-exclusive-choice {
  margin: 1rem 0 0;
  padding: 0;
  border: 0;
}

  .erp-advisory-exclusive-choice label {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0.55rem 1rem;
    border: 1px solid #cfd6e3;
    border-radius: 999px;
    background: #ffffff;
    color: #070b12;
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 900;
  }

    .erp-advisory-exclusive-choice label.is-selected {
      border-color: #070b12;
      background: #070b12;
      color: #ffffff;
    }

.erp-advisory-option .erp-advisory-exclusive-choice span {
  display: inline;
  opacity: 1;
  font-size: inherit;
}

.erp-advisory-exclusive-choice label:focus-within {
  outline: 3px solid rgba(7, 11, 18, 0.22);
  outline-offset: 2px;
}

.erp-advisory-option.is-answered {
  border-color: #aeb7c5;
}

.erp-advisory-option.is-positive {
  border-color: #070b12;
}

.erp-advisory-module-option.has-error .erp-advisory-option {
  border-color: #b42318;
  box-shadow: 0 0 0 2px rgba(180, 35, 24, 0.08);
}

.erp-advisory-question-error {
  display: block;
  margin-top: 0.75rem;
  color: #b42318;
  font-size: 0.86rem;
  font-weight: 800;
}

  .erp-advisory-question-error[hidden] {
    display: none;
  }

.erp-advisory-public-estimate {
  margin-top: 1.35rem;
  padding: clamp(1.2rem, 3vw, 1.7rem);
  border: 1px solid #e2e7ef;
  border-left: 5px solid #ffed00;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.055);
}

.erp-advisory-public-estimate__heading {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.6rem;
  color: #667085;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.erp-advisory-public-estimate__vat {
  padding: 0.22rem 0.5rem;
  border-radius: 999px;
  background: #f4f6f8;
  color: #667085;
  font-size: 0.7rem;
  letter-spacing: 0.02em;
}

.erp-advisory-public-estimate > strong {
  display: block;
  margin: 0.45rem 0 0.65rem;
  color: #070b12;
  font-size: clamp(2rem, 5vw, 2.8rem);
  font-weight: 950;
  line-height: 1.08;
  overflow-wrap: anywhere;
}

.erp-advisory-public-estimate__items,
.erp-advisory-public-estimate__note {
  margin: 0;
  color: #465062;
  font-size: 0.92rem;
  line-height: 1.5;
}

.erp-advisory-public-estimate__items {
  letter-spacing: 0.01em;
}

.erp-advisory-public-estimate__note {
  margin-top: 0.5rem;
  color: #667085;
  font-size: 0.84rem;
}

.erp-advisory-quantity-field {
  display: block;
  margin-top: 1.25rem;
  padding: 0.85rem;
  border: 1px solid #e6e9ef;
  border-radius: 10px;
  background: #f8fafc;
  transition: opacity 0.18s ease, background 0.18s ease;
}

.erp-advisory-option .erp-advisory-quantity-field {
  display: block;
  color: #070b12;
  opacity: 1;
}

.erp-advisory-quantity-field.is-disabled {
  background: #f1f4f8;
  opacity: 0.72;
}

.erp-advisory-quantity-label,
.erp-advisory-quantity-field small {
  display: block;
}

.erp-advisory-quantity-label {
  display: block;
  color: #070b12;
  font-size: 0.92rem;
  font-weight: 900;
}

.erp-advisory-quantity-field input[type="number"] {
  position: static;
  opacity: 1;
  pointer-events: auto;
  width: 100%;
  min-height: 40px;
  border: 1px solid #d9dee8;
  border-radius: 10px;
  padding: 0.55rem 0.7rem;
  background: #ffffff;
}

.erp-advisory-quantity-control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 88px;
  gap: 0.75rem;
  align-items: center;
  margin-top: 0.65rem;
}

.erp-advisory-option .erp-advisory-quantity-control {
  display: grid;
  opacity: 1;
}

.erp-advisory-quantity-control input[type="range"] {
  -webkit-appearance: none;
  appearance: none;
  position: static;
  opacity: 1;
  pointer-events: auto;
  width: 100%;
  height: 6px;
  min-height: 6px;
  margin-top: 0;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: #d9dee8;
  accent-color: #070b12;
}

  .erp-advisory-quantity-control input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 20px;
    height: 20px;
    border: 3px solid #ffffff;
    border-radius: 50%;
    background: #070b12;
    box-shadow: 0 3px 8px rgba(7, 11, 18, 0.22);
  }

  .erp-advisory-quantity-control input[type="range"]::-moz-range-thumb {
    width: 16px;
    height: 16px;
    border: 3px solid #ffffff;
    border-radius: 50%;
    background: #070b12;
    box-shadow: 0 3px 8px rgba(7, 11, 18, 0.22);
  }

.erp-advisory-quantity-control input[type="number"] {
  margin-top: 0;
  text-align: center;
  font-weight: 900;
}

.erp-advisory-quantity-scale {
  display: flex;
  justify-content: space-between;
  padding-right: 103px;
  margin-top: 0.35rem;
  color: #667085;
  font-size: 0.78rem;
  font-weight: 800;
}

.erp-advisory-option .erp-advisory-quantity-scale {
  display: flex;
  opacity: 1;
}

.erp-advisory-quantity-field input:disabled {
  background: #edf0f5;
  color: #98a2b3;
  cursor: not-allowed;
}

.erp-advisory-quantity-field small {
  margin-top: 0.55rem;
  color: #667085;
  font-size: 0.82rem;
}

@media (max-width: 640px) {
  .erp-advisory-quantity-control {
    grid-template-columns: minmax(0, 1fr) 78px;
    gap: 0.55rem;
  }

  .erp-advisory-quantity-scale {
    padding-right: 90px;
  }
}

.erp-advisory-actions {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 2rem;
}

.erp-advisory-prev,
.erp-advisory-next,
.erp-advisory-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  min-height: 48px;
  padding: 0.7rem 1.45rem;
  border-radius: 999px;
  border: 1px solid transparent;
  font-weight: 900;
}

.erp-advisory-prev {
  border-color: #e6e9ef;
  background: #ffffff;
  color: #9aa3b2;
}

.erp-advisory-next,
.erp-advisory-submit {
  background: #ffed00;
  color: #070b12;
}

.erp-advisory-restart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin-top: 1rem;
  padding: 0.65rem 1.15rem;
  border: 1px solid #d9dee8;
  border-radius: 999px;
  background: #ffffff;
  color: #070b12;
  font-weight: 900;
  transition: transform 150ms ease, box-shadow 150ms ease, opacity 150ms ease;
}

.erp-advisory-next:hover:not(:disabled),
.erp-advisory-submit:hover:not(:disabled) {
  box-shadow: 0 8px 18px rgba(122, 91, 0, 0.2);
  transform: translateY(-1px);
}

.erp-advisory-prev:focus-visible,
.erp-advisory-next:focus-visible,
.erp-advisory-submit:focus-visible,
.erp-advisory-restart:focus-visible {
  outline: 3px solid rgba(7, 11, 18, 0.24);
  outline-offset: 3px;
}

.erp-advisory-submit:disabled {
  cursor: wait;
  opacity: 0.72;
}

.erp-advisory-submit__busy {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
}

  .erp-advisory-submit__busy[hidden] {
    display: none;
  }

  .erp-advisory-submit__busy i {
    width: 17px;
    height: 17px;
    border: 2px solid rgba(7, 11, 18, 0.25);
    border-top-color: #070b12;
    border-radius: 50%;
    animation: erp-advisory-spin 700ms linear infinite;
  }

@keyframes erp-advisory-spin {
  to {
    transform: rotate(360deg);
  }
}

.erp-advisory-submit {
  display: none;
}

  .erp-advisory-submit.is-inline {
    display: inline-flex;
    margin-top: 1.4rem;
  }

.erp-advisory-result {
  margin-top: 2rem;
  padding: clamp(1.6rem, 4vw, 2.55rem);
  background: linear-gradient(180deg, #ffffff 0, #fafbfc 100%);
}

.erp-advisory-result__intro span,
.erp-advisory-lead > div > span,
.erp-advisory-result__totals span {
  color: #667085;
  font-size: 0.82rem;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-advisory-result__totals {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 1.5rem;
}

.erp-advisory-report-grid {
  display: grid;
  grid-template-columns: 1.3fr 0.85fr 1fr;
  gap: 0.75rem;
  margin-top: 1.5rem;
}

  .erp-advisory-report-grid article {
    padding: 1rem;
    border: 1px solid #e6e9ef;
    border-radius: 16px;
    background: #ffffff;
  }

  .erp-advisory-report-grid strong {
    display: block;
    margin-top: 0.35rem;
    font-size: 1.1rem;
  }

.erp-advisory-result__totals > div {
  padding: 1rem;
  border-radius: 16px;
  background: #f6f7f9;
}

.erp-advisory-result__totals strong,
.erp-advisory-result__totals small {
  display: block;
}

.erp-advisory-result__totals strong {
  margin-top: 0.35rem;
  font-size: 1.1rem;
}

.erp-advisory-result__totals small {
  margin-top: 0.2rem;
  color: #667085;
}

.erp-advisory-result__tables {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 1.5rem;
}

.erp-advisory-result-table {
  border: 1px solid #e6e9ef;
  border-radius: 16px;
  overflow: hidden;
}

.erp-advisory-report-list {
  padding: 1rem;
  border: 1px solid #e6e9ef;
  border-radius: 16px;
  background: #ffffff;
}

  .erp-advisory-report-list h3,
  .erp-advisory-result-table h3 {
    margin: 0;
    font-size: 1rem;
    font-weight: 900;
  }

.erp-advisory-result-table h3 {
  padding: 1rem;
}

.erp-advisory-report-list ul {
  display: grid;
  gap: 0.65rem;
  margin: 0.85rem 0 0;
  padding: 0;
  list-style: none;
}

.erp-advisory-report-list li {
  display: grid;
  gap: 0.15rem;
  padding-top: 0.65rem;
  border-top: 1px solid #eef1f5;
}

  .erp-advisory-report-list li:first-child {
    padding-top: 0;
    border-top: 0;
  }

.erp-advisory-report-list span,
.erp-advisory-report-list em {
  color: #667085;
  font-size: 0.88rem;
  font-style: normal;
  line-height: 1.35;
}

.erp-advisory-debug {
  margin-top: 1.5rem;
  overflow-x: auto;
  border: 1px solid #e6e9ef;
  border-radius: 16px;
  background: #fffdf0;
}

.erp-advisory-debug__summary {
  padding: 0 1rem 0.75rem;
}

  .erp-advisory-debug__summary p {
    margin: 0.35rem 0 0;
    font-size: 0.86rem;
  }

.erp-advisory-debug tr.is-excluded {
  opacity: 0.72;
}

.erp-advisory-debug h3 {
  margin: 0;
  padding: 1rem;
  font-size: 1rem;
  font-weight: 900;
}

.erp-advisory-debug table {
  min-width: 980px;
  width: 100%;
  margin: 0;
  font-size: 0.84rem;
}

.erp-advisory-debug th,
.erp-advisory-debug td {
  padding: 0.65rem 0.75rem;
  border-top: 1px solid #e6e9ef;
  vertical-align: top;
}

  .erp-advisory-debug td span {
    display: block;
    color: #667085;
  }

.erp-advisory-result-table table {
  width: 100%;
  margin: 0;
}

.erp-advisory-result-table th,
.erp-advisory-result-table td {
  padding: 0.75rem 1rem;
  border-top: 1px solid #e6e9ef;
  vertical-align: top;
}

  .erp-advisory-result-table td span,
  .erp-advisory-result-table td em {
    display: block;
    color: #667085;
    font-size: 0.82rem;
    font-style: normal;
  }

.erp-advisory-result-table tr.is-disabled {
  opacity: 0.62;
}

.erp-advisory-lead {
  margin-top: 2rem;
  padding: clamp(1.15rem, 3vw, 1.6rem);
  border: 1px solid #e2e7ef;
  border-radius: 18px;
  background: #f8fafc;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.055);
}

.erp-advisory-submit-note {
  margin: 0.7rem 0 0 !important;
  color: #667085 !important;
  font-size: 0.82rem !important;
}

@media (max-width: 767px) {
  .erp-advisory-page {
    padding: 5.5rem 0.6rem 3rem;
  }

  .erp-advisory-wizard,
  .erp-advisory-result {
    padding: 1rem;
    border-radius: 18px;
  }

  .erp-advisory-step {
    min-height: 0;
    padding-top: 1.5rem;
  }

  .erp-advisory-options {
    gap: 0.65rem;
    margin-top: 1.25rem;
  }

  .erp-advisory-module-option,
  .erp-advisory-module-option.is-subquestion {
    margin-left: 0 !important;
  }

    .erp-advisory-module-option.is-subquestion {
      padding-left: 0.6rem;
    }

  .erp-advisory-option {
    padding: 0.85rem;
  }

  .erp-advisory-quantity-field {
    margin-top: 0.9rem;
    padding: 0.7rem;
  }

  .erp-advisory-segments,
  .erp-advisory-radio-cards,
  .erp-advisory-input-grid,
  .erp-advisory-report-grid,
  .erp-advisory-estimate-options,
  .erp-advisory-result__totals,
  .erp-advisory-result__tables {
    grid-template-columns: 1fr;
  }

  .erp-advisory-actions {
    flex-direction: column-reverse;
    gap: 0.65rem;
    margin-top: 1.35rem;
  }

  .erp-advisory-prev,
  .erp-advisory-next,
  .erp-advisory-submit {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .erp-advisory-wizard *,
  .erp-advisory-result * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Compact, single-surface treatment for the ERP Advisory wizard. */
.erp-advisory-wizard {
  width: min(100%, 860px);
  margin-inline: auto;
  padding: 0;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 14px 36px rgba(15, 23, 42, .08);
}

.erp-advisory-progress {
  padding: 1rem 1.25rem .8rem;
}

  .erp-advisory-progress > div {
    margin-bottom: .45rem;
    color: #4c586b;
    font-size: .78rem;
    line-height: 1.3;
  }

    .erp-advisory-progress > div strong {
      color: #070b12;
      font-weight: 850;
    }

  .erp-advisory-progress > span {
    height: 4px;
  }

.erp-advisory-step {
  min-height: 0;
  padding: .65rem 1.25rem 1.15rem;
}

.erp-advisory-step__heading {
  max-width: 680px;
  margin-bottom: 1rem;
  padding: 0;
}

  .erp-advisory-step__heading h2 {
    padding-top: 0;
    font-size: clamp(1.35rem, 2.8vw, 1.7rem);
    line-height: 1.18;
  }

  .erp-advisory-step__heading p {
    margin-top: .35rem;
    color: #4c586b;
    font-size: .88rem;
    line-height: 1.45;
  }

.erp-advisory-options--functional {
  gap: 0;
  margin-top: 0;
  border-top: 1px solid #e6e9ef;
}

.erp-advisory-module-option,
.erp-advisory-module-option.is-main-question {
  gap: 0;
  margin-top: 0;
  padding: .9rem 0;
  border-bottom: 1px solid #e6e9ef;
}

  .erp-advisory-module-option.is-subquestion {
    margin-top: 0;
    padding: .8rem 0 .8rem .85rem;
    border-left: 3px solid #ffed00;
  }

    .erp-advisory-module-option.is-main-question > .erp-advisory-option,
    .erp-advisory-module-option.is-subquestion > .erp-advisory-option,
    .erp-advisory-module-option.is-exclusive-child > .erp-advisory-option,
    .erp-advisory-module-option.is-exclusive-child > .erp-advisory-option.is-positive,
    .erp-advisory-module-option .erp-advisory-option {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: .65rem 1rem;
      min-height: 0;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      transform: none;
    }

.erp-advisory-option__copy {
  min-width: 0;
}

  .erp-advisory-option__copy strong {
    margin-bottom: .2rem;
    color: #070b12;
    font-size: .96rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
  }

  .erp-advisory-option__copy > span {
    max-width: 64ch;
    color: #667085;
    font-size: .82rem;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }

.erp-advisory-option em {
  margin-bottom: .4rem;
  padding: .16rem .42rem;
  font-size: .68rem;
}

.erp-advisory-answer-choices,
.erp-advisory-step .erp-advisory-answer-choices,
.erp-advisory-exclusive-choice,
.erp-advisory-step .erp-advisory-exclusive-choice {
  align-self: center;
  margin: 0;
}

.erp-advisory-answer-choices {
  gap: .35rem;
}

  .erp-advisory-answer-choices label,
  .erp-advisory-exclusive-choice label {
    min-width: 62px;
    min-height: 38px;
    padding: .42rem .78rem;
    border-radius: 9px;
    font-size: .82rem;
    transition: background .15s ease, border-color .15s ease, box-shadow .15s ease, transform .15s ease;
  }

    .erp-advisory-answer-choices label:hover,
    .erp-advisory-exclusive-choice label:hover {
      border-color: #070b12;
      background: #fffbe0;
    }

    .erp-advisory-answer-choices label.is-selected,
    .erp-advisory-exclusive-choice label.is-selected {
      border-color: #070b12;
      background: #ffed00;
      color: #070b12;
      box-shadow: 0 0 0 2px rgba(255, 237, 0, .3);
    }

    .erp-advisory-answer-choices label:focus-within,
    .erp-advisory-exclusive-choice label:focus-within {
      outline: 2px solid #070b12;
      outline-offset: 2px;
    }

.erp-advisory-quantity-field,
.erp-advisory-option .erp-advisory-quantity-field,
.erp-advisory-question-error {
  grid-column: 1 / -1;
}

.erp-advisory-quantity-field {
  margin-top: .15rem;
  padding: .7rem .75rem;
  border-radius: 9px;
}

.erp-advisory-question-error {
  margin-top: 0;
}

.erp-advisory-module-option.has-error {
  margin-inline: -.7rem;
  padding-inline: .7rem;
  border-radius: 10px;
  background: #fff7f6;
}

  .erp-advisory-module-option.has-error .erp-advisory-option {
    border: 0;
    box-shadow: none;
  }

.erp-advisory-actions {
  align-items: center;
  margin-top: 0;
  padding: .8rem 1.25rem;
  border-top: 1px solid #e6e9ef;
  background: #fafbfc;
}

.erp-advisory-prev,
.erp-advisory-next,
.erp-advisory-submit {
  min-height: 42px;
  padding: .55rem 1rem;
  border-radius: 10px;
  font-size: .86rem;
}

  .erp-advisory-prev:not(:disabled):hover {
    border-color: #070b12;
    color: #070b12;
  }

  .erp-advisory-prev:disabled {
    cursor: not-allowed;
    opacity: .62;
  }

@media (max-width: 767px) {
  .erp-advisory-wizard {
    border-radius: 14px;
  }

  .erp-advisory-progress {
    padding: .85rem .9rem .7rem;
  }

  .erp-advisory-step {
    padding: .55rem .9rem .9rem;
  }

  .erp-advisory-step__heading {
    margin-bottom: .8rem;
  }

  .erp-advisory-options {
    gap: 0;
    margin-top: 0;
  }

  .erp-advisory-module-option,
  .erp-advisory-module-option.is-main-question {
    margin-left: 0 !important;
    padding: .8rem 0;
  }

    .erp-advisory-module-option.is-subquestion {
      padding-left: .65rem;
    }

  .erp-advisory-option {
    padding: 0;
  }

  .erp-advisory-actions {
    flex-direction: row;
    gap: .55rem;
    margin-top: 0;
    padding: .7rem .9rem;
  }

  .erp-advisory-prev,
  .erp-advisory-next,
  .erp-advisory-submit {
    width: auto;
  }
}

@media (max-width: 560px) {
  .erp-advisory-module-option.is-main-question > .erp-advisory-option,
  .erp-advisory-module-option.is-subquestion > .erp-advisory-option,
  .erp-advisory-module-option.is-exclusive-child > .erp-advisory-option,
  .erp-advisory-module-option.is-exclusive-child > .erp-advisory-option.is-positive,
  .erp-advisory-module-option .erp-advisory-option {
    grid-template-columns: minmax(0, 1fr);
    gap: .6rem;
  }

  .erp-advisory-answer-choices,
  .erp-advisory-step .erp-advisory-answer-choices,
  .erp-advisory-exclusive-choice,
  .erp-advisory-step .erp-advisory-exclusive-choice {
    justify-self: start;
  }
}

@media (max-width: 350px) {
  .erp-advisory-progress,
  .erp-advisory-step,
  .erp-advisory-actions {
    padding-right: .75rem;
    padding-left: .75rem;
  }

  .erp-advisory-prev,
  .erp-advisory-next,
  .erp-advisory-submit {
    padding-inline: .75rem;
  }
}

/* ERP Advisory lead-first result: one compact finalisation surface. */
.erp-advisory-result--lead-first {
  width: min(100%, 860px);
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d9e0ea;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, .09);
}

  .erp-advisory-result--lead-first .erp-advisory-result__intro {
    position: relative;
    padding: 1.15rem 1.35rem 1rem;
    background: linear-gradient(135deg, #fff 0, #fbfcfe 100%);
  }

    .erp-advisory-result--lead-first .erp-advisory-result__intro > span {
      display: block;
      margin-bottom: .28rem;
      color: #596579;
      font-size: .72rem;
      letter-spacing: .035em;
    }

    .erp-advisory-result--lead-first .erp-advisory-result__intro h2 {
      padding-top: 0;
      font-size: clamp(1.35rem, 2.8vw, 1.7rem);
      max-width: 30ch;
      line-height: 1.15;
    }

  .erp-advisory-result--lead-first .erp-advisory-public-estimate {
    position: relative;
    margin: 0;
    padding: 1.1rem 1.35rem 1.15rem;
    border: 0;
    border-top: 1px solid #e6e9ef;
    border-bottom: 1px solid #e6e9ef;
    border-radius: 0;
    background: linear-gradient(110deg, #fffde5 0, #fffef5 42%, #fff 100%);
    box-shadow: none;
  }

    .erp-advisory-result--lead-first .erp-advisory-public-estimate::before {
      position: absolute;
      inset: 0 auto 0 0;
      width: 4px;
      background: #ffed00;
      content: "";
    }

  .erp-advisory-result--lead-first .erp-advisory-public-estimate__heading {
    gap: .45rem;
    font-size: .7rem;
  }

  .erp-advisory-result--lead-first .erp-advisory-public-estimate__vat {
    padding: .16rem .4rem;
    background: #f1f3f6;
    font-size: .64rem;
  }

  .erp-advisory-result--lead-first .erp-advisory-public-estimate > strong {
    margin: .25rem 0 .35rem;
    font-size: clamp(2rem, 4vw, 2.5rem);
    line-height: 1.08;
  }

  .erp-advisory-result--lead-first .erp-advisory-public-estimate__items {
    color: #4c586b;
    font-size: .84rem;
    font-weight: 600;
  }

  .erp-advisory-result--lead-first .erp-advisory-lead {
    margin: 0;
    padding: 1.2rem 1.35rem 1.35rem;
    border: 0;
    border-radius: 0;
    background: #f8fafc;
    box-shadow: none;
  }

  .erp-advisory-result--lead-first .erp-advisory-lead__intro > span {
    display: block;
    margin-bottom: .22rem;
    font-size: .7rem;
    letter-spacing: .035em;
  }

  .erp-advisory-result--lead-first .erp-advisory-lead h2 {
    padding-top: 0;
    font-size: clamp(1.25rem, 2.5vw, 1.5rem);
    line-height: 1.2;
  }

  .erp-advisory-result--lead-first .erp-advisory-lead__intro > p {
    max-width: 68ch;
    margin-top: .3rem;
    color: #4c586b;
    font-size: .84rem;
    line-height: 1.45;
  }

  .erp-advisory-result--lead-first .erp-advisory-lead__benefits {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem .6rem;
    margin: .8rem 0 0;
    padding: 0;
    color: #344054;
    font-size: .76rem;
    font-weight: 750;
    list-style: none;
  }

    .erp-advisory-result--lead-first .erp-advisory-lead__benefits li {
      display: inline-flex;
      align-items: center;
      gap: .35rem;
      padding: .35rem .55rem;
      border: 1px solid #e0e5ec;
      border-radius: 999px;
      background: #fff;
    }

      .erp-advisory-result--lead-first .erp-advisory-lead__benefits li::before {
        color: #7a6800;
        font-size: .8rem;
        font-weight: 900;
        content: "✓";
      }

  .erp-advisory-result--lead-first .erp-advisory-input-grid {
    gap: .7rem .8rem;
    margin-top: 1rem;
  }

    .erp-advisory-result--lead-first .erp-advisory-input-grid label > span {
      margin-bottom: .28rem;
      font-size: .76rem;
    }

    .erp-advisory-result--lead-first .erp-advisory-input-grid input {
      min-height: 46px;
      padding: .55rem .7rem;
      border-color: #cfd6e3;
      border-radius: 9px;
      transition: border-color .15s ease, box-shadow .15s ease;
    }

      .erp-advisory-result--lead-first .erp-advisory-input-grid input:hover {
        border-color: #98a2b3;
      }

      .erp-advisory-result--lead-first .erp-advisory-input-grid input:focus {
        border-color: #070b12;
        outline: 0;
        box-shadow: 0 0 0 3px rgba(255, 237, 0, .45);
      }

  .erp-advisory-result--lead-first .erp-advisory-submit.is-inline {
    min-width: min(100%, 310px);
    min-height: 46px;
    margin-top: 1rem;
    padding: .72rem 1.05rem;
    border: 1px solid var(--submit-button-background-color);
    border-radius: var(--radius-pill);
    box-shadow: 0 10px 22px rgba(255, 237, 0, .22);
    font-size: .9rem;
    line-height: 1.2;
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
  }

    .erp-advisory-result--lead-first .erp-advisory-submit.is-inline:hover:not(:disabled) {
      border-color: var(--submit-button-background-color-hover);
      background: var(--submit-button-background-color-hover);
      box-shadow: 0 12px 26px rgba(200, 145, 0, .22);
      transform: translateY(-1px);
    }

  .erp-advisory-result--lead-first .erp-advisory-submit__label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
  }

    .erp-advisory-result--lead-first .erp-advisory-submit__label > .lnr {
      font-size: 1rem;
    }

  .erp-advisory-result--lead-first .erp-advisory-submit-note {
    position: relative;
    margin-top: .7rem !important;
    padding-left: 1.15rem;
    font-size: .75rem !important;
    line-height: 1.4;
  }

    .erp-advisory-result--lead-first .erp-advisory-submit-note::before {
      position: absolute;
      left: 0;
      color: #667085;
      content: "✓";
    }

  .erp-advisory-result--lead-first .erp-advisory-restart {
    display: flex;
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: .72rem 1.25rem;
    justify-content: flex-start;
    border: 0;
    border-top: 1px solid #e6e9ef;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    color: #4c586b;
    font-size: .78rem;
    text-decoration: underline;
    text-underline-offset: 3px;
  }

    .erp-advisory-result--lead-first .erp-advisory-restart::before {
      margin-right: .4rem;
      content: "↺";
      text-decoration: none;
    }

    .erp-advisory-result--lead-first .erp-advisory-restart:hover {
      color: #070b12;
    }

@media (max-width: 767px) {
  .erp-advisory-result--lead-first {
    padding: 0;
    border-radius: 14px;
  }

    .erp-advisory-result--lead-first .erp-advisory-result__intro,
    .erp-advisory-result--lead-first .erp-advisory-public-estimate,
    .erp-advisory-result--lead-first .erp-advisory-lead {
      padding-right: .9rem;
      padding-left: .9rem;
    }

    .erp-advisory-result--lead-first .erp-advisory-restart {
      padding-right: .9rem;
      padding-left: .9rem;
    }

    .erp-advisory-result--lead-first .erp-advisory-submit.is-inline {
      width: 100%;
      min-width: 0;
    }
}

/* ERP Advisory completed result: compact report surface. */
.advisory-panel[data-lead-sent="true"] > .erp-advisory-status.is-success {
  position: relative;
  width: min(100%, 860px);
  margin: 0 auto .75rem;
  padding: .78rem 1rem .78rem 2.8rem;
  border-color: #b7e4c7;
  border-radius: 12px;
  background: #f1fbf4;
  box-shadow: none;
  color: #166534;
  font-size: .84rem;
  font-weight: 650;
  line-height: 1.45;
}

  .advisory-panel[data-lead-sent="true"] > .erp-advisory-status.is-success::before {
    position: absolute;
    top: 50%;
    left: 1rem;
    display: grid;
    width: 1.25rem;
    height: 1.25rem;
    place-items: center;
    border-radius: 50%;
    background: #d8f3df;
    color: #166534;
    font-size: .75rem;
    font-weight: 900;
    content: "✓";
    transform: translateY(-50%);
  }

.erp-advisory-result--complete {
  width: min(100%, 860px);
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, .09);
}

  .erp-advisory-result--complete .erp-advisory-result__intro {
    padding: 1.15rem 1.35rem 1rem;
    border-bottom: 1px solid #e6e9ef;
    background: linear-gradient(135deg, #fff 0, #fbfcfe 100%);
  }

    .erp-advisory-result--complete .erp-advisory-result__intro > span {
      display: block;
      margin-bottom: .28rem;
      color: #596579;
      font-size: .72rem;
      letter-spacing: .035em;
    }

    .erp-advisory-result--complete .erp-advisory-result__intro h2 {
      padding-top: 0;
      font-size: clamp(1.4rem, 2.8vw, 1.75rem);
      line-height: 1.15;
    }

    .erp-advisory-result--complete .erp-advisory-result__intro p {
      max-width: 72ch;
      margin-top: .35rem;
      color: #4c586b;
      font-size: .84rem;
      line-height: 1.45;
    }

  .erp-advisory-result--complete .erp-advisory-public-estimate {
    position: relative;
    margin: 0;
    padding: 1rem 1.35rem 1.05rem;
    border: 0;
    border-bottom: 1px solid #e6e9ef;
    border-radius: 0;
    background: linear-gradient(110deg, #fffde5 0, #fffef5 42%, #fff 100%);
    box-shadow: none;
  }

    .erp-advisory-result--complete .erp-advisory-public-estimate::before {
      position: absolute;
      inset: 0 auto 0 0;
      width: 4px;
      background: #ffed00;
      content: "";
    }

  .erp-advisory-result--complete .erp-advisory-public-estimate__heading {
    gap: .45rem;
    font-size: .7rem;
  }

  .erp-advisory-result--complete .erp-advisory-public-estimate__vat {
    padding: .16rem .4rem;
    background: #f1f3f6;
    font-size: .64rem;
  }

  .erp-advisory-result--complete .erp-advisory-public-estimate > strong {
    margin: .25rem 0 .3rem;
    font-size: clamp(1.9rem, 4vw, 2.35rem);
    line-height: 1.08;
  }

  .erp-advisory-result--complete .erp-advisory-public-estimate__items {
    color: #4c586b;
    font-size: .82rem;
    font-weight: 600;
  }

  .erp-advisory-result--complete .erp-advisory-estimate-options {
    gap: .75rem;
    margin: 0;
    padding: 1rem 1.35rem;
    background: #f8fafc;
  }

  .erp-advisory-result--complete .erp-advisory-estimate-card {
    padding: 1rem;
    border-radius: 12px;
    background: #fff;
    box-shadow: none;
  }

    .erp-advisory-result--complete .erp-advisory-estimate-card:first-child,
    .erp-advisory-result--complete .erp-advisory-estimate-card:last-child {
      border-top-width: 3px;
    }

    .erp-advisory-result--complete .erp-advisory-estimate-card > span {
      margin-bottom: .45rem;
      font-size: .7rem;
    }

    .erp-advisory-result--complete .erp-advisory-estimate-card h3 {
      font-size: 1.05rem;
      line-height: 1.3;
    }

    .erp-advisory-result--complete .erp-advisory-estimate-card > p {
      margin-top: .45rem;
      color: #4c586b;
      font-size: .8rem;
      line-height: 1.45;
    }

    .erp-advisory-result--complete .erp-advisory-estimate-card dl {
      margin-top: .75rem;
    }

      .erp-advisory-result--complete .erp-advisory-estimate-card dl > div {
        gap: .75rem;
        padding: .55rem 0;
      }

    .erp-advisory-result--complete .erp-advisory-estimate-card dt,
    .erp-advisory-result--complete .erp-advisory-estimate-card dd {
      font-size: .78rem;
      line-height: 1.35;
    }

  .erp-advisory-result--complete .erp-advisory-estimate-note {
    margin: 0 1.35rem 1rem;
    padding: .7rem .85rem;
    border: 1px solid #f3e9aa;
    border-radius: 10px;
    background: #fffdf0;
    color: #4c586b;
    font-size: .78rem;
    line-height: 1.45;
  }

  .erp-advisory-result--complete .erp-advisory-restart {
    display: flex;
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: .72rem 1.35rem;
    justify-content: flex-start;
    border: 0;
    border-top: 1px solid #e6e9ef;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    color: #4c586b;
    font-size: .78rem;
    text-decoration: underline;
    text-underline-offset: 3px;
  }

    .erp-advisory-result--complete .erp-advisory-restart::before {
      margin-right: .4rem;
      content: "↺";
      text-decoration: none;
    }

    .erp-advisory-result--complete .erp-advisory-restart:hover {
      color: #070b12;
    }

@media (max-width: 767px) {
  .advisory-panel[data-lead-sent="true"] > .erp-advisory-status.is-success,
  .erp-advisory-result--complete {
    border-radius: 14px;
  }

    .erp-advisory-result--complete .erp-advisory-result__intro,
    .erp-advisory-result--complete .erp-advisory-public-estimate,
    .erp-advisory-result--complete .erp-advisory-estimate-options {
      padding-right: .9rem;
      padding-left: .9rem;
    }

    .erp-advisory-result--complete .erp-advisory-estimate-note {
      margin-right: .9rem;
      margin-left: .9rem;
    }

    .erp-advisory-result--complete .erp-advisory-restart {
      padding-right: .9rem;
      padding-left: .9rem;
    }
}

/* ---- Knowledge Base ---- */
.knowledge-breadcrumb {
  margin: 1.25rem 0 0.75rem;
  color: var(--color-text-muted);
  font-size: 0.92rem;
}

  .knowledge-breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .knowledge-breadcrumb li {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
  }

    .knowledge-breadcrumb li + li::before {
      content: ">";
      color: rgba(17, 17, 17, 0.38);
    }

  .knowledge-breadcrumb a {
    color: var(--color-text-main);
    font-weight: 600;
    text-decoration: none;
  }

    .knowledge-breadcrumb a:hover {
      color: var(--primary);
    }

.knowledge-page {
  color: #070b12;
}

.knowledge-hero {
  max-width: 900px;
  margin: 0 auto 3rem;
  padding: clamp(2.2rem, 5vw, 4rem) 0 0;
  text-align: center;
}

.knowledge-hero--pillar {
  margin-bottom: 2rem;
}

.knowledge-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  margin-bottom: 1.1rem;
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  background: #f2f4f7;
  color: #111827;
  font-size: 0.85rem;
  font-weight: 800;
}

  .knowledge-hero__badge a {
    color: inherit;
    text-decoration: none;
  }

.knowledge-hero h1 {
  max-width: 780px;
  margin: 0 auto;
  font-size: clamp(2.35rem, 5.4vw, 4rem);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: 0;
}

.knowledge-hero p {
  max-width: 720px;
  margin: 1.05rem auto 0;
  color: #253044;
  font-size: 1.06rem;
  line-height: 1.55;
}

.knowledge-hero__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  margin-top: 1.35rem;
}

.knowledge-pillar-overview {
  margin: 0 auto clamp(3rem, 7vw, 5rem);
}

.knowledge-pillar-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.knowledge-pillar-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 1.15rem;
  border: 1px solid #e6e9ef;
  border-radius: 18px;
  background: #ffffff;
}

.knowledge-pillar-card__top {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.85rem;
  align-items: start;
}

.knowledge-pillar-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 14px;
  background: #fff8b8;
  color: #070b12;
}

.knowledge-pillar-card h3 {
  margin: 0;
  color: #070b12;
  font-size: 1.08rem;
  font-weight: 900;
  letter-spacing: 0;
}

.knowledge-pillar-card p {
  margin: 0.4rem 0 0;
  color: #38445a;
  font-size: 0.94rem;
  line-height: 1.45;
}

.knowledge-pillar-featured {
  margin-top: 1rem;
  padding-top: 0.9rem;
  border-top: 1px solid #eef1f5;
}

  .knowledge-pillar-featured > span {
    display: block;
    margin-bottom: 0.45rem;
    color: #667085;
    font-size: 0.78rem;
    font-weight: 900;
    text-transform: uppercase;
  }

  .knowledge-pillar-featured ul {
    display: grid;
    gap: 0.45rem;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .knowledge-pillar-featured a {
    color: #070b12;
    font-size: 0.92rem;
    font-weight: 800;
    line-height: 1.35;
    text-decoration: none;
  }

    .knowledge-pillar-featured a:hover {
      color: var(--primary);
    }

.knowledge-pillar-card__link {
  display: inline-flex;
  align-items: center;
  margin-top: auto;
  padding-top: 1rem;
  color: #070b12;
  font-weight: 800;
  text-decoration: none;
}

  .knowledge-pillar-card__link:hover {
    color: var(--primary);
  }

.knowledge-search {
  margin-top: var(--space-5);
  padding: 1rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-bg-white);
  box-shadow: 0 12px 30px rgba(15, 18, 24, 0.055);
}

.knowledge-hero .knowledge-search {
  max-width: 760px;
  margin: 1.75rem auto 0;
  text-align: left;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.knowledge-search__label {
  display: block;
  margin-bottom: 0.45rem;
  font-weight: 700;
}

.knowledge-search__field {
  display: flex;
  gap: 0.7rem;
  align-items: center;
  min-height: 3.1rem;
  padding: 0 1rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  background: var(--color-bg-light);
}

  .knowledge-search__field i {
    color: var(--color-text-muted);
  }

  .knowledge-search__field input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--color-text-main);
    font: inherit;
  }

.knowledge-search__hint,
.knowledge-search__result-count {
  margin: 0.55rem 0 0;
  color: var(--color-text-muted);
  font-size: 0.92rem;
}

.knowledge-search__results {
  margin-top: 0.9rem;
  border-top: 1px solid var(--color-border);
  padding-top: 0.85rem;
}

.knowledge-search__result-list {
  display: grid;
  gap: 0.6rem;
  margin-top: 0.65rem;
}

.knowledge-search-result {
  display: grid;
  gap: 0.2rem;
  padding: 0.8rem 0.9rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  color: var(--color-text-main);
  text-decoration: none;
}

  .knowledge-search-result:hover {
    border-color: rgba(17, 17, 17, 0.18);
    background: var(--color-bg-light);
  }

  .knowledge-search-result span,
  .knowledge-search-result small,
  .knowledge-search__empty {
    color: var(--color-text-muted);
  }

.knowledge-section-heading {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 1.2rem;
  align-items: end;
  justify-content: space-between;
  margin-bottom: 1.25rem;
}

  .knowledge-section-heading h2 {
    margin: 0;
  }

.knowledge-section-heading__text {
  max-width: 420px;
  margin: 0;
  color: var(--color-text-muted);
  line-height: 1.5;
}

.knowledge-copy {
  display: grid;
  gap: 0.85rem;
  color: var(--color-text-main);
  line-height: 1.65;
}

  .knowledge-copy p {
    margin: 0;
  }

.knowledge-pillar-topics {
  padding-top: clamp(2rem, 4vw, 3rem);
}

.knowledge-topic-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.95rem;
}

.knowledge-learning-section h2,
.knowledge-pillar-bottom h2 {
  margin: 0 0 1rem;
}

.knowledge-check-list {
  display: grid;
  gap: 0.65rem;
  margin: 0;
  padding-left: 1.15rem;
  color: var(--color-text-main);
  line-height: 1.55;
}

.knowledge-cta-card {
  border-color: #e6e9ef;
  box-shadow: none;
}

  .knowledge-cta-card .dbcard__body {
    display: grid;
    gap: 0.9rem;
    padding: clamp(1.25rem, 3vw, 1.75rem);
  }

  .knowledge-cta-card p {
    margin: 0;
    color: var(--color-text-muted);
    line-height: 1.55;
  }

.knowledge-pillar-card .dbcard__body {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  height: 100%;
  padding: 1.35rem;
}

.knowledge-pillar-card .dbcard__title {
  margin: 0;
  font-size: 1.12rem;
}

.knowledge-pillar-card p {
  margin: 0;
  color: var(--color-text-muted);
  line-height: 1.5;
}

.knowledge-mini-list {
  display: grid;
  gap: 0.45rem;
  margin: 0.35rem 0 0;
  padding: 0;
  list-style: none;
  font-size: 0.92rem;
}

  .knowledge-mini-list a {
    color: var(--color-text-main);
    text-decoration: none;
  }

    .knowledge-mini-list a:hover {
      color: var(--primary);
    }

.knowledge-pillar-card .marked {
  margin-top: auto;
}

.knowledge-topic-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1.2rem;
}

  .knowledge-topic-nav a {
    padding: 0.45rem 0.75rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-pill);
    color: var(--color-text-main);
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
  }

    .knowledge-topic-nav a:hover {
      border-color: var(--primary);
      background: rgba(255, 237, 0, 0.16);
    }

.knowledge-featured-strip {
  margin-bottom: 1.4rem;
  padding: clamp(1.15rem, 3vw, 1.5rem);
  border: 1px solid #e6e9ef;
  border-radius: 18px;
  background: #ffffff;
}

  .knowledge-featured-strip h2,
  .knowledge-remaining-heading h2 {
    margin: 0 0 1rem;
    color: #070b12;
    font-size: clamp(1.45rem, 3vw, 1.8rem);
    font-weight: 900;
    letter-spacing: 0;
  }

.knowledge-featured-link {
  display: grid;
  gap: 0.35rem;
  width: 100%;
  padding: 0.95rem;
  border: 1px solid #e6e9ef;
  border-radius: 16px;
  color: var(--color-text-main);
  text-decoration: none;
}

  .knowledge-featured-link:hover {
    border-color: rgba(17, 17, 17, 0.18);
    background: var(--color-bg-light);
  }

  .knowledge-featured-link span {
    color: var(--color-text-muted);
    font-size: 0.9rem;
    line-height: 1.45;
  }

.knowledge-remaining-heading {
  margin: 0 0 0.9rem;
}

.knowledge-topic-list {
  display: grid;
  gap: 0.85rem;
}

.knowledge-topic-card {
  border-color: #e6e9ef;
  box-shadow: none;
}

  .knowledge-topic-card .dbcard__body {
    padding: 1.1rem 1.15rem;
  }

.knowledge-topic-card__header {
  display: flex;
  gap: 0.75rem;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 0.8rem;
}

  .knowledge-topic-card__header .dbcard__title {
    margin: 0;
  }

  .knowledge-topic-card__header span {
    color: var(--color-text-muted);
    font-size: 0.88rem;
    white-space: nowrap;
  }

.knowledge-topic-description {
  margin: -0.25rem 0 0.9rem;
  color: var(--color-text-muted);
  font-size: 0.95rem;
  line-height: 1.5;
}

.knowledge-article-link-list,
.knowledge-side-list {
  display: grid;
  gap: 0.85rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

  .knowledge-article-link-list p {
    margin: 0.25rem 0 0;
    color: var(--color-text-muted);
    line-height: 1.5;
  }

.knowledge-article-content {
  max-width: 760px;
  font-size: 1.02rem;
  line-height: 1.75;
}

  .knowledge-article-content h2,
  .knowledge-article-content h3,
  .knowledge-article-content h4 {
    margin-top: 2.1rem;
    margin-bottom: 0.75rem;
    line-height: 1.25;
  }

    .knowledge-article-content h2:first-child,
    .knowledge-article-content h3:first-child,
    .knowledge-article-content h4:first-child {
      margin-top: 0;
    }

  .knowledge-article-content p,
  .knowledge-article-content ul,
  .knowledge-article-content ol,
  .knowledge-article-content table,
  .knowledge-article-content figure {
    margin-bottom: 1.25rem;
  }

  .knowledge-article-content ul,
  .knowledge-article-content ol {
    padding-left: 1.35rem;
  }

  .knowledge-article-content img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 1.5rem 0;
    border-radius: var(--radius-md);
  }

  .knowledge-article-content table {
    display: block;
    width: 100%;
    overflow-x: auto;
    border-collapse: collapse;
  }

  .knowledge-article-content th,
  .knowledge-article-content td {
    padding: 0.75rem 0.9rem;
    border: 1px solid #e1e5ec;
    vertical-align: top;
  }

  .knowledge-article-content th {
    background: #f6f8fb;
    font-weight: 700;
  }

  .knowledge-article-content a {
    word-break: break-word;
  }

.knowledge-article-list-empty {
  border-left: 4px solid #d7dee8;
}

.knowledge-side-card {
  position: sticky;
  top: 7rem;
}

  .knowledge-side-card .dbcard__body {
    display: grid;
    gap: 0.85rem;
    padding: 1.25rem;
  }

.knowledge-side-card__back {
  justify-content: center;
  width: 100%;
  margin-top: 0.25rem;
}

@media (max-width: 991px) {
  .knowledge-topic-grid,
  .knowledge-pillar-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .knowledge-side-card {
    position: static;
  }
}

@media (max-width: 600px) {
  .knowledge-hero {
    padding-top: 1.5rem;
  }

  .knowledge-hero__actions .mvc-btn {
    width: 100%;
    justify-content: center;
  }

  .knowledge-topic-grid,
  .knowledge-pillar-grid {
    grid-template-columns: 1fr;
  }

  .knowledge-pillar-card {
    padding: 1rem;
  }

    .knowledge-search,
    .knowledge-pillar-card .dbcard__body,
    .knowledge-topic-card .dbcard__body {
      padding: 1rem;
    }

  .knowledge-topic-card__header {
    display: block;
  }
}

/* ---- Responsive audit: public-site mobile safeguards ---- */
main img {
  max-width: 100%;
  height: auto;
}

@media (max-width: 768px) {
  .responsive-heading,
  .page-hero__title,
  .homepage-hero-title {
    overflow-wrap: anywhere;
  }

  .page-hero__eyebrow {
    max-width: 100%;
    align-items: flex-start;
    line-height: 1.35;
    white-space: normal;
  }

  .page-hero__title {
    font-size: clamp(2.25rem, 10vw, 3.35rem);
  }
}

@media (max-width: 600px) {
  .footer-logo {
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.65rem;
  }

    .footer-logo > img {
      width: min(100%, 240px);
      max-width: 100%;
      height: auto;
    }

  .footer-partner-badge {
    margin-top: 0;
  }

    .footer-partner-badge img {
      display: block;
      width: min(100%, 150px);
      max-width: 100%;
      height: auto;
    }

  .homepage-hero {
    width: 100%;
    min-height: 0;
    margin-right: 0;
    margin-left: 0;
    padding: 5.75rem 1rem 2.4rem;
  }

  body.home-page #Header.homepage-hero {
    padding: 5.75rem 1rem 2.4rem;
  }

  .homepage-hero::before,
  .homepage-hero::after {
    display: none;
    animation: none;
  }

  .homepage-hero-title {
    font-size: clamp(2.2rem, 10.5vw, 2.95rem);
  }

  .homepage-hero-eyebrow {
    max-width: 100%;
    margin-bottom: 1rem;
    line-height: 1.35;
    white-space: normal;
  }

  .homepage-hero-actions {
    margin-top: 1.5rem;
  }

  .homepage-hero-visual {
    display: none;
  }
}

@media (max-width: 375px) {

  .g-recaptcha {
    width: 100%;
    max-width: 304px;
    height: 65px;
    overflow: hidden;
  }

    .g-recaptcha iframe {
      transform: scale(0.84);
      transform-origin: top left;
    }
}

/* Homepage hero positioning for landings without the homepage dashboard. */
body.landing-page #Header.homepage-hero {
  min-height: 0;
  padding: clamp(6.5rem, 9vw, 8rem) max(1.25rem, -660px + 1.25rem + 50vw) clamp(3.2rem, 5vw, 4.75rem);
}

  body.landing-page #Header.homepage-hero > .row {
    min-height: 0;
  }

  body.landing-page #Header.homepage-hero > .row,
  body.landing-page #Header.homepage-hero > .homepage-hero-trust {
    max-width: 1320px;
  }

@media (max-width: 991px) {
  body.landing-page #Header.homepage-hero {
    padding: 7.5rem 1.25rem 3.5rem;
  }
}

@media (max-width: 600px) {
  body.landing-page #Header.homepage-hero {
    width: 100vw;
    max-width: none;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding: 6.7rem 2.5rem 2.65rem;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }
}

/* ERP guide landing: guide + digital business overview hero visual. */
body.landing-page #Header.erp-guide-hero > .row {
  min-height: 35rem;
}

.erp-guide-visual {
  position: relative;
  width: min(100%, 35rem);
  height: 34rem;
  margin: 0 auto;
  isolation: isolate;
}

  .erp-guide-visual::before {
    content: "";
    position: absolute;
    inset: 10% 8% 7%;
    z-index: -2;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 237, 0, 0.22) 0%, rgba(255, 237, 0, 0.08) 38%, transparent 72%);
    filter: blur(10px);
  }

.erp-guide-visual__orbit {
  position: absolute;
  inset: 12% 7% 9%;
  z-index: -1;
  border: 1px dashed rgba(21, 21, 21, 0.16);
  border-radius: 48% 52% 51% 49%;
  transform: rotate(-8deg);
}

.erp-guide-dossier {
  position: absolute;
  top: 15%;
  left: 50%;
  z-index: 2;
  width: min(66%, 20.5rem);
  overflow: hidden;
  border: 1px solid rgba(21, 21, 21, 0.12);
  border-radius: 1.35rem;
  background: #ffffff;
  box-shadow: 0 32px 76px rgba(15, 18, 24, 0.2), 0 10px 26px rgba(15, 18, 24, 0.08);
  transform: translateX(-50%) rotate(-1.25deg);
  animation: erpGuideDossierFloat 7s ease-in-out infinite;
}

.erp-guide-dossier__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.15rem;
  border-bottom: 1px solid rgba(21, 21, 21, 0.08);
  background: #f7f7f4;
  color: #3d4350;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.erp-guide-dossier__brand {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}

  .erp-guide-dossier__brand i {
    width: 0.62rem;
    height: 0.62rem;
    border-radius: 50%;
    background: var(--color-primary);
    box-shadow: 0 0 0 4px rgba(255, 237, 0, 0.2);
  }

.erp-guide-dossier__edition {
  padding: 0.35rem 0.55rem;
  border-radius: var(--radius-pill);
  background: var(--color-primary);
  color: var(--color-text-main);
}

.erp-guide-dossier__body {
  padding: 1.65rem 1.5rem 1.35rem;
}

.erp-guide-dossier__eyebrow {
  display: block;
  margin-bottom: 0.75rem;
  color: #6b7280;
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.erp-guide-dossier__title {
  display: block;
  color: #11151b;
  font-size: clamp(1.75rem, 2.2vw, 2.1rem);
  line-height: 1.04;
  letter-spacing: -0.04em;
  overflow-wrap: anywhere;
}

.erp-guide-dossier__overview {
  display: grid;
  gap: 0.55rem;
  margin-top: 1.65rem;
}

  .erp-guide-dossier__overview span {
    display: grid;
    grid-template-columns: 0.65rem 1fr;
    align-items: center;
    gap: 0.6rem;
    padding: 0.58rem 0.7rem;
    border: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: 0.65rem;
    background: #fafafa;
    color: #3f4652;
    font-size: 0.74rem;
    font-weight: 800;
  }

  .erp-guide-dossier__overview i {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    background: var(--color-primary);
  }

.erp-guide-dossier__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1.35rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(21, 21, 21, 0.09);
  color: #6b7280;
  font-size: 0.72rem;
  font-weight: 750;
}

.erp-guide-dossier__arrow {
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border-radius: 50%;
  background: #151515;
  color: #ffffff;
  font-size: 1rem;
}

.erp-guide-topic {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 0.65rem;
  min-width: 9.6rem;
  padding: 0.7rem 0.78rem;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: 0.9rem;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 16px 36px rgba(15, 18, 24, 0.12);
  backdrop-filter: blur(8px);
  animation: erpGuideTopicFloat 6.4s ease-in-out infinite;
}

.erp-guide-topic__icon {
  display: grid;
  flex: 0 0 auto;
  width: 2.15rem;
  height: 2.15rem;
  place-items: center;
  border-radius: 0.62rem;
  background: rgba(255, 237, 0, 0.3);
  color: #151515;
}

  .erp-guide-topic__icon .icon {
    width: 1.1rem;
    height: 1.1rem;
  }

.erp-guide-topic strong,
.erp-guide-topic small {
  display: block;
  white-space: nowrap;
}

.erp-guide-topic strong {
  color: #151515;
  font-size: 0.78rem;
  line-height: 1.2;
}

.erp-guide-topic small {
  margin-top: 0.18rem;
  color: #727782;
  font-size: 0.62rem;
  line-height: 1.2;
}

.erp-guide-topic--erp {
  top: 8%;
  left: 0;
  animation-delay: -1.2s;
}

.erp-guide-topic--integrations {
  top: 4%;
  right: -1%;
  animation-delay: -3.8s;
}

.erp-guide-topic--custom {
  bottom: 10%;
  left: -2%;
  animation-delay: -2.6s;
}

.erp-guide-topic--insights {
  top: 43%;
  right: -4%;
  animation-delay: -4.9s;
}

.erp-guide-topic--process {
  right: 5%;
  bottom: 3%;
  animation-delay: -0.5s;
}

@keyframes erpGuideDossierFloat {
  0%, 100% {
    transform: translateX(-50%) translateY(0) rotate(-1.25deg);
  }

  50% {
    transform: translateX(-50%) translateY(-8px) rotate(-0.35deg);
  }
}

@keyframes erpGuideTopicFloat {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-6px);
  }
}

@media (max-width: 1199px) {
  .erp-guide-visual {
    height: 31rem;
  }

  .erp-guide-topic {
    min-width: 0;
  }

    .erp-guide-topic small {
      display: none;
    }
}

@media (max-width: 991px) {
  body.landing-page #Header.erp-guide-hero > .row {
    min-height: 0;
  }

  .erp-guide-visual {
    width: min(100%, 38rem);
    height: 31rem;
    margin-top: 0.75rem;
  }

  .erp-guide-topic small {
    display: block;
  }
}

@media (max-width: 600px) {
  .erp-guide-visual {
    width: 100%;
    height: 25.5rem;
    margin-top: 0.5rem;
  }

  .erp-guide-visual__orbit {
    inset: 13% 2% 7%;
  }

  .erp-guide-dossier {
    top: 15%;
    width: min(72%, 16rem);
    border-radius: 1.05rem;
  }

  .erp-guide-dossier__topbar {
    padding: 0.72rem 0.8rem;
    font-size: 0.58rem;
  }

  .erp-guide-dossier__body {
    padding: 1.1rem 1rem 0.9rem;
  }

  .erp-guide-dossier__eyebrow {
    margin-bottom: 0.5rem;
    font-size: 0.55rem;
  }

  .erp-guide-dossier__title {
    font-size: clamp(1.45rem, 7vw, 1.85rem);
  }

  .erp-guide-dossier__overview {
    gap: 0.38rem;
    margin-top: 1rem;
  }

    .erp-guide-dossier__overview span {
      padding: 0.42rem 0.5rem;
      font-size: 0.62rem;
    }

  .erp-guide-dossier__footer {
    margin-top: 0.85rem;
    padding-top: 0.7rem;
    font-size: 0.6rem;
  }

  .erp-guide-dossier__arrow {
    width: 1.65rem;
    height: 1.65rem;
  }

  .erp-guide-topic {
    gap: 0.4rem;
    padding: 0.5rem 0.55rem;
    border-radius: 0.7rem;
  }

  .erp-guide-topic__icon {
    width: 1.65rem;
    height: 1.65rem;
  }

    .erp-guide-topic__icon .icon {
      width: 0.9rem;
      height: 0.9rem;
    }

  .erp-guide-topic strong {
    font-size: 0.65rem;
  }

  .erp-guide-topic small {
    display: none;
  }

  .erp-guide-topic--erp {
    top: 7%;
    left: -1%;
  }

  .erp-guide-topic--integrations {
    top: 4%;
    right: -2%;
  }

  .erp-guide-topic--custom {
    bottom: 9%;
    left: -2%;
  }

  .erp-guide-topic--insights {
    top: 47%;
    right: -3%;
  }

  .erp-guide-topic--process {
    right: 2%;
    bottom: 2%;
  }
}

@media (max-width: 380px) {
  .erp-guide-visual {
    height: 23.5rem;
  }

  .erp-guide-topic--process {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .erp-guide-dossier,
  .erp-guide-topic {
    animation: none;
  }
}

@charset "UTF-8";
/* Generic Debiscom component layer. New or migrated views should opt in with .db-* classes. */

/* ---- Reusable service-page content blocks ---- */
.section-wrap {
  box-sizing: border-box;
  padding: clamp(3.25rem, 7vw, 6rem) 0;
}

.section-wrap--soft {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  padding-right: max(1rem, calc((100vw - 1200px) / 2));
  padding-left: max(1rem, calc((100vw - 1200px) / 2));
  background: linear-gradient(180deg, rgba(247, 248, 250, 0.92), rgba(251, 251, 252, 0.98));
}

.section-wrap--white {
  background: var(--color-bg-white);
}

.section-band {
  box-sizing: border-box;
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  padding: clamp(3.25rem, 7vw, 6rem) 0;
}

.section-inner {
  box-sizing: border-box;
  width: min(1200px, calc(100% - 2rem));
  margin: 0 auto;
}

.section-band--dark {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-xl);
  color: var(--color-text-light);
  background: radial-gradient(circle at 84% 14%, rgba(255, 237, 0, 0.2), transparent 25rem), radial-gradient(circle at 8% 120%, rgba(255, 237, 0, 0.08), transparent 22rem), linear-gradient(135deg, #171717 0%, #080808 100%);
  box-shadow: 0 20px 60px rgba(8, 8, 8, 0.12);
}

  .section-band--dark::after {
    content: '';
    position: absolute;
    width: 22rem;
    height: 22rem;
    right: -9rem;
    bottom: -15rem;
    border-radius: 50%;
    background: rgba(255, 237, 0, 0.08);
    filter: blur(12px);
    pointer-events: none;
  }

.section-header {
  max-width: 760px;
  margin-bottom: 2.25rem;
}

.section-header--centered {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.section-header--dark {
  color: var(--color-text-light);
}

  .section-header--dark p {
    color: rgba(255, 255, 255, 0.72);
  }

.section-header--light {
  color: var(--color-text-light);
}

  .section-header--light p {
    color: rgba(255, 255, 255, 0.72);
  }

.section-header h2 {
  max-width: 18ch;
  margin: 0.65rem 0 0;
  line-height: 1.08;
}

.section-header--centered h2 {
  margin-right: auto;
  margin-left: auto;
}

.section-header p {
  max-width: 60rem;
  margin: 1rem 0 0;
  color: var(--color-text-muted);
  line-height: 1.7;
}

.section-header--centered p {
  margin-right: auto;
  margin-left: auto;
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  color: var(--color-text-muted);
  font-size: 0.88rem;
  font-weight: 850;
  letter-spacing: 0.13em;
  line-height: 1.2;
  text-transform: uppercase;
}

  .eyebrow::before {
    content: '';
    width: 1.45rem;
    height: 0.22rem;
    flex: 0 0 auto;
    border-radius: 99px;
    background: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(255, 237, 0, 0.12);
  }

.section-band--dark .eyebrow, .page-hero--dark .eyebrow {
  color: var(--color-primary);
}

.page-hero__trust {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1.2rem;
  margin-top: 1.6rem;
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.88rem;
}

  .page-hero__trust > span {
    display: inline-flex;
    align-items: center;
    gap: 0.38rem;
  }

  .page-hero__trust .icon-inline {
    color: var(--color-primary);
    font-size: 0.95rem;
  }

.content-grid {
  display: grid;
  gap: 1rem;
}

.content-grid--two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.content-grid--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.content-grid--four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.feature-card, .value-card, .step-card {
  height: 100%;
  padding: 1.55rem;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-lg);
  background: var(--color-bg-white);
  box-shadow: 0 10px 30px rgba(15, 18, 24, 0.055);
}

  .feature-card h3, .value-card h3, .step-card h3 {
    margin: 0.9rem 0 0;
    font-size: 1.08rem;
  }

  .feature-card h3, .value-card h4, .step-card h3 {
    margin: 0.9rem 0 0;
    font-size: 1rem;
    font-weight: 500;
  }

  .feature-card p, .value-card p, .step-card p {
    margin: 0.5rem 0 0;
    color: var(--color-text-muted);
    font-size: 0.94rem;
    line-height: 1.55;
  }

.feature-card, .value-card, .step-card {
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.feature-card {
  display: flex;
  flex-direction: column;
  color: var(--color-text-main);
  text-decoration: none;
}

  .feature-card:hover, .feature-card:focus-visible {
    color: var(--color-text-main);
    transform: translateY(-5px);
    border-color: rgba(21, 21, 21, 0.24);
    box-shadow: 0 18px 38px rgba(15, 18, 24, 0.12);
    outline: none;
  }

.value-card:hover, .value-card:focus-within, .step-card:hover {
  transform: translateY(-4px);
  border-color: rgba(21, 21, 21, 0.22);
  box-shadow: 0 18px 38px rgba(15, 18, 24, 0.11);
}

.value-card, .step-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}

.accent-card, .value-card, .step-card {
  overflow: hidden;
}

  .value-card::before, .step-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 1.55rem;
    width: 3.5rem;
    height: 0.22rem;
    border-radius: 0 0 99px 99px;
    background: var(--color-primary);
  }

.quote-card blockquote {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  margin: 0.75rem 0 0;
}

.quote-card__footer {
  margin-top: auto;
  padding-top: 1rem;
  border-top: 1px solid var(--color-border);
  color: var(--color-text-muted);
  font-size: 0.8rem;
  line-height: 1.4;
}

  .quote-card__footer strong, .quote-card__footer span {
    display: block;
  }

  .quote-card__footer strong {
    color: var(--color-text-main);
    font-size: 0.88rem;
  }

.icon-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 14px;
  background: var(--color-primary);
  color: var(--color-text-main);
  font-size: 1.1rem;
  box-shadow: 0 8px 18px rgba(255, 237, 0, 0.2);
}

.svg-icon-sprite {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

.icon {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.icon-badge svg {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}

.icon-inline {
  display: inline-flex;
  width: 1em;
  height: 1em;
  align-items: center;
  justify-content: center;
  vertical-align: -0.12em;
}

  .icon-inline svg {
    width: 100%;
    height: 100%;
    display: block;
  }

.form-panel {
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-bg-white);
  box-shadow: var(--shadow-card);
}

.advisory-panel {
  margin-inline: auto;
}

  .advisory-panel .erp-advisory-status {
    margin-top: 0;
  }

  .advisory-panel .erp-advisory-wizard, .advisory-panel .erp-advisory-result {
    margin-bottom: 0;
  }

.step-card {
  padding-top: 4.15rem;
}

.step-card__number {
  position: absolute;
  top: 1.35rem;
  left: 1.55rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.4rem;
  height: 2.4rem;
  padding: 0 0.55rem;
  border-radius: 10px;
  background: var(--color-primary);
  color: var(--color-text-main);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  box-shadow: 0 6px 14px rgba(255, 237, 0, 0.2);
}

.cta-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.5rem;
  align-items: center;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border-radius: var(--radius-lg);
  background: var(--color-bg-dark);
  color: var(--color-text-light);
}

  .cta-panel h2 {
    margin: 0;
    color: inherit;
  }

  .cta-panel p {
    max-width: 720px;
    margin: 0.6rem 0 0;
    color: rgba(255,255,255,.72);
    line-height: 1.6;
  }

  .cta-panel .eyebrow {
    color: var(--color-primary);
  }

.section-band--dark .cta-panel {
  position: relative;
  z-index: 1;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

  .section-band--dark .cta-panel p {
    color: rgba(255, 255, 255, 0.72);
  }

  .section-band--dark .cta-panel .mvc-btn {
    white-space: nowrap;
  }

.faq-list {
  display: grid;
  gap: 0.8rem;
  max-width: 900px;
}

.faq-item {
  overflow: hidden;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-md);
  background: var(--color-bg-white);
  box-shadow: 0 8px 24px rgba(15, 18, 24, 0.045);
  transition: border-color 180ms ease, box-shadow 180ms ease;
}

  .faq-item[open] {
    border-color: rgba(21, 21, 21, 0.2);
    box-shadow: 0 14px 30px rgba(15, 18, 24, 0.09);
  }

  .faq-item summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.2rem 1.35rem;
    cursor: pointer;
    list-style: none;
    font-weight: 750;
  }

    .faq-item summary::marker {
      content: '';
    }

    .faq-item summary::-webkit-details-marker {
      display: none;
    }

    .faq-item summary:focus-visible {
      outline: 3px solid rgba(255, 237, 0, 0.55);
      outline-offset: -3px;
    }

.faq-item__icon {
  position: relative;
  flex: 0 0 auto;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background: var(--color-primary-soft);
}

  .faq-item__icon::before, .faq-item__icon::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0.55rem;
    height: 2px;
    border-radius: 99px;
    background: var(--color-text-main);
    transform: translate(-50%, -50%);
    transition: transform 180ms ease;
  }

  .faq-item__icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
  }

.faq-item[open] .faq-item__icon::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

.faq-item p {
  margin: 0;
  padding: 0 1.35rem 1.25rem;
  color: var(--color-text-muted);
  line-height: 1.65;
}

.content-link-grid {
  gap: 1.1rem;
}

.content-link-card {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  padding: 1.55rem;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-lg);
  background: var(--color-bg-white);
  box-shadow: 0 10px 30px rgba(15, 18, 24, 0.055);
  color: var(--color-text-main);
  text-decoration: none;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

  .content-link-card:hover, .content-link-card:focus-visible {
    transform: translateY(-4px);
    border-color: rgba(21, 21, 21, 0.24);
    box-shadow: 0 18px 38px rgba(15, 18, 24, 0.11);
    color: var(--color-text-main);
    outline: none;
  }

  .content-link-card .eyebrow {
    color: var(--color-text-muted);
    font-size: 0.72rem;
  }

  .content-link-card h3 {
    margin: 1rem 0 0;
    font-size: 1.12rem;
  }

  .content-link-card p {
    margin: 0.65rem 0 0;
    color: var(--color-text-muted);
    line-height: 1.6;
  }

.content-link-card__cta {
  margin-top: auto;
  padding-top: 1.2rem;
  color: var(--color-text-main);
  font-size: 0.88rem;
  font-weight: 800;
}

@media (prefers-reduced-motion: reduce) {
  .feature-card, .value-card, .step-card, .faq-item, .faq-item__icon::before, .faq-item__icon::after {
    transition: none;
  }
}

@media (max-width: 991px) {
  .content-grid--four, .content-grid--three {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cta-panel {
    grid-template-columns: 1fr;
  }

  .section-band--dark .cta-panel .mvc-btn {
    justify-self: start;
  }
}

@media (max-width: 600px) {
  .content-grid--two, .content-grid--three, .content-grid--four {
    grid-template-columns: 1fr;
  }

  .section-inner {
    width: calc(100% - 2rem);
  }

  .section-wrap--soft {
    padding-right: 1rem;
    padding-left: 1rem;
  }

  .page-hero__trust {
    display: grid;
    gap: 0.55rem;
  }

  .cta-panel .mvc-btn {
    width: 100%;
    justify-content: center;
  }

  .section-band--dark .cta-panel .mvc-btn {
    justify-self: stretch;
  }
}

.db-section {
  padding: var(--space-8) 0;
  background: var(--color-bg-white);
  color: var(--color-text-main);
}

.db-section--dark {
  border-radius: var(--radius-xl);
  background: radial-gradient(ellipse at 90% 5%, rgba(255, 237, 0, 0.12) 0%, transparent 40%), linear-gradient(145deg, #1c1c1c 0%, #111111 100%);
  color: var(--color-text-light);
  position: relative;
  overflow: hidden;
  padding-left: var(--space-7);
  padding-right: var(--space-7);
}

  .db-section--dark::before {
    content: '';
    position: absolute;
    top: -6rem;
    right: -6rem;
    width: 22rem;
    height: 22rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 237, 0, 0.07) 0%, transparent 70%);
    pointer-events: none;
  }

  .db-section--dark h2,
  .db-section--dark .section-intro,
  .db-section--dark .section-intro p {
    color: var(--color-text-light);
  }

  .db-section--dark .section-eyebrow {
    color: var(--color-primary);
  }

  .db-section--dark .section-intro p {
    color: rgba(248, 248, 248, 0.72);
  }

.db-media {
  display: block;
  max-width: 100%;
  height: auto;
  overflow: hidden;
  border-radius: var(--radius-md);
}

.db-empty-state {
  display: grid;
  justify-items: center;
  gap: var(--space-3);
  padding: var(--space-7) var(--space-5);
  border: 1px dashed var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-bg-light);
  color: var(--color-text-muted);
  text-align: center;
}

  .db-empty-state > :last-child {
    margin-bottom: 0;
  }

/* ---- db-timeline ---- */
.db-timeline {
  display: flex;
  flex-direction: column;
  gap: 0;
  position: relative;
}

  .db-timeline::before {
    content: '';
    position: absolute;
    left: 1.1rem;
    top: 1.4rem;
    bottom: 5rem;
    width: 2px;
    background: linear-gradient(to bottom, var(--color-primary) 0%, rgba(255, 237, 0, 0.15) 100%);
    pointer-events: none;
  }

.db-timeline__item {
  display: flex;
  gap: 1.6rem;
  align-items: flex-start;
  padding: 1.35rem 0 1.35rem 0.15rem;
  border-bottom: 1px solid rgba(21, 21, 21, 0.08);
  transition: background 250ms ease;
  border-radius: var(--radius-sm);
}

  .db-timeline__item:last-child {
    border-bottom: none;
  }

  .db-timeline__item:hover {
    background: rgba(21, 21, 21, 0.025);
  }

.db-timeline__num {
  font-size: 0.72rem;
  font-weight: 800;
  color: var(--color-text-main);
  line-height: 1;
  min-width: 2.2rem;
  height: 2.2rem;
  flex-shrink: 0;
  background: var(--color-primary);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.03em;
  box-shadow: 0 0 0 4px rgba(255, 237, 0, 0.18);
  position: relative;
  z-index: 1;
}

.db-timeline__body {
  flex: 1;
  padding-top: 0.25rem;
}

  .db-timeline__body strong {
    display: block;
    color: var(--color-text-main);
    font-size: 0.92rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 0.4rem;
    font-weight: 700;
  }

  .db-timeline__body p {
    color: var(--color-text-muted);
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.6;
  }

/* Dark-section variant */
.db-section--dark .db-timeline__item {
  border-bottom-color: rgba(255, 255, 255, 0.08);
}

  .db-section--dark .db-timeline__item:hover {
    background: rgba(255, 255, 255, 0.03);
  }

/* ---- Feature highlights list ---- */
.feature-highlights {
  list-style: none;
  padding: 0;
  margin: 1.25rem 0 1.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

  .feature-highlights li {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 0.9rem 1rem;
    border-radius: var(--radius-md);
    background: var(--color-bg-white);
    border: 1px solid var(--color-border);
    border-left: 3px solid var(--color-primary);
    transition: border-color 240ms ease, box-shadow 240ms ease, transform 240ms ease;
  }

    .feature-highlights li:hover {
      border-color: var(--color-primary);
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.07);
      transform: translateX(3px);
    }

.feature-highlights__icon {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: var(--radius-sm);
  background: var(--color-primary);
  color: #111111;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  flex-shrink: 0;
}

.feature-highlights__text {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.feature-highlights--inline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
}

  .feature-highlights--inline li {
    display: block;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

    .feature-highlights--inline li:hover {
      border-color: transparent;
      box-shadow: none;
      transform: none;
    }

  .feature-highlights--inline .feature-highlights__text {
    gap: 0.3rem;
  }

    .feature-highlights--inline .feature-highlights__text strong {
      color: var(--color-text-muted);
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .feature-highlights--inline .feature-highlights__text span {
      color: var(--color-text-main);
      font-size: 1.1rem;
      font-weight: 800;
      line-height: 1.2;
    }

.feature-highlights__text strong {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--color-text-main);
  line-height: 1.3;
}

.feature-highlights__text span {
  font-size: 0.82rem;
  color: var(--color-text-muted);
  line-height: 1.4;
}

.feature-highlights--grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 0.8rem;
}

  .feature-highlights--grid li {
    height: 100%;
    padding: 1rem;
  }

  .feature-highlights--grid .feature-highlights__icon {
    width: 2rem;
    height: 2rem;
    border-radius: var(--radius-sm);
  }

  .feature-highlights--grid p {
    margin: 0.18rem 0 0;
    color: var(--color-text-muted);
    line-height: 1.5;
  }

.feature-highlights--editorial {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  max-width: none;
  margin-top: 2rem;
  counter-reset: guide-outcome;
}

  .feature-highlights--editorial li {
    display: block;
    min-width: 0;
    padding: 0 1.35rem;
    border: 0;
    border-right: 1px solid var(--color-border);
    border-bottom: 0;
    border-radius: 0;
    background: transparent;
    counter-increment: guide-outcome;
  }

    .feature-highlights--editorial li:first-child {
      padding-left: 0;
    }

    .feature-highlights--editorial li:last-child {
      padding-right: 0;
      border-right: 0;
    }

    .feature-highlights--editorial li::before {
      content: "0" counter(guide-outcome);
      display: inline-flex;
      width: 2rem;
      height: 2rem;
      align-items: center;
      justify-content: center;
      border-radius: var(--radius-sm);
      background: var(--color-primary);
      color: var(--color-text-main);
      font-size: 0.76rem;
      font-weight: 800;
      letter-spacing: 0.08em;
    }

    .feature-highlights--editorial li:hover {
      border-color: var(--color-border);
      box-shadow: none;
      transform: none;
    }

  .feature-highlights--editorial p {
    margin: 0.8rem 0 0;
    color: var(--color-text-muted);
    line-height: 1.55;
  }

@media (max-width: 991px) {
  .feature-highlights--editorial {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 2rem;
  }

    .feature-highlights--editorial li,
    .feature-highlights--editorial li:first-child,
    .feature-highlights--editorial li:last-child {
      padding: 1rem 0;
      border-right: 0;
      border-bottom: 1px solid var(--color-border);
    }
}

.db-section--dark .db-timeline__body strong {
  color: var(--color-text-light);
}

.db-section--dark .db-timeline__body p {
  color: rgba(248, 248, 248, 0.68);
}

@media (max-width: 991px) {
  .db-timeline::before {
    display: none;
  }
}

@media (max-width: 600px) {
  .db-timeline__item {
    gap: 1rem;
  }

  .db-timeline::before {
    display: none;
  }

  .feature-highlights--inline {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .feature-highlights--grid {
    grid-template-columns: 1fr;
  }

  .feature-highlights--editorial {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

/* ============================================================
   dbcard herbruikbaar kaartcomponent
   ============================================================ */

/* Block-wrapper voor een groep kaarten */
.dbcard-group {
  display: flex;
  flex-direction: column;
  gap: 1em;
}

/* Block */
.dbcard {
  position: relative;
  display: flex;
  flex-direction: column;
  margin-bottom: 1em;
  overflow: hidden;
  background-color: var(--surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
}

/* Modifiers */
.dbcard--nostyle {
  border: none;
  border-radius: 0;
  box-shadow: none;
}

.dbcard--altbg {
  background-color: var(--surface-soft);
}

.dbcard--left-primary {
  border-left: 5px solid var(--primary);
}

.dbcard--status-border {
  border-right: 7px solid transparent;
}

  .dbcard--status-border[Status="1"] {
    border-right-color: #c0392b;
  }

  .dbcard--status-border[Status="2"] {
    border-right-color: #e67e22;
  }

  .dbcard--status-border[Status="3"] {
    border-right-color: #2ecc71;
  }

/* Element: title */
.dbcard__title {
  font-size: var(--font-size-lg);
  font-weight: 700;
  text-align: left;
  color: var(--ink);
}

/* Element: img */
.dbcard__img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 50px;
  margin: 1em auto;
}

  .dbcard__img img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }

/* Element: header */
.dbcard__header {
  display: flex;
  align-items: center;
  gap: 1em;
  padding: 0.5em;
  font-size: 0.9rem;
  background-color: var(--surface-soft);
  border-bottom: 1px solid var(--line);
}

.dbcard__header-img {
  flex-shrink: 0;
  max-width: 100%;
  margin: 25px;
  overflow: hidden;
  border-radius: 0.5em;
}

  .dbcard__header-img img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }

.dbcard__header-text {
  flex: 1;
  margin: 0;
  color: var(--darkgray);
}

/* Element: body */
.dbcard__body {
  flex: 1;
  margin: 0.5em;
  padding: 0.75em;
  color: var(--text);
  line-height: var(--line-height-base);
}

.dbcard__body--section {
  padding-top: 1em;
  border-top: 1px solid var(--line);
}

.dbcard .text,
.dbcard label,
.dbcard p {
  font-size: 1rem;
  color: var(--text);
}

/* Element: hover-acties */
.dbcard .buttons {
  position: absolute;
  right: 0.5em;
  bottom: 0.5em;
  opacity: 0.5;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.dbcard:hover .buttons {
  opacity: 1;
  transform: translateY(-3px);
}

/* Element: footer */
.dbcard__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5em;
  background-color: var(--surface-soft);
  border-top: 1px solid var(--line);
}

.dbcard__footer-button {
  padding: 0.4em 0.8em;
  font-size: 1.5rem;
  color: var(--black);
  text-decoration: none;
  cursor: pointer;
  background-color: var(--primary);
  border: none;
  border-radius: 0.25em;
  transition: background-color 0.3s ease;
}

  .dbcard__footer-button:hover {
    background-color: var(--highlight);
  }

.dbcard__footer-text {
  font-size: 0.8rem;
  color: var(--darkgray);
}

/* ---- Blog pages ---- */
.blog-page,
.blog-detail {
  color: var(--color-text-main);
}

.blog-hero,
.blog-detail-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(4rem, 8vw, 7rem) 0 var(--space-7);
  background: linear-gradient(135deg, rgba(255, 237, 0, 0.22), rgba(255, 255, 255, 0) 36%), linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-light) 100%);
}

  .blog-hero::before,
  .blog-detail-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0.55;
    background-image: linear-gradient(rgba(21, 21, 21, 0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(21, 21, 21, 0.06) 1px, transparent 1px);
    background-size: 42px 42px;
    pointer-events: none;
  }

.blog-hero__inner,
.blog-detail-hero__grid,
.blog-overview,
.blog-detail-layout {
  position: relative;
  z-index: 1;
}

.blog-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-6);
  align-items: end;
}

.blog-hero__copy {
  max-width: 760px;
  align-self: self-start;
}

.blog-eyebrow,
.blog-featured__label {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: var(--space-3);
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

  .blog-eyebrow::before,
  .blog-featured__label::before {
    content: "";
    width: 2rem;
    height: 3px;
    border-radius: var(--radius-pill);
    background: var(--color-primary);
  }

.blog-hero h1,
.blog-detail-hero h1 {
  max-width: 920px;
  margin: 0;
  font-size: clamp(2.25rem, 5vw, 4.5rem);
  font-weight: 900;
  line-height: 1.04;
}

.blog-hero p,
.blog-detail-hero__copy > p {
  max-width: 760px;
  margin: var(--space-4) 0 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-md);
  line-height: var(--line-height-base);
}

.blog-hero__topics {
  display: flex;
  max-width: 360px;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--space-2);
}

  .blog-hero__topics span,
  .blog-badge,
  .blog-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.35rem 0.75rem;
    border: 1px solid rgba(21, 21, 21, 0.12);
    border-radius: var(--radius-pill);
    background: rgba(255, 255, 255, 0.74);
    color: var(--color-text-main);
    font-size: var(--font-size-xs);
    font-weight: 800;
  }

.blog-overview {
  padding: var(--space-7) 0 var(--space-8);
}

.blog-featured {
  margin-bottom: var(--space-6);
}

.blog-featured__link,
.blog-card__link {
  display: grid;
  height: 100%;
  color: inherit;
  text-decoration: none;
} 

.blog-featured__link {
  grid-template-columns: minmax(240px, 0.72fr) minmax(0, 1.28fr);
  max-width: 1040px;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-bg-white);
  box-shadow: var(--shadow-sm);
  transition: border-color var(--transition-speed) var(--transition-ease), box-shadow var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease);
}

  .blog-featured__link:hover,
  .blog-card:hover {
    border-color: var(--line-strong);
    box-shadow: var(--shadow-card);
    transform: translateY(-3px);
  } 

.blog-featured__media,
.blog-card__media,
.blog-detail-hero__media {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(255, 237, 0, 0.32), rgba(255, 255, 255, 0.1)), var(--color-bg-light);
}

  .blog-featured__media img,
  .blog-card__media img,
  .blog-detail-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 420ms ease;
  }

.blog-featured__link:hover img,
.blog-card:hover img {
  transform: scale(1.035);
}

.blog-featured__content {
  display: flex;
  min-height: 300px;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.5rem, 3vw, 2.5rem);
}

.blog-meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-3);
  align-items: center;
  margin-bottom: var(--space-4);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  font-weight: 700;
}

.blog-featured h2,
.blog-section-heading h2,
.blog-card h3 {
  margin: 0;
  color: var(--color-text-main);
  font-weight: 850;
  line-height: var(--line-height-tight);
}

.blog-featured h2 {
  font-size: clamp(1.55rem, 2.2vw, 2.35rem);
}

.blog-featured p,
.blog-card p {
  margin: var(--space-3) 0 0;
  color: var(--color-text-muted);
  line-height: var(--line-height-base);
}

.blog-featured p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.blog-card__footer,
.blog-back-link,
.blog-link {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.blog-card__footer {
  justify-content: space-between;
  margin-top: auto;
  padding-top: var(--space-4);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  font-weight: 700;
}

.blog-link,
.blog-back-link {
  color: var(--color-text-main);
  font-weight: 850;
}

.blog-section-heading {
  max-width: 660px;
  margin-bottom: var(--space-5);
}

  .blog-section-heading h2 {
    font-size: clamp(1.65rem, 3vw, 2.4rem);
  }

.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}

.blog-card {
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-bg-white);
  box-shadow: var(--shadow-sm);
  transition: border-color var(--transition-speed) var(--transition-ease), box-shadow var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease);
}

.blog-card__link {
  grid-template-rows: 190px 1fr auto;
}

.blog-card__body,
.blog-card__footer {
  padding: var(--space-5);
}

.blog-card__footer {
  border-top: 1px solid var(--color-border);
}

.blog-card h3 {
  font-size: var(--font-size-lg);
}

.blog-empty {
  display: grid;
  place-items: center;
  padding: var(--space-7);
  border: 1px dashed var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-bg-light);
  text-align: center;
}

  .blog-empty .lnr {
    margin-bottom: var(--space-3);
    font-size: 2rem;
  }

  .blog-empty h2 {
    margin-bottom: var(--space-2);
    font-weight: 850;
  }

  .blog-empty p {
    max-width: 560px;
    margin: 0;
    color: var(--color-text-muted);
  }

.blog-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-5);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  font-weight: 700;
}

  .blog-breadcrumb a {
    color: var(--color-text-main);
    text-decoration: none;
  }

.blog-detail-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
  gap: var(--space-6);
  align-items: center;
}

.blog-detail-hero__media {
  /*aspect-ratio: 4 / 3;*/
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}

.blog-detail-layout {
  padding: var(--space-7) 0 var(--space-8);
}

.blog-detail-layout__grid {
  display: grid;
  grid-template-columns: 180px minmax(0, 780px);
  gap: var(--space-6);
  justify-content: center;
  align-items: start;
}

.blog-share {
  position: sticky;
  top: 120px;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  align-items: flex-start;
}

  .blog-share > span {
    margin-bottom: var(--space-1);
    color: var(--color-text-muted);
    font-size: var(--font-size-xs);
    font-weight: 850;
    text-transform: uppercase;
  }

  .blog-share a,
  .blog-share button {
    display: inline-grid;
    width: 2.7rem;
    height: 2.7rem;
    place-items: center;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-bg-white);
    color: var(--color-text-main);
    text-decoration: none;
    transition: border-color var(--transition-speed) var(--transition-ease), background-color var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease);
  }

    .blog-share a:focus-visible,
    .blog-share button:focus-visible {
      outline: 3px solid var(--focus-outline-color);
      outline-offset: 3px;
    }

  .blog-share img {
    width: 1.15rem;
    height: 1.15rem;
    object-fit: contain;
  }

.blog-share__x {
  font-size: var(--font-size-sm);
  font-weight: 900;
  line-height: 1;
}

.blog-share button {
  cursor: pointer;
}

  .blog-share a:hover,
  .blog-share button:hover {
    border-color: var(--line-strong);
    background: var(--color-primary);
    transform: translateY(-2px);
  }

.blog-share__feedback {
  min-height: 1.3rem;
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 700;
}

.blog-article-shell {
  min-width: 0;
}

.blog-content {
  color: var(--color-text-main);
  font-size: 1.05rem;
  line-height: 1.85;
}

  .blog-content > *:first-child {
    margin-top: 0;
  }

  .blog-content h2,
  .blog-content h3,
  .blog-content h4 {
    margin: var(--space-6) 0 var(--space-3);
    color: var(--color-text-main);
    font-weight: 850;
    line-height: var(--line-height-tight);
  }

  .blog-content h2 {
    font-size: clamp(1.65rem, 3vw, 2.25rem);
  }

  .blog-content h3 {
    font-size: var(--font-size-xl);
  }

  .blog-content h4 {
    font-size: var(--font-size-lg);
  }

  .blog-content p,
  .blog-content ul,
  .blog-content ol,
  .blog-content blockquote,
  .blog-content table,
  .blog-content pre {
    margin-bottom: var(--space-4);
  }

  .blog-content a {
    color: var(--color-text-main);
    font-weight: 800;
    text-decoration-color: var(--color-primary-dark);
    text-decoration-thickness: 2px;
    text-underline-offset: 0.18em;
  }

  .blog-content ul,
  .blog-content ol {
    padding-left: var(--space-5);
  }

  .blog-content li + li {
    margin-top: var(--space-2);
  }

  .blog-content blockquote {
    padding: var(--space-4) var(--space-5);
    border-left: 5px solid var(--color-primary);
    border-radius: var(--radius-sm);
    background: var(--color-bg-light);
    color: var(--color-text-main);
    font-size: var(--font-size-md);
    font-weight: 650;
  }

  .blog-content img {
    max-width: 100%;
    height: auto;
    margin: var(--space-4) 0;
    border-radius: var(--radius-sm);
  }

  .blog-content table {
    display: block;
    width: 100%;
    overflow-x: auto;
    border-collapse: collapse;
  }

  .blog-content th,
  .blog-content td {
    padding: 0.85rem 1rem;
    border: 1px solid var(--color-border);
    vertical-align: top;
  }

  .blog-content th {
    background: var(--color-bg-light);
    font-weight: 850;
  }

  .blog-content pre,
  .blog-content code {
    border-radius: var(--radius-sm);
    background: #151515;
    color: #f8f8f8;
  }

  .blog-content code {
    padding: 0.15rem 0.35rem;
  }

  .blog-content pre {
    overflow-x: auto;
    padding: var(--space-4);
  }

    .blog-content pre code {
      padding: 0;
    }

.blog-tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
}

.blog-back-link {
  width: fit-content;
  margin-top: var(--space-6);
  text-decoration: none;
}

@media (max-width: 991px) {
  .blog-hero__inner,
  .blog-featured__link,
  .blog-detail-hero__grid,
  .blog-detail-layout__grid {
    grid-template-columns: 1fr;
  }

  .blog-hero__topics {
    justify-content: flex-start;
  }

  .blog-featured__media {
    aspect-ratio: 2 / 1;
  }

  .blog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .blog-share {
    position: static;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    padding-bottom: var(--space-4);
    border-bottom: 1px solid var(--color-border);
  }

    .blog-share > span {
      width: 100%;
    }
}

@media (max-width: 640px) {
  .blog-hero,
  .blog-detail-hero {
    padding-top: var(--space-7);
  }

  .blog-grid {
    grid-template-columns: 1fr;
  }

  .blog-featured__content,
  .blog-card__body,
  .blog-card__footer {
    padding: var(--space-4);
  }

  .blog-featured__content {
    min-height: 0;
  }

  .blog-card__footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .blog-content {
    font-size: 1rem;
    line-height: 1.75;
  }
}

.lead-magnet {
  --lead-ink: #070b12;
  --lead-muted: #4c586b;
  --lead-line: #d9dee8;
  --lead-soft: #f4f6f8;
  --lead-accent: #ffed00;
  width: min(1220px, calc(100% - 2rem));
  margin: 0 auto;
  padding: clamp(3.75rem, 6vw, 5.5rem) 0 clamp(2.5rem, 4vw, 4rem);
  color: var(--lead-ink);
}

.lead-magnet--embedded {
  width: min(1040px, 100%);
  padding: 1rem 0 2rem;
}

.lead-magnet--embedded-compact {
  padding-top: 0;
}

.lead-magnet--embedded .lead-magnet__hero {
  max-width: none;
  margin: 0 0 1.25rem;
  text-align: left;
}

  .lead-magnet--embedded .lead-magnet__hero h1,
  .lead-magnet--embedded .lead-magnet__hero h2 {
    font-size: clamp(2rem, 4vw, 2.8rem);
    line-height: 1.04;
  }

.lead-magnet--embedded .lead-magnet__intro {
  max-width: 760px;
  margin: .65rem 0 0;
}

.lead-magnet--embedded .lead-magnet__grid {
  grid-template-columns: minmax(0, .72fr) minmax(360px, 1fr);
  gap: 0;
  align-items: stretch;
  overflow: hidden;
  border: 1px solid #cfd5df;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 16px 38px rgba(15, 23, 42, .08);
  min-height: 635px;
}

.lead-magnet--embedded .lead-magnet__preview,
.lead-magnet--embedded .lead-magnet__viewer {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.lead-magnet--embedded .lead-magnet__viewer {
  flex: 1 1 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.lead-magnet--embedded .lead-magnet__viewer-surface {
  flex: 1 1 0;
  height: 0;
  min-height: 520px;
  overflow: hidden;
}

.lead-magnet--embedded .lead-magnet__preview-empty {
  flex: 1 1 0;
  min-height: 520px;
  border: 0;
  border-radius: 0;
}

.lead-magnet--embedded .lead-magnet__gate {
  position: static;
  align-self: stretch;
  padding: 1rem;
  border: 0;
  border-left: 1px solid #cfd5df;
  border-radius: 0;
  box-shadow: none;
}

  .lead-magnet--embedded .lead-magnet__gate::before {
    display: none;
  }

.lead-magnet__hero {
  max-width: 900px;
  margin: 0 auto clamp(1.2rem, 2.5vw, 2rem);
  text-align: center;
  padding: 0;
}

.lead-magnet__eyebrow, .lead-magnet__meta {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
}

.lead-magnet__eyebrow {
  margin-bottom: .85rem;
  padding: .36rem .8rem;
  border-radius: 999px;
  background: #eef1f4;
  font-size: .8rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

  .lead-magnet__eyebrow .lnr {
    font-size: 1rem;
  }

.lead-magnet__hero h1,
.lead-magnet__hero h2 {
  margin: 0;
  font-size: clamp(2.55rem, 6vw, 4.65rem);
  font-weight: 900;
  line-height: .98;
  letter-spacing: -.025em;
}

.lead-magnet__intro {
  max-width: 790px;
  margin: .85rem auto 0;
  color: #253044;
  font-size: clamp(1rem, 2vw, 1.15rem);
  line-height: 1.55;
}

.lead-magnet__rich-content {
  width: 100%;
  margin: 0 0 clamp(1.5rem, 3vw, 2.5rem);
}

  /* Keep configured rich content in the LeadMagnet's typography system while
     still allowing the shared section/card components to provide structure. */
  .lead-magnet__rich-content > p {
    max-width: 790px;
    margin: .85rem 0 0;
    color: var(--color-text-muted, var(--lead-muted));
    font-size: clamp(1rem, 2vw, 1.15rem);
    line-height: 1.55;
  }

    .lead-magnet__rich-content > p.lead {
      margin-top: 0;
      color: var(--lead-ink);
      font-size: clamp(1.1rem, 2.2vw, 1.3rem);
      line-height: 1.4;
    }

  .lead-magnet__rich-content > h2 {
    max-width: 790px;
    margin: 0 0 .85rem;
    color: var(--lead-ink);
    font-size: clamp(2rem, 3.8vw, 3rem);
    font-weight: 900;
    letter-spacing: -.025em;
    line-height: 1.08;
  }

  .lead-magnet__rich-content > p.mt-5 {
    max-width: 790px;
    margin-top: clamp(1.75rem, 3vw, 2.5rem) !important;
  }

  .lead-magnet__rich-content .section-header {
    max-width: 790px;
    margin: clamp(2rem, 4vw, 3rem) 0 clamp(1.5rem, 3vw, 2.25rem);
  }

    .lead-magnet__rich-content .section-header h2 {
      max-width: 22ch;
      color: var(--lead-ink);
      font-size: clamp(2rem, 3.8vw, 3rem);
      font-weight: 900;
      letter-spacing: -.025em;
    }

    .lead-magnet__rich-content .section-header p {
      max-width: 790px;
      margin-top: .85rem;
      color: var(--color-text-muted, var(--lead-muted));
      font-size: clamp(1rem, 2vw, 1.15rem);
      line-height: 1.55;
    }

  .lead-magnet__rich-content > :first-child {
    margin-top: 0;
  }

  .lead-magnet__rich-content > :last-child {
    margin-bottom: 0;
  }

.lead-magnet__intro > :last-child {
  margin-bottom: 0;
}

.lead-magnet__meta {
  margin-top: .75rem;
  color: #667085;
  font-size: .88rem;
  font-weight: 700;
}

.lead-magnet__mobile-switch, .lead-magnet__mobile-preview-cta {
  display: none;
}

.lead-magnet__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(370px, .85fr);
  gap: clamp(1.25rem, 2.5vw, 2rem);
  align-items: start;
}

.lead-magnet__preview {
  padding: 0;
}

.lead-magnet__preview, .lead-magnet__gate {
  min-width: 0;
}

.lead-magnet__kicker {
  color: #667085;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.lead-magnet__viewer {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #cfd5df;
  border-radius: 14px;
  background: #eef1f4;
  box-shadow: 0 16px 38px rgba(15, 23, 42, .08);
}

.lead-magnet__viewer-surface {
  position: relative;
  height: clamp(700px, 82vh, 920px);
}

.lead-magnet__pdf-canvas, .lead-magnet__pdf-canvas.k-pdf-viewer {
  width: 100%;
  height: 100%;
  border: 0;
}

.lead-magnet__viewer-loader {
  display: none;
  position: absolute;
  inset: 0;
  z-index: 3;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: .65rem;
  padding: 2rem;
  background: rgba(247, 247, 244, .95);
  text-align: center;
}

  .lead-magnet__viewer-loader strong {
    margin-top: .25rem;
    font-size: 1.05rem;
  }

  .lead-magnet__viewer-loader > span:last-child {
    max-width: 19rem;
    color: var(--lead-muted);
    font-size: .9rem;
  }

.lead-magnet__viewer-surface.is-loading .lead-magnet__viewer-loader {
  display: flex;
}

.lead-magnet__viewer-surface.is-error .lead-magnet__viewer-loader {
  display: flex;
}

.lead-magnet__viewer-surface.is-error .document-preview-loader-spinner {
  display: none;
}

.lead-magnet__viewer-surface.is-error .lead-magnet__viewer-loader strong {
  color: #9f1d2a;
}

.lead-magnet__preview-empty {
  display: grid;
  min-height: 640px;
  place-items: center;
  padding: 2rem;
  border: 1px solid #cfd5df;
  border-radius: 14px;
  background: var(--lead-soft);
  color: var(--lead-muted);
  text-align: center;
}

.lead-magnet__viewer .k-pdf-viewer .k-toolbar {
  display: none;
  position: static;
  bottom: auto;
  width: auto;
  min-height: 38px;
  padding: 3px 7px;
  border-width: 0 0 1px;
  border-color: #d9dee8;
  background: rgba(255, 255, 255, .97);
}

  .lead-magnet__viewer .k-pdf-viewer .k-toolbar .k-button {
    min-width: 30px;
    min-height: 30px;
    padding: 4px 6px;
  }

.lead-magnet__viewer .lead-magnet__zoom-mode-control {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

.lead-magnet__viewer .k-pdf-viewer .k-pdf-viewer-pages {
  padding-bottom: 0;
}

.lead-magnet__viewer .k-pdf-viewer .k-page {
  margin-block: 10px;
  box-shadow: 0 4px 14px rgba(15, 23, 42, .12);
}

.lead-magnet__gate {
  position: sticky;
  top: 7rem;
  align-self: start;
  overflow: hidden;
  padding: clamp(1.1rem, 1.8vw, 1.45rem);
  border: 1px solid var(--lead-line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 16px 38px rgba(15, 23, 42, .08);
}

  .lead-magnet__gate::before {
    position: absolute;
    inset: 0 0 auto;
    height: 4px;
    background: var(--lead-accent);
    content: "";
  }

.lead-magnet__gate-heading {
  margin-bottom: .75rem;
}

  .lead-magnet__gate-heading h2, .lead-magnet__success h2 {
    margin: .2rem 0 .35rem;
    font-size: clamp(1.35rem, 2.2vw, 1.7rem);
    font-weight: 900;
    line-height: 1.14;
  }

  .lead-magnet__gate-heading p {
    margin: 0;
    color: var(--lead-muted);
    font-size: .88rem;
    line-height: 1.4;
  }

.lead-magnet__form {
  display: grid;
  gap: .58rem;
}

.lead-magnet__form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .52rem .6rem;
}

.lead-magnet__field {
  display: grid;
  align-content: start;
  gap: .2rem;
}

.lead-magnet__field--wide {
  grid-column: 1 / -1;
}

.lead-magnet__field label {
  color: #253044;
  font-size: .79rem;
  font-weight: 750;
  line-height: 1.25;
}

.lead-magnet__field input {
  box-sizing: border-box;
  width: 100%;
  height: 40px;
  min-height: 40px;
  padding: .5rem .65rem;
  border: 1px solid #c8ced8;
  border-radius: 8px;
  background: #fff;
  color: var(--lead-ink);
  font-size: .91rem;
  transition: border-color 140ms ease, box-shadow 140ms ease;
}

  .lead-magnet__field input:hover {
    border-color: #9ca6b5;
  }

  .lead-magnet__field input:focus {
    border-color: #111827;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(255, 237, 0, .38);
  }

  .lead-magnet__field input.input-validation-error {
    border-color: #b4232f;
    box-shadow: 0 0 0 3px rgba(180, 35, 47, .1);
  }

.lead-magnet__privacy {
  display: grid;
  grid-template-columns: 1.2rem 1fr;
  gap: .35rem .5rem;
  align-items: start;
  padding: .55rem .65rem;
  border-radius: 9px;
  background: var(--lead-soft);
  color: #455166;
  font-size: .79rem;
  line-height: 1.35;
}

  .lead-magnet__privacy input[type="checkbox"] {
    width: 1.15rem;
    height: 1.15rem;
    margin: .12rem 0 0;
    accent-color: #111827;
  }

  .lead-magnet__privacy label {
    cursor: pointer;
  }

  .lead-magnet__privacy .field-validation-error {
    grid-column: 1 / -1;
  }

.lead-magnet__honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.lead-magnet__recaptcha {
  max-width: 100%;
  overflow: hidden;
}

.lead-magnet__submit, .lead-magnet__download {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: .65rem;
  width: 100%;
  min-height: 42px;
  border: 0;
}

  .lead-magnet__submit[disabled] {
    opacity: .68;
    cursor: wait;
  }

.lead-magnet__submit-status, .lead-magnet__expiry {
  margin: 0;
  color: var(--lead-muted);
  font-size: .82rem;
  line-height: 1.5;
}

.lead-magnet__message {
  display: flex;
  align-items: flex-start;
  gap: .55rem;
  margin-bottom: .75rem;
  padding: .65rem .75rem;
  border-radius: 9px;
  font-size: .84rem;
}

.lead-magnet__message--error, .lead-magnet__validation {
  border: 1px solid #ffd0d5;
  background: #fff1f2;
  color: #9f1d2a;
}

  .lead-magnet__validation:empty {
    display: none;
  }

.lead-magnet .field-validation-error {
  display: block;
  padding-top: .08rem;
  background: transparent;
  color: #a51b24;
  font-size: .73rem;
  line-height: 1.25;
}

.lead-magnet .field-validation-valid {
  display: none;
}

.lead-magnet__success {
  display: grid;
  justify-items: start;
  gap: .7rem;
  padding: .35rem 0;
}

.lead-magnet__success-icon {
  display: grid;
  width: 2.8rem;
  height: 2.8rem;
  place-items: center;
  border-radius: 50%;
  background: #eaf8ef;
  color: #17713c;
  font-size: 1.5rem;
}

.lead-magnet--unavailable {
  max-width: 720px;
  padding-top: 7rem;
  text-align: center;
}

@media (max-width: 991px) {
  .lead-magnet {
    width: min(760px, calc(100% - 2rem));
  }

  .lead-magnet--embedded {
    width: 100%;
  }

  .lead-magnet__grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .lead-magnet--embedded .lead-magnet__grid {
    grid-template-columns: 1fr;
    gap: 1rem;
    align-items: start;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .lead-magnet--embedded .lead-magnet__preview,
  .lead-magnet--embedded .lead-magnet__viewer {
    display: block;
  }

  .lead-magnet--embedded .lead-magnet__viewer {
    border: 1px solid #cfd5df;
    border-radius: 14px;
    box-shadow: 0 16px 38px rgba(15, 23, 42, .08);
  }

  .lead-magnet--embedded .lead-magnet__viewer-surface {
    height: clamp(360px, 48vh, 520px);
    min-height: 360px;
  }

  .lead-magnet--embedded .lead-magnet__preview-empty {
    min-height: 360px;
    border: 1px solid #cfd5df;
    border-radius: 14px;
  }

  .lead-magnet--embedded .lead-magnet__gate {
    align-self: start;
    border: 1px solid #cfd5df;
    border-radius: 14px;
    box-shadow: 0 16px 38px rgba(15, 23, 42, .08);
  }

  .lead-magnet__gate {
    position: static;
  }

  .lead-magnet__viewer-surface {
    height: clamp(620px, 76vh, 780px);
  }

  .lead-magnet__preview-empty {
    min-height: 560px;
  }
}

@media (max-width: 600px) {
  .lead-magnet {
    width: calc(100% - 1rem);
    padding: 4.25rem 0 2.5rem;
  }

  .lead-magnet--embedded {
    width: 100%;
    padding: .5rem 0 1.5rem;
  }

    .lead-magnet--embedded .lead-magnet__viewer-surface {
      height: clamp(300px, 44vh, 390px);
      height: clamp(300px, 44svh, 390px);
      min-height: 600px;
    }

    .lead-magnet--embedded .lead-magnet__preview-empty {
      min-height: 300px;
    }

    .lead-magnet--embedded .lead-magnet__viewer,
    .lead-magnet--embedded .lead-magnet__gate {
      border: 0;
      border-radius: 0;
      box-shadow: none;
    }

  .lead-magnet__hero {
    padding-inline: .5rem;
  }

  .lead-magnet__interaction {
    overflow: hidden;
    border: 1px solid var(--lead-line);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .08);
  }

  .lead-magnet.is-mobile-ready .lead-magnet__mobile-switch {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .25rem;
    padding: .35rem;
    border-bottom: 1px solid var(--lead-line);
    background: var(--lead-soft);
  }

  .lead-magnet__mobile-switch button {
    min-width: 0;
    min-height: 40px;
    padding: .45rem .55rem;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #536074;
    font-size: .79rem;
    font-weight: 800;
  }

    .lead-magnet__mobile-switch button[aria-selected="true"] {
      background: #fff;
      color: var(--lead-ink);
      box-shadow: 0 2px 8px rgba(15, 23, 42, .09);
    }

    .lead-magnet__mobile-switch button:focus-visible {
      outline: 3px solid rgba(255, 237, 0, .65);
      outline-offset: 1px;
    }

  .lead-magnet__grid {
    display: block;
  }

  .lead-magnet.is-mobile-ready:not(.is-mobile-form) .lead-magnet__gate,
  .lead-magnet.is-mobile-ready.is-mobile-form .lead-magnet__preview {
    display: none;
  }

  .lead-magnet__viewer {
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }

  .lead-magnet__gate {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    padding: 1rem .9rem 1.1rem;
  }

  .lead-magnet__gate-heading .lead-magnet__kicker {
    display: none;
  }

  .lead-magnet__viewer-surface {
    height: clamp(390px, 52vh, 480px);
    height: clamp(390px, 52svh, 480px);
  }

  .lead-magnet__preview-empty {
    min-height: 390px;
    border: 0;
    border-radius: 0;
  }

  .lead-magnet__viewer .k-pdf-viewer .k-toolbar {
    min-height: 36px;
    padding: 2px 4px;
  }

    .lead-magnet__viewer .k-pdf-viewer .k-toolbar .k-button {
      min-width: 30px;
      min-height: 30px;
    }

  .lead-magnet__viewer .k-pdf-viewer .k-page {
    margin-block: 8px;
  }

  .lead-magnet.is-mobile-ready .lead-magnet__mobile-preview-cta {
    display: flex;
    width: calc(100% - 1.4rem);
    min-height: 44px;
    margin: .7rem;
    justify-content: center;
    align-items: center;
    gap: .6rem;
    border: 0;
  }

  .lead-magnet__form-grid {
    grid-template-columns: 1fr;
  }

  .lead-magnet__field--wide {
    grid-column: auto;
  }

  .lead-magnet__field input {
    height: 44px;
    min-height: 44px;
  }

  .lead-magnet__submit, .lead-magnet__download {
    min-height: 44px;
  }

  .lead-magnet__recaptcha {
    transform-origin: left top;
  }
}

@media (max-width: 390px) {
  .lead-magnet__recaptcha {
    width: 100%;
    transform: scale(.88);
    margin-bottom: -9px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lead-magnet * {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}

.downloads-page {
  width: min(1120px, calc(100% - 2rem));
  margin: 0 auto;
  padding: clamp(2.75rem, 4.5vw, 4rem) 0 clamp(2.75rem, 4.5vw, 4rem);
  color: var(--lead-ink, #070b12);
}

.downloads-hero {
  max-width: 760px;
  margin-bottom: clamp(1.5rem, 2.8vw, 2.25rem);
}

.downloads-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  margin-bottom: 1rem;
  padding: .42rem .78rem;
  border-radius: 999px;
  background: #eef1f4;
  color: #344054;
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.downloads-hero h1 {
  margin: 0;
  font-size: clamp(2.6rem, 6vw, 5rem);
  font-weight: 950;
  letter-spacing: -.055em;
  line-height: .98;
}

.downloads-hero p {
  max-width: 680px;
  margin: 1.15rem 0 0;
  color: #4c586b;
  font-size: clamp(1rem, 1.7vw, 1.18rem);
  line-height: 1.6;
}

.downloads-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.downloads-card {
  min-width: 0;
}

.downloads-card__link {
  display: flex;
  min-height: 310px;
  height: 100%;
  flex-direction: column;
  padding: clamp(1.35rem, 2.5vw, 1.8rem);
  overflow: hidden;
  border: 1px solid #d9dee8;
  border-radius: 18px;
  background: #fff;
  color: #070b12;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .07);
  text-decoration: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

  .downloads-card__link:hover,
  .downloads-card__link:focus-visible {
    border-color: #aeb7c5;
    color: #070b12;
    box-shadow: 0 20px 44px rgba(15, 23, 42, .12);
    text-decoration: none;
    transform: translateY(-3px);
  }

  .downloads-card__link:focus-visible {
    outline: 3px solid rgba(255, 237, 0, .7);
    outline-offset: 3px;
  }

.downloads-card__icon {
  display: grid;
  width: 2.75rem;
  height: 2.75rem;
  margin-bottom: 1.15rem;
  place-items: center;
  border-radius: 12px;
  background: #ffed00;
  font-size: 1.25rem;
}

.downloads-card__type {
  margin-bottom: .45rem;
  color: #667085;
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.downloads-card h2 {
  margin: 0;
  font-size: clamp(1.45rem, 2.6vw, 2rem);
  font-weight: 900;
  letter-spacing: -.035em;
  line-height: 1.08;
}

.downloads-card p {
  display: -webkit-box;
  margin: .8rem 0 1.4rem;
  overflow: hidden;
  color: #4c586b;
  font-size: .96rem;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.downloads-card__footer {
  display: flex;
  margin-top: auto;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.downloads-card__meta,
.downloads-card__cta {
  display: inline-flex;
  align-items: center;
  gap: .42rem;
  font-size: .82rem;
  font-weight: 800;
}

.downloads-card__meta {
  color: #667085;
}

.downloads-card__cta {
  margin-left: auto;
  color: #070b12;
}

  .downloads-card__cta .lnr {
    transition: transform .18s ease;
  }

.downloads-card__link:hover .downloads-card__cta .lnr,
.downloads-card__link:focus-visible .downloads-card__cta .lnr {
  transform: translateX(4px);
}

.downloads-empty {
  padding: 2.5rem;
  border: 1px solid #d9dee8;
  border-radius: 18px;
  background: #f4f6f8;
  color: #4c586b;
  text-align: center;
}

.downloads-detail-nav {
  width: min(1220px, calc(100% - 2rem));
  position: relative;
  z-index: 1;
  margin: 2rem auto 0;
}

  .downloads-detail-nav + .lead-magnet {
    padding-top: clamp(1.5rem, 3vw, 2.5rem);
  }

  .downloads-detail-nav a {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: #4c586b;
    font-size: .88rem;
    font-weight: 800;
    text-decoration: none;
  }

    .downloads-detail-nav a:hover,
    .downloads-detail-nav a:focus-visible {
      color: #070b12;
      text-decoration: underline;
    }

@media (max-width: 760px) {
  .downloads-page {
    width: calc(100% - 1rem);
    padding: 2.5rem 0;
  }

  .downloads-grid {
    grid-template-columns: 1fr;
  }

  .downloads-card__link {
    min-height: 280px;
  }

  .downloads-detail-nav {
    width: calc(100% - 1rem);
    margin-bottom: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .downloads-card__link,
  .downloads-card__cta .lnr {
    transition: none !important;
  }
}

.booking-body main.container-fluid { padding: 0; }

.booking-page,
.booking-page--compact {
  --bk-ink: var(--color-text-main);
  --bk-muted: var(--color-text-muted);
  --bk-line: var(--color-border);
  --bk-accent: var(--color-primary);
  --bk-dark: var(--color-bg-dark);
  --bk-surface: var(--color-bg-white);
  --bk-soft: var(--color-bg-light);
  --booking-scroll-offset: 6.25rem;
  --booking-gap: clamp(.9rem, 1.7vw, 1.35rem);
  font-family: var(--font-family-base);
}

.booking-page {
  min-height: 70vh;
  background: linear-gradient(180deg, var(--bk-soft), var(--bk-surface) 40rem);
}

.booking-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(260px, .55fr);
  align-items: end;
  gap: clamp(1.5rem, 4vw, 4rem);
  padding-top: clamp(2.5rem, 4.5vw, 4.5rem);
  padding-bottom: clamp(1.25rem, 2.5vw, 2rem);
}

.booking-hero__copy { max-width: 850px; }
.booking-hero h1 { max-width: 900px; margin: .7rem 0 1rem; color: var(--bk-ink); font-size: clamp(2.2rem, 5vw, 4.3rem); line-height: 1.05; letter-spacing: -.04em; }
.booking-hero__copy > p,
.booking-service-intro { max-width: 760px; margin: 0; color: var(--bk-muted); font-size: clamp(1rem, 1.45vw, 1.16rem); line-height: 1.68; }
.booking-service-intro > :last-child { margin-bottom: 0; }

.booking-eyebrow { display: inline-flex; align-items: center; gap: .5rem; color: var(--bk-muted); font-size: .76rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.booking-eyebrow::before { width: 1.4rem; height: .22rem; border-radius: 99px; background: var(--bk-accent); box-shadow: 0 0 0 3px rgba(255, 237, 0, .12); content: ""; }
.booking-eyebrow .lnr + * { margin-left: 0; }

.booking-hero__assurance { display: grid; gap: .7rem; padding: 1.1rem; border: 1px solid var(--bk-line); border-radius: var(--radius-md); background: rgba(255,255,255,.76); box-shadow: var(--shadow-sm); }
.booking-hero__assurance span { display: flex; align-items: center; gap: .6rem; color: var(--bk-ink); font-size: .86rem; font-weight: 650; }
.booking-hero__assurance i,
.booking-service-facts i { padding: .2rem; border-radius: 50%; background: var(--bk-accent); color: var(--bk-ink); }

.booking-service-facts { display: flex; flex-wrap: wrap; gap: .55rem 1rem; margin-top: .85rem; color: var(--bk-ink); font-size: .8rem; font-weight: 750; }
.booking-service-facts span { display: inline-flex; align-items: center; gap: .4rem; }

.booking-shell { padding-bottom: clamp(3rem, 6vw, 6rem); }
.booking-embed { width: 100%; max-width: 920px; margin-inline: auto; }
.booking-flow,
.booking-selection,
.booking-create { display: grid; gap: var(--booking-gap); }
.booking-flow,
.booking-selection,
.booking-create,
.booking-step,
.booking-content-grid,
.booking-summary { width: 100%; min-width: 0; }
.booking-flow { position: relative; }

.booking-step,
.booking-success,
.booking-empty { padding: clamp(1.2rem, 2.25vw, 1.8rem); border: 1px solid var(--bk-line); border-radius: var(--radius-lg); background: var(--bk-surface); box-shadow: var(--shadow-card); }

.booking-step__heading { display: flex; align-items: flex-start; gap: .85rem; margin: 0 0 1rem; padding: 0; }
.booking-step__number { display: grid; flex: 0 0 32px; width: 32px; height: 32px; place-items: center; border-radius: 9px; background: var(--bk-accent); color: var(--bk-ink); font-weight: 800; box-shadow: 0 5px 12px rgba(255,237,0,.2); }
.booking-flow h2,
.booking-flow h3 { padding-top: 0; }
.booking-step__heading h2 { margin: 0 0 .22rem; color: var(--bk-ink); font-size: clamp(1.18rem, 1.8vw, 1.48rem); line-height: 1.2; }
.booking-step__heading p { margin: 0; color: var(--bk-muted); font-size: .88rem; line-height: 1.45; }

.booking-services { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .85rem; }
.booking-service { position: relative; display: flex; min-height: 155px; flex-direction: column; padding: 1.15rem; border: 1px solid var(--bk-line); border-radius: var(--radius-md); background: #fff; color: var(--bk-ink); text-align: left; cursor: pointer; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.booking-service:hover { transform: translateY(-2px); border-color: var(--line-strong); box-shadow: var(--shadow-card); }
.booking-service.is-selected { border-color: var(--bk-ink); background: var(--color-primary-soft); box-shadow: 0 0 0 3px rgba(255,237,0,.4); }
.booking-service__check { position: absolute; top: .9rem; right: .9rem; color: var(--bk-ink); font-size: 1.25rem; opacity: 0; }
.booking-service.is-selected .booking-service__check { opacity: 1; }
.booking-service__title { padding-right: 1.5rem; font-size: 1.04rem; font-weight: 800; line-height: 1.32; }
.booking-service__description { margin-top: .5rem; color: var(--bk-muted); font-size: .84rem; line-height: 1.48; }
.booking-service__meta { display: flex; align-items: center; gap: .32rem; margin-top: auto; padding-top: .75rem; color: var(--bk-muted); font-size: .76rem; font-weight: 650; }

.booking-moment-part { min-width: 0; }
.booking-date-nav { display: flex; align-items: center; justify-content: space-between; margin-bottom: .75rem; color: var(--bk-ink); font-size: .82rem; font-weight: 800; }
.booking-icon-button { display: grid; width: 40px; height: 40px; place-items: center; border: 1px solid var(--bk-line); border-radius: var(--radius-sm); background: #fff; color: var(--bk-ink); }
.booking-dates { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: .5rem; }
.booking-date { display: flex; min-width: 0; min-height: 64px; flex-direction: column; align-items: center; justify-content: center; gap: .18rem; border: 1px solid var(--bk-line); border-radius: var(--radius-sm); background: #fff; color: var(--bk-ink); cursor: pointer; }
.booking-date span { color: var(--bk-muted); font-size: .66rem; letter-spacing: .07em; text-transform: uppercase; }
.booking-date strong { font-size: .9rem; }
.booking-date i { width: 4px; height: 4px; border-radius: 50%; background: var(--bk-ink); }
.booking-date:hover:not(:disabled),
.booking-date.is-selected { border-color: var(--bk-ink); background: var(--bk-accent); box-shadow: 0 0 0 2px rgba(255,237,0,.25); }
.booking-date.is-selected span { color: var(--bk-ink); }
.booking-date:disabled { opacity: .36; cursor: not-allowed; }

.booking-moment-part--times { margin-top: 1.25rem; padding-top: 1.15rem; border-top: 1px solid var(--bk-line); }
.booking-times-title { margin: 0 0 .65rem; color: var(--bk-ink); font-size: 1rem; }
.booking-slots { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .55rem; }
.booking-slot { min-width: 0; min-height: 46px; border: 1px solid var(--bk-line); border-radius: var(--radius-sm); background: #fff; color: var(--bk-ink); font-weight: 700; transition: transform .15s ease, background .15s ease; }
.booking-slot:hover,
.booking-slot.is-selected { transform: translateY(-1px); border-color: var(--bk-ink); background: var(--bk-accent); color: var(--bk-ink); box-shadow: 0 0 0 2px rgba(255,237,0,.25); }
.booking-back-link { display: none; align-items: center; gap: .35rem; margin: 0 0 .7rem; padding: 0; border: 0; background: transparent; color: var(--bk-ink); font: inherit; font-size: .8rem; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }

.booking-no-slots,
.booking-empty { display: grid; place-items: center; padding: 1.7rem; color: var(--bk-muted); text-align: center; }
.booking-no-slots .lnr,
.booking-empty > .lnr { margin-bottom: .55rem; color: var(--bk-ink); font-size: 1.8rem; }

.booking-content-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(285px, .55fr); align-items: start; gap: var(--booking-gap); }
.booking-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem .9rem; }
.booking-field { display: flex; min-width: 0; flex-direction: column; gap: .35rem; }
.booking-field--wide { grid-column: 1 / -1; }
.booking-field label { color: var(--bk-ink); font-size: .8rem; font-weight: 700; }
.booking-field input,
.booking-field textarea { width: 100%; padding: .7rem .78rem; border: 1px solid var(--bk-line); border-radius: var(--radius-sm); outline: none; background: #fff; color: var(--bk-ink); font: inherit; transition: border-color .15s, box-shadow .15s; }
.booking-field input:focus,
.booking-field textarea:focus { border-color: var(--bk-ink); box-shadow: 0 0 0 3px rgba(255,237,0,.5); }
.booking-field .field-validation-error,
.booking-validation { color: #b42318; font-size: .76rem; }
.booking-validation { margin-bottom: .75rem; }
.booking-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.booking-recaptcha { position: relative; min-height: 78px; margin-top: .8rem; }
.booking-recaptcha__status { display: inline-flex; min-width: 304px; min-height: 78px; align-items: center; gap: .65rem; padding: .85rem 1rem; border: 1px solid var(--bk-line); border-radius: var(--radius-sm); background: var(--bk-soft); color: var(--bk-muted); font-size: .78rem; font-weight: 650; }
.booking-recaptcha__spinner { width: 20px; height: 20px; flex: 0 0 20px; border: 3px solid var(--bk-line); border-top-color: var(--bk-ink); border-radius: 50%; animation: booking-spin .8s linear infinite; }
.booking-recaptcha.is-ready .booking-recaptcha__status { display: none; }

.booking-summary { padding: 1.35rem; border-radius: var(--radius-lg); background: var(--bk-dark); color: #fff; box-shadow: var(--shadow-md); }
.booking-summary .booking-eyebrow { color: var(--bk-accent); }
.booking-summary .booking-eyebrow::before { display: none; }
.booking-summary h3 { margin: .45rem 0 1.05rem; color: #fff; font-size: 1.18rem; }
.booking-summary__moment { display: flex; align-items: flex-start; gap: .65rem; padding: .8rem 0; border-top: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); }
.booking-summary__moment .lnr,
.booking-summary__meta i { color: var(--bk-accent); }
.booking-summary__moment span:not(.lnr) { color: #fff; }
.booking-summary__meta { display: flex; flex-wrap: wrap; gap: .7rem; margin: .8rem 0; color: rgba(255,255,255,.78); font-size: .76rem; }
.booking-summary__meta span { display: flex; align-items: center; gap: .3rem; }
.booking-submit { width: 100%; justify-content: center; }
.booking-submit:disabled { opacity: .45; cursor: not-allowed; }
.booking-summary__privacy { margin: .75rem 0 0; color: rgba(255,255,255,.62); font-size: .66rem; line-height: 1.45; }
.booking-summary__change { margin: 0 0 .7rem; padding: 0; border: 0; background: none; color: inherit; font-size: .76rem; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }

.booking-message { display: flex; align-items: flex-start; gap: .65rem; padding: .9rem 1rem; border: 1px solid #fecdca; border-radius: 11px; background: #fef3f2; color: #912018; }
.booking-message--warning { border-color: var(--color-primary-dark); background: var(--color-primary-soft); color: var(--bk-ink); }
.booking-request-error { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; }
.booking-request-error__reload { padding: .55rem .75rem; border: 1px solid currentColor; border-radius: var(--radius-sm); background: transparent; color: inherit; font: inherit; font-size: .76rem; font-weight: 800; white-space: nowrap; }

.booking-loader[hidden] { display: none; }
.booking-loader { position: fixed; z-index: 1100; right: 1rem; bottom: 1rem; display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: .5rem; width: min(92vw, 420px); padding: .78rem .9rem; border: 1px solid rgba(255,255,255,.16); border-radius: 11px; background: var(--bk-dark); color: #fff; box-shadow: var(--shadow-md); }
.booking-loader__spinner { width: 21px; height: 21px; border: 3px solid rgba(255,255,255,.25); border-top-color: var(--bk-accent); border-radius: 50%; animation: booking-spin .75s linear infinite; }
.booking-loader strong { color: #fff; }
.booking-loader [data-booking-loader-text] { color: rgba(255,255,255,.78); font-size: .78rem; }
.booking-flow.is-loading .booking-selection,
.booking-flow.is-loading .booking-create { pointer-events: none; opacity: .68; }
@keyframes booking-spin { to { transform: rotate(360deg); } }

.booking-success { width: 100%; max-width: 920px; margin: auto; padding: clamp(1.4rem, 3.2vw, 2.5rem); text-align: left; }
.booking-success__header { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 1rem; padding: 0; }
.booking-success__icon { display: grid; width: 64px; height: 64px; place-items: center; border-radius: 50%; background: var(--bk-accent); color: var(--bk-ink); font-size: 2.05rem; box-shadow: 0 0 0 7px rgba(255,237,0,.14); }
.booking-success h2 { margin: .35rem 0 .25rem; color: var(--bk-ink); font-size: clamp(1.65rem, 3.1vw, 2.45rem); line-height: 1.12; letter-spacing: -.025em; }
.booking-success__header p { max-width: 650px; margin: 0; color: var(--bk-muted); line-height: 1.55; }
.booking-success__details { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 1px; margin: 1.35rem 0; overflow: hidden; border: 1px solid var(--bk-line); border-radius: 13px; background: var(--bk-line); }
.booking-success__details > div { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: .95rem 1rem; background: var(--bk-soft); }
.booking-success__details span { margin-bottom: .3rem; color: var(--bk-muted); font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }
.booking-success__details strong { color: var(--bk-ink); font-size: .9rem; }
.booking-success__details small { margin-top: .2rem; color: var(--bk-muted); }
.booking-success__meeting { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.1rem; border-radius: 13px; background: var(--bk-dark); color: #fff; }
.booking-success__meeting > div { display: flex; align-items: center; gap: .75rem; }
.booking-success__meeting > div > .lnr { display: grid; width: 38px; height: 38px; flex: 0 0 38px; place-items: center; border-radius: 50%; background: var(--bk-accent); color: var(--bk-ink); }
.booking-success__meeting p { display: flex; flex-direction: column; gap: .15rem; margin: 0; }
.booking-success__meeting strong { color: #fff; }
.booking-success__meeting small { color: rgba(255,255,255,.7); }
.booking-success__staff { display: flex; align-items: center; gap: 1rem; margin: 1rem 0 0; padding: 1rem; border: 1px solid var(--bk-line); border-radius: 13px; background: #fff; }
.booking-success__staff img { width: 70px; height: 70px; flex: 0 0 70px; border-radius: 50%; object-fit: cover; }
.booking-success__staff > div { display: flex; min-width: 0; flex-direction: column; }
.booking-success__staff span { margin-bottom: .2rem; color: var(--bk-muted); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.booking-success__staff strong { color: var(--bk-ink); }
.booking-success__staff small,
.booking-success__staff a { margin-top: .12rem; color: var(--bk-muted); font-size: .78rem; }
.booking-success__staff p { margin: .45rem 0 0; color: var(--bk-muted); font-size: .8rem; line-height: 1.5; white-space: pre-line; }
.booking-success .booking-success__note { margin-top: 1rem; font-size: .78rem; }

/* Compact mode is a purpose-built embedded wizard. */
.booking-page--compact { min-height: 0; background: transparent; }
.booking-compact-shell { padding-top: 1.25rem; padding-bottom: 1.25rem; }
.booking-flow--compact { width: 100%; min-width: 0; gap: 0; overflow: hidden; border: 1px solid var(--bk-line); border-radius: var(--radius-lg); background: #fff; box-shadow: var(--shadow-card); }
.booking-flow--compact.booking-flow--complete { overflow: visible; border: 0; background: transparent; box-shadow: none; }
.booking-compact-intro { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .8rem 1.2rem; overflow: hidden; padding: 1.05rem 1.15rem 1.15rem; border-radius: 0; background: radial-gradient(circle at 84% 14%, rgba(255, 237, 0, .18), transparent 18rem), linear-gradient(135deg, #171717 0%, #080808 100%); color: var(--color-text-light); }
.booking-compact-intro::after { position: absolute; right: 0; bottom: 0; left: 0; height: 3px; background: linear-gradient(90deg, var(--bk-accent), rgba(255,237,0,.35) 42%, transparent 88%); content: ""; }
.booking-compact-intro h2 { margin: .3rem 0 .25rem; color: #fff; font-size: clamp(1.3rem, 2.3vw, 1.65rem); line-height: 1.15; }
.booking-compact-intro__description { color: rgba(255,255,255,.76); font-size: .84rem; line-height: 1.45; }
.booking-compact-intro__description > :first-child { margin-top: 0; }
.booking-compact-intro__description > :last-child { margin-bottom: 0; }
.booking-compact-intro .booking-eyebrow { color: var(--bk-accent); }
.booking-compact-intro .booking-service-facts { align-content: center; margin: 0; color: rgba(255,255,255,.88); }
.booking-compact-intro .booking-service-facts i { background: var(--bk-accent); color: var(--bk-ink); }

.booking-compact-wizard { position: relative; width: 100%; min-width: 0; max-width: 100%; padding: .8rem 1rem 1rem; background: #fff; }
.booking-progress { --booking-progress-dot: 1.75rem; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 0 0 .8rem; padding: 0 0 .75rem; border-bottom: 1px solid var(--bk-line); list-style: none; }
.booking-progress--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.booking-progress--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.booking-progress li { position: relative; min-width: 0; }
.booking-progress li:not(:last-child)::after { position: absolute; z-index: 0; top: calc(var(--booking-progress-dot) / 2); left: calc(50% + var(--booking-progress-dot) / 2 + .3rem); right: calc(-50% + var(--booking-progress-dot) / 2 + .3rem); height: 2px; background: var(--bk-line); content: ""; transform: translateY(-50%); }
.booking-progress li.is-complete::after { background: var(--bk-dark); }
.booking-progress button { position: relative; z-index: 1; display: grid; width: 100%; min-width: 0; min-height: 44px; grid-template-rows: var(--booking-progress-dot) 1.05rem; justify-items: center; align-content: start; gap: .3rem; padding: 0 .2rem; border: 0; background: transparent; color: var(--bk-muted); font: inherit; font-size: .7rem; font-weight: 700; line-height: 1.05rem; text-align: center; }
.booking-progress button:not(:disabled) { color: var(--bk-ink); cursor: pointer; }
.booking-progress button:not(:disabled):hover b { text-decoration: underline; text-underline-offset: 3px; }
.booking-progress button span { display: grid; width: var(--booking-progress-dot); height: var(--booking-progress-dot); place-items: center; border: 1px solid var(--bk-line); border-radius: 50%; background: #fff; color: var(--bk-muted); font-size: .7rem; line-height: 1; }
.booking-progress li.is-complete button span { border-color: var(--bk-dark); background: var(--bk-dark); color: #fff; }
.booking-progress li.is-current button span { border-color: var(--bk-ink); background: var(--bk-accent); color: var(--bk-ink); box-shadow: 0 0 0 3px rgba(255,237,0,.18); }
.booking-progress li.is-current button b { color: var(--bk-ink); }
.booking-progress b { width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.booking-flow--compact .booking-selection,
.booking-flow--compact .booking-create { width: 100%; min-width: 0; max-width: 100%; gap: 0; }
.booking-flow--compact .booking-step { width: 100%; min-width: 0; max-width: 100%; padding: .25rem 0 0; border: 0; border-radius: 0; background: #fff; color: var(--bk-ink); box-shadow: none; }
.booking-flow--compact .booking-step__heading { margin-bottom: .75rem; }
.booking-flow--compact .booking-step__number { width: 29px; height: 29px; flex-basis: 29px; }
.booking-flow--compact .booking-step__heading h2 { font-size: 1.15rem; }
.booking-flow--compact .booking-step__heading p { font-size: .8rem; }
.booking-flow--compact .booking-date-nav,
.booking-flow--compact .booking-times-title,
.booking-flow--compact .booking-back-link,
.booking-flow--compact .booking-field label { color: var(--bk-ink); }
.booking-flow--compact .booking-step__heading p,
.booking-flow--compact .booking-no-slots { color: var(--bk-muted); }
.booking-flow--compact .booking-services { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.booking-flow--compact .booking-service { min-height: 0; padding: .85rem; }
.booking-flow--compact .booking-content-grid { width: 100%; min-width: 0; max-width: 100%; grid-template-columns: minmax(0, 1fr); gap: .7rem; }
.booking-flow--compact .booking-form-grid { min-width: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem .75rem; }
.booking-flow--compact .booking-field input,
.booking-flow--compact .booking-field textarea { border-color: var(--bk-line); background: #fff; color: var(--bk-ink); padding: .62rem .7rem; }
.booking-flow--compact .booking-field input.input-validation-error,
.booking-flow--compact .booking-field textarea.input-validation-error { border-color: #b42318; box-shadow: 0 0 0 2px rgba(180,35,24,.1); }
.booking-flow--compact .booking-field textarea { min-height: 82px; }
.booking-flow--compact .booking-recaptcha { width: 100%; min-width: 0; margin-top: .65rem; }
.booking-flow--compact .booking-moment-part--times { margin-top: .85rem; padding-top: .8rem; }
.booking-flow--compact .booking-slots { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .45rem; }
.booking-flow--compact .booking-slot { min-height: 43px; }
.booking-flow--compact .booking-back-link { display: inline-flex; }
.booking-flow--compact .booking-message { color: #912018; }
.booking-flow--compact .booking-message--warning { color: var(--bk-ink); }

.booking-summary--compact { display: grid; width: 100%; min-width: 0; max-width: 100%; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .5rem .8rem; margin-top: .15rem; padding: .8rem .9rem; border: 1px solid rgba(255,255,255,.12); border-radius: var(--radius-md); background: linear-gradient(135deg, #171717 0%, #080808 100%); color: #fff; box-shadow: none; }
.booking-summary--compact .booking-eyebrow,
.booking-summary--compact h3 { display: none; }
.booking-summary--compact .booking-summary__moment { grid-column: 1; padding: 0; border: 0; }
.booking-summary--compact .booking-summary__moment .lnr,
.booking-summary--compact .booking-summary__meta i { color: var(--bk-accent); }
.booking-summary--compact .booking-summary__moment span:not(.lnr),
.booking-summary--compact .booking-summary__meta { color: rgba(255,255,255,.76); }
.booking-summary--compact .booking-summary__meta { grid-column: 1; margin: 0; }
.booking-summary--compact .booking-summary__change { grid-column: 2; grid-row: 1 / span 2; margin: 0; color: var(--bk-accent); }
.booking-summary--compact .booking-submit { grid-column: 1 / -1; margin-top: .15rem; }
.booking-summary--compact .booking-summary__privacy { grid-column: 1 / -1; margin: .2rem 0 0; color: rgba(255,255,255,.62); }

.booking-flow--compact[data-current-step="1"] .booking-step--moment,
.booking-flow--compact[data-current-step="1"] .booking-create,
.booking-flow--compact[data-current-step="2"] .booking-step--services,
.booking-flow--compact[data-current-step="2"] .booking-moment-part--times,
.booking-flow--compact[data-current-step="2"] .booking-create,
.booking-flow--compact[data-current-step="3"] .booking-step--services,
.booking-flow--compact[data-current-step="3"] .booking-moment-part--dates,
.booking-flow--compact[data-current-step="3"] .booking-create,
.booking-flow--compact[data-current-step="4"] .booking-selection { display: none; }

.booking-flow--compact .booking-loader { position: absolute; z-index: 3; top: .55rem; right: .75rem; bottom: auto; width: auto; max-width: calc(100% - 1.5rem); padding: .5rem .7rem; grid-template-columns: auto auto 1fr; border-color: rgba(255,255,255,.18); background: var(--bk-dark); color: #fff; box-shadow: var(--shadow-sm); }
.booking-flow--compact .booking-loader__spinner { width: 18px; height: 18px; }
.booking-flow--compact.is-loading .booking-progress { visibility: hidden; }
.booking-flow--compact .booking-success { padding: 1.35rem 1rem; border-radius: var(--radius-md); box-shadow: var(--shadow-sm); }

.booking-landing-embed { width: 100%; max-width: 1100px; margin-inline: auto; }

@media (min-width: 992px) {
  .booking-flow--full .booking-summary { position: sticky; top: var(--booking-scroll-offset); }
  .booking-flow--full .booking-step--moment { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(290px, .75fr); align-items: start; gap: 0 1.25rem; }
  .booking-flow--full .booking-step--moment > .booking-step__heading { grid-column: 1 / -1; }
  .booking-flow--full .booking-moment-part--times { height: 100%; margin: 0; padding: 0 0 0 1.25rem; border-top: 0; border-left: 1px solid var(--bk-line); }
  .booking-flow--full .booking-slots { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 991px) {
  .booking-hero { grid-template-columns: 1fr; }
  .booking-hero__assurance { grid-template-columns: repeat(3, 1fr); }
  .booking-services { grid-template-columns: 1fr 1fr; }
  .booking-content-grid { grid-template-columns: 1fr; }
  .booking-summary { position: static; }
  .booking-slots { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 767px) {
  .booking-page, .booking-page--compact { --booking-scroll-offset: 7.5rem; --booking-gap: .8rem; }
  .booking-hero { gap: 1.15rem; padding-top: 2.2rem; padding-bottom: 1rem; }
  .booking-hero h1 { letter-spacing: -.025em; }
  .booking-hero__assurance { grid-template-columns: 1fr; }
  .booking-step { padding: 1rem; border-radius: var(--radius-md); }
  .booking-services { grid-template-columns: 1fr; }
  .booking-service { min-height: 130px; }
  .booking-dates { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .booking-date { min-height: 58px; }
  .booking-slots { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .booking-form-grid { grid-template-columns: 1fr; }
  .booking-field--wide { grid-column: auto; }
  .booking-summary { border-radius: var(--radius-md); }
  .booking-success__header { grid-template-columns: 1fr; gap: .8rem; }
  .booking-success__icon { width: 54px; height: 54px; font-size: 1.75rem; }
  .booking-success__details { grid-template-columns: 1fr; }
  .booking-success__details > div { border-bottom: 1px solid var(--bk-line); }
  .booking-success__meeting { align-items: stretch; flex-direction: column; }
  .booking-success__meeting .mvc-btn { justify-content: center; }
  .booking-success__staff { align-items: flex-start; }
  .booking-success__staff img { width: 58px; height: 58px; flex-basis: 58px; }
  .booking-request-error { grid-template-columns: auto minmax(0, 1fr); }
  .booking-request-error__reload { grid-column: 1 / -1; justify-self: start; margin-left: 1.75rem; }
  .booking-recaptcha { max-width: 100%; overflow: hidden; transform-origin: left top; }
  .booking-loader { right: .65rem; bottom: .65rem; grid-template-columns: auto 1fr; }
  .booking-loader strong { display: none; }
  .booking-compact-intro { grid-template-columns: 1fr; gap: .6rem; padding: .8rem .85rem; }
  .booking-compact-intro h2 { font-size: clamp(1.2rem, 6vw, 1.45rem); }
  .booking-compact-intro__description { font-size: .8rem; line-height: 1.42; }
  .booking-compact-intro .booking-service-facts { justify-content: flex-start; }
  .booking-flow--compact { border-radius: var(--radius-md); }
  .booking-compact-wizard { padding: .75rem .8rem .85rem; }
  .booking-progress { margin-bottom: .7rem; padding-bottom: .65rem; }
  .booking-progress button { padding-inline: .1rem; font-size: .67rem; }
  .booking-flow--compact .booking-services { grid-template-columns: 1fr; }
  .booking-flow--compact .booking-slots { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .booking-flow--compact .booking-form-grid { grid-template-columns: minmax(0, 1fr); }
  .booking-summary--compact { padding: .75rem .8rem; }
}

@media (max-width: 370px) {
  .booking-dates { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .booking-flow--compact .booking-dates { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .booking-slots,
  .booking-flow--compact .booking-slots { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .booking-progress { --booking-progress-dot: 1.65rem; }
  .booking-progress button { min-height: 42px; gap: .25rem; font-size: .63rem; }
  .booking-recaptcha { margin-bottom: -12px; transform: scale(.84); }
  .booking-summary--compact { gap: .45rem .55rem; }
  .booking-summary--compact .booking-summary__change { font-size: .7rem; }
}

@media (prefers-reduced-motion: reduce) {
  .booking-service,
  .booking-slot { transition: none; }
  .booking-loader__spinner { animation-duration: 1.5s; }
}

/* ---- Testimonial pages ---- */
.testimonial-list {
    padding-bottom: var(--space-8);
}

.testimonial-detail h1,
.testimonial-detail h2,
.testimonial-detail h3,
.testimonial-card__name {
    letter-spacing: 0;
}

.testimonial-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 100%;
    overflow: hidden;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-bg-white);
    box-shadow: var(--shadow-sm);
    transition: border-color var(--transition-speed) var(--transition-ease),
        box-shadow var(--transition-speed) var(--transition-ease),
        transform var(--transition-speed) var(--transition-ease);
}

.testimonial-card:hover,
.testimonial-card:focus-within {
    transform: translateY(-2px);
    border-color: var(--line-strong);
    box-shadow: var(--shadow-card);
}

.testimonial-card__media {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--color-bg-light);
}

.testimonial-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testimonial-card__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: var(--space-4);
    padding: var(--space-5);
}

/* Quote leads the card with an elegant, subtle quotation mark */
.testimonial-card__quote {
    position: relative;
    margin: 0;
    padding: var(--space-5) 0 0;
    color: var(--color-text-main);
}

.testimonial-card__quote::before {
    content: "\201C";
    position: absolute;
    top: -0.35em;
    left: -0.02em;
    color: var(--color-primary-dark);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 3rem;
    line-height: 1;
    opacity: 0.55;
    pointer-events: none;
}

.testimonial-card__quote p {
    margin-bottom: 0;
    color: inherit;
    font-size: var(--font-size-md);
    line-height: var(--line-height-base);
}

/* Scannable client / company meta block */
.testimonial-card__meta {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    padding-top: var(--space-3);
    border-top: 1px solid var(--color-border);
}

.testimonial-card__name {
    margin: 0;
    font-size: var(--font-size-md);
    font-weight: 800;
    line-height: 1.25;
}

.testimonial-card__role {
    margin: 0;
    color: var(--color-text-muted);
    font-size: var(--font-size-sm);
    font-weight: 600;
}

.testimonial-card__description {
    margin: 0;
    color: var(--color-text-muted);
    line-height: var(--line-height-base);
}

.testimonial-card__footer {
    margin-top: auto;
    padding-top: var(--space-2);
}

.testimonial-detail .blockquote {
    position: relative;
    max-width: 52rem;
    margin: 0 auto;
    padding: var(--space-6) var(--space-6) var(--space-5);
    border-left: 4px solid var(--color-primary);
    border-radius: var(--radius-md);
    background: var(--color-bg-light);
    color: var(--color-text-main);
    box-shadow: var(--shadow-sm);
}

.testimonial-detail .blockquote::before {
    content: "\201C";
    position: absolute;
    top: 0.1em;
    left: 0.35em;
    color: var(--color-primary-dark);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 3.5rem;
    line-height: 1;
    opacity: 0.5;
    pointer-events: none;
}

.testimonial-detail .blockquote p {
    max-width: none;
    margin-bottom: 0;
    color: inherit;
    font-size: var(--font-size-md);
    font-weight: 500;
    line-height: var(--line-height-base);
}

.testimonial-detail .blockquote-footer {
    margin-top: var(--space-3);
    color: var(--color-text-muted);
    font-size: var(--font-size-sm);
    font-weight: 700;
}

.testimonial-detail {
    padding-bottom: var(--space-8);
}

.testimonial-detail-hero {
    margin: var(--space-6) 0 var(--space-5);
    padding: var(--space-6);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background:
        linear-gradient(135deg, rgba(255, 237, 0, 0.14), rgba(255, 255, 255, 0) 48%),
        var(--color-bg-white);
    box-shadow: var(--shadow-sm);
}

.testimonial-detail-hero a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    padding: var(--space-4);
    border-radius: var(--radius-sm);
    background: var(--color-bg-white);
}

.testimonial-detail-hero a:focus-visible {
    outline: 3px solid var(--focus-outline-color);
    outline-offset: 4px;
}

.testimonial-detail-hero img {
    max-height: 8rem;
    object-fit: contain;
}

.testimonial-detail > section {
    /*padding: var(--space-7) 0;*/
    border-top: 1px solid var(--color-border);
}

.testimonial-detail > section:first-of-type {
    /*padding-top: var(--space-6);*/
    border-top: 0;
}

.testimonial-detail h2,
.testimonial-detail h3 {
    margin-bottom: var(--space-4);
    font-weight: 800;
    line-height: var(--line-height-tight);
}

.testimonial-detail p {
    max-width: 68ch;
    color: var(--color-text-muted);
    line-height: var(--line-height-base);
}

/* Keep prose centered when it sits in a centered/text-centered column */
.testimonial-detail .text-center p {
    margin-left: auto;
    margin-right: auto;
}

.testimonial-detail .img-container {
    border-radius: var(--radius-md);
}

.testimonial-detail .img-container img {
    border-radius: var(--radius-md);
}

.testimonial-detail #Achievements ul.list1,
.testimonial-detail #Achievements ul.list2 {
    display: grid;
    gap: var(--space-4);
    padding: 0;
}

.testimonial-detail #Achievements ul.list1 > li,
.testimonial-detail #Achievements ul.list2 > li {
    padding: var(--space-4);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-bg-white);
    box-shadow: var(--shadow-sm);
}

.testimonial-detail #Achievements ul.list1 > li::before,
.testimonial-detail #Achievements ul.list2 > li::before {
    content: none;
}

.testimonial-detail #Achievements li strong {
    display: inline-block;
    margin-bottom: var(--space-2);
    color: var(--color-text-main);
    line-height: 1.35;
}

.testimonial-detail #Achievements li p:last-child,
.testimonial-detail section p:last-child {
    margin-bottom: 0;
}

.testimonial-cta {
    margin-top: var(--space-5);
    padding: var(--space-7);
    border: 1px solid rgba(255, 237, 0, 0.34);
    border-radius: var(--radius-md);
    background: linear-gradient(135deg, var(--color-bg-dark), var(--color-bg-darker));
    color: var(--color-text-light);
    box-shadow: var(--shadow-md);
}

.testimonial-cta h4,
.testimonial-cta p {
    color: inherit;
}

.testimonial-cta h4 {
    max-width: 32ch;
    margin-right: auto;
    margin-left: auto;
    font-weight: 800;
}

.testimonial-cta p {
    max-width: 62ch;
    margin-right: auto;
    margin-left: auto;
    color: rgba(248, 248, 248, 0.82);
}

.testimonial-cta a:not(.mvc-btn) {
    color: var(--color-primary);
}

/* Testimonial story refresh */
.testimonial-overview {
    padding: clamp(3.5rem, 7vw, 6.5rem) 0 var(--space-8);
}

.testimonial-overview-header {
    max-width: 48rem;
    margin: 0 auto clamp(2rem, 5vw, 4rem);
    text-align: center;
}

.testimonial-overview-header h1 {
    margin: var(--space-3) auto var(--space-4);
    font-size: clamp(2rem, 5vw, 3.4rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: 0;
}

.testimonial-overview-header p {
    margin: 0 auto;
    color: var(--color-text-muted);
    font-size: var(--font-size-md);
    line-height: var(--line-height-base);
}

.testimonial-badge {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    padding: 0.35rem 0.75rem;
    border: 1px solid rgba(216, 199, 0, 0.28);
    border-radius: var(--radius-pill);
    background: rgba(255, 237, 0, 0.16);
    color: var(--color-text-main);
    font-size: var(--font-size-xs);
    font-weight: 800;
    line-height: 1.2;
}

.testimonial-card__name {
    margin: 0;
    color: var(--color-text-main);
    font-weight: 800;
    line-height: var(--line-height-tight);
    letter-spacing: 0;
}

.testimonial-card__quote,
.testimonial-detail .blockquote {
    position: relative;
    margin: 0;
    padding: var(--space-5);
    border: 0;
    border-radius: var(--radius-sm);
    background:
        linear-gradient(90deg, rgba(255, 237, 0, 0.24), rgba(255, 255, 255, 0.78) 42%),
        #fffef7;
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
    color: var(--color-text-main);
}

.testimonial-card__quote::before,
.testimonial-detail .blockquote::before {
    content: "\201C";
    position: absolute;
    top: var(--space-4);
    left: var(--space-4);
    z-index: 0;
    width: 2.15rem;
    height: 2.15rem;
    border-radius: 50%;
    background: var(--color-primary);
    color: var(--color-text-main);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 3rem;
    line-height: 1.05;
    opacity: 1;
    text-align: center;
    pointer-events: none;
}

.testimonial-card__quote p,
.testimonial-detail .blockquote p {
    position: relative;
    z-index: 1;
    max-width: 48rem;
    margin: 0;
    padding-left: var(--space-6);
    color: inherit;
    font-size: clamp(1.1rem, 2vw, 1.45rem);
    font-weight: 700;
    line-height: 1.35;
}

.testimonial-detail .blockquote {
    max-width: none;
    padding: var(--space-6);
    border-left: 6px solid var(--color-primary);
    text-align: left;
}

.testimonial-detail .blockquote::before {
    font-size: 3.25rem;
    box-shadow: 0 8px 20px rgba(21, 21, 21, 0.1);
}

.testimonial-detail .blockquote p {
    max-width: 46rem;
}

.testimonial-detail .blockquote-footer {
    padding-left: var(--space-6);
    color: var(--color-text-main);
    font-weight: 700;
}

.testimonial-card__description {
    margin: 0;
    color: var(--color-text-muted);
    line-height: var(--line-height-base);
}

.testimonial-list {
    display: grid;
    gap: 0;
    padding-top: 0;
    padding-bottom: 0;
    overflow: hidden;
    border: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.07);
}

.testimonial-card {
    display: grid;
    grid-template-columns: minmax(12rem, 18rem) minmax(0, 1fr);
    min-height: 0;
    overflow: hidden;
    border: 0;
    border-bottom: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.testimonial-card:last-child {
    border-bottom: 0;
}

.testimonial-card:hover,
.testimonial-card:focus-within {
    transform: none;
    background: rgba(255, 253, 245, 0.74);
    box-shadow: none;
}

.testimonial-card__media {
    aspect-ratio: auto;
    min-height: 100%;
}

.testimonial-card__body {
    gap: var(--space-4);
    padding: clamp(1.5rem, 3vw, 2.5rem);
}

.testimonial-card__quote {
    max-width: 56rem;
    padding: var(--space-4) var(--space-5);
    border-left: 4px solid var(--color-primary);
    box-shadow: none;
}

.testimonial-card__quote::before {
    top: var(--space-3);
    left: var(--space-4);
    width: 1.65rem;
    height: 1.65rem;
    font-size: 2.25rem;
}

.testimonial-card__quote p {
    padding-left: var(--space-5);
    font-size: var(--font-size-base);
    font-weight: 700;
}

.testimonial-card__meta {
    padding-top: 0;
    border-top: 0;
}

.testimonial-card__role {
    color: var(--color-text-muted);
}

.testimonial-card__footer {
    margin-top: var(--space-2);
}

.testimonial-detail {
    padding-bottom: var(--space-8);
}

.testimonial-detail-hero {
    margin: var(--space-6) 0 var(--space-7);
    padding: clamp(1.5rem, 4vw, 3rem);
    border: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: var(--radius-md);
    background: linear-gradient(135deg, #fff8c9 0%, var(--color-bg-white) 42%, #f8f8f4 100%);
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.08);
}

.testimonial-detail-hero__layout {
    align-items: center;
}

.testimonial-detail-hero__copy {
    max-width: 44rem;
}

.testimonial-detail-hero h1 {
    margin: var(--space-3) 0 var(--space-4);
    color: var(--color-text-main);
    font-size: clamp(2rem, 5vw, 3.35rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0;
}

.testimonial-detail-hero p {
    margin: 0;
    color: var(--color-text-muted);
    font-size: var(--font-size-md);
    line-height: var(--line-height-base);
}

.testimonial-detail-hero__logo {
    justify-self: end;
    width: 100%;
    max-width: 18rem;
    padding: var(--space-5);
    border-radius: var(--radius-sm);
    background: var(--color-bg-white);
    box-shadow: var(--shadow-sm);
}

.testimonial-detail-hero a {
    display: block;
    padding: 0;
    border-radius: 0;
    background: transparent;
}

.testimonial-detail-hero img {
    width: 100%;
    max-height: 9rem;
    object-fit: contain;
}

.testimonial-detail > section {
    /*padding: clamp(2.5rem, 5vw, 4.5rem) 0;*/
    border-top: 0;
}

.testimonial-story-intro {
    overflow: hidden;
    padding: clamp(2.5rem, 5.5vw, 4.5rem);
    border: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: var(--radius-md);
    background:
        linear-gradient(135deg, rgba(255, 237, 0, 0.12), rgba(255, 255, 255, 0) 42%),
        rgba(255, 255, 255, 0.86);
    box-shadow: 0 22px 64px rgba(15, 23, 42, 0.07);
}

.testimonial-story-intro__copy-row,
.testimonial-story-intro__quote-row {
    --bs-gutter-x: 0;
    margin-right: 0;
    margin-left: 0;
}

.testimonial-story-intro__copy-row {
    max-width: 58rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.testimonial-story-intro__copy-row p {
    max-width: 44rem;
}

.testimonial-story-intro__quote-row {
    margin-top: var(--space-6) !important;
}

.testimonial-story-intro__quote {
    flex: 0 0 100%;
    max-width: 56rem;
    padding-right: 0;
    padding-left: 0;
    margin-right: auto;
    margin-left: auto;
    text-align: left !important;
}

.testimonial-story-intro h2 {
    max-width: 26ch;
}

.testimonial-story-intro .blockquote {
    max-width: 100%;
    padding: clamp(1.75rem, 4vw, 2.75rem);
}

.testimonial-detail h2,
.testimonial-detail h3 {
    color: var(--color-text-main);
}

.testimonial-detail .img-container,
.testimonial-detail .img-container img {
    border-radius: var(--radius-sm);
}

.testimonial-detail .img-fluid.shadow {
    box-shadow: 0 18px 50px rgba(15, 23, 42, 0.12) !important;
}

.testimonial-detail #Achievements {
    position: relative;
    padding: clamp(2rem, 5vw, 4rem);
    border-radius: var(--radius-md);
    background:
        linear-gradient(180deg, rgba(255, 253, 245, 0.96), rgba(255, 255, 255, 0.9)),
        var(--color-bg-white);
    box-shadow: inset 0 0 0 1px rgba(21, 21, 21, 0.06);
}

.testimonial-detail #Achievements h3 {
    max-width: 34rem;
}

.testimonial-detail #Achievements ul.list1,
.testimonial-detail #Achievements ul.list2 {
    gap: var(--space-3);
}

.testimonial-detail #Achievements ul.list1 > li,
.testimonial-detail #Achievements ul.list2 > li {
    position: relative;
    padding: var(--space-4) var(--space-4) var(--space-4) var(--space-5);
    border: 0;
    border-left: 3px solid rgba(255, 237, 0, 0.72);
    border-radius: var(--radius-sm);
    background: rgba(255, 255, 255, 0.62);
    box-shadow: inset 0 0 0 1px rgba(21, 21, 21, 0.045);
}

.testimonial-detail #Achievements li ul.list1,
.testimonial-detail #Achievements li ul.list2 {
    gap: 0;
    margin-top: var(--space-4);
    margin-bottom: 0;
    padding-left: var(--space-4);
    border-left: 1px solid rgba(21, 21, 21, 0.14);
}

.testimonial-detail #Achievements li ul.list1 > li,
.testimonial-detail #Achievements li ul.list2 > li {
    padding: var(--space-3) 0 var(--space-3) var(--space-4);
    border: 0;
    border-bottom: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.testimonial-detail #Achievements li ul.list1 > li:last-child,
.testimonial-detail #Achievements li ul.list2 > li:last-child {
    border-bottom: 0;
}

.testimonial-detail #Achievements li ul.list1 strong,
.testimonial-detail #Achievements li ul.list2 strong {
    margin-bottom: 0;
    font-size: 0.95em;
}

.testimonial-cta {
    border-radius: var(--radius-md);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.16);
}

.testimonial-detail-nav {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-3);
    align-items: center;
    justify-content: center;
    margin: var(--space-5) 0 0;
    padding: var(--space-4);
    border: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 14px 38px rgba(15, 23, 42, 0.05);
}

.testimonial-detail-nav__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    padding: 0.7rem 1rem;
    border: 1px solid rgba(21, 21, 21, 0.12);
    border-radius: var(--radius-pill);
    background: var(--color-bg-white);
    color: var(--color-text-main);
    font-size: var(--font-size-sm);
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    transition: border-color var(--transition-speed) var(--transition-ease),
        background-color var(--transition-speed) var(--transition-ease),
        transform var(--transition-speed) var(--transition-ease);
}

.testimonial-detail-nav__link::before {
    content: "\2190";
    margin-right: var(--space-2);
    color: var(--color-primary-dark);
    font-weight: 900;
}

.testimonial-detail-nav__link--top::before {
    content: "\2191";
}

.testimonial-detail-nav__link:hover,
.testimonial-detail-nav__link:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(216, 199, 0, 0.5);
    background: rgba(255, 237, 0, 0.14);
    color: var(--color-text-main);
}

@media (max-width: 991.98px) {
    .testimonial-card {
        grid-template-columns: 1fr;
    }

    .testimonial-card__media {
        min-height: auto;
        aspect-ratio: 16 / 9;
    }

    .testimonial-detail-hero__logo {
        justify-self: start;
    }
}

@media (max-width: 767.98px) {
    .testimonial-overview {
        padding: var(--space-7) 0;
    }

    .testimonial-overview-header h1,
    .testimonial-detail-hero h1 {
        font-size: var(--font-size-2xl);
    }

    .testimonial-detail-hero,
    .testimonial-story-intro,
    .testimonial-detail #Achievements,
    .testimonial-cta,
    .testimonial-detail-nav {
        padding: var(--space-5);
        border-radius: var(--radius-sm);
    }

    .testimonial-card__body {
        padding: var(--space-5);
    }

    .testimonial-card__quote p,
    .testimonial-detail .blockquote p {
        font-size: var(--font-size-base);
    }

    .testimonial-card__quote,
    .testimonial-detail .blockquote {
        padding: var(--space-5);
    }

    .testimonial-story-intro {
        padding: var(--space-6) var(--space-5);
    }

    .testimonial-story-intro__quote-row {
        margin-top: var(--space-5) !important;
    }

    .testimonial-story-intro .blockquote {
        padding: var(--space-5) var(--space-4);
    }

    .testimonial-card__quote p,
    .testimonial-detail .blockquote p,
    .testimonial-detail .blockquote-footer {
        padding-left: 2.75rem;
    }

    .testimonial-detail-nav {
        align-items: stretch;
        flex-direction: column;
    }

    .testimonial-detail-nav__link {
        width: 100%;
    }
}

/* Portal component layer: isolated wrappers for customer-platform views. */

.portal-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-4);
  align-items: start;
}

.portal-page-section {
  padding-top: var(--space-3);
}

.portal-main {
  min-width: 0;
}

.portal-sidebar {
  min-width: 0;
}

.portal-page-header {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-bottom: var(--space-3);
  padding: var(--space-3) 0 var(--space-1);
}

.portal-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: uppercase;
}

  .portal-breadcrumb span {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
  }

    .portal-breadcrumb span::before {
      content: "";
      width: 0.5rem;
      height: 0.5rem;
      border-radius: var(--radius-pill);
      background: var(--color-primary);
      box-shadow: 0 0 0 4px rgba(255, 237, 0, 0.18);
    }

.portal-page-title {
  margin: 0;
  padding: 0;
  color: var(--color-text-main);
  font-size: var(--font-size-2xl);
  font-weight: 800;
  line-height: var(--line-height-tight);
}

.portal-page-subtitle {
  max-width: 48rem;
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
}

.portal-page-header--with-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-4);
  align-items: end;
}

.portal-page-header-content {
  min-width: 0;
}

.portal-page-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  justify-content: flex-end;
}

  .portal-page-actions .mvc-btn:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
  }

.portal-filter-card {
  margin-bottom: var(--space-4);
  border-color: rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-md);
  box-shadow: 0 12px 28px rgba(15, 18, 24, 0.06);
}

  .portal-filter-card .dbcard__body {
    margin: 0;
    padding: var(--space-4) var(--space-5) var(--space-5);
  }

.portal-filter-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-5) 0;
}

  .portal-filter-header h2 {
    margin: 0;
    padding: 0;
    color: var(--color-text-main);
    font-size: var(--font-size-md);
    font-weight: 800;
    line-height: 1.2;
  }

.portal-filter-eyebrow {
  display: block;
  margin-bottom: var(--space-1);
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: uppercase;
}

.portal-filter-card .form-item {
  margin-bottom: 0;
}

.portal-filter-card .title-text {
  margin-bottom: var(--space-1);
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 600;
  letter-spacing: 0;
}

.portal-filter-card input[type="text"],
.portal-filter-card input[type="number"],
.portal-filter-card input[type="date"],
.portal-filter-card select {
  min-height: 2.65rem;
}

.portal-filter-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  justify-content: flex-end;
  margin-top: var(--space-3);
}

  .portal-filter-actions .mvc-btn {
    min-height: 2.55rem;
  }

  .portal-filter-actions .mvc-btn--secondary {
    box-shadow: none;
    opacity: 0.86;
  }

  .portal-filter-actions .mvc-btn:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
  }

.portal-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.portal-card {
  min-width: 0;
  border-color: rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-md);
  box-shadow: 0 8px 24px rgba(15, 18, 24, 0.055);
}

  .portal-card .dbcard__body {
    margin: 0;
    padding: var(--space-5);
  }

.portal-section-title {
  margin: 0 0 var(--space-3);
  color: var(--color-text-main);
  font-size: var(--font-size-md);
  font-weight: 800;
  line-height: 1.25;
}

.portal-card-header {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
  justify-content: space-between;
  padding-bottom: var(--space-3);
  border-bottom: 1px solid rgba(21, 21, 21, 0.08);
}

.portal-card-title {
  margin: 0;
  padding-top: 0;
  color: var(--color-text-main);
  font-size: var(--font-size-md);
  font-weight: 800;
  line-height: 1.3;
}

.portal-card-subtitle {
  margin: var(--space-1) 0 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: 1.4;
}

.portal-list-card {
  min-width: 0;
  border-color: rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-md);
  box-shadow: 0 8px 24px rgba(15, 18, 24, 0.055);
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

  .portal-list-card:hover,
  .portal-list-card:focus-within {
    border-color: rgba(21, 21, 21, 0.18);
    box-shadow: 0 14px 32px rgba(15, 18, 24, 0.075);
    transform: translateY(-1px);
  }

.portal-list-card-header,
.portal-list-card-body,
.portal-list-card-footer {
  min-width: 0;
}

.portal-meta {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
  gap: var(--space-3);
}

.portal-meta-item {
  min-width: 0;
}

.portal-meta-label {
  display: block;
  margin-bottom: 0.2rem;
  color: var(--color-text-muted);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.25;
  text-transform: uppercase;
}

.portal-meta-value {
  display: block;
  min-width: 0;
  color: var(--color-text-main);
  font-size: var(--font-size-sm);
  font-weight: 500;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.portal-action-cluster {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
}

.portal-action-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  width: 100%;
  min-height: 2.75rem;
  padding: 0.72rem 0.85rem;
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-sm);
  background: var(--color-bg-white);
  color: var(--color-text-main);
  font-size: var(--font-size-sm);
  font-weight: 700;
  text-decoration: none;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

  .portal-action-card:hover,
  .portal-action-card:focus {
    border-color: rgba(255, 237, 0, 0.7);
    background: var(--color-primary-soft);
    color: var(--color-text-main);
    box-shadow: 0 8px 18px rgba(255, 237, 0, 0.14);
    transform: translateY(-1px);
  }

  .portal-action-card:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
  }

  .portal-action-card .badge {
    flex: 0 0 auto;
  }

.portal-empty-state {
  padding: var(--space-6);
  border: 1px dashed var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-bg-light);
  color: var(--color-text-muted);
  text-align: center;
}

  .portal-empty-state > :last-child {
    margin-bottom: 0;
  }

.portal-status-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  width: fit-content;
  max-width: 100%;
  padding: 0.35rem 0.75rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  background: var(--color-bg-light);
  color: var(--color-text-main);
  font-size: var(--font-size-xs);
  font-weight: 700;
  line-height: 1.2;
}

.portal-list-card-tags {
  display: flex;
  grid-column: 1;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  padding: var(--space-3) 0;
  border-bottom: 1px solid rgba(21, 21, 21, 0.07);
}

.portal-documents-list-row {
  margin-top: 0;
}

.portal-documents-list {
  gap: var(--space-3);
}

  .portal-documents-list .k-listview {
    display: grid;
    gap: var(--space-3);
    border: 0;
    background: transparent;
  }

  .portal-documents-list .k-listview-content {
    display: grid;
    gap: var(--space-3);
  }

  .portal-documents-list .k-pager {
    margin-top: var(--space-3);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-bg-white);
    box-shadow: 0 8px 20px rgba(15, 18, 24, 0.04);
  }

.portal-document-card.dbcard {
  margin-bottom: 0;
  overflow: hidden;
}

  .portal-document-card.dbcard--status-border {
    border-right: 1px solid rgba(21, 21, 21, 0.1);
  }

.portal-document-card::before {
  content: "";
  position: absolute;
  inset: var(--space-4) auto var(--space-4) 0;
  width: 3px;
  border-radius: 0 var(--radius-pill) var(--radius-pill) 0;
  background: #cfcac0;
}

.portal-document-card[status="1"]::before {
  background: #d86b61;
}

.portal-document-card[status="2"]::before {
  background: #d8a33a;
}

.portal-document-card[status="3"]::before {
  background: #4d9b72;
}

.portal-document-card .portal-document-card-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 9.5rem;
  gap: var(--space-4);
  align-items: stretch;
  margin: 0;
  padding: var(--space-4) var(--space-4) var(--space-4) calc(var(--space-5) + 3px);
}

.portal-document-card .portal-list-card-header {
  display: flex;
  grid-column: 1;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  justify-content: space-between;
  padding-bottom: 0;
}

.portal-document-number {
  display: block;
  color: var(--color-text-main);
  font-size: var(--font-size-md);
  font-weight: 800;
  line-height: 1.25;
}

.portal-document-status {
  padding: 0.3rem 0.68rem;
  border-color: rgba(21, 21, 21, 0.1);
  background: rgba(248, 249, 250, 0.9);
  color: var(--color-text-muted);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

  .portal-document-status::before {
    content: "";
    width: 0.48rem;
    height: 0.48rem;
    border-radius: var(--radius-pill);
    background: #cfcac0;
  }

  .portal-document-status[status="1"]::before {
    background: #d86b61;
  }

  .portal-document-status[status="2"]::before {
    background: #d8a33a;
  }

  .portal-document-status[status="3"]::before {
    background: #4d9b72;
  }

.portal-document-card .portal-list-card-body {
  display: grid;
  grid-column: 1;
  align-content: start;
  padding-top: var(--space-3);
}

.portal-document-meta {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3) var(--space-4);
}

.portal-meta-item--wide {
  grid-column: 1 / -1;
}

.portal-document-actions.buttons,
.portal-document-card .buttons.portal-document-actions {
  position: static;
  grid-column: 2;
  grid-row: 1 / span 3;
  align-self: stretch;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: var(--space-2) 0 var(--space-2) var(--space-4);
  border-left: 1px solid rgba(21, 21, 21, 0.07);
  opacity: 1;
  transform: none;
}

.portal-document-card:hover .buttons.portal-document-actions {
  transform: none;
}

.portal-document-actions.buttons a {
  width: 2.55rem;
  height: 2.55rem;
  min-width: 2.55rem;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-sm);
  background: var(--color-bg-white);
  color: var(--color-text-main);
  font-size: 1.1rem;
  box-shadow: 0 6px 14px rgba(15, 18, 24, 0.05);
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

  .portal-document-actions.buttons a:hover,
  .portal-document-actions.buttons a:focus {
    border-color: rgba(255, 237, 0, 0.7);
    background: var(--color-primary-soft);
    color: var(--color-text-main);
    box-shadow: 0 8px 18px rgba(255, 237, 0, 0.16);
    transform: translateY(-1px);
  }

  .portal-document-actions.buttons a:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
  }

  .portal-document-actions.buttons a img {
    max-width: 1.15rem;
    max-height: 1.15rem;
  }

.portal-ticket-list {
  gap: var(--space-3);
}

.portal-tickets-list-row {
  margin-top: 0;
}

.portal-tickets-list .k-listview {
  display: grid;
  gap: var(--space-3);
  border: 0;
  background: transparent;
}

.portal-tickets-list .k-listview-content {
  display: grid;
  gap: var(--space-3);
}

.portal-tickets-list .k-pager {
  margin-top: var(--space-3);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-bg-white);
  box-shadow: 0 8px 20px rgba(15, 18, 24, 0.04);
}

.portal-ticket-card.dbcard {
  margin-bottom: 0;
  overflow: hidden;
}

.portal-ticket-card::before {
  content: "";
  position: absolute;
  inset: var(--space-4) auto var(--space-4) 0;
  width: 3px;
  border-radius: 0 var(--radius-pill) var(--radius-pill) 0;
  background: #cfcac0;
}

.portal-ticket-card[status="WAIT_C"]::before,
.portal-ticket-status[status="WAIT_C"]::before {
  background: #d8a33a;
}

.portal-ticket-card[status="WAIT_D"]::before,
.portal-ticket-status[status="WAIT_D"]::before {
  background: #5b8fc7;
}

.portal-ticket-card[status="CLOSED"]::before,
.portal-ticket-status[status="CLOSED"]::before {
  background: #4d9b72;
}

.portal-ticket-card .portal-ticket-card-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 7rem;
  gap: var(--space-4);
  align-items: stretch;
  margin: 0;
  padding: var(--space-4) var(--space-4) var(--space-4) calc(var(--space-5) + 3px);
}

.portal-ticket-card .portal-list-card-header {
  display: flex;
  grid-column: 1;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  justify-content: space-between;
  padding-bottom: 0;
}

.portal-ticket-heading {
  min-width: 0;
}

.portal-ticket-subject {
  display: block;
  min-width: 0;
  color: var(--color-text-main);
  font-size: var(--font-size-md);
  font-weight: 800;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.portal-ticket-status {
  max-width: 100%;
  color: var(--color-text-muted);
}

  .portal-ticket-status::before {
    content: "";
    width: 0.48rem;
    height: 0.48rem;
    border-radius: var(--radius-pill);
    background: #cfcac0;
  }

.portal-ticket-badges {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  justify-content: flex-start;
}

.portal-priority-badge {
  border-color: rgba(21, 21, 21, 0.08);
  background: rgba(250, 249, 244, 0.75);
  color: var(--color-text-muted);
}

  .portal-priority-badge::before {
    content: "";
    width: 0.48rem;
    height: 0.48rem;
    border-radius: var(--radius-pill);
    background: #8a9a87;
  }

  .portal-priority-badge[priority="HOOG"]::before {
    background: #c77942;
  }

  .portal-priority-badge[priority="NORMAAL"]::before {
    background: #5b8fc7;
  }

  .portal-priority-badge[priority="LAAG"]::before {
    background: #7fa36f;
  }

.portal-ticket-card .portal-list-card-body {
  display: grid;
  grid-column: 1;
  align-content: start;
  padding-top: var(--space-3);
}

.portal-ticket-meta {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3) var(--space-4);
}

.portal-ticket-actions.buttons,
.portal-ticket-card .buttons.portal-ticket-actions {
  position: static;
  grid-column: 2;
  grid-row: 1 / span 3;
  align-self: stretch;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: var(--space-2) 0 var(--space-2) var(--space-4);
  border-left: 1px solid rgba(21, 21, 21, 0.07);
  opacity: 1;
  transform: none;
}

.portal-ticket-card:hover .buttons.portal-ticket-actions {
  transform: none;
}

.portal-ticket-actions.buttons a {
  width: 2.55rem;
  height: 2.55rem;
  min-width: 2.55rem;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-sm);
  background: var(--color-bg-white);
  color: var(--color-text-main);
  font-size: 1.1rem;
  box-shadow: 0 6px 14px rgba(15, 18, 24, 0.05);
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

  .portal-ticket-actions.buttons a:hover,
  .portal-ticket-actions.buttons a:focus {
    border-color: rgba(255, 237, 0, 0.7);
    background: var(--color-primary-soft);
    color: var(--color-text-main);
    box-shadow: 0 8px 18px rgba(255, 237, 0, 0.16);
    transform: translateY(-1px);
  }

  .portal-ticket-actions.buttons a:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
  }

.portal-ticket-detail-summary {
  margin-bottom: var(--space-4);
}

  .portal-ticket-detail-summary .dbcard__body {
    display: grid;
    gap: var(--space-4);
  }

.portal-ticket-detail-meta {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.portal-ticket-attachments {
  display: grid;
  gap: var(--space-2);
  padding-top: var(--space-3);
  border-top: 1px solid rgba(21, 21, 21, 0.08);
}

.portal-ticket-files-grid.k-grid {
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-sm);
  background: var(--color-bg-white);
  overflow: hidden;
}

.portal-ticket-files-grid .k-grid-header {
  display: none;
}

.portal-ticket-files-grid .k-grid-content {
  background: transparent;
}

.portal-ticket-files-grid table {
  margin-bottom: 0;
}

.portal-ticket-files-grid td {
  border-color: rgba(21, 21, 21, 0.06);
  color: var(--color-text-main);
  font-size: var(--font-size-sm);
  vertical-align: middle;
}

.portal-ticket-file-download {
  display: inline-grid;
  place-items: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-sm);
  background: var(--color-bg-light);
  color: var(--color-text-main);
  font-size: 1rem;
  text-decoration: none;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

  .portal-ticket-file-download:hover,
  .portal-ticket-file-download:focus {
    border-color: rgba(255, 237, 0, 0.7);
    background: var(--color-primary-soft);
    color: var(--color-text-main);
    box-shadow: 0 8px 18px rgba(255, 237, 0, 0.12);
  }

  .portal-ticket-file-download:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
  }

.portal-ticket-thread {
  display: grid;
  gap: var(--space-3);
}

.portal-ticket-message.dbcard {
  margin-bottom: 0;
  overflow: hidden;
}

.portal-ticket-message .dbcard__body {
  display: grid;
  gap: var(--space-3);
  padding: var(--space-4);
}

.portal-ticket-message.is-support {
  border-left: 3px solid rgba(255, 237, 0, 0.92);
}

.portal-ticket-message.is-customer {
  border-left: 3px solid rgba(21, 21, 21, 0.12);
}

.portal-ticket-message-header {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
  justify-content: space-between;
  padding-bottom: var(--space-3);
  border-bottom: 1px solid rgba(21, 21, 21, 0.08);
}

.portal-ticket-message-author {
  display: flex;
  gap: var(--space-3);
  align-items: center;
  min-width: 0;
}

.portal-ticket-avatar {
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  overflow: hidden;
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-pill);
  background: var(--color-bg-light);
}

  .portal-ticket-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

.portal-ticket-message-author strong {
  display: block;
  color: var(--color-text-main);
  font-size: var(--font-size-sm);
  font-weight: 800;
  line-height: 1.3;
}

.portal-ticket-message-author span,
.portal-ticket-message-header time {
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 600;
  line-height: 1.3;
}

.portal-ticket-message-body {
  min-width: 0;
  color: var(--color-text-main);
  font-size: var(--font-size-sm);
  line-height: 1.65;
  overflow-wrap: anywhere;
}

  .portal-ticket-message-body > :last-child {
    margin-bottom: 0;
  }

  .portal-ticket-message-body img,
  .portal-ticket-message-body table {
    max-width: 100%;
  }

  .portal-ticket-message-body table {
    width: auto;
  }

.portal-ticket-detail-quicklinks {
  opacity: 0.95;
}

.portal-ticket-detail-page .portal-page-actions .mvc-btn {
  min-height: 2.75rem;
}

.portal-ticket-detail-page .portal-ticket-detail-summary .portal-card-header {
  gap: var(--space-3);
}

.portal-modal .portal-form-card {
  margin: 0;
  border: 0;
  box-shadow: none;
}

  .portal-modal .portal-form-card .modal-footer {
    margin-top: var(--space-4);
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

.portal-ticket-editor,
.portal-ticket-upload {
  max-width: 100%;
}

.portal-dashboard-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-4);
  align-items: center;
}

.portal-dashboard-hero--cockpit {
  gap: 0;
  margin-bottom: var(--space-3);
  overflow: hidden;
  border-color: rgba(21, 21, 21, 0.08);
  background: linear-gradient(135deg, rgba(255, 237, 0, 0.055), rgba(255, 255, 255, 0) 42%), var(--color-bg-white);
  box-shadow: 0 8px 24px rgba(15, 18, 24, 0.045);
}

  .portal-dashboard-hero--cockpit::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: rgba(255, 237, 0, 0.7);
  }

.portal-dashboard-hero-content {
  display: grid;
  gap: var(--space-3);
  align-content: center;
  min-width: 0;
  padding: var(--space-5) var(--space-6) var(--space-5) calc(var(--space-6) + 4px);
}

.portal-dashboard-title {
  margin: 0;
  color: var(--color-text-main);
  font-size: var(--font-size-2xl);
  font-weight: 800;
  line-height: var(--line-height-tight);
}

.portal-dashboard-intro {
  max-width: 42rem;
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
}

.portal-dashboard-hero-actions {
  gap: var(--space-2);
  margin-top: var(--space-1);
}

.portal-dashboard-nav {
  margin-bottom: var(--space-5);
}

  .portal-dashboard-nav.portal-quicklinks-card .portal-quicklinks-title {
    margin-bottom: var(--space-1);
    color: var(--color-text-muted);
    font-size: var(--font-size-xs);
    letter-spacing: 0;
    text-transform: uppercase;
  }

  .portal-dashboard-nav.portal-quicklinks-card .dbcard {
    border-color: rgba(21, 21, 21, 0.08);
    border-radius: var(--radius-md);
    box-shadow: 0 6px 18px rgba(15, 18, 24, 0.035);
  }

.portal-dashboard-nav-list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  padding: var(--space-2) !important;
}

.portal-dashboard-nav-link {
  flex: 0 0 auto;
  min-height: 2.35rem;
  padding: 0.5rem 0.75rem;
  border: 1px solid transparent;
  white-space: nowrap;
}

  .portal-dashboard-nav-link.is-active {
    border-color: rgba(255, 237, 0, 0.65);
    background: rgba(255, 237, 0, 0.16);
    box-shadow: inset 0 0 0 1px rgba(21, 21, 21, 0.025);
  }

.portal-dashboard-summary {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  min-width: 0;
  padding: 0;
}

.portal-dashboard-summary-item {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: var(--space-2);
  min-height: 2rem;
  padding: 0.35rem 0.7rem;
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-pill);
  background: rgba(248, 249, 250, 0.85);
  box-shadow: none;
}

.portal-dashboard-summary-value {
  color: var(--color-text-main);
  font-size: var(--font-size-md);
  font-weight: 800;
  line-height: 1;
}

.portal-dashboard-summary-label {
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 700;
  line-height: 1.25;
  text-align: left;
  text-transform: uppercase;
}

.portal-dashboard-mark {
  display: grid;
  place-items: center;
  width: 4rem;
  height: 4rem;
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-md);
  background: var(--color-bg-white);
  box-shadow: 0 8px 18px rgba(15, 18, 24, 0.05);
}

  .portal-dashboard-mark img {
    max-width: 2.5rem;
    max-height: 2.5rem;
  }

.portal-project-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

.portal-dashboard-actions-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-3);
  margin-bottom: var(--space-5);
}

.portal-dashboard-action-card {
  align-items: flex-start;
  min-height: 6.25rem;
  padding: var(--space-4);
}

  .portal-dashboard-action-card > span {
    display: grid;
    gap: var(--space-1);
    min-width: 0;
  }

  .portal-dashboard-action-card strong {
    color: var(--color-text-main);
    font-size: var(--font-size-sm);
    line-height: 1.25;
  }

  .portal-dashboard-action-card small {
    color: var(--color-text-muted);
    font-size: var(--font-size-xs);
    font-weight: 500;
    line-height: 1.35;
  }

.portal-dashboard-section-heading {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: end;
  justify-content: space-between;
  margin-bottom: var(--space-3);
  padding-bottom: var(--space-2);
  border-bottom: 1px solid rgba(21, 21, 21, 0.08);
}

  .portal-dashboard-section-heading .portal-section-title {
    margin-bottom: 0;
  }

.portal-dashboard-shell {
  grid-template-columns: minmax(0, 1fr);
}

.portal-dashboard-content-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-5);
  align-items: start;
}

.portal-dashboard-primary {
  min-width: 0;
}

.portal-dashboard-side {
  display: grid;
  gap: var(--space-4);
  align-content: start;
  min-width: 0;
}

.portal-dashboard-section-badge {
  background: var(--color-bg-light);
  color: var(--color-text-muted);
}

.portal-project-grid--cockpit {
  align-items: stretch;
}

.portal-project-card.dbcard {
  margin-bottom: 0;
  border-color: rgba(21, 21, 21, 0.085);
  box-shadow: 0 6px 18px rgba(15, 18, 24, 0.04);
}

.portal-project-card .dbcard__body {
  display: grid;
  gap: var(--space-4);
}

.portal-project-card--cockpit .dbcard__body {
  gap: var(--space-3);
  height: 100%;
  padding: var(--space-4);
  background: linear-gradient(180deg, #ffffff 0%, rgba(248, 249, 250, 0.48) 100%);
}

.portal-project-card-header {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: flex-start;
  justify-content: space-between;
  min-width: 0;
}

.portal-project-brand {
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
  min-width: 0;
}

.portal-project-logo {
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 2.65rem;
  height: 2.65rem;
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-sm);
  background: var(--color-bg-light);
}

  .portal-project-logo img {
    max-width: 1.95rem;
    max-height: 1.95rem;
  }

.portal-project-name {
  margin: 0;
  color: var(--color-text-main);
  font-size: var(--font-size-lg);
  font-weight: 800;
  line-height: 1.3;
}

.portal-project-actions {
  display: grid;
  gap: var(--space-2);
}

.portal-project-supportplan {
  flex: 0 0 auto;
  padding: 0.28rem 0.62rem;
  border-color: rgba(21, 21, 21, 0.08);
  background: rgba(255, 237, 0, 0.1);
  color: var(--color-text-muted);
}

.portal-project-status-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-2);
  margin-top: auto;
}

.portal-project-status-card {
  display: grid;
  gap: var(--space-1);
  min-width: 0;
  padding: var(--space-3);
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-sm);
  background: rgba(248, 249, 250, 0.78);
  color: var(--color-text-main);
  text-decoration: none;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

  .portal-project-status-card:hover,
  .portal-project-status-card:focus {
    border-color: rgba(255, 237, 0, 0.7);
    background: var(--color-primary-soft);
    color: var(--color-text-main);
    box-shadow: 0 8px 18px rgba(255, 237, 0, 0.14);
    transform: translateY(-1px);
  }

  .portal-project-status-card:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
  }

.portal-project-status-card--primary {
  border-color: rgba(255, 237, 0, 0.36);
  background: rgba(255, 237, 0, 0.1);
}

.portal-project-status-label {
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 700;
  line-height: 1.25;
}

.portal-project-status-count {
  color: var(--color-text-main);
  font-size: var(--font-size-lg);
  font-weight: 800;
  line-height: 1;
}

.portal-project-backups {
  display: grid;
  gap: var(--space-2);
  padding-top: var(--space-3);
  border-top: 1px solid rgba(21, 21, 21, 0.08);
}

.portal-project-section-header {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  justify-content: space-between;
  color: var(--color-text-main);
  font-size: var(--font-size-xs);
  font-weight: 800;
  line-height: 1.25;
}

.portal-muted {
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 600;
  line-height: 1.25;
}

.portal-backup-dot {
  display: inline-flex;
  width: 0.65rem;
  height: 0.65rem;
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-pill);
  background: #d8d5ce;
  box-shadow: none;
}

  .portal-backup-dot.is-success {
    background: #4d9b72;
  }

  .portal-backup-dot.is-warning {
    background: #d8a33a;
  }

  .portal-backup-dot.is-error {
    background: #d86b61;
  }

  .portal-backup-dot.is-empty {
    background: #d8d5ce;
  }

.portal-backup-empty {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 500;
  line-height: 1.35;
}

.portal-backup-card .dbcard {
  padding: var(--space-2) var(--space-3);
}

.portal-dashboard-status-card {
  margin-bottom: 0;
}

  .portal-dashboard-status-card .portal-sidebar-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--space-2);
  }

  .portal-dashboard-status-card.has-attention .dbcard {
    border-color: rgba(216, 163, 58, 0.32);
    background: linear-gradient(135deg, rgba(216, 163, 58, 0.08), rgba(255, 255, 255, 0) 38%), var(--color-bg-white);
  }

  .portal-dashboard-status-card.is-calm .dbcard {
    box-shadow: 0 6px 16px rgba(15, 18, 24, 0.035);
  }

.portal-backup-list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.portal-backup-row {
  display: grid;
  gap: 0.2rem;
  padding: 0.42rem 0;
  border-bottom: 1px solid rgba(21, 21, 21, 0.06);
  background: transparent;
}

  .portal-backup-row:last-child {
    border-bottom: none;
  }

.portal-backup-name {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2rem 0.4rem;
  align-items: baseline;
  justify-content: space-between;
  min-width: 0;
}

  .portal-backup-name strong {
    min-width: 0;
    overflow: hidden;
    color: var(--color-text-main);
    font-size: var(--font-size-xs);
    font-weight: 600;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

.portal-backup-size {
  flex: 0 0 auto;
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 500;
  line-height: 1.3;
}

  .portal-backup-size.is-approx {
    color: var(--color-text-muted);
    font-weight: 400;
  }

.portal-backup-dots {
  display: flex;
  gap: 0.25rem;
  align-items: center;
}

.portal-backup-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.1rem 0.5rem;
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 400;
  line-height: 1.3;
}

  .portal-backup-meta strong {
    color: var(--color-text-main);
    font-weight: 600;
  }

.portal-dashboard-quicklinks {
  margin-bottom: 0;
  opacity: 0.92;
}

  .portal-dashboard-quicklinks .portal-sidebar-title {
    font-size: var(--font-size-sm);
  }

  .portal-dashboard-quicklinks .dbcard {
    box-shadow: 0 6px 16px rgba(15, 18, 24, 0.035);
  }

.portal-account-grid {
  display: grid;
  grid-template-columns: minmax(13rem, 16rem) minmax(0, 1fr);
  gap: var(--space-5);
  align-items: start;
}

.portal-account-profile-card {
  position: sticky;
  top: 7.5rem;
}

.portal-account-profile {
  display: grid;
  gap: var(--space-4);
  justify-items: center;
  text-align: center;
}

.portal-account-image {
  display: grid;
  place-items: center;
  width: 9rem;
  height: 9rem;
  overflow: hidden;
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-md);
  background: var(--color-bg-light);
}

  .portal-account-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

.portal-account-actions {
  display: grid;
  gap: var(--space-2);
  width: 100%;
}

.portal-account-profile-copy {
  display: grid;
  gap: var(--space-1);
  min-width: 0;
}

  .portal-account-profile-copy strong {
    color: var(--color-text-main);
    font-size: var(--font-size-md);
    font-weight: 800;
    line-height: 1.25;
    overflow-wrap: anywhere;
  }

.portal-account-sections {
  display: grid;
  gap: var(--space-4);
  min-width: 0;
}

.portal-account-section .portal-card-header {
  margin-bottom: var(--space-4);
}

.portal-account-section .portal-section-title {
  margin-bottom: 0;
}

.portal-account-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
}

  .portal-account-details .form-item {
    margin-bottom: 0;
  }

.portal-account-detail-wide {
  grid-column: 1 / -1;
}

.portal-account-settings-form {
  display: grid;
  gap: var(--space-4);
}

.portal-settings-list {
  display: grid;
  gap: var(--space-2);
  padding: 0;
  margin: 0;
  list-style: none;
}

.portal-settings-item {
  display: flex;
  gap: var(--space-3);
  align-items: center;
  justify-content: space-between;
  padding: var(--space-3);
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-sm);
  background: var(--color-bg-light);
}

  .portal-settings-item label {
    margin: 0;
    color: var(--color-text-main);
    font-size: var(--font-size-sm);
    font-weight: 700;
    line-height: 1.35;
  }

.portal-form-card {
  border-color: rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-md);
}

.portal-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

.portal-form-section {
  display: grid;
  gap: var(--space-3);
  min-width: 0;
}

.portal-form-section--full {
  grid-column: 1 / -1;
}

.portal-form-section .form-item {
  margin-bottom: 0;
}

.portal-form-section .title-text {
  margin-bottom: var(--space-1);
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: 600;
  letter-spacing: 0;
}

.portal-form-section input,
.portal-form-section select,
.portal-form-section textarea {
  max-width: 100%;
}

.portal-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  justify-content: flex-end;
}

.portal-upload-zone .k-upload,
.portal-form-section .k-editor {
  max-width: 100%;
}

.portal-supportplan-page {
  padding-bottom: var(--space-8);
}

.portal-supportplan-hero {
  padding-top: var(--space-2);
}

.portal-supportplan-chart-panel {
  display: grid;
  grid-template-columns: minmax(14rem, 0.34fr) minmax(0, 1fr);
  gap: var(--space-5);
  align-items: center;
  margin-bottom: var(--space-4);
  padding: var(--space-5);
  border: 1px solid rgba(21, 21, 21, 0.07);
  border-radius: var(--radius-lg);
  background:
    linear-gradient(135deg, rgba(255, 237, 0, 0.14), rgba(255, 255, 255, 0) 42%),
    var(--color-bg-white);
  box-shadow: 0 14px 36px rgba(15, 18, 24, 0.055);
}

.portal-supportplan-chart-copy {
  display: grid;
  gap: var(--space-2);
  min-width: 0;
}

  .portal-supportplan-chart-copy h2 {
    margin: 0;
    padding: 0;
    color: var(--color-text-main);
    font-size: var(--font-size-xl);
    font-weight: 800;
    line-height: var(--line-height-tight);
  }

.portal-supportplan-chart {
  min-width: 0;
  padding: var(--space-3);
  border-radius: var(--radius-md);
  background: rgba(255, 255, 255, 0.74);
}

.portal-supportplan-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(14rem, 18rem);
  gap: var(--space-5);
  align-items: start;
}

.portal-supportplan-main {
  display: grid;
  gap: var(--space-4);
  min-width: 0;
}

.portal-supportplan-filter {
  margin-bottom: 0;
}

.portal-supportplan-filter-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-3);
}

.portal-supportplan-filter-grid .form-item {
  margin-bottom: 0;
}

.portal-supportplan-results,
.portal-supportplan-list {
  min-width: 0;
}

  .portal-supportplan-list .k-listview,
  .portal-supportplan-list .k-listview-content {
    display: grid;
    gap: var(--space-3);
    border: 0;
    background: transparent;
  }

  .portal-supportplan-list .k-pager {
    margin-top: var(--space-3);
    border: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: var(--radius-md);
    background: var(--color-bg-white);
    box-shadow: 0 8px 20px rgba(15, 18, 24, 0.045);
  }

.portal-supportplan-intervention-card.dbcard {
  position: relative;
  margin-bottom: 0;
  overflow: hidden;
  border-color: rgba(21, 21, 21, 0.075);
  box-shadow: 0 10px 26px rgba(15, 18, 24, 0.045);
}

  .portal-supportplan-intervention-card::before {
    content: "";
    position: absolute;
    top: var(--space-4);
    bottom: var(--space-4);
    left: 0;
    width: 3px;
    border-radius: 0 var(--radius-pill) var(--radius-pill) 0;
    background: var(--color-primary);
  }

.portal-supportplan-intervention-body {
  display: grid;
  grid-template-columns: minmax(13rem, 0.34fr) minmax(0, 1fr);
  gap: var(--space-4);
  margin: 0;
  padding: var(--space-4) var(--space-5) var(--space-4) calc(var(--space-5) + 3px);
}

.portal-supportplan-intervention-meta {
  align-content: start;
  grid-template-columns: 1fr;
  padding-right: var(--space-4);
  border-right: 1px solid rgba(21, 21, 21, 0.08);
}

.portal-supportplan-intervention-copy {
  min-width: 0;
}

  .portal-supportplan-intervention-copy h3 {
    margin: 0 0 var(--space-2);
    padding: 0;
    color: var(--color-text-main);
    font-size: var(--font-size-md);
    font-weight: 800;
    line-height: var(--line-height-tight);
  }

  .portal-supportplan-intervention-copy p {
    margin: 0;
    color: var(--color-text-muted);
    line-height: 1.6;
  }

.portal-supportplan-empty {
  margin-top: 0;
}

.portal-modal .modal-content {
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-md);
  box-shadow: 0 24px 60px rgba(15, 18, 24, 0.18);
}

.portal-modal .modal-header {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  border-bottom-color: rgba(21, 21, 21, 0.08);
}

  .portal-modal .modal-header > :first-child {
    flex: 1 1 auto;
    min-width: 0;
  }

.portal-modal .modal-title {
  color: var(--color-text-main);
  font-weight: 800;
}

.portal-modal .modal-body {
  padding: var(--space-5);
}

.portal-modal .modal-footer {
  padding: var(--space-4) var(--space-5);
  border-top-color: rgba(21, 21, 21, 0.08);
}

.portal-modal .btn-close {
  display: inline-grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  min-width: 2.75rem;
  flex: 0 0 auto;
  margin: 0 0 0 auto;
  padding: 0;
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-sm);
  background-color: var(--color-bg-white);
  opacity: 0.82;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, opacity 160ms ease;
}

  .portal-modal .btn-close:hover,
  .portal-modal .btn-close:focus {
    border-color: rgba(21, 21, 21, 0.18);
    background-color: var(--color-bg-light);
    box-shadow: 0 8px 18px rgba(15, 18, 24, 0.08);
    opacity: 1;
  }

  .portal-modal .btn-close:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
  }

.portal-quicklinks-card .dbcard {
  border-color: rgba(21, 21, 21, 0.1);
  border-radius: var(--radius-md);
  box-shadow: 0 8px 24px rgba(15, 18, 24, 0.055);
}

.portal-sidebar-title.dbcard__title,
.portal-quicklinks-title.dbcard__title {
  margin-bottom: var(--space-2);
  color: var(--color-text-main);
  font-size: var(--font-size-base);
  font-weight: 800;
}

.portal-quicklinks-card--dashboard .dbcard,
.portal-dashboard-quicklinks .dbcard {
  box-shadow: 0 6px 16px rgba(15, 18, 24, 0.035);
}

.portal-quicklinks {
  gap: 0.35rem;
  margin: 0;
}

.portal-sidebar .quicklinks,
.portal-quicklinks-list {
  gap: 0.35rem;
  padding: var(--space-2) !important;
}

  .portal-sidebar .quicklinks .nav-link,
  .portal-quicklinks-link {
    display: flex;
    align-items: center;
    min-height: 2.45rem;
    padding: 0.55rem 0.8rem;
    border-radius: var(--radius-sm);
    color: var(--color-text-muted);
    font-size: var(--font-size-sm);
    font-weight: 600;
    transition: background-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
  }

    .portal-sidebar .quicklinks .nav-link:hover,
    .portal-sidebar .quicklinks .nav-link:focus,
    .portal-quicklinks-link:hover,
    .portal-quicklinks-link:focus {
      background: rgba(21, 21, 21, 0.045);
      color: var(--color-text-main);
    }

    .portal-sidebar .quicklinks .nav-link:focus-visible,
    .portal-quicklinks-link:focus-visible {
      outline: 2px solid var(--focus-outline-color);
      outline-offset: 2px;
    }

    .portal-sidebar .quicklinks .nav-link.active,
    .portal-quicklinks-link.is-active {
      background: linear-gradient(90deg, rgba(255, 237, 0, 0.24), rgba(255, 237, 0, 0.08));
      color: var(--color-text-main);
      box-shadow: inset 3px 0 0 rgba(255, 237, 0, 0.95), inset 0 0 0 1px rgba(21, 21, 21, 0.035);
    }

.portal-quicklinks-sticky {
  min-width: 0;
}

.portal-ticket-modal .modal-dialog {
  max-width: min(58rem, calc(100% - 2rem));
}

.portal-ticket-modal .modal-content {
  max-height: calc(100vh - 3rem);
  overflow: hidden;
}

.portal-ticket-modal-header {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5) var(--space-5) var(--space-4);
  border-bottom-color: rgba(21, 21, 21, 0.08);
  background: linear-gradient(135deg, rgba(255, 237, 0, 0.08), rgba(255, 255, 255, 0) 54%), var(--color-bg-white);
}

  .portal-ticket-modal-header > div {
    flex: 1 1 auto;
    min-width: 0;
  }

  .portal-ticket-modal-header .modal-title {
    margin-top: 0.15rem;
    color: var(--color-text-main);
    font-size: var(--font-size-xl);
    font-weight: 800;
    line-height: var(--line-height-tight);
  }

  .portal-ticket-modal-header .btn-close {
    flex: 0 0 auto;
    margin-top: 0.15rem;
    margin-left: auto;
  }

.portal-ticket-modal-intro {
  max-width: 40rem;
  margin: var(--space-1) 0 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: 1.45;
}

.portal-ticket-form {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
}

.portal-ticket-modal-body {
  display: grid;
  gap: var(--space-4);
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: var(--space-4) var(--space-5);
}

.portal-ticket-form-section {
  display: grid;
  gap: var(--space-3);
  min-width: 0;
  padding: var(--space-4);
  border: 1px solid rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-sm);
  background: var(--color-bg-light);
}

.portal-ticket-form-section-header {
  display: grid;
  gap: 0.2rem;
}

  .portal-ticket-form-section-header h6 {
    margin: 0;
    color: var(--color-text-main);
    font-size: var(--font-size-sm);
    font-weight: 800;
    line-height: 1.3;
  }

  .portal-ticket-form-section-header p {
    max-width: 42rem;
    margin: 0;
    color: var(--color-text-muted);
    font-size: var(--font-size-xs);
    line-height: 1.45;
  }

.portal-ticket-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
}

  .portal-ticket-form-grid .form-item,
  .portal-ticket-form-section .form-item {
    margin-bottom: 0;
  }

.portal-ticket-form-field-wide {
  grid-column: 1 / -1;
}

.portal-priority-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3);
}

.portal-priority-option {
  position: relative;
  display: block;
  min-width: 0;
  margin: 0;
}

.portal-priority-input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.portal-priority-content {
  position: relative;
  display: grid;
  gap: var(--space-2);
  min-height: 100%;
  padding: var(--space-3) calc(var(--space-3) + 1.65rem) var(--space-3) var(--space-3);
  border: 1px solid rgba(21, 21, 21, 0.1);
  border-left-width: 3px;
  border-radius: var(--radius-sm);
  background: var(--color-bg-white);
  color: var(--color-text-main);
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

  .portal-priority-content[priority="HOOG"] {
    border-left-color: #c77942;
  }

  .portal-priority-content[priority="NORMAAL"] {
    border-left-color: #5b8fc7;
  }

  .portal-priority-content[priority="LAAG"] {
    border-left-color: #7fa36f;
  }

.portal-priority-input:checked + .portal-priority-content {
  border-color: rgba(255, 237, 0, 0.85);
  background: linear-gradient(135deg, rgba(255, 237, 0, 0.18), rgba(255, 255, 255, 0) 64%), #ffffff;
  box-shadow: 0 8px 20px rgba(15, 18, 24, 0.075), inset 0 0 0 1px rgba(21, 21, 21, 0.04);
}

.portal-priority-input:focus-visible + .portal-priority-content {
  outline: 2px solid var(--focus-outline-color);
  outline-offset: 2px;
}

.portal-priority-option:hover .portal-priority-content {
  transform: translateY(-1px);
}

.portal-priority-check {
  position: absolute;
  top: var(--space-3);
  right: var(--space-3);
  display: grid;
  place-items: center;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: var(--radius-pill);
  color: #6f766d;
  font-size: 1rem;
  opacity: 0;
  transform: scale(0.82);
  transition: opacity 160ms ease, transform 160ms ease;
}

.portal-priority-input:checked + .portal-priority-content .portal-priority-check {
  opacity: 1;
  transform: scale(1);
}

.portal-priority-title {
  font-size: var(--font-size-sm);
  font-weight: 800;
  line-height: 1.25;
}

.portal-priority-description {
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  line-height: 1.4;
}

.portal-ticket-form-section input,
.portal-ticket-form-section select,
.portal-ticket-form-section textarea,
.portal-ticket-form-section .k-editor,
.portal-ticket-form-section .k-upload,
.portal-ticket-form-section .k-widget {
  max-width: 100%;
}

.portal-ticket-form-section .k-editor {
  min-height: 14rem;
}

  .portal-ticket-form-section .k-editor iframe,
  .portal-ticket-form-section .k-editor .k-editable-area {
    max-width: 100%;
  }

.portal-upload-zone .k-upload {
  border-color: rgba(21, 21, 21, 0.08);
  border-radius: var(--radius-sm);
  background: var(--color-bg-white);
}

.portal-upload-zone .k-dropzone {
  padding: var(--space-3);
}

.portal-ticket-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  justify-content: flex-end;
  padding: var(--space-3) var(--space-5);
}

.portal-ticket-modal-footer {
  flex: 0 0 auto;
}

.portal-modal-footer-sticky {
  position: sticky;
  bottom: 0;
  z-index: 2;
  background: var(--color-bg-white);
  box-shadow: 0 -8px 20px rgba(15, 18, 24, 0.04);
}

@media (max-width: 991.98px) {
  .portal-supportplan-chart-panel,
  .portal-supportplan-workspace {
    grid-template-columns: 1fr;
  }

  .portal-supportplan-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .portal-supportplan-sidebar {
    order: 2;
  }
}

@media (min-width: 992px) {
  .portal-shell {
    grid-template-columns: minmax(0, 1fr) minmax(14rem, 18rem);
    gap: var(--space-5);
  }

  .portal-dashboard-shell {
    grid-template-columns: minmax(0, 1fr);
  }

  .portal-dashboard-content-grid {
    grid-template-columns: minmax(0, 1fr) minmax(14rem, 18rem);
  }

  .portal-sidebar {
    position: sticky;
    top: 7.5rem;
  }

  .portal-quicklinks-sticky {
    position: sticky;
    top: 7.5rem;
  }

  .portal-dashboard-side {
    position: sticky;
    top: 7.5rem;
  }

    .portal-dashboard-side .portal-backup-list {
      max-height: 24rem;
      overflow-y: auto;
      padding-right: 0.15rem;
    }
}

@media (max-width: 767.98px) {
  .portal-page-section {
    padding-top: var(--space-2);
  }

  .portal-page-header {
    margin-bottom: var(--space-3);
    padding-top: var(--space-2);
  }

  .portal-page-title {
    font-size: var(--font-size-xl);
  }

  .portal-page-header--with-actions {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .portal-page-actions {
    justify-content: stretch;
  }

    .portal-page-actions .mvc-btn {
      width: 100%;
    }

  .portal-supportplan-page {
    padding-bottom: var(--space-5);
  }

  .portal-supportplan-chart-panel {
    gap: var(--space-3);
    padding: var(--space-4);
  }

  .portal-supportplan-filter-grid,
  .portal-supportplan-intervention-body {
    grid-template-columns: 1fr;
  }

  .portal-supportplan-intervention-body {
    padding: var(--space-4);
  }

  .portal-supportplan-intervention-meta {
    padding-right: 0;
    padding-bottom: var(--space-3);
    border-right: 0;
    border-bottom: 1px solid rgba(21, 21, 21, 0.08);
  }

  .portal-ticket-detail-page .portal-page-header--with-actions {
    padding: var(--space-4);
  }

  .portal-ticket-detail-page .portal-page-title {
    font-size: clamp(1.75rem, 9vw, var(--font-size-2xl));
  }

  .portal-ticket-detail-page .portal-page-subtitle {
    font-size: var(--font-size-sm);
  }

  .portal-ticket-detail-page .portal-page-actions {
    grid-template-columns: 1fr;
  }

    .portal-ticket-detail-page .portal-page-actions .mvc-btn {
      min-height: 3rem;
    }

  .portal-card .dbcard__body,
  .portal-modal .modal-body {
    padding: var(--space-4);
  }

  .portal-dashboard-hero,
  .portal-account-grid,
  .portal-form-grid {
    grid-template-columns: 1fr;
  }

  .portal-dashboard-hero--cockpit {
    gap: 0;
  }

  .portal-dashboard-hero-content {
    padding: var(--space-4) var(--space-4) var(--space-4) calc(var(--space-4) + 4px);
  }

  .portal-dashboard-title {
    font-size: var(--font-size-xl);
  }

  .portal-dashboard-summary {
    padding: 0;
  }

  .portal-dashboard-summary-item {
    flex: 1 1 auto;
    min-width: min(100%, 9rem);
  }

  .portal-dashboard-hero-actions .mvc-btn {
    width: 100%;
  }

  .portal-ticket-modal .modal-dialog {
    max-width: none;
    width: auto;
    margin: var(--space-2);
  }

  .portal-ticket-modal .modal-content {
    max-height: calc(100vh - var(--space-4));
    max-height: calc(100dvh - var(--space-4));
  }

  .portal-ticket-modal-header {
    padding: var(--space-4);
  }

  .portal-ticket-modal-body {
    gap: var(--space-3);
    padding: var(--space-3);
  }

  .portal-ticket-form-section .k-editor {
    min-height: 11rem;
  }

  .portal-ticket-form-actions {
    padding: var(--space-3);
  }

  .portal-ticket-form-grid {
    grid-template-columns: 1fr;
  }

  .portal-priority-options {
    grid-template-columns: 1fr;
  }

  .portal-ticket-form-section {
    padding: var(--space-3);
  }

  .portal-ticket-form-actions .mvc-btn {
    width: 100%;
  }

  .portal-dashboard-nav {
    margin-bottom: var(--space-4);
  }

  .portal-dashboard-nav-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-2);
    overflow: visible;
  }

  .portal-dashboard-nav-link {
    justify-content: center;
    min-width: 0;
    width: 100%;
    white-space: normal;
    text-align: center;
  }

  .portal-dashboard-actions-grid {
    grid-template-columns: 1fr;
    gap: var(--space-2);
    margin-bottom: var(--space-4);
  }

  .portal-dashboard-action-card {
    min-height: 0;
  }

  .portal-dashboard-mark {
    width: 3.5rem;
    height: 3.5rem;
  }

  .portal-project-grid {
    grid-template-columns: 1fr;
  }

  .portal-project-card-header,
  .portal-project-status-grid {
    grid-template-columns: 1fr;
  }

  .portal-project-status-grid {
    gap: var(--space-2);
  }

  .portal-account-profile {
    justify-items: stretch;
  }

  .portal-account-profile-card {
    position: static;
  }

  .portal-account-image {
    justify-self: center;
  }

  .portal-account-details {
    grid-template-columns: 1fr;
  }

  .portal-form-actions {
    justify-content: stretch;
  }

    .portal-form-actions .mvc-btn {
      width: 100%;
    }

  .portal-filter-actions .mvc-btn {
    width: 100%;
  }

  .portal-filter-card .dbcard__body,
  .portal-filter-header {
    padding-right: var(--space-4);
    padding-left: var(--space-4);
  }

  .portal-filter-card .dbcard__body {
    padding-top: var(--space-3);
  }

  .portal-document-card .portal-document-card-body {
    grid-template-columns: 1fr;
    gap: var(--space-4);
    padding: var(--space-4) var(--space-4) var(--space-4) calc(var(--space-4) + 3px);
  }

  .portal-document-card .portal-list-card-header,
  .portal-document-card .portal-list-card-tags,
  .portal-document-card .portal-list-card-body,
  .portal-document-actions.buttons,
  .portal-document-card .buttons.portal-document-actions {
    grid-column: 1;
  }

  .portal-document-meta {
    grid-template-columns: 1fr;
  }

  .portal-document-actions.buttons,
  .portal-document-card .buttons.portal-document-actions {
    grid-row: auto;
    flex-direction: row;
    justify-content: flex-start;
    padding-top: var(--space-3);
    padding-left: 0;
    border-top: 1px solid rgba(21, 21, 21, 0.08);
    border-left: 0;
  }

    .portal-document-actions.buttons a {
      width: 2.85rem;
      height: 2.85rem;
      min-width: 2.85rem;
    }

  .portal-document-card::before {
    inset: var(--space-4) auto var(--space-4) 0;
  }

  .portal-ticket-card .portal-ticket-card-body {
    grid-template-columns: 1fr;
    gap: var(--space-4);
    padding: var(--space-4) var(--space-4) var(--space-4) calc(var(--space-4) + 3px);
  }

  .portal-ticket-detail-meta {
    grid-template-columns: 1fr;
  }

  .portal-ticket-detail-page .portal-ticket-detail-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-2);
  }

    .portal-ticket-detail-page .portal-ticket-detail-meta .portal-meta-item {
      padding: var(--space-3);
      border: 1px solid rgba(21, 21, 21, 0.07);
      border-radius: var(--radius-sm);
      background: rgba(255, 255, 255, 0.72);
    }

      .portal-ticket-detail-page .portal-ticket-detail-meta .portal-meta-item:first-child,
      .portal-ticket-detail-page .portal-ticket-detail-meta .portal-meta-item:nth-child(5) {
        grid-column: 1 / -1;
      }

  .portal-ticket-message-header {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-2);
  }

  .portal-ticket-message-author {
    align-items: flex-start;
  }

  .portal-ticket-detail-page .portal-ticket-message-header time {
    margin-left: calc(2.75rem + var(--space-3));
  }

  .portal-ticket-detail-page .portal-dashboard-section-heading {
    align-items: flex-end;
    gap: var(--space-3);
  }

  .portal-ticket-files-grid .k-grid-content {
    overflow-x: auto;
  }

  .portal-ticket-card .portal-list-card-header,
  .portal-ticket-card .portal-list-card-tags,
  .portal-ticket-card .portal-list-card-body,
  .portal-ticket-actions.buttons,
  .portal-ticket-card .buttons.portal-ticket-actions {
    grid-column: 1;
  }

  .portal-ticket-meta {
    grid-template-columns: 1fr;
  }

  .portal-ticket-actions.buttons,
  .portal-ticket-card .buttons.portal-ticket-actions {
    grid-row: auto;
    flex-direction: row;
    justify-content: flex-start;
    padding-top: var(--space-3);
    padding-left: 0;
    border-top: 1px solid rgba(21, 21, 21, 0.08);
    border-left: 0;
  }

    .portal-ticket-actions.buttons a {
      width: 2.85rem;
      height: 2.85rem;
      min-width: 2.85rem;
    }

  .portal-ticket-card::before {
    inset: var(--space-4) auto var(--space-4) 0;
  }

  .portal-ticket-detail-page .portal-sidebar .quicklinks {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .portal-sidebar {
    order: -1;
  }

  .portal-quicklinks-sticky {
    position: static;
    order: 2;
  }

  .portal-dashboard-actions-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .portal-quicklinks-card .dbcard {
    margin-bottom: 0;
  }

  .portal-sidebar .quicklinks {
    flex-direction: row !important;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: var(--space-2) !important;
    scroll-snap-type: x proximity;
  }

    .portal-sidebar .quicklinks .nav-link {
      flex: 0 0 auto;
      white-space: nowrap;
      scroll-snap-align: start;
    }

  .portal-ticket-detail-page .portal-page-header--with-actions {
    grid-template-columns: 1fr;
    gap: var(--space-3);
    align-items: stretch;
    padding: var(--space-4);
    border: 1px solid rgba(21, 21, 21, 0.08);
    border-radius: var(--radius-md);
    background: linear-gradient(135deg, rgba(255, 237, 0, 0.14), rgba(255, 255, 255, 0) 42%), rgba(255, 255, 255, 0.88);
    box-shadow: 0 16px 44px rgba(15, 18, 24, 0.06);
  }

  .portal-ticket-detail-page .portal-page-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%;
  }

    .portal-ticket-detail-page .portal-page-actions .mvc-btn {
      width: 100%;
      min-width: 0;
      min-height: 2.9rem;
      padding-right: var(--space-3);
      padding-left: var(--space-3);
      white-space: normal;
      text-align: center;
    }

  .portal-ticket-detail-page .portal-ticket-detail-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .portal-ticket-detail-page .portal-ticket-detail-summary .portal-card-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  .portal-ticket-detail-page .portal-ticket-badges {
    justify-content: flex-start;
  }

  .portal-ticket-detail-page .portal-ticket-message .dbcard__body {
    padding: var(--space-4);
  }

  .portal-ticket-detail-page .portal-ticket-message-header time {
    margin-left: calc(2.75rem + var(--space-3));
  }

  .portal-ticket-detail-page .portal-sidebar .quicklinks {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-2);
    overflow: visible;
    padding-bottom: var(--space-2) !important;
    scroll-snap-type: none;
  }

    .portal-ticket-detail-page .portal-sidebar .quicklinks .nav-link {
      justify-content: center;
      min-width: 0;
      width: 100%;
      white-space: normal;
      text-align: center;
      scroll-snap-align: unset;
    }
}

@media (max-width: 767.98px) {
  .portal-ticket-detail-page .portal-page-actions {
    grid-template-columns: 1fr;
  }

  .portal-ticket-detail-page .portal-ticket-detail-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .portal-ticket-detail-page .portal-sidebar .quicklinks {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 479.98px) {
  .portal-ticket-detail-page .portal-ticket-detail-meta {
    grid-template-columns: 1fr;
  }

    .portal-ticket-detail-page .portal-ticket-detail-meta .portal-meta-item:first-child,
    .portal-ticket-detail-page .portal-ticket-detail-meta .portal-meta-item:nth-child(5) {
      grid-column: auto;
    }

  .portal-ticket-detail-page .portal-ticket-message-header time {
    margin-left: 0;
  }

  .portal-ticket-detail-page .portal-sidebar .quicklinks {
    grid-template-columns: 1fr;
  }
}

.k-listview {
    z-index: 1;
}

.k-pdf-viewer {
    height: 100% !important;
    width: 100% !important;
    border-width: 0 !important;
    color: #333333;
    background-color: #ffffff;
    max-width: 100vw;
    position: relative;
}

    .k-pdf-viewer .k-toolbar {
        border-color: #dedede;
        color: #333333;
        background-color: whitesmoke;
        position: absolute;
        bottom: 0;
        width: 100%;
    }

    .k-pdf-viewer .k-pdf-viewer-pages {
        padding-bottom: 50px;
    }

    .k-pdf-viewer .k-blank-page {
        display: none;
    }

/*Colors*/
:root {
    --bs-primary: var(--primary);
    --bs-primary-rgb: 255, 237, 0;
}

.text-bg-primary {
    color: #000 !important;
}

.nav {
    --bs-nav-link-color: var(--darkgray);
    --bs-nav-link-hover-color: var(--black);
}

.nav-pills {
    --bs-nav-pills-link-active-color: var(--black);
    --bs-nav-pills-link-active-bg: var(--primary);
}

/*Navbar*/
.navbar-toggler {
    border: none;
}

    .navbar-toggler:focus {
        box-shadow: none;
    }

.navbar .btn-close {
    border: none;
}

    .navbar .btn-close:focus {
        box-shadow: none;
    }

.navbar .nav-link.active {
    font-weight: 500;
}


/*Carousel*/
.carousel {
    margin: 50px 0;
}

    .carousel.carousel-fade .carousel-item {
        display: block;
        opacity: 0;
        transition: opacity ease-out .5s;
    }

        .carousel.carousel-fade .carousel-item.active {
            opacity: 1 !important;
        }

.carousel-inner {
    min-height: 150px;
}

.carousel-button {
    border: none;
    background: none;
    padding: 0 0.25em;
    font-size: 2em;
    font-weight: 500;
}

/*Accordion*/
.accordion {
    --bs-accordion-color: inherit;
    --bs-accordion-bg: transparent;
    --bs-accordion-transition: color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;
    --bs-accordion-border-color: var(--primary);
    --bs-accordion-border-width: 1px;
    --bs-accordion-border-radius: 0.375rem;
    --bs-accordion-icon-color: var(--primary);
    --bs-accordion-icon-active-color: var(--highlight);
    --bs-accordion-inner-border-radius: 0;
    --bs-accordion-btn-padding-x: 1.25rem;
    --bs-accordion-btn-padding-y: 1rem;
    --bs-accordion-btn-color: var(--black);
    --bs-accordion-btn-bg: var(--bs-accordion-bg);
    --bs-accordion-btn-icon-width: 1.25rem;
    --bs-accordion-btn-icon-transform: rotate(-180deg);
    --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
    --bs-accordion-btn-focus-box-shadow: 0;
    --bs-accordion-body-padding-x: 1.25rem;
    --bs-accordion-body-padding-y: 1rem;
    --bs-accordion-active-color: var(--black);
    --bs-accordion-active-bg: var(--primary);
}

