/* Minification failed. Returning unminified contents.
(3256,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3257,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3258,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3259,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3260,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3261,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3262,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3263,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3264,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3265,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3266,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3267,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3268,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3269,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3270,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3271,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3272,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3273,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3274,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3275,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3276,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3277,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4114,22): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(4130,26): run-time error CSS1039: Token not allowed after unary operator: '-accent-ink'
(4140,33): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(4149,30): run-time error CSS1039: Token not allowed after unary operator: '-line'
(4151,22): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(4152,17): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(4170,17): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(4181,21): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(4182,26): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(4590,22): run-time error CSS1039: Token not allowed after unary operator: '-radius-fld'
(4591,19): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(4604,27): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(4615,14): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(4952,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4953,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4954,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4955,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4956,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4957,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4958,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4959,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4960,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4961,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4962,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4963,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4964,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4965,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4966,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4967,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4968,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4969,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4970,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4971,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4972,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4973,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4988,14): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(5012,19): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(5174,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(5200,28): run-time error CSS1039: Token not allowed after unary operator: '-line'
(5201,20): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(5202,15): run-time error CSS1039: Token not allowed after unary operator: '-faint'
(5208,15): run-time error CSS1039: Token not allowed after unary operator: '-faint'
(5213,20): run-time error CSS1039: Token not allowed after unary operator: '-mint-wash'
(5215,15): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(5219,15): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(5223,20): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5224,22): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5226,30): run-time error CSS1039: Token not allowed after unary operator: '-accent-wash'
(5230,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(5240,19): run-time error CSS1039: Token not allowed after unary operator: '-line'
(5244,19): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(5264,19): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(5265,25): run-time error CSS1039: Token not allowed after unary operator: '-line'
(5266,22): run-time error CSS1039: Token not allowed after unary operator: '-radius'
(5267,19): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(5275,32): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(5286,15): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5306,15): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5313,21): run-time error CSS1039: Token not allowed after unary operator: '-accent-wash'
(5330,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(5336,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(5340,16): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(5350,19): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(5353,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(5363,14): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(5371,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(5384,27): run-time error CSS1039: Token not allowed after unary operator: '-line'
(5385,22): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(5416,21): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5431,16): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(5436,16): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5440,19): run-time error CSS1030: Expected identifier, found ':'
(5440,27): run-time error CSS1031: Expected selector, found ')'
(5440,27): run-time error CSS1025: Expected comma or open brace, found ')'
(5445,20): run-time error CSS1030: Expected identifier, found ':'
(5445,28): run-time error CSS1031: Expected selector, found ')'
(5445,28): run-time error CSS1025: Expected comma or open brace, found ')'
(5449,21): run-time error CSS1030: Expected identifier, found ':'
(5449,29): run-time error CSS1031: Expected selector, found ')'
(5449,29): run-time error CSS1025: Expected comma or open brace, found ')'
(5454,27): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5492,15): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(5496,15): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5504,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(5513,14): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(5514,19): run-time error CSS1039: Token not allowed after unary operator: '-field-bg'
(5515,27): run-time error CSS1039: Token not allowed after unary operator: '-line'
(5516,22): run-time error CSS1039: Token not allowed after unary operator: '-radius-fld'
(5522,15): run-time error CSS1039: Token not allowed after unary operator: '-faint'
(5530,22): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5532,30): run-time error CSS1039: Token not allowed after unary operator: '-accent-wash'
(5559,15): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(5568,19): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(5594,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(5607,22): run-time error CSS1030: Expected identifier, found ':'
(5607,30): run-time error CSS1031: Expected selector, found ')'
(5607,30): run-time error CSS1025: Expected comma or open brace, found ')'
(5614,27): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5623,29): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(5634,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(5652,20): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(5669,17): run-time error CSS1030: Expected identifier, found ':'
(5669,25): run-time error CSS1031: Expected selector, found ')'
(5669,25): run-time error CSS1025: Expected comma or open brace, found ')'
(5674,18): run-time error CSS1030: Expected identifier, found ':'
(5674,26): run-time error CSS1031: Expected selector, found ')'
(5674,26): run-time error CSS1025: Expected comma or open brace, found ')'
(5680,26): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5710,28): run-time error CSS1039: Token not allowed after unary operator: '-line'
(5712,26): run-time error CSS1039: Token not allowed after unary operator: '-field-bg'
(5733,19): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5749,20): run-time error CSS1039: Token not allowed after unary operator: '-accent-ink'
(5759,27): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(5768,27): run-time error CSS1039: Token not allowed after unary operator: '-line'
(5770,19): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(5771,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(5779,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(5789,14): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(5800,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(5801,20): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(5855,14): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(5868,30): run-time error CSS1039: Token not allowed after unary operator: '-line'
(5877,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(5886,15): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(5893,29): run-time error CSS1039: Token not allowed after unary operator: '-line'
(5917,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(5923,29): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(5933,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(5937,16): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(5942,16): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(5985,19): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(5986,25): run-time error CSS1039: Token not allowed after unary operator: '-line'
(5988,19): run-time error CSS1039: Token not allowed after unary operator: '-shadow-lg'
(6001,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(6012,16): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(6035,14): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(6040,20): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(6041,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(6056,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(6069,14): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6073,15): run-time error CSS1039: Token not allowed after unary operator: '-accent-ink'
(6084,29): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(6093,14): run-time error CSS1039: Token not allowed after unary operator: '-faint'
(6104,27): run-time error CSS1039: Token not allowed after unary operator: '-line'
(6106,19): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(6109,14): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(6115,20): run-time error CSS1039: Token not allowed after unary operator: '-field-bg'
(6119,53): run-time error CSS1039: Token not allowed after unary operator: '-accent-wash'
(6124,15): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6149,20): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(6151,15): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6152,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(6158,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(6162,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(6192,27): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6200,14): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(6331,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6332,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6333,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6334,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6335,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6336,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6337,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6338,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6339,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6340,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6341,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6342,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6343,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6344,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6345,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6346,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6347,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6348,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6349,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6350,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6351,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6352,2): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6367,14): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(6391,19): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(6481,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(6507,28): run-time error CSS1039: Token not allowed after unary operator: '-line'
(6508,20): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(6509,15): run-time error CSS1039: Token not allowed after unary operator: '-faint'
(6515,15): run-time error CSS1039: Token not allowed after unary operator: '-faint'
(6520,20): run-time error CSS1039: Token not allowed after unary operator: '-mint-wash'
(6522,15): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(6526,15): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(6530,20): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6531,22): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6533,30): run-time error CSS1039: Token not allowed after unary operator: '-accent-wash'
(6537,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(6547,19): run-time error CSS1039: Token not allowed after unary operator: '-line'
(6551,19): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(6571,19): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(6572,25): run-time error CSS1039: Token not allowed after unary operator: '-line'
(6573,22): run-time error CSS1039: Token not allowed after unary operator: '-radius'
(6574,19): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(6582,32): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(6592,20): run-time error CSS1039: Token not allowed after unary operator: '-accent-wash'
(6593,15): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6613,15): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6620,21): run-time error CSS1039: Token not allowed after unary operator: '-accent-wash'
(6637,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(6643,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(6647,16): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(6657,19): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(6660,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(6670,14): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(6678,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(6691,27): run-time error CSS1039: Token not allowed after unary operator: '-line'
(6692,22): run-time error CSS1039: Token not allowed after unary operator: '-radius-sm'
(6723,21): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6738,16): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(6743,16): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6747,19): run-time error CSS1030: Expected identifier, found ':'
(6747,27): run-time error CSS1031: Expected selector, found ')'
(6747,27): run-time error CSS1025: Expected comma or open brace, found ')'
(6752,20): run-time error CSS1030: Expected identifier, found ':'
(6752,28): run-time error CSS1031: Expected selector, found ')'
(6752,28): run-time error CSS1025: Expected comma or open brace, found ')'
(6756,21): run-time error CSS1030: Expected identifier, found ':'
(6756,29): run-time error CSS1031: Expected selector, found ')'
(6756,29): run-time error CSS1025: Expected comma or open brace, found ')'
(6761,27): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6803,15): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(6807,15): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6815,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(6824,14): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(6825,19): run-time error CSS1039: Token not allowed after unary operator: '-field-bg'
(6826,27): run-time error CSS1039: Token not allowed after unary operator: '-line'
(6827,22): run-time error CSS1039: Token not allowed after unary operator: '-radius-fld'
(6833,15): run-time error CSS1039: Token not allowed after unary operator: '-faint'
(6841,22): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6843,30): run-time error CSS1039: Token not allowed after unary operator: '-accent-wash'
(6870,15): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(6878,19): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(6890,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(6901,22): run-time error CSS1030: Expected identifier, found ':'
(6901,30): run-time error CSS1031: Expected selector, found ')'
(6901,30): run-time error CSS1025: Expected comma or open brace, found ')'
(6908,27): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6917,29): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(6928,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(6946,20): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(6963,17): run-time error CSS1030: Expected identifier, found ':'
(6963,25): run-time error CSS1031: Expected selector, found ')'
(6963,25): run-time error CSS1025: Expected comma or open brace, found ')'
(6968,18): run-time error CSS1030: Expected identifier, found ':'
(6968,26): run-time error CSS1031: Expected selector, found ')'
(6968,26): run-time error CSS1025: Expected comma or open brace, found ')'
(6974,26): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6989,28): run-time error CSS1039: Token not allowed after unary operator: '-line'
(6991,26): run-time error CSS1039: Token not allowed after unary operator: '-field-bg'
(7044,14): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(7057,30): run-time error CSS1039: Token not allowed after unary operator: '-line'
(7066,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(7075,15): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(7082,29): run-time error CSS1039: Token not allowed after unary operator: '-line'
(7106,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(7112,29): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(7122,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(7126,16): run-time error CSS1039: Token not allowed after unary operator: '-mint'
(7131,16): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(7157,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(7189,19): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(7190,25): run-time error CSS1039: Token not allowed after unary operator: '-line'
(7192,19): run-time error CSS1039: Token not allowed after unary operator: '-shadow-lg'
(7205,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(7216,16): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(7239,14): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(7244,20): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(7245,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(7260,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(7295,29): run-time error CSS1039: Token not allowed after unary operator: '-line-soft'
(7304,14): run-time error CSS1039: Token not allowed after unary operator: '-faint'
(7315,27): run-time error CSS1039: Token not allowed after unary operator: '-line'
(7317,19): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(7320,14): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(7326,20): run-time error CSS1039: Token not allowed after unary operator: '-field-bg'
(7330,53): run-time error CSS1039: Token not allowed after unary operator: '-accent-wash'
(7335,15): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(7360,20): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(7362,15): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(7363,20): run-time error CSS1039: Token not allowed after unary operator: '-shadow-sm'
(7369,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(7373,15): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(7388,27): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(7390,19): run-time error CSS1039: Token not allowed after unary operator: '-ink'
(7403,27): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(7411,14): run-time error CSS1039: Token not allowed after unary operator: '-muted'
(7481,14): run-time error CSS1039: Token not allowed after unary operator: '-faint'
(7819,27): run-time error CSS1039: Token not allowed after unary operator: '-line'
(7821,19): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(7822,14): run-time error CSS1039: Token not allowed after unary operator: '-ink-soft'
(7834,20): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(7835,15): run-time error CSS1039: Token not allowed after unary operator: '-ink'
 */
@charset "utf-8";
/* CSS Document */
* {
	box-sizing:border-box;
}
html {
	margin:0;
	padding:0;
	  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

body {
font-family: "Noto Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size:14px;
  margin:0;
  padding:0;
}

h1, h2, h3, h4, h5, h6 {
	font-family: "Space Grotesk", serif;
	font-weight: 600;
	font-style: normal;
}

input, button, textarea, select {
	font-family: "Noto Sans", sans-serif;
}

a {
	text-decoration:none;
}

img {
	max-width:100%;
}
/* Grid
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.container {
  position: relative;
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box; }
.column,
.columns {
  width: 100%;
  float: left;
  box-sizing: border-box; }

/* For devices larger than 400px */
@media (min-width: 400px) {
  .container {
    width: 90%;
    padding: 0; }
}

/* For devices larger than 550px */
@media (min-width: 550px) {
  .container {
    width: 90%; }
  .column,
  .columns {
    margin-left: 4%; }
  .column:first-child,
  .columns:first-child {
    margin-left: 0; }

  .one.column,
  .one.columns                    { width: 4.66666666667%; }
  .two.columns                    { width: 13.3333333333%; }
  .three.columns                  { width: 22%;            }
  .four.columns                   { width: 30.6666666667%; }
  .five.columns                   { width: 39.3333333333%; }
  .six.columns                    { width: 48%;            }
  .seven.columns                  { width: 56.6666666667%; }
  .eight.columns                  { width: 65.3333333333%; }
  .nine.columns                   { width: 74.0%;          }
  .ten.columns                    { width: 82.6666666667%; }
  .eleven.columns                 { width: 91.3333333333%; }
  .twelve.columns                 { width: 100%; margin-left: 0; }

  .one-third.column               { width: 30.6666666667%; }
  .two-thirds.column              { width: 65.3333333333%; }

  .one-half.column                { width: 48%; }

  /* Offsets */
  .offset-by-one.column,
  .offset-by-one.columns          { margin-left: 8.66666666667%; }
  .offset-by-two.column,
  .offset-by-two.columns          { margin-left: 17.3333333333%; }
  .offset-by-three.column,
  .offset-by-three.columns        { margin-left: 26%;            }
  .offset-by-four.column,
  .offset-by-four.columns         { margin-left: 34.6666666667%; }
  .offset-by-five.column,
  .offset-by-five.columns         { margin-left: 43.3333333333%; }
  .offset-by-six.column,
  .offset-by-six.columns          { margin-left: 52%;            }
  .offset-by-seven.column,
  .offset-by-seven.columns        { margin-left: 60.6666666667%; }
  .offset-by-eight.column,
  .offset-by-eight.columns        { margin-left: 69.3333333333%; }
  .offset-by-nine.column,
  .offset-by-nine.columns         { margin-left: 78.0%;          }
  .offset-by-ten.column,
  .offset-by-ten.columns          { margin-left: 86.6666666667%; }
  .offset-by-eleven.column,
  .offset-by-eleven.columns       { margin-left: 95.3333333333%; }

  .offset-by-one-third.column,
  .offset-by-one-third.columns    { margin-left: 34.6666666667%; }
  .offset-by-two-thirds.column,
  .offset-by-two-thirds.columns   { margin-left: 69.3333333333%; }

  .offset-by-one-half.column,
  .offset-by-one-half.columns     { margin-left: 52%; }

}


/* Base Styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* NOTE
html is set to 62.5% so that all the REM measurements throughout Skeleton
are based on 10px sizing. So basically 1.5rem = 15px :) */


/* Typography
–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
/*  margin-bottom: 2rem;*/
}


p {
  margin-top: 0; }


/* Links
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a {
  color: #fff; }
a:hover {
  color: #fff; /*text-decoration:underline;*/ }


/* Buttons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
  display: inline-block;
  height: 38px;
  padding: 0 30px;
  color: #555;
  text-align: center;
  font-size: 11px;
  font-weight: 600;
  line-height: 38px;
  letter-spacing: .1rem;
/*text-transform: uppercase;*/
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border-radius: 4px;
  border: 1px solid #bbb;
  cursor: pointer;
  box-sizing: border-box; }
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.button:focus,
button:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus {
  color: white;
  border-color: #888;
  outline: 0; }
.button.button-primary,
button.button-primary,
input[type="submit"].button-primary,
input[type="reset"].button-primary,
input[type="button"].button-primary {
  color: #FFF;
  background-color: #33C3F0;
  border-color: #33C3F0; }
.button.button-primary:hover,
button.button-primary:hover,
input[type="submit"].button-primary:hover,
input[type="reset"].button-primary:hover,
input[type="button"].button-primary:hover,
.button.button-primary:focus,
button.button-primary:focus,
input[type="submit"].button-primary:focus,
input[type="reset"].button-primary:focus,
input[type="button"].button-primary:focus {
  color: #FFF;
  background-color: #1EAEDB;
  border-color: #1EAEDB; }


/* Forms
–––––––––––––––––––––––––––––––––––––––––––––––––– */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
  height: 38px;
  padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
  background-color: #fff;
  border: 1px solid #D1D1D1;
  border-radius: 4px;
  box-shadow: none;
  box-sizing: border-box; }
/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
textarea {
  min-height: 65px;
  padding-top: 6px;
  padding-bottom: 6px; }
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border: 1px solid #33C3F0;
  outline: 0; }
label,
legend {
  display: block;
  margin-bottom: .5rem;
  /*font-weight: 600;*/ }
fieldset {
  padding: 0;
  border-width: 0; }
input[type="checkbox"],
input[type="radio"] {
  display: inline; }
label > .label-body {
  display: inline-block;
  margin-left: .5rem;
  font-weight: normal; }


/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */
ul {
  list-style: circle inside; }
ol {
  list-style: decimal inside; }
ol, ul {
  padding-left: 0;
  margin-top: 0; }
/*ul ul,
ul ol,
ol ol,
ol ul {
  margin: 1.5rem 0 1.5rem 3rem;
  font-size: 90%; }*/
/*li {
  margin-bottom: 1rem; }*/


/* Code
–––––––––––––––––––––––––––––––––––––––––––––––––– */
code {
  padding: .2rem .5rem;
  margin: 0 .2rem;
  font-size: 90%;
  white-space: nowrap;
  background: #F1F1F1;
  border: 1px solid #E1E1E1;
  border-radius: 4px; }
pre > code {
  display: block;
  padding: 1rem 1.5rem;
  white-space: pre; }


/* Tables
–––––––––––––––––––––––––––––––––––––––––––––––––– */
th,
td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #E1E1E1; }
th:first-child,
td:first-child {
/*  padding-left: 0;*/ }
th:last-child,
td:last-child {
  /*padding-right: 0;*/ }


/* Spacing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
button,
.button {
  margin-bottom: 1rem; }
input,
textarea,
select,
fieldset {
  /*margin-bottom: 1.5rem;*/ }
/*pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
  margin-bottom: 2.5rem; }*/


/* Utilities
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.u-full-width {
  width: 100%;
  box-sizing: border-box; }
.u-max-full-width {
  max-width: 100%;
  box-sizing: border-box; }
.u-pull-right {
  float: right; }
.u-pull-left {
  float: left; }


/* Misc
–––––––––––––––––––––––––––––––––––––––––––––––––– */
hr {
  margin-top: 3rem;
  margin-bottom: 3.5rem;
  border-width: 0;
  border-top: 1px solid #E1E1E1; }


/* Clearing
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Self Clearing Goodness */
.container:after,
.row:after,
.u-cf {
  content: "";
  display: table;
  clear: both; }
  
  
/* Navigation
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/*nav{*/
/*  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  height: 70px;
  background: #3E8DA8;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  z-index: 99;*/
  /*padding:5px 0;
}

nav .logo img {
	max-width:120px;
}
nav .navbar{
  height: 100%;
  max-width: 1140px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: auto;*/
  /* background: red; 
  padding: 0 50px;*/
/*}
.navbar .logo a{
  font-size: 30px;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
}
nav .navbar .nav-links{
  line-height: 70px;
  height: 100%;
}
nav .navbar .links{
  display: flex;
  margin-bottom:0;
}
nav .navbar .links li{
  position: static;
  display: flex;
  align-items: center;
  justify-content: space-between;
  list-style: none;
  padding: 0 14px;
}
nav .navbar .links li a{
  height: 100%;
  text-decoration: none;
  white-space: nowrap;
  color: #000;
  font-size: 15px;
  font-weight: 500;
  position:relative;
}

nav .navbar .links li a:after {
	background: none repeat scroll 0 0 transparent;
  bottom: 0;
  content: "";
  display: block;
  height: 3px;
  left: 50%;
  position: absolute;
  background: #007aff;
  transition: width 0.3s ease 0s, left 0.3s ease 0s;
  width: 0;
}

nav .navbar .links li a:hover:after {
	width: 100%; 
  left: 0; 
}
.links li:hover .htmlcss-arrow,
.links li:hover .js-arrow{
  transform: rotate(180deg);
  }

nav .navbar .links li .arrow{*/
  /* background: red; */
  /*height: 100%;
  width: 22px;
  line-height: 70px;
  text-align: center;
  display: inline-block;
  color: #000;
  transition: all 0.3s ease;
  margin-left:5px;
}
nav .navbar .links li .sub-menu{
  position: absolute;
  top: 70px;
  left: 0;
  line-height: 40px;
  background: #007aff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  border-radius: 10px;*/
 /* display: none;*/
  /*z-index: 2;
  transition:all 0.5s;
}
nav .navbar .links li:hover .htmlCss-sub-menu,
nav .navbar .links li:hover .js-sub-menu{*/
 /* display: block;*/
/*}
.navbar .links li .sub-menu li{
  padding: 0 22px;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.navbar .links li .sub-menu a{
  color: #fff;
  font-size: 15px;
  font-weight: 500;
}
.navbar .links li .sub-menu .more-arrow{
  line-height: 40px;
}
.navbar .links li .htmlCss-more-sub-menu{*/
  /* line-height: 40px; */
/*}
.navbar .links li .sub-menu .more-sub-menu{
  position: absolute;
  top: 0;
  left: 100%;
  border-radius: 0 4px 4px 4px;
  z-index: 1;
  display: none;
}
.links li .sub-menu .more:hover .more-sub-menu{
  display: block;
}
.navbar .search-box{
  position: relative;
   height: 40px;
  width: 40px;
}
.navbar .search-box i{
  position: absolute;
  height: 100%;
  width: 100%;
  line-height: 40px;
  text-align: center;
  font-size: 22px;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
}
.navbar .search-box .input-box{
  position: absolute;
  right: calc(100% - 40px);
  top: 80px;
  height: 60px;
  width: 300px;
  background: #3E8DA8;
  border-radius: 6px;
  opacity: 0;
  pointer-events: none;
  transition: all 0.4s ease;
}
.navbar.showInput .search-box .input-box{
  top: 65px;
  opacity: 1;
  pointer-events: auto;
  background: #3E8DA8;
}
.search-box .input-box::before{
  content: '';
  position: absolute;
  height: 20px;
  width: 20px;
  background: #3E8DA8;
  right: 10px;
  top: -6px;
  transform: rotate(45deg);
}
.search-box .input-box input{
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 4px;
  transform: translate(-50%, -50%);
  height: 35px;
  width: 280px;
  outline: none;
  padding: 0 15px;
  font-size: 16px;
  border: none;
}
.navbar .nav-links .sidebar-logo{
  display: none;
}
.navbar .la-bars{
  display: none;
}
@media (max-width:920px) {
  nav .navbar{
    max-width: 100%;
    padding: 0 25px;
  }

  nav .navbar .logo a{
    font-size: 27px;
  }
  nav .navbar .links li{
    padding: 0 10px;
    white-space: nowrap;
  }
  nav .navbar .links li a{
    font-size: 15px;
  }
}
@media (max-width:800px){
  nav{*/
    /* position: relative; */
  /*}
  .navbar .la-bars{
    display: block;
  }
  nav .navbar .nav-links{
    position: fixed;
    top: 0;
    left: -100%;
    display: block;
    max-width: 270px;
    width: 100%;
    background:  #fff;
    line-height: 40px;
    padding: 20px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    transition: all 0.5s ease;

    z-index: 1000;
  }
  .navbar .nav-links .sidebar-logo{
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .sidebar-logo .logo-name{
    font-size: 25px;
    color: #fff;
  }
  
  .sidebar-logo .logo-name img {
	  width:180px;
  }
    .sidebar-logo  i,
    .navbar .la-bars{
      font-size: 25px;
      color: #000;
    }
  nav .navbar .links{
    display: block;
    margin-top: 20px;
  }
  nav .navbar .links li .arrow{
    line-height: 40px;
  }
nav .navbar .links li{
    display: block;
  }
nav .navbar .links li .sub-menu{
  position: relative;
  top: 0;
  box-shadow: none;
  display: none;
}
nav .navbar .links li .sub-menu li{
  border-bottom: none;

}
.navbar .links li .sub-menu .more-sub-menu{
  display: none;
  position: relative;
  left: 0;
}
.navbar .links li .sub-menu .more-sub-menu li{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.links li:hover .htmlcss-arrow,
.links li:hover .js-arrow{
  transform: rotate(0deg);
  }
  .navbar .links li .sub-menu .more-sub-menu{
    display: none;
  }
  .navbar .links li .sub-menu .more span{*/
    /* background: red; */
    /*display: flex;
    align-items: center;*/
    /* justify-content: space-between; */
  /*}

  .links li .sub-menu .more:hover .more-sub-menu{
    display: none;
  }
  nav .navbar .links li:hover .htmlCss-sub-menu,
  nav .navbar .links li:hover .js-sub-menu{
    display: none;
  }
.navbar .nav-links.show1 .links .htmlCss-sub-menu,
  .navbar .nav-links.show3 .links .js-sub-menu,
  .navbar .nav-links.show2 .links .more .more-sub-menu{
      display: block;
	  padding-bottom:25px;
    }
    .navbar .nav-links.show1 .links .htmlcss-arrow,
    .navbar .nav-links.show3 .links .js-arrow{
        transform: rotate(180deg);
}
    .navbar .nav-links.show2 .links .more-arrow{
      transform: rotate(90deg);
    }
	nav .navbar .links li a {
		color:#000;
	}
	nav .navbar .links li .arrow {
		color:#000;
	}
}
@media (max-width:370px){
  nav .navbar .nav-links{
  max-width: 100%;
} 
}

nav .navbar .links li .sub-menu.mega-menu {
	position:absolute;
	width:100%;
	padding:2% 5% 5% 5%;
	border-radius:0;
	background:#fff;
	top:108px;
	border-top:solid 1px #ddd;
 opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 600ms, visibility 600ms;
  transition: opacity 600ms, visibility 600ms;

}

nav .navbar .links li:hover .sub-menu.mega-menu {
		visibility: visible;
  opacity: 1;
  padding:2% 5% 5% 5%;
}

.navbar .links li .sub-menu.mega-menu a {
	color:#000;
}

.navbar .links li .sub-menu.mega-menu a:after {
	display:none;
}

.navbar .links li .sub-menu.mega-menu h3 {
	margin: 0;
	font-family: "Noto Sans", sans-serif;
}

.navbar .links li .sub-menu.mega-menu ul li {
	margin:0;
	padding:0;
}

@media (max-width:800px){
nav .navbar .nav-links {
	max-width:100%;
	overflow-y:auto;
}
nav .navbar .links li .sub-menu.mega-menu {
	position:relative;
	top:0;
	background:transparent;
	padding:0 3%;
}

.navbar .links li .sub-menu.mega-menu a, .navbar .links li .sub-menu.mega-menu h3 {
	color:#333;
}

.navbar .links li .sub-menu.mega-menu h3 {
	margin:10px 0 0 0;
	line-height:30px;
}

.navbar .links li .sub-menu.mega-menu .three.columns {
	width:100%;
	margin:0;
}
nav .navbar .links li .sub-menu.mega-menu, nav .navbar .links li:hover .sub-menu.mega-menu { 
opacity:1!important;
visibility:visible!important;
}

nav .navbar .links li .sub-menu.mega-menu img {
	display:none;
}
}*/

/* =========================
  NAVIGATION
  ========================= */
nav {
 padding: 5px 0;
}
nav .logo img {
 max-width: 120px;
}
nav .navbar {
 max-width: 1140px;
 margin: auto;
 display: flex;
 align-items: center;
 justify-content: space-between;
}
.navbar .links {
 display: flex;
 margin: 0;
}
.navbar .links li {
 list-style: none;
 padding: 0 14px;
 display: flex;
 align-items: center;
 position: static;
}
.navbar .links li a {
 color: #000;
 font-size: 15px;
 font-weight: 500;
 text-decoration: none;
 position: relative;
 white-space: nowrap;
}
/* underline hover */
.navbar .links li a::after {
 content: "";
 position: absolute;
 left: 50%;
 bottom: 0;
 width: 0;
 height: 3px;
 background: #007aff;
 transition: 0.3s ease;
}
.navbar .links li a:hover::after {
 width: 100%;
 left: 0;
}
/* arrow */
.navbar .links li .arrow {
 width: 22px;
 text-align: center;
 margin-left: 5px;
 transition: 0.3s;
 color: #000;
}
/* =========================
  SUB MENUS – DESKTOP
  ========================= */
.navbar .links li .sub-menu {
 position: absolute;
 left: 0;
 top: 92px;
 width: 100%;
 background: #fff;
 border-top: 1px solid #ddd;
 display: block;
 opacity: 0;
 visibility: hidden;
 transition: opacity 0.3s ease;
 z-index: 999;
 box-shadow: 0 1px 2px rgba(0, 0, 0, .2);
}
/* show on hover (desktop only) */
.navbar .links li:hover > .sub-menu {
 opacity: 1;
 visibility: visible;
}
.navbar .links li:hover .arrow {
 transform: rotate(180deg);
}
/* mega menu content */
.sub-menu.mega-menu {
 padding: 2% 5% 5%;
}
.sub-menu.mega-menu a {
 color: #000;
}
.sub-menu.mega-menu a::after {
 display: none;
}
.sub-menu.mega-menu ul li {
	margin: 0;
	padding: 0;
}
.sub-menu.mega-menu h3 {
	margin: 0;
	font-family: "Noto Sans", sans-serif;
}
/* =========================
  MOBILE NAV
  ========================= */
.navbar .la-bars {
 display: none;
}
.navbar .nav-links {
 line-height: 45px;
}
@media (max-width: 800px) {
 .navbar .la-bars {
   display: block;
   font-size: 25px;
   cursor: pointer;
 }
 nav .navbar .nav-links {
   position: fixed;
   top: 0;
   left: -100%;
   width: 100%;
   max-width: 270px;
   height: 100vh;
   background: #fff;
   padding: 20px;
   transition: 0.4s ease;
   overflow-y: auto;
   z-index: 1000;
 }
 .navbar .nav-links .sidebar-logo {
   display: flex;
   justify-content: space-between;
   align-items: center;
 }
 .navbar .links {
   display: block;
   margin-top: 20px;
 }
 .navbar .links li {
   display: block;
   padding: 0;
 }
 .navbar .links li a {
   color: #000;
 }
 .navbar .links li .arrow {
   float: right;
   line-height: 40px;
   transform: rotate(0);
 }
 /* disable hover behavior on mobile */
 .navbar .links li:hover > .sub-menu {
   opacity: 1;
   visibility: visible;
 }
 /* mobile submenu default */
 .navbar .links li .sub-menu {
   position: relative;
   top: 0;
   padding: 0;
   border: 0;
   background: transparent;
   opacity: 1;
   visibility: visible;
   display: none;
   transition: none;
   box-shadow: none;
 }
 /* JS controlled open */
 .navbar .links li.show-submenu > .sub-menu {
   display: block;
 }
 .navbar .links li.show-submenu > .arrow {
   transform: rotate(180deg);
 }
 /* mobile mega cleanup */
 .sub-menu.mega-menu {
   padding: 0 3%;
 }
 .sub-menu.mega-menu img {
   display: none;
 }
 .sub-menu.mega-menu h3,
 .sub-menu.mega-menu a {
   color: #333;
margin-bottom:0;
 }
}
@media (max-width: 370px) {
 nav .navbar .nav-links {
   max-width: 100%;
 }
}
.navbar .nav-links .sidebar-logo{ display: none; }
.navbar .nav-links .sidebar-logo{ align-items: center; justify-content: space-between; } .sidebar-logo .logo-name{ font-size: 25px; color: #fff; } .sidebar-logo .logo-name img { width:180px; } .sidebar-logo i, .navbar .la-bars{ font-size: 25px; color: #000; }
@media (max-width: 800px) {
.navbar .nav-links .sidebar-logo{ display: flex; }
}

/* Custom Styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.site-header {
    position: fixed;
    width: 100%;
    transition: all 0.5s ease-in-out;
    background: #fff;
    z-index: 5;
    top: 0;
}
/*.site-header.scroll-up {
  top: -115px;
}*/
.site-header.scroll-down {
  top: 0px;
}
.top-promo-line {
	background:#000;
	color:#fff;
	text-align:right;
	padding:8px 0;
	font-size:14px;
}

.top-promo-line-inner {
	width:90%;
	max-width:1140px;
	margin:0 auto;
}

.header-inner {
	width:90%;
	max-width:1140px;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
}

.navbar .top-side-nav ul {
	margin:0;
	padding:0;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
}
.navbar .top-side-nav ul li {
	margin-left:20px;
}
.navbar .top-side-nav i {
	color:#000000;
	font-size:25px;
}


.home-page-hero .home-hero-slide-1 {
	background:url(/images/home-hero-bg.jpg) right center no-repeat;
	background-size:cover;
	min-height:80vh;
	padding:180px 0 100px 0;
}

.home-page-hero .home-hero-slide-2 {
	background:url(/images/home-hero-bg.jpg) right center no-repeat;
	background-size:cover;
	min-height:80vh;
	padding:180px 0 100px 0;
}
.home-page-hero h3 {
	font-size:30px;
	font-weight:400;
	margin:0;
	padding:0;
}
.home-page-hero h2 {
	font-size:50px;
	font-weight:700;
	margin:0;
	padding:0;
}

.home-page-hero h4 {
	font-size:25px;
	font-weight:400;
	margin:0;
	padding:0;
	color:#333;
}

.home-page-hero .home-hero-CTA {
	margin-top:35px;
}

.home-page-hero .home-hero-CTA a {
	background:#000;
	padding:15px 25px;
	border-radius:12px;
	color:#fff;
	transition:all 0.5s;
	font-weight:600;
	text-transform:uppercase;
}

.home-product-collection {
	padding:70px 0;
}

.home-product-collection .home-collection-heading {
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin:0 0 25px 0;
	padding:0 0 25px 0;
	border-bottom:solid 1px #ccc;
}

.home-product-collection .home-collection-heading h2 {
	font-size:35px;
	text-transform:uppercase;
	margin-bottom:0;
}

.home-product-collection .home-collection-heading a {
	font-size:16px;
	color:#007aff;
	font-weight:600;
}

.product-grid-inner {
	text-align:center;
	position:relative;
	box-shadow:none;
	
}



.product-grid-inner img {
	transition: 0.3s;
	height:150px;
	object-fit:cover;
}

.product-grid-inner:hover img {
	transform: scale(0.9);
}

.product-grid-inner .product-grid-inner-overlay 
{
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	top:0;
	opacity:0;
	transition:all 0.5s;
	background-color:rgba(255, 255, 255, 0.6);
	display:flex;
	align-items:center;
	justify-content:center;
}

.product-grid-inner:hover .product-grid-inner-overlay {
	opacity:1;
}

.product-grid-inner:hover .product-grid-inner-overlay a {
		background:#000;
	padding:10px 20px;
	border-radius:50px;
	color:#fff;
	transition:all 0.5s;
	font-weight:600;
	text-transform:uppercase;
}

.product-grid-inner h4 {
	font-size:18px;
	font-weight:400;
	margin:15px 0 0 0;
	padding:0;
	font-family: "Noto Sans", sans-serif;
}

.product-grid-inner h5 {
	font-size:16px;
	font-weight:400;
	color:#007aff;
	margin:7px 0 0 0;
	font-family: "Noto Sans", sans-serif;
}

.home-artical-promo {
	padding:60px 0;
}

.home-artical-promo img {
	border-radius:10px;
}

.home-artical-promo h3 {
	font-size:20px;
	margin:5px 0 5px 0;
	padding:0;
}
.home-artical-promo a {
color:#007aff;
font-weight:500;
}

.home-brands {
	padding:80px 0;
}

.home-brands h2 {
		font-size:35px;
	text-transform:uppercase;
	margin:0 0 25px 0;
	padding:0 0 25px 0;
	border-bottom:solid 1px #ccc;
}

ul.brands-logos {
	margin:0;
	padding:0;
	list-style:none;
	justify-content:space-between;
	align-items:center;
	display:flex;
	flex-wrap:wrap;
}

.home-company-features {
	padding:60px 0;
	background:#f4f4f4;
	text-align:center;
}

.home-company-features h2 {
	font-size:35px;
	text-transform:uppercase;
	margin:0 0 25px 0;
	padding:0 0 25px 0;
	border-bottom:solid 1px #ccc;
	text-align:left;
}

.home-company-features i {
	font-size:60px;
	margin:25px 0;
	color:#666;
}

footer {
	background:#007aff;
	color:#fff;
	padding:0 0 20px 0;
}

footer a {
	color:#fff;
}

footer a:hover {
	color:#fff;
	text-decoration:underline;
}
footer img {
	max-width:180px;
	margin:0 0 15px 0;
}

footer h3 {
	font-size:20px;
	font-weight:700;
	text-transform:uppercase;
	margin:0 0 10px 0;
	font-family: "Noto Sans", sans-serif;
}

footer .footer-menu {
	margin:0;
	padding:0;
	list-style:none;
}

footer .footer-menu li {
	margin:0 0 10px 0;
}

.footer-top {
	background:#000;
	padding:25px 0;
	margin:0 0 50px 0;
}

.footer-top ul {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
	margin:0;
	padding:0;
	list-style:none;
}

.footer-top ul li {
	display:flex;
	align-items:center;
}

.footer-top ul li i {
	font-size:35px;
	margin-right:15px;
}

.footer-top ul li h3 {
	margin:0;
	padding:0;
	font-size:20px;
	font-weight:500;
}

.footer-lower {
	padding:25px 0 0 0;
	border-top:solid 1px #ccc;
	margin:40px 0 0 0;
	font-size:14px;
}

.footer-lower .footer-social {
	text-align:right;
}

.footer-lower .footer-social  ul {
	margin:0;
	padding:0;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
}

.footer-lower .footer-social  ul li {
	margin-left:15px;
	font-size:25px;
}

.top-promo-line-inner a {
	color:#fff;
}


.accordian_content_2{
    display:none;
	position:absolute;
	/*width:100%;*/
	background:#fff;
	padding:35px;
	z-index:2;
	border:solid 1px #ccc;
	/*left:0;*/
	top:100%;
  }
  .accordian_title_2{
    cursor:pointer;
	display:flex;
	align-items:center;
	font-size:16px;
	font-weight:500;
  }
  .accordian_title_2:after{
    float:right;
    font-size: 20px;
    line-height: 28px;
    content: "\f107";
    display: inline-block;
    font-family: 'Line Awesome Free';
    speak: none;
    font-style: normal;
    font-weight: 900;
    font-variant: normal;
    text-transform: none;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
	margin:0 0 0 7px;
  }
  .active_header_2 .accordian_title_2:after {
	  transform: rotate(180deg);
	  -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  
  .product-catalog-sort-filter {
	  display:flex;
	  align-items:center;
	  justify-content:space-between;
	  position:relative;
	  margin:0 0 20px 0;
	  padding:15px 0 20px 0 ;
	  border-bottom:solid 1px #ddd;
	  position:sticky;
	  top:0;
	  z-index:2;
	  background:#fff;
  }
  
  .product-catalog-sort {
	  min-width:40%;
  }
  .product-catalog-filter {
	  min-width:50%;
  }
  .product-catalog-filter ul {
	  margin:0;
	  padding:0;
	  list-style:none;
	  display:flex;
	  align-items:flex-start;
	  justify-content:space-between;;
  }
  
  .mobile-only {
	  display:none;
  }
  
  ul.filter-input li{
	  display:flex;
	  align-items:center;
	  margin-right:30px;
	  
  }
  
  ul.filter-input li input {
	  margin:0 5px 0 0;
  }
  
  ul.filter-input li label {
	  margin:0;
  }
  
  .form-group {
  display: block;
  margin-bottom: 15px;
}

.form-group input {
  padding: 0;
  height: initial;
  width: initial;
  margin-bottom: 0;
  display: none;
  cursor: pointer;
}

.form-group label {
  position: relative;
  cursor: pointer;
}

.form-group label:before {
  content:'';
  -webkit-appearance: none;
  background-color: transparent;
  border: 2px solid #007aff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px -15px 10px -12px rgba(0, 0, 0, 0.05);
  padding: 10px;
  display: inline-block;
  position: relative;
  vertical-align: middle;
  cursor: pointer;
  margin-right: 5px;
}

.form-group input:checked + label:after {
  content: '';
  display: block;
  position: absolute;
  top: 2px;
  left: 9px;
  width: 6px;
  height: 14px;
  border: solid #007aff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.filter-action {
background: #007aff;
    padding: 15px 25px;
    border-radius: 50px;
    color: #fff;
    transition: all 0.5s;
    font-weight: 600;
    text-transform: uppercase;
    height: auto;
    line-height: 100%;
    font-size: 15px;
    border: none;
}

.product-catalog-filter ul.filter-input {
	flex-direction:column;
	max-height:250px;
	flex-wrap:wrap;
	min-width:150px;
}

.filter-action-big {
	background: #007aff;
    padding: 15px 25px;
    border-radius: 50px;
    color: #fff;
    transition: all 0.5s;
    font-weight: 600;
    text-transform: uppercase;
    height: auto;
    line-height: 100%;
    font-size: 15px;
    border: none;
	width:60%;
	margin:0 auto;
}

.filter-action-big-wrapper {
	text-align:center;
}

.filter-button {
	background: #000;
    padding: 15px 25px;
    border-radius: 50px;
    color: #fff;
    transition: all 0.5s;
    font-weight: 600;
   /*text-transform: uppercase;*/
	font-size:15px;
	border:none;
	height:auto;
	line-height:100%;
	letter-spacing:0.1px;
}

.product-catalog-sort {
	display:flex;
	justify-content:flex-end;
	align-items:center;
}

.product-catalog-sort label {
	margin:0 5px 0 0;
}

.product-catalog-sort select {
	margin:0;
	font-size:16px;
	border:solid 2px #333;
	border-radius:10px;
}

.home-product-collection .row {
	margin-bottom:45px;
}

.product-pagination {
	margin:20px 0 0 0;
	padding:20px 0 0 0;
	border-top:solid 1px #ddd;
}

.pagination {
  margin: 0;
  padding: 0;
  text-align: center
}
.pagination li {
  display: inline
}

.pagination li a {
  display: inline-block;
  text-decoration: none;
  padding: 5px 10px;
  color: #000
}
.pagination li a {
  border-radius: 5px;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s
    
}
.pagination li a.active {
  background-color: #007aff;
  color: #fff
}
.pagination li a:hover:not(.active) {
  background-color: #000;
  color:#fff;
} 

.innerpage-hero {
	padding:160px 0 50px 0;
	background:#80c0db;
}

.innerpage-hero h2 {
	font-size:40px;
	margin:0;
}

.innerpage-hero p {
	max-width:70%;
	line-height:150%;
}

.filter-applied {
	display:flex;
	align-items:center;
	padding:20px 0;
}

.filter-applied h4 {
	margin:0;
}

.filter-applied ul {
	display:flex;
	align-items:center;
	margin:0;
	padding:0;
	list-style:none;
	flex-wrap:wrap;
}

.filter-applied ul li {
	background:#80c0db;
	margin-left:15px;
	padding:5px 10px;
	border-radius:50px;
}

.filter-applied ul li i {
	color:#000;
	font-weight:900;
	cursor:pointer;
}

.gallery-wrapper {
	max-width:600px;
	margin:50px auto;
}
.gallery-main-image {
	/*height:400px;
	background-size:cover;
	background-repeat:no-repeat;*/
}
.gallery-thumbnails {
	margin:0 15px 0 0;
	padding:0 25px 0 0;
	list-style:none;
	max-height:350px;
	overflow:hidden;
}

.gallery-thumbnails::-webkit-scrollbar {
    width: 10px;
}
 
.gallery-thumbnails::-webkit-scrollbar-track {
    background-color: #ebebeb;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.gallery-thumbnails::-webkit-scrollbar-thumb {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    background: #6d6d6d; 
}
.gallery-thumbnails li {
	width:80px;
	height:auto;
	margin:0 0 25px 0;
	cursor:pointer;
}
.gallery-thumbnails li img {
	width:100%;
	height:auto;
}
.breadcrumbs {
	margin-top:140px;
}

.breadcrumbs ul {
	margin:0;
	padding:0 0 25px 0;
	list-style:none;
	display:flex;
	font-size:13px;
}

.breadcrumbs ul li {
	padding-right:25px;
	position:relative;
}

.breadcrumbs ul li:After {
	    font-family: 'Line Awesome Free';
    font-weight: 900;
	content: "\f105";
	color:#999;
	position:absolute;
	right:5px;
	top:2px;
}

.breadcrumbs ul li a {
	color:#666;
	text-decoration:none;
}

h3.product-name {
	font-size:30px;
}

.product-details-wrapper {
	padding:60px 0;
}

.product-details-gallery {
	display:flex;
}

ul.features {
	margin:40px 0 40px 0;
	padding:0;
	list-style:none;
	font-size:14px;
}

ul.features li {
	display:flex;
	margin:0 0 20px 0;
	padding:0 0 10px 0;
	border-bottom:solid 1px #ddd;
}

ul.features li:last-child {
	border-bottom:0;
	}

ul.features li h4, ul.features li p {
	width:50%;
	margin:0;
	font-family: "Noto Sans", sans-serif;
}
.table {
  box-shadow: 0 1px 3px 0 rgba(0,0,0,0.12), 0 1px 2px 0 rgba(0,0,0,0.24);
  width: 100%;
  max-width: 100%;
  margin-bottom: 2em;
  background-color: #fff;
  border: 0;
  border-collapse: collapse;
  color: #212121;
  border-top:solid 1px #dfdfdf;
}
.table th,
.table td {
  text-align: left;
  /*padding: 1.6em;*/
  vertical-align: top;
  border: inherit;
}
.table tr {
  border-bottom: 1px solid #e1e1e1;
}
.table  th {
  font-weight: 600;
  color: #3f3f3f;
  vertical-align: bottom;
}

.total-price {
	margin:30px 0;
	display:flex;
	font-size:22px;
	align-items:center;
}

.total-price h4 {
	margin:0 15px 0 0;
	padding:0;
	font-family: "Noto Sans", sans-serif;
}

.total-price p {
	margin:0;
}

.add-to-cart-button {
	background: #007aff;
    padding: 15px 25px;
    border-radius: 50px;
    color: #fff;
    transition: all 0.5s;
    font-weight: 600;
    /*text-transform: uppercase;*/
	line-height:100%;
	height:auto;
	letter-spacing:0.1px;
	font-size:16px;
}

.add-to-cart-button span {
	font-size:20px;
	margin-right:5px;
}

td select, td input[type=text] {
	width:100%;
	margin-bottom:0;
}


.img-magnifier-glass {
  position: absolute;
  border: 3px solid #000;
  border-radius: 50%;
  cursor: none;
  /*Set the size of the magnifier glass:*/
  width: 200px;
  height: 200px;
  z-index: 999999;
}

.img-magnifier-glass:after {
    content: url(https://cdn3.iconfinder.com/data/icons/virtual-notebook/16/button_shape_line-512.png);
    height: 50px;
    width: 46px;
    position: absolute;
    transform: scale(0.3) rotate(61deg);
    right: -30px;
    bottom: 22px;
}



.tooltip {
  position: relative;
  display: inline-block;
}

.tooltip .tooltiptext {
  visibility: hidden;
  width: 180px;
  background-color: #555;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  padding: 5px;
  position: absolute;
  z-index: 1;
  bottom: 125%;
  left: 50%;
  margin-left: -60px;
  opacity: 0;
  transition: opacity 0.3s;
  font-weight:400;
 
}

.tooltip .tooltiptext::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #555 transparent transparent transparent;
}

.tooltip:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
}

td h4 {
	margin:0 0 5px 0;
	display:flex;
	align-items:center;
}

td i {
	font-size:18px;
	margin-left:5px;
}

td input {
	margin-bottom:0;
}

.product-options-radio {
	margin:0;
	padding:0;
	list-style:none;
}

.product-options-radio li {
	display:flex;
	align-items:center;
	margin-bottom:5px;
}

.magnify {
  width: 400px;
  /*margin: 50px auto;*/
  position: relative;
}

/*Lets create the magnifying glass*/

.large {
  width: 175px;
  height: 175px;
  position: absolute;
  border-radius: 100%;
  /*Multiple box shadows to achieve the glass effect*/
  box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.85),  0 0 7px 7px rgba(0, 0, 0, 0.25),  inset 0 0 40px 2px rgba(0, 0, 0, 0.25);
  /*Lets load up the large image first*/
  background-repeat:no-repeat;
  /*hide the glass by default*/
  display: none;
}

.breadcrumbs .container {
	border-bottom:solid 1px #ddd;
}

.product-details-wrapper .five.columns{
	border-left:solid 1px #ddd;
	padding-left:50px;
	max-height:400px;
	overflow-y:auto;
}

.product-details-wrapper .five.columns::-webkit-scrollbar {
    width: 10px;
}
 
.product-details-wrapper .five.columns::-webkit-scrollbar-track {
    background-color: #ebebeb;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.product-details-wrapper .five.columns::-webkit-scrollbar-thumb {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    background: #6d6d6d; 
}

.product-name {
	margin:0;
	font-family: "Noto Sans", sans-serif;
}

.brand-name {
	font-weight:normal;
	color:#666;
	margin:0 0 15px 0;
	font-family: "Noto Sans", sans-serif;
}

.table-heading {
	margin: 0 0 15px 0;
	font-family: "Noto Sans", sans-serif;
}

.product-details-row {

    position:relative;
    
    }
.product-details-left{
  position:sticky;
  top:100px;
  width:50%;
 
}
.product-details-right{
/*should be the same as the image height*/
	margin-top:-300px;
	width:45%;
	height:fit-content;
	margin-left:55%;
}


.accordian_content_3{
    display:none;
  }
  .accordian_title_3{
    cursor:pointer;
  }
  .accordian_title_3:after{
    float:right;
    font-size: 20px;
    line-height: 28px;
    content: "\f107";
    display: inline-block;
    font-family: 'Line Awesome Free';
    speak: none;
    font-style: normal;
    font-weight: 900;
    font-variant: normal;
    text-transform: none;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .active_header_3 .accordian_title_3:after {
	  transform: rotate(180deg);
	  -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  
  
  .modal {
  position: fixed;
  top: 0px;
  pointer-events: none;
  left: 0px;
  background: rgba(51, 51, 51, 0.9);
  width: 100vw;
  height: 100vh;
  z-index: 100;
  opacity: 0;
  transition: 0.3s;
}
.modal.active {
  opacity: 1;
  pointer-events: auto;
}
.modal.active .box {
  top: 50%;
}
.modal#success h1 {
  font-size: 1.5em;
}
.modal .close {
  position: absolute;
  top: -20px;
  right: -20px;
  cursor: pointer;
  color: #ddd;
}
.modal .box {
  background: #fff;
  display: block;
  box-sizing: border-box;
  border-radius: 5px;
  /*text-align: center;*/
  padding: 20px;
  position: absolute;
  top: 70%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.3s;
}
.glass-measurements {
	padding:15px 0;
	margin:15px 0;
	border-top:solid 1px #ddd;
}

.glass-measurements h3 {
	margin-bottom:0;
	font-family: "Noto Sans", sans-serif;
}
.glasses-free-price-list  {
	list-style:none;
	margin:15px 0 0 0;
	padding:15px 0 0 0;
	border-top:solid 1px #ddd;
}

.glasses-free-price-list li {
	position:relative;
	padding:0 0 0 25px;
	list-style:none;
	margin:0 0 10px 0;
}

.glasses-free-price-list li:before {
	font-family: 'Line Awesome Free';
    font-weight: 900;
	content: "\f00c";
	position:absolute;
	top:0;
	left:0;
	font-size:18px;
	color:#007aff;
}

.glasses-questions {
	margin:20px 0 0 0;
	padding:20px 0 15px 0;
	border-top:solid 1px #ddd;
}

.glasses-questions ul {
	margin:0;
	padding:0;
	list-style:none;
}

.glasses-questions ul h4 {
	margin-bottom:5px;
	font-family: "Noto Sans", sans-serif;
}

.glasses-questions ul .glasses-questions-radio {
	display:flex;
}
.glasses-questions ul .glasses-questions-radio label {
	margin:0 20px 0 3px;
}
.glasses-questions ul .glasses-subtype {
	margin-top:25px;
}
.glasses-additional-options h4 {
	font-family: "Noto Sans", sans-serif;
}

#glassesuse ul {
	list-style:outside;
}

.cart-heading {
	margin-top:150px;
	padding:0 0 40px 0;
}

.cart-heading h2 {
	font-size:25px;
	position:relative;
	padding:0 0 0 35px;
	margin:0;
}

.cart-heading h2:before {
	font-family: 'Line Awesome Free';
    font-weight: 900;
	content: "\f290";
	font-size:30px;
	position:absolute;
	left:0;
	top:0;
	color:#666;
}

.cart-item {
	padding:15px;
	border:solid 1px #ddd;
	border-radius:15px;
	margin:0 0 20px 0;
}
.delivery-date {
	padding:7px 0 15px 0;
	margin:0 0 15px 0;
	border-bottom:solid 1px #ddd;
}

.cart-table  {
	padding:0 0 10px 0;
	margin:0 0 10px 0;
}

.cart-item .cart-table th, .cart-item .cart-table td {
	border-bottom:none;
	padding:0;
}

.cart-table h2 {
	font-size:18px;
}

.cart-table h3 {
	font-size:14px;
}

.cart-item .accordian_title_3 {
	font-family:Noto Sans;
	border-top:solid 1px #ddd;
	margin:20px 0 20px 0;
	padding:20px 0 0 0;
	}

.cart-item .accordian_title_3:after {
	line-height:20px;
}

.cart-item .accordian_title_3 span {
	margin-left:7px;
	color:#444;
}

.cart-options-list {
	margin:0;
	padding:0;
	list-style:none;
}

.cart-options-list li {
	display:flex;

}

.cart-options-list li h4 {
	width:60%;
	font-family:Noto Sans;
	font-weight:600;
	line-height:130%;
	margin-bottom:10px;
}

.cart-options-list li p {
	width:30%;
	margin-left:10%;
}

.cart-payment-options {
	padding:20px 15px;
	background:#f4f4f4;
	border-radius:15px;
}
.cart-payment-options h3 {
	margin:0 0 15px 0;
	font-family: "Noto Sans", sans-serif;
}
.cart-payment-options h4 {
	font-family: "Noto Sans", sans-serif;
}

.cart-payment-options .table {
	background:none;
	border:none;
	box-shadow:none;
}

.cart-payment-options .table tr, .cart-payment-options .table th {
	border:none;
}

.cart-payment-options .table p {
	margin-bottom:0;
}

.coupon-code input {
	width:100%;
	margin:0 7px 5px 0;
}

.coupon-code button {
	background: #14161c;
	padding: 13px 15px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1.5px solid #14161c;
	border-radius: 12px;
	color: #fff;
	font-weight: 600;
/*	text-transform: uppercase;*/
	height: auto;
	line-height: normal;
	cursor: pointer;
	transition: transform .12s, background .15s;
}

.coupon-code button:hover {
	background: rgb(80, 80, 80);
	transform: translateY(-1px);
	border-color: rgb(136, 136, 136);
}

.coupon-code button:focus-visible {
	outline: 2px solid #2d62ff;
	outline-offset: 3px;
}

.coupon-notice {
	text-align: left;
	padding: 0 0 10px 0;
	color: #0f9d72;
}

.coupon-text {
	padding: 0 0 7px 0;
	margin: 0 0 15px 0;
	font-weight: 600;
	color: #0f9d72;
	text-align: left;
}

.cart-total {
		border-top:solid 1px #ddd;
}

.cart-total h4 {
	font-size:20px;
}

.cart-total td:last-child {
	font-size:20px;
}

.secure-checkout {
	background: #007aff;
    padding: 15px 15px;
    border-radius: 50px;
    color: #fff;
    transition: all 0.5s;
    font-weight: 600;
    text-transform: uppercase;
	height:auto;
	line-height:100%;
	width:100%;
	margin:0 auto;
	border:none;
	font-size:18px;
}

.cart-content-wrapper {
	padding:0 0 60px 0;
}

/*.cart-item .quantity {
	text-align:right;
}
.cart-item .quantity h4 {
	display:inline-block;
	margin:0 7px 0 0;
	font-family: "Noto Sans", sans-serif;
}*/

.cart-item .quantity select {
	margin:0;
}

.cart-item .quantity label {
	display:inline-block;
	margin:0 5px;
}
.cart-item .quantity-price h3 {
	font-family: "Noto Sans", sans-serif;
}
.cart-item .total h3 {
	font-family: "Noto Sans", sans-serif;
	margin-bottom: 0;
}
.cart-item .patient-name h3 {
	font-family: "Noto Sans", sans-serif;
	margin-bottom: 0;
	margin-right: 20px;
}

.coupon-code-input {
	display:flex;
}

img.small {
	max-height:270px;
	width:auto;
}

.checkout-content-wrapper {
	margin:150px 0 0 0;
	padding:0 0 60px 0;
}

.checkout-content-wrapper input[type=text], .checkout-content-wrapper input[type=email], .checkout-content-wrapper input[type=number], .checkout-content-wrapper select {
	width:100%;
	height:40px;
	line-height:42px;
	margin:0;
}

.form-input {
	padding:10px 0;
	display:flex;
	align-items:center;
}

.form-input input[type=checkbox] {
	margin:0 7px 0;
	height:20px;
	width:20px;

}
.country {
	padding:10px 0;
}

.country h3 {
	margin:0 0 5px 0;
}

.checkout-content-wrapper h2 {
	margin:0 0 10px 0;
}

.checkout-item {
	padding:15px;
	border:solid 1px #ddd;
	margin:0 0 20px 0;
	border-radius:10px;
}

.checkout-item h3 {
	margin:0;
	padding:0 ;
	font-family: "Noto Sans", sans-serif;
	/*border-bottom:solid 1px #ddd;*/
}
.checkout-item h4 {
	font-family: "Noto Sans", sans-serif;
}

.checkout-item .cart-options-list li h4 {
	width:50%;
	font-weight:400;
}

.checkout-item .cart-options-list li p {
	width:50%;
}

.checkout-item .price {
	display:flex;
	justify-content:space-between;
	margin:10 0 0 0;
	padding:10px 0 0 0;
	/*border-top:solid 1px #ddd;*/
	align-items:center;
}

.checkout-item .price h4 {
	font-size:17px;
	margin:0
}

.checkout-item .delivery-date {
	margin:10px 0 0 0;
	padding:10px 0 0 0;
	border-top:solid 1px #ddd;
	border-bottom:none;
}

.checkout-item .delivery-date h4 {
	margin-bottom:0;
}

.checkout-button button {
	background: #43bdf9;
	padding: 15px 40px;
	border-radius: 12px;
	color: #fff;
	transition: all 0.5s;
	font-weight: 600;
	/*    text-transform: uppercase;*/
	height: auto;
	line-height: 100%;
	margin: 20px 0 20px 0;
	border: none;
	font-size: 15px;
}


.modal#login-modal .box {
	min-width:300px;
}

.modal#login-modal .box input {
	width:100%;
}

.modal#login-modal .box .form-input {
	width:100%;
	justify-content:center;
}

.modal#login-modal .box button, .modal#forgot-password-modal .box button {
	background: #000;
    padding: 10px 20px;
    border-radius: 50px;
    color: #fff;
    transition: all 0.5s;
    font-weight: 600;
/*    text-transform: uppercase;*/
	height:auto;
	line-height:100%;
	font-size:15px;
}

.modal#login-modal .forgot-password {
	text-align:right;
	padding:10px 0;
}

.modal#login-modal h3 {
	text-align:center;
}
.checkout-content-wrapper .modal-trigger {
	cursor:pointer;
	color:#007aff;
}


.form-input input[type=text], .form-input input[type=email], .form-input input[type=number], .form-input select, .form-input [type=password], .form-input textarea {
	width:100%;
	height:40px;
	line-height:42px;
	margin:0;
}

.password-wrapper {
	width:100%;
	position:relative;
}

.toggle-password {
	font-size:20px;
	top:10px;
	right:10px;
	position:absolute;
}
.checkbox-input {
	align-items:start;
	line-height:140%;
}

.checkbox-input input[type=checkbox] {
	width:20px;
	height:20px;
}

.login-register-wrapper {
/*	margin-top: 150px;
	padding: 0 0 60px 0;*/
	padding-top: 220px; /* adjust to match your header height */
	padding-bottom: 60px;
}

.register-wrapper {
	position:relative;
	min-height:300px;
}

.register-wrapper:before {
	content:'';
	display:block;
	width:1px;
	height:100%;
	position:absolute;
	background:#ddd;
	left:-25%;
	top:0;
}

.login-register-wrapper h2 {
	margin:0 0 10px 0;
}

/*.login-register-wrapper button {
    background: #000;
    padding: 15px 25px;
    border-radius: 50px;
    color: #fff;
    transition: all 0.5s;
    font-weight: 600;
    text-transform: uppercase;
	height:auto;
	line-height:100%;
}*/

.btn-register {
	width: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 15px 24px;
	border: 1.5px solid #14161c;
	border-radius: 12px;
	background: #14161c;
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	transition: transform .12s, background .15s;
	height: auto;
	line-height: normal;
	text-transform: none;
	cursor: pointer;
}

.btn-register:hover {
	background: #000;
	transform: translateY(-1px);
}

.btn-register:focus-visible {
	outline: 2px solid #2d62ff;
	outline-offset: 3px;
}

.login-register-wrapper .forgot-password {
text-align:right;
cursor:pointer;
}

.order-success-container {
	width:90%;
	max-width:750px;
	margin:0 auto;
}

.order-success-container table img {
	max-width:120px;
}

.order-success-wrapper {
	padding:150px 0 60px 0;
}

.order-success-wrapper i {
	display:block;
	text-align:center;
	font-size:60px;
	color:#007aff;
}

.order-success-container h2 {
	margin:0 0 10px 0;
	text-align:center;
}

.order-success-container p.order-number {
	text-align:center;
	font-size:17px;
}

h3.order-summery-heading {
	margin:70px 0 15px 0;
	font-size:18px;
	
}

.order-success-container table h3 {
	margin: 0 0 5px 0;
	font-family: "Noto Sans", sans-serif;
}

.order-success-container table h4 {
	margin: 0 0 5px 0;
	font-family: "Noto Sans", sans-serif;
}

.form-input  h5 {
	margin:0 0 5px 0;
	font-size:15px;
}

.flex-top-form {
	align-items:flex-start;
}

.checkout-product-heading {
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:0 0 15px 0;
}

.section-split-heading {
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:0 0 15px 0;
	margin:0 0 15px 0;
	border-bottom:solid 1px #ddd;
}

.checkout-product-heading i, .section-split-heading i {
	font-size:18px;
	cursor:pointer;
	color: #007aff;
}

.section-split-heading h3 {
	margin:0;
}

.review-order-address {
	padding:15px;
	border:solid 1px #ddd;
	border-radius:15px;
	margin:0 0 15px 0;
}

.checkout-content-wrapper h2 {
	margin:0 0 30px 0;
}

.review-order-address .cart-options-list li h4 {
	width:30%
}

.review-order-address .cart-options-list li p {
	width:60%;
}

.eye-health {
		padding:15px;
	border:solid 1px #ddd;
	border-radius:15px;
	margin:0 0 15px 0;
}
.eye-health h3 {
	margin:0 0 5px 0;
}

.tax-invoice-wrapper {
	margin:150px 0 0 0;
}


.tax-invoice-wrapper .section-split-heading {
	border-bottom:none;
}

.tax-invoice-wrapper .section-split-heading h2 {
	margin:0 0 5px 0;
}

.tax-invoice-status {
	font-weight:700;
	font-size:15px;
	color:#007aff;
}

.invoice-table {
	margin:25px 0 0 0;
}

.invoice-table .table {
	border-top:none;
	border-radius:15px;
}

.invoice-table .table td h3 {
	margin:0 0 10px 0;
}


.invoice-table .table .cart-options-list li h4 {
	width:40%;
}

.invoice-table .table .cart-options-list li p {
	width:60%;
	margin:0;
}

.invoice-footer {
	text-align:center;
	padding:25px 0;
}

.invoice-footer h3 {
	margin:0 0 10px 0;
}



.invoice-table table tr:last-child {
	border-bottom:none;
}

.my-orders-wrapper {
	margin:150px 0 60px 0;
}

.my-orders-wrapper table h3 {
	margin:0 0 5px 0;
}

.my-orders-wrapper table a {
	font-size:16px;
	font-weight:600;
}
.my-account-wrapper {
	margin:150px 0 60px 0;
}

.top-login-link {
	position:relative;
}

.top-login-link .login-menu {
	position:absolute;
	top:110%;
	right:-5px;
	width:150px;
	padding:20px 15px 15px 15px;
	background:#fff;
	border-radius:7px;
	border:solid 1px #ddd;
}

.top-login-link .login-menu i {
	position:absolute;
	cursor:pointer;
	font-size:20px;
	right:5px;
	top:5px;
}

.top-login-link .login-menu ul {
	margin:0;
	padding:0;
	list-style:none;
}

.top-login-link .login-menu ul li {
	margin:0 0 10px 0;
}

.top-login-link .login-menu ul li:last-child {
	margin:0;
}

.top-login-link .login-menu ul li a {
	color:#000;
}




.login-menu:after {
  content: "";
  position: absolute;
  border: 1px solid #ccc;
  right: 10px;
  width: 10px;
  height: 10px;
  background: inherit;
  top:-5.5px;
  margin: auto;
  transform: rotate(45deg);
  clip-path: polygon(0 0, 0% 100%, 100% 0);
}

#gallery-large .box {
	width:90%;
	height:90vh;
}

#gallery-large .box img.small {
	max-height:none;
}

#gallery-large .box .magnify {
	width:100%;
	max-width:800px;
}


.home-page-hero .owl-carousel .owl-nav button.owl-prev {
	position:absolute;
	color:#fff;
	left:5px;
	top:40%;
	font-size:50px;
}

.home-page-hero .owl-carousel .owl-nav button.owl-prev:hover {
	background:none;
}

.home-page-hero .owl-carousel .owl-nav button.owl-prev:hover span {
	color:#cccccc;
}
.home-page-hero .owl-carousel .owl-nav button.owl-next {
	position:absolute;
	color:#fff;
	right:5px;
	top:40%;
	font-size:50px;
}

.home-page-hero .owl-carousel .owl-nav button.owl-next:hover {
	background:none;
}

.home-page-hero .owl-carousel .owl-nav button.owl-next:hover span {
	color:#cccccc;
}
.main-image {
	cursor:pointer;
}
img.main-image {
	width: 400px;
	height: 300px;
	object-fit: contain;
}

#scroll-div {
	max-height:250px;
	overflow:hidden;
	 padding: 10px;
}

.product-details-gallery-arrows {
	position:relative;
}

.product-details-gallery-arrows #next {
	position:absolute;
	top:-25px;
	cursor:pointer;
	left:30%;
	font-size:20px;
	
}

.product-details-gallery-arrows #prev {
	position:absolute;
	bottom:-25px;
	cursor:pointer;
	left:30%;
	font-size:20px;
	
}
/* Responsive style mobile view
–––––––––––––––––––––––––––––––––––––––––––––––––– */
@media (max-width:760px){ 
nav .logo img, .sidebar-logo img {
	max-width:120px;
}

.home-page-hero {
	margin:130px 0 0 0;
}

.home-page-hero .home-hero-slide-1, .home-page-hero .home-hero-slide-2 {
	padding:100px 0 60px 0;
	min-height:auto;
}
.home-page-hero h3 {
	font-size:25px;
}
.home-page-hero h2 {
	font-size:40px;
}
.home-collection-heading {
	flex-direction:column;
	text-align:center;
}
.product-grid-inner {
	margin-bottom:25px;
}

.home-artical-promo-inner {
	margin-bottom:35px;
}
.home-brands {
	padding:0 0 40px 0;
}
.brands-logos li {
	width:50%;
	margin-bottom:20px;
}
.footer-top ul li {
	margin-bottom:20px;
	width:100%;
}

.footer-lower .six.columns {
	padding:5px 0;
	text-align:center;
}

.footer-lower .footer-social ul {
	justify-content:center;
}

.accordian_content{
    display:none;
  }
  .accordian_title{
    cursor:pointer;
  }
  .accordian_title:after{
    float:right;
    font-size: 20px;
    line-height: 28px;
    content: "\f107";
    display: inline-block;
    font-family: 'Line Awesome Free';
    speak: none;
    font-style: normal;
    font-weight: 900;
    font-variant: normal;
    text-transform: none;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .active_header .accordian_title:after {
	  transform: rotate(180deg);
	  -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .mobile-only {
	  display:block;
  }
  
  .desktop-only {
	  display:none;
  }
  
  
  .filter-options {
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: #fff;
  background-color: #fff;
  overflow-x: hidden;
  transition: 0.5s;

}




.filter-options a {
  padding: 8px;
  text-decoration: none;
  font-size: 36px;
  color: #818181;
  display: block;
  transition: 0.3s;
}

.filter-options a:hover, .overlay a:focus {
  color: #f1f1f1;
}

.filter-options .closebtn {
  position: absolute;
  top: 80px;
  right: 10px;
  font-size: 40px;
}

.filter-options ul {
	padding:35% 5% 15% 5%;
	flex-direction:column;
}
.accordian_content_2 {
	position:relative;
	border:none;
	padding:15px;
}

.product-catalog-filter ul.filter-input {
	min-width:auto;
	max-height:none;
	padding:10px;
	flex-direction:row;
	margin:0;
}

.product-catalog-filter ul.filter-input li {
	width:48%;
	margin:0.5% 1%;
}
.accordian_title_2 {
	padding:15px 0;
	border-bottom:solid 1px #ddd;
	justify-content:space-between;
}

.product-catalog-filter ul li {
	width:100%;
}

.product-catalog-sort {
	/*flex-direction:column;*/
}

.home-product-collection .row {
	margin-bottom:0;
} 
.innerpage-hero p {
	max-width:100%;
}
.filter-applied {
	flex-direction:column;
}
.filter-applied li {
	margin:1%;
}
.product-catalog-filter {
	min-width:30%;
}

.product-catalog-sort {
	min-width:70%;
}
.filter-button {
	margin-bottom:0;
}

.product-details-wrapper .five.columns {
	border-left:none;
	padding-left:0;
	margin-left:0;
}
.magnify {
	max-width:400px;
	width:100%;
}
.product-details-gallery {
	flex-direction:column-reverse;
}
.gallery-thumbnails {
	display:flex;
	flex-wrap:wrap;
}

.gallery-thumbnails li {
	width:20%;
	margin:1%;
}

.product-description {
	margin:25px 0 0 0;
}
.product-details-wrapper {
	padding:30px 0;
}

.product-details-left {
	position:relative;
	width:100%;
	top:0;
}
.product-details-right {
	margin:0;
	width:100%;
}
.register-wrapper:After {
	display:none;
}

.table-wrapper table tr th:nth-child(2) {
	min-width:300px;
}
.table-wrapper {
    max-width: 100%;
    overflow-x: auto;
}
}
/* Responsive style tablet view
–––––––––––––––––––––––––––––––––––––––––––––––––– */

@media screen and (max-width: 1200px) and (min-width: 768px) {
.home-product-collection .three.columns {
	width: 48%;
    margin: 2% 1%;
}
.footer-top ul li {
	width:48%;
	margin:2% 1%;
}

}

@media screen and (max-width: 1100px) and (min-width: 768px) {
	.product-details-wrapper .six.columns {
	width:100%;
}
.product-details-wrapper .five.columns {
	width:100%;
	border-left:none;
	padding-left:0;
	margin-left:0;
}
	 }


@media screen and (max-width: 768px) and (min-width: 540px) {
	.home-product-collection .three.columns {
		width: 48%;
		margin: 2% 1%;
	}

	.footer-top ul li {
		width: 48%;
		margin: 2% 1%;
	}

	.footer-upper .four.columns {
		width: 100%;
	}

	.footer-upper .three.columns {
		width: 35%;
		margin: 1.5%;
	}

	.footer-upper .two.columns {
		width: 20%;
		margin: 1.5%;
	}

	.accordian_title {
		font-size: 15px;
	}

	.product-details-wrapper .five.columns {
		border-left: none;
		padding-left: 0;
		margin-left: 0;
	}

	#btnCheckout {
		width: 100%;
	}

}

:root {
    --ink: #14161c;
    --ink-soft: #3a3f4b;
    --muted: #6b7280;
    --faint: #99a0ac;
    --line: #e7e9ee;
    --line-soft: #f0f2f5;
    --canvas: #f5f6f9;
    --surface: #ffffff;
    --field-bg: #fbfcfd;
    --accent: #43bdf9;
    --accent-ink: #00abff;
    --accent-wash: #eef3ff;
    --mint: #0f9d72;
    --mint-wash: #e7f6f0;
    --footer-bg: #16181e;
    --footer-ink: #aeb4c0;
    --shadow-sm: 0 1px 2px rgba(20,22,28,.04), 0 1px 1px rgba(20,22,28,.03);
    --shadow-md: 0 8px 30px -12px rgba(20,22,28,.14), 0 2px 6px rgba(20,22,28,.04);
    --shadow-lg: 0 10px 40px -16px rgba(20,22,28,.18), 0 2px 8px rgba(20,22,28,.05);
    --radius: 16px;
    --radius-sm: 11px;
    --radius-fld: 10px;
}

nav .navbar .links li .sub-menu.mega-menu {
    -webkit-transition: opacity 100ms, visibility 100ms;
    transition: opacity 100ms, visibility 100ms;
}
nav .navbar .links li a:after {
    background: #3C68AE;
}
.top-login-link .login-menu ul {
    flex-direction:column;
}
.home-page-hero .home-hero-CTA a:hover {
    background:#505050;
}
.home-product-collection .home-collection-heading a {
    color:#3C68AE;
}
.home-artical-promo a {
    color:#3C68AE;
}
.innerpage-hero {
    padding: 110px 0 0 0;
}
.innerpage-hero h2{
    font-size: 30px;
}
.home-product-collection {
    padding: 40px 0;
}
.product-catalog-description {
    padding-bottom: 20px;
}
.product-grid-inner h5 {
    color: #E07682;
}
.product-grid-inner img {
    object-fit: contain;
}
/*.product-grid-inner:hover .product-grid-inner-overlay a:hover {
    background:#505050;
}*/
.product-grid-inner-link, .product-grid-inner-link:hover {
    color: #000;
    cursor: pointer;
}
.form-group label:before {
    border: 2px solid #3C68AE;
}
.form-group input:checked + label:after {
    border: solid #3C68AE;
    border-width: 0 2px 2px 0;
}
.filter-action, .filter-action:focus {
    background: #76ABC9;
    border-color: #76ABC9;
}
.filter-action:hover {
    background:#C3DDEF;
    border-color:#C3DDEF;
    color:#000;
}
.accordian_content_2 {
    width: -moz-available;
    width: -webkit-fill-available;
}
.product-catalog-filter ul.filter-input {
    justify-content: flex-start;
}
.glasses-color {
    display: flex;
    align-items: center;
}
.glasses-color h4 {
    margin:0;
    margin-right:10px;
}
/*.add-to-cart-button, .add-to-cart-button:focus, .secure-checkout, .secure-checkout:focus, .checkout-button button, .checkout-button button:focus {
    background: #76ABC9;
    border-color: #76ABC9;
}
.add-to-cart-button:hover,.secure-checkout:hover,.checkout-button button:hover {
    background:#C3DDEF;
    border-color:#C3DDEF;
    color:#000;
}
.add-to-cart-button:disabled, .secure-checkout:disabled, .checkout-button button:disabled {
    opacity:0.5;
    cursor:not-allowed;
}*/
.checkout-button button {
    padding: 15px 22px;
}
input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="text"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="password"]:focus, textarea:focus, select:focus {
    border: 1px solid #3C68AE;
}
select {
    color: #212121;
}
select option {
    color: #212121;
}
.checkout-product-heading i, .section-split-heading i {
    color: #212121;
}
.pagination li a.active {
    background-color: #76ABC9;
}
/*footer {
    background:#505050;
}*/
.cart-item .product-details {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}
.cart-item .product-details .product-name {
    font-size: 18px;
}
.cart-item .product-details .brand-name {
    font-size: 14px;
}
.cart-item .product-details .action {
    display: flex;
    gap: 10px;
    font-size: 25px;
}
.cart-item .product-details .action a{
    color: #000;
    margin-top: -4px;
}
.cart-item .quantity-price {
    display:flex;
    justify-content:space-between;
}
.cart-item .quantity-price .lens-quantity{
    text-align:right;
}
.cart-item .quantity-price .lens-quantity .quantity{
    margin-bottom:1rem;
}
/*.cart-item .quantity-price h3 {
    display: inline-block;
    margin: 0 7px 0 0;
}*/
/*.cart-item .quantity-price label {
    display: inline-block;
    margin: 0 5px;
    padding: 10px 0 0 52px;
}*/
.cart-item .price {
    display: flex;
    justify-content: space-between;
}
.cart-item .price h3 {
    font-family: "Noto Sans", sans-serif;
    margin-bottom: 0;
}
.cart-item .quantity {
    display: flex;
    justify-content: space-between;
}
.cart-item .quantity h3 {
    font-family: "Noto Sans", sans-serif;
    margin-bottom: 0;
}
.cart-item .total {
    display: flex;
    justify-content: space-between;
    margin-top:20px;
}
.cart-item .patient-name {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}
.cart-count {
    background: #C3DDEF;
    padding: 0 8px;
    border-radius: 10px;
    color: #000;
}
.coupon-code .delete-promocode {
    padding-left:10px;
    cursor:pointer;
}
.text-error {
    color:#e10000;
}
.text-success {
    color: darkgreen;
    font-weight: bold;
    margin-bottom: 10px;
}
.text-validation-error {
    color: #e10000;
}
.input-validation-error {
    border-color: #e10000 !important;
}
.validation-summary {
    display: flex;
    flex-direction: column;
    margin: 0 0 30px 0;
    color: #e10000;
}
.validation-summary span {
    padding: 5px 0;
}
.username-wrapper {
    width: 100%;
}
.form-input .small-select {
    width: 12%;
    margin: 0 6px;
}
.div-register-company, .div-shipping-company, .div-billing-company {
    display:none;
}
.billing-address-option label {
    margin: 0 20px 0 3px;
}
.order-confirmation {
    padding: 15px;
}
#ConfirmationMessage {
    color: #e10000;
}
.show-form {
    display:block;
    background:white;
}
.hide-form {
    display:none;
}
.hide {
    display:none !important;
}
.show {
    display:flex !important;
}
.show-flex {
    display:flex !important;
}
#eyehealth button, .order-success-wrapper button {
    background: #000;
    padding: 15px 25px;
    border-radius: 50px;
    color: #fff;
    transition: all 0.5s;
    font-weight: 600;
    text-transform: uppercase;
    height: auto;
    line-height: 100%;
}
#eyehealth button:hover, .login-register-wrapper button:hover, .order-success-wrapper button:hover {
    background:#505050;
}
/*.footer-lower .footer-social ul li {
    font-weight:normal;
}*/
.payment-form .form-input {
    flex-direction: column;
    align-items: flex-start;
}
.payment-form .label {
    margin-bottom: 2px;
}
.my-orders-wrapper table a {
    color: #3C68AE;
}
.my-orders-wrapper table h3 {
    font-family: "Noto Sans", sans-serif;
}
.invoice-table .table .cart-options-list li .attributes {
    width: 60%;
    margin: 0;
}
.invoice-table .product-row .product-title {
    font-family: "Noto Sans", sans-serif;
}
.text-right {
    text-align: right !important;
}
.tax-invoice-status {
    color: #3C68AE;
}
.my-orders-wrapper .mobile-view-wrapper a {
    color: #3C68AE;
}

.my-orders-wrapper .mobile-view-wrapper a {
    font-size: 16px;
    font-weight: 600;
}
.my-orders-wrapper .my-orders-detail {
    border-bottom: 1px solid #E1E1E1;
    padding: 10px 0;
    color: #212121;
    display:flex;
    flex-direction:column;
}
.my-orders-wrapper .my-orders-detail div {
    margin-bottom: 20px;
    display:flex;
}
.my-orders-wrapper .my-orders-detail div:first-child {
    margin-top: 20px;
}
.my-orders-wrapper .my-orders-detail div:last-child {
    margin-bottom: 20px;
}
.my-orders-wrapper .my-orders-detail div strong {
    min-width: 150px;
}
.my-orders-wrapper .my-orders-detail p {
    padding:0;
    margin:0;
}
.loading-wrapper {
    display: inline;
    vertical-align: middle;
    margin-left: 10px;
}
.loading-wrapper img {
    width:50px;
}
/* Wrapper */
.skeleton-wrapper {
    display: flex;
    gap: 16px;
}

/* Card */
.skeleton-card {
    width: 300px;
    padding: 16px;
    border-radius: 8px;
    background: #f3f3f3;
}

/* Elements */
.skeleton-title {
    height: 30px;
    width: 60%;
    /*margin-bottom: 12px;*/
}

.skeleton-line {
    height: 14px;
    width: 100%;
    margin-bottom: 8px;
}

    .skeleton-line.short {
        width: 70%;
    }

/* Shared animation */
.skeleton-title,
.skeleton-line {
    background: linear-gradient( 90deg, #e0e0e0 25%, #f5f5f5 37%, #e0e0e0 63% );
    background-size: 400% 100%;
    animation: shimmer 1.4s ease infinite;
    border-radius: 4px;
}

@keyframes shimmer {
    0% {
        background-position: 100% 0;
    }

    100% {
        background-position: -100% 0;
    }
}

/* Utility */
.hidden {
    display: none;
}
.mr-1 {
    margin-right: 10px !important;
}
td i{
    font-size:25px;
}
@media screen and (min-width: 768px) {
    .align-flex-end {
        align-items: flex-end !important;
    }
}


/* =======================================
   Navbar spacing fix
======================================= */

nav {
    width: 100%;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
}


    nav .navbar {
        padding: 0 24px !important;
        box-sizing: border-box;
    }

        /* Desktop logo */
        nav .navbar .logo {
            display: flex;
            align-items: center;
            margin-left: 8px;
            margin-right: 40px;
            flex-shrink: 0;
        }

/* Brand */
.logo .brand,
.sidebar-logo .brand {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-decoration: none;
    white-space: nowrap;
}

/* Logo text */
.logo .mark,
.sidebar-logo .mark {
    font-family: "Space Grotesk", sans-serif;
    font-size: 32px;
    font-weight: 700;
    line-height: 1;
    color: #111827;
}

    .logo .mark b,
    .sidebar-logo .mark b {
        color: rgb(67, 189, 249);
    }

.logo .sub,
.sidebar-logo .sub {
    margin-top: 3px;
    font-family: "Inter", sans-serif;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .42em;
    text-transform: uppercase;
    color: #6B7280;
}

/* Mobile sidebar */
.sidebar-logo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 24px;
}

    .sidebar-logo i {
        font-size: 28px;
    }

/* Mobile */
@media (max-width:768px) {

    nav .navbar {
        padding: 0 16px !important;
    }

        nav .navbar .logo {
            margin-left: 0;
            margin-right: 0;
        }

    .logo .mark,
    .sidebar-logo .mark {
        font-size: 28px;
    }

    .logo .sub,
    .sidebar-logo .sub {
        font-size: 9px;
        letter-spacing: .35em;
    }

    .sidebar-logo {
        padding: 18px 20px;
    }
}

/* ==========================================
   FEATURE STRIP
========================================== */

.footer-features {
    background: #14161c;
    border-top: 1px solid rgba(255,255,255,.05);
    border-bottom: 1px solid rgba(255,255,255,.08);
}

    .footer-features .wrap {
        max-width: 1200px;
        margin: 0 auto;
        padding: 28px 40px;
        display: grid;
        grid-template-columns: repeat(4,minmax(220px,1fr));
        column-gap: 48px;
        align-items: center;
    }

/* ==========================================
   FEATURE ITEM
========================================== */

.feat {
    display: flex;
    align-items: center;
    gap: 16px;
}

    .feat .fi {
        width: 54px;
        height: 45px;
        min-width: 54px;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 14px;
        border: 1px solid rgba(255,255,255,.12);
        background: rgba(255,255,255,.05);
        color: #fff;
    }

        .feat .fi svg {
            width: 22px;
            height: 22px;
        }

    /* ==========================================
   TEXT
========================================== */

    .feat > span:last-child {
        display: flex;
        flex-direction: column;
    }

.ft {
    display: block;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    color: #fff;
    white-space: nowrap;
}

.fs {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.45;
    color: #9aa0ad;
}

/* Hover */

.feat:hover .fi {
    border-color: #43bdf9;
    background: rgba(45,98,255,.12);
}

.feat:hover .ft {
    color: #43bdf9;
}

/* Tablet */

@media(max-width:991px) {

    .footer-features .wrap {
        grid-template-columns: repeat(2,1fr);
        row-gap: 30px;
    }
}

/* Mobile */

@media(max-width:768px) {

    .footer-features .wrap {
        grid-template-columns: 1fr;
    }

    .fs {
        white-space: normal;
    }
}

/* ==========================================================
   FOOTER
========================================================== */

footer.site {
    background: #16181e;
    color: #aeb4c0;
}

    /* ---------------------------------------
   Footer Container
--------------------------------------- */

    footer.site .top,
    footer.site .bottom .wrap {
        max-width: 1200px;
        margin: 0 auto;
        padding-left: 32px;
        padding-right: 32px;
        box-sizing: border-box;
    }

    /* ---------------------------------------
   Footer Top
--------------------------------------- */

    footer.site .top {
        display: grid;
        grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
        gap: 64px;
        padding-top: 56px;
        padding-bottom: 48px;
    }

/* ---------------------------------------
   Brand
--------------------------------------- */

.f-brand {
    padding-right: 20px;
}

    .f-brand .mark {
        font-family: "Space Grotesk", sans-serif;
        font-size: 28px;
        font-weight: 700;
        line-height: 1;
        color: #ffffff;
    }

        .f-brand .mark b {
            color: #43bdf9;
        }

    .f-brand .sub {
        margin-top: 5px;
        font-family: "Inter", sans-serif;
        font-size: 10px;
        font-weight: 600;
        letter-spacing: .42em;
        text-transform: uppercase;
        color: #8b919e;
    }

    .f-brand p {
        margin-top: 18px;
        max-width: 260px;
        font-size: 14px;
        line-height: 1.7;
        color: #aeb4c0;
    }

/* ---------------------------------------
   Footer Columns
--------------------------------------- */

.f-col h4 {
    margin: 0 0 20px;
    font-family: "Space Grotesk", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #ffffff;
}

.f-col ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.f-col li {
    margin-bottom: 12px;
}

    .f-col li:last-child {
        margin-bottom: 0;
    }

.f-col a {
    color: #aeb4c0;
    font-size: 14px;
    line-height: 1.6;
    text-decoration: none;
    transition: color .25s ease;
}

    .f-col a:hover {
        color: #ffffff;
    }

/* ---------------------------------------
   Footer Bottom
--------------------------------------- */

footer.site .bottom {
    border-top: 1px solid rgba(255,255,255,.08);
}

    footer.site .bottom .wrap {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-top: 20px;
        padding-bottom: 20px;
    }

footer.site .cr {
    color: #7b818e;
    font-size: 13px;
}

/* ---------------------------------------
   Social Icons
--------------------------------------- */

.social {
    display: flex;
    align-items: center;
    gap: 12px;
}

    .social a {
        width: 38px;
        height: 38px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 10px;
        background: rgba(255,255,255,.06);
        border: 1px solid rgba(255,255,255,.10);
        color: #c8cdd6;
        transition: all .25s ease;
    }

        .social a:hover {
            background: #2D62FF;
            border-color: #2D62FF;
            color: #ffffff;
        }

    .social svg {
        width: 18px;
        height: 18px;
    }

/* ---------------------------------------
   Checkout Footer Note
--------------------------------------- */

footer.note {
    background: #16181e;
    padding: 0 0 40px;
    text-align: center;
    color: #7b818e;
    font-size: 13px;
}

/* ---------------------------------------
   Tablet
--------------------------------------- */

@media (max-width:991px) {

    footer.site .top {
        grid-template-columns: repeat(2,1fr);
        gap: 40px;
    }
}

/* ---------------------------------------
   Mobile
--------------------------------------- */

@media (max-width:768px) {

    footer.site .top {
        grid-template-columns: 1fr;
        gap: 32px;
        padding-top: 40px;
        padding-bottom: 36px;
    }

    footer.site .top,
    footer.site .bottom .wrap {
        padding-left: 20px;
        padding-right: 20px;
    }

    .f-brand {
        padding-right: 0;
    }

    footer.site .bottom .wrap {
        flex-direction: column;
        gap: 16px;
        text-align: center;
    }

    .social {
        justify-content: center;
    }
}

.btn-primary, .cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 15px 26px;
    border: none;
    border-radius: 12px;
    background: var(--accent);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    box-shadow: 0 8px 20px -8px rgba(45,98,255,.55);
    transition: transform .12s, background .15s, box-shadow .15s;
}

.cta {
    width: auto;
    margin-top: 20px;
    padding: 15px 20px;
    letter-spacing: .005em;
}

    .btn-primary:hover, .cta:hover {
        background: var(--accent-ink);
        transform: translateY(-1px);
        box-shadow: 0 12px 26px -8px rgba(45,98,255,.6);
    }

    .btn-primary:active, .cta:active {
        transform: translateY(0);
    }

    .btn-primary:focus-visible, .cta:focus-visible {
        outline: 2px solid var(--accent);
        outline-offset: 3px;
    }

.btn-ghost {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 15px 22px;
    border: 1.5px solid var(--line);
    border-radius: 12px;
    background: var(--surface);
    color: var(--ink-soft);
    font-size: 14.5px;
    font-weight: 600;
    transition: border-color .15s, color .15s;
}

    .btn-ghost:hover {
        border-color: #cdd3de;
        color: white;
    }

.back {
    width: 100%;
    margin-top: 10px;
    padding: 8px;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: var(--muted);
    font-size: 13.5px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    transition: color .15s, background .15s;
}

    .back:hover {
        color: var(--ink);
        background: var(--line-soft);
    }

.actions {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 30px;
}

.cta {
    height: auto !important;
    min-height: 49px;
    padding: 15px 20px !important;
    line-height: normal !important;
}

#btnProceedToPayment{
    width:190px;
    height:48px;
}

#btnBack{
    width:190px;
    height:48px;
}

#profileSubmitBtn {
    width:210px;
}
/* ===========================
   Page Header
=========================== */

.page-head {
	padding: 4px 0 22px;
}

	.page-head h1 {
		margin: 0;
		font-family: "Space Grotesk", sans-serif;
		font-size: 30px;
		font-weight: 600;
		letter-spacing: -.02em;
	}

	.page-head p {
		margin: 7px 0 0;
		color: #6b7280;
		font-size: 15px;
	}

/* ===========================
   Checkout Stepper
=========================== */

.steps {
	display: flex;
	align-items: center;
	margin-top: 26px;
	flex-wrap: wrap;
}

.step {
	display: inline-flex;
	align-items: center;
	gap: 11px;
}

	.step .dot {
		width: 30px;
		height: 30px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 50%;
		font-size: 13px;
		font-weight: 600;
		border: 1.5px solid #e7e9ee;
		background: #ffffff;
		color: #99a0ac;
	}

	.step .label {
		font-size: 13.5px;
		font-weight: 500;
		color: #99a0ac;
		white-space: nowrap;
	}

	.step.current .dot {
		background: #43bdf9;
		border-color: #43bdf9;
		color: #fff;
		box-shadow: 0 0 0 4px #eef3ff;
	}

	.step.current .label {
		color: #14161c;
		font-weight: 600;
	}

	.step.done .dot {
		background: #e7f6f0;
		border-color: transparent;
		color: #0f9d72;
	}

	.step.done .label {
		color: #3a3f4b;
	}

.step-sep {
	flex: 1 1 18px;
	min-width: 18px;
	height: 1.5px;
	margin: 0 14px;
	border-radius: 2px;
	background: #e7e9ee;
}

.step.done + .step-sep {
	background: #0f9d72;
	opacity: .35;
}

/* Mobile */

@media (max-width:560px) {

	.page-head {
		padding: 28px 0 18px;
	}

		.page-head h1 {
			font-size: 24px;
		}

	.step .label {
		display: none;
	}

	.step.current .label {
		display: inline;
	}

	.step-sep {
		margin: 0 8px;
	}
}

/* ===========================
   Order Summary
=========================== */

.summary {
	position: sticky;
	top: 94px;
	width: 406px;
}


	.summary .card {
		background: #fff;
		border: 1px solid #e7e9ee;
		border-radius: 18px;
		box-shadow: 0 10px 28px rgba(17, 24, 39, 0.06);
		overflow: hidden;
		width: 406px;
	}

	.summary .card-body {
		padding: 6px 22px 22px;
	}

.sec {
	padding: 20px 22px;
	border-top: 1px solid #f0f2f5;
}

	.sec:first-child {
		border-top: none;
	}

.sec-title {
	margin: 0 0 14px;
	font-family: "Space Grotesk", sans-serif;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -.01em;
}

/* Shipping */

.ship-opt {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 13px 15px;
	border: 1.5px solid #43bdf9;
	background: #eef3ff;
	border-radius: 11px;
}

	.ship-opt .radio {
		width: 20px;
		height: 20px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 50%;
		border: 2px solid #43bdf9;
	}

		.ship-opt .radio::after {
			content: "";
			width: 9px;
			height: 9px;
			border-radius: 50%;
			background: #43bdf9;
		}

.so-name {
	font-size: 14px;
	font-weight: 600;
}

.so-sub {
	font-size: 12.5px;
	color: #6b7280;
	margin-top: 1px;
}

.so-tag {
	margin-left: auto;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	color: #0f9d72;
}

/* Coupon */

.coupon {
	display: flex;
	gap: 10px;
}

	.coupon .input {
		flex: 1;
	}

.btn-apply {
	flex: none;
	height: 46px;
	padding: 0 20px;
	border: none;
	border-radius: 10px;
	background: #14161c;
	color: white;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}

	.btn-apply:hover {
		background: black;
	}

.ship-note {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 12px;
	font-size: 12.5px;
	font-weight: 600;
	color: #0f9d72;
}

/* Totals */

.totals {
	padding-top: 16px;
	border-top: 1px dashed #e7e9ee;
	display: grid;
	gap: 11px;
}

.trow {
	display: flex;
	justify-content: space-between;
	font-size: 14px;
	color: #3a3f4b;
}

	.trow .num {
		font-variant-numeric: tabular-nums;
		font-weight: 500;
	}

	.trow .free {
		color: #0f9d72;
		font-weight: 600;
	}

/* Grand Total */

.grand {
	margin-top: 4px;
	padding-top: 16px;
	border-top: 1px solid #e7e9ee;
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

.gl {
	font-family: "Space Grotesk", sans-serif;
	font-size: 16px;
	font-weight: 600;
}

.gn {
	font-family: "Space Grotesk", sans-serif;
	font-size: 24px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

.gcur {
	margin-left: 4px;
	font-size: 12px;
	color: #6b7280;
}

/* CTA */

.cta {
	width: 100%;
	margin-top: 20px;
	padding: 15px 20px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	gap: 9px;
	border: none;
	border-radius: 12px;
	background: #43bdf9;
	color: white;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
}

	.cta:hover {
		background: #00abff;
	}

/* Trust */

.trust {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid #f0f2f5;
	display: grid;
	gap: 10px;
}

.tr {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 12.5px;
	color: #6b7280;
}

	.tr svg {
		color: #0f9d72;
		flex: none;
	}

	.tr b {
		color: #3a3f4b;
	}

/* Mobile */

@media (max-width:940px) {
	.summary {
		position: static;
	}
}


.coupon {
	display: flex;
	gap: 10px;
}

	.coupon .input {
		flex: 1;
	}

.btn-apply {
	flex: none;
	height: 46px;
	padding: 0 20px;
	border: none;
	border-radius: var(--radius-fld);
	background: var(--ink);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	transition: background .15s, transform .12s;
}

	.btn-apply:hover {
		background: #000;
		transform: translateY(-1px);
	}

	.btn-apply:focus-visible {
		outline: 2px solid var(--accent);
		outline-offset: 3px;
	}

.ship-note {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 12px;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--mint);
}

#btnApplyPromoCode {
	line-height: 0.9;
}


/* ============================
   Cart Card Improvements
   ============================ */

/* Product image */
.item-thumb {
	width: 104px;
	height: 104px;
	border-radius: 14px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
/*	background: linear-gradient(160deg,#eef3ff 0%,#e3ecff 100%);*/
	border: 1px solid #dde6ff;
	flex-shrink: 0;
}

	.item-thumb img {
		width: 100%;
		height: 100%;
		object-fit: contain;
		display: block;
	}

/* Header actions */
.item-actions {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin-left: auto;
}

	.item-actions a,
	.item-actions button {
		width: 36px;
		height: 36px;
		border: none;
		border-radius: 9px;
		background: transparent;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #8b94a7;
		cursor: pointer;
		transition: .2s;
		text-decoration: none;
	}

		.item-actions a:hover {
			background: #eef3ff;
			color: #2d62ff;
		}

		.item-actions button:hover {
			background: #fdecec;
			color: #e5484d;
		}

	.item-actions i {
		font-size: 18px;
	}

/* Prescription table */
.spec {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	overflow: hidden;
}

	.spec th {
		background: #eef4ff;
		color: #2d62ff;
		font-weight: 600;
		border-bottom: 1px solid #e5e7eb;
	}

	.spec td,
	.spec th {
		padding: 14px 18px;
	}

	.spec tbody tr:not(:last-child) td {
		border-bottom: 1px solid #e5e7eb;
	}

	.spec td:first-child {
		width: 30%;
		font-weight: 500;
		color: #666;
	}

/* Options list */
.cart-options-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

	.cart-options-list li {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 10px 0;
		border-bottom: 1px solid #f0f2f5;
		font-size: 14px;
	}

		.cart-options-list li:last-child {
			border-bottom: none;
		}

/* Footer */
.item-foot {
	display: flex;
	align-items: flex-end;
	gap: 20px;
	flex-wrap: wrap;
}

.qty {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

	.qty .select {
		width: 90px;
	}

.price-block {
	margin-left: auto;
	text-align: right;
}

	.price-block .pl {
		font-size: 12px;
		color: #6b7280;
	}

	.price-block .pv {
		font-size: 22px;
		font-weight: 700;
		color: #14161c;
	}

/* Responsive */
@media(max-width:768px) {

	.item-top {
		flex-wrap: wrap;
	}

	.item-thumb {
		width: 84px;
		height: 84px;
	}

	.item-actions {
		width: 100%;
		justify-content: flex-end;
	}

	.item-foot {
		flex-direction: column;
		align-items: flex-start;
	}

	.price-block {
		margin-left: 0;
		text-align: left;
	}

	.spec {
		font-size: 13px;
	}
}

.stack {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.card-cart {
	background: #fff;
	border: 1px solid #e7e9ee;
	border-radius: 18px;
	padding: 24px;
	box-shadow: 0 10px 28px rgba(17,24,39,.06);
}

.item-top {
	display: flex;
	gap: 20px;
	align-items: flex-start;
}

.item-info {
	flex: 1;
}

	.item-info h3 {
		margin: 0;
		font-size: 17px;
		font-weight: 600;
	}

.brand {
	margin-top: 6px;
	color: #777;
}

.in-stock {
	margin-top: 10px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #0f9d72;
	font-weight: 600;
}


.rx {
	margin-top: 24px;
	border-top: 1px solid #eee;
	padding-top: 20px;
}

	.rx summary {
		cursor: pointer;
		display: flex;
		align-items: center;
		gap: 10px;
		font-size: 17px;
		font-weight: 600;
		list-style: none;
	}

		.rx summary::-webkit-details-marker {
			display: none;
		}

.chev {
	margin-left: auto;
}

.rx-body {
	margin-top: 18px;
}


.item-foot {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid #eee;
}


.qty {
	display: flex;
	flex-direction: column;
}

.qlabel {
	margin-bottom: 8px;
	font-weight: 600;
}

.select {
	height: 42px;
	border: 1px solid #ddd;
	border-radius: 10px;
	padding: 0 12px;
}


.bag-foot {
	margin-top: 20px;
}

.continue {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #2d62ff;
	text-decoration: none;
	font-weight: 600;
}

.bag {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 406px;
    gap: 40px;
    align-items: start;
}

@media(max-width:992px) {

	.bag {
		grid-template-columns: 1fr;
	}
}

/*.ship-opt input[type="radio"] {
	width: 40px !important;
	height: 40px !important;
}*/

body.page-cart {
	background: #f5f6f9;
}
/* ==========================================================================
   MyLens Optical — shared UI stylesheet
   Powers the checkout (review), shipping-details, and login/register pages.
   Link once (e.g. in _Layout.cshtml) and remove the inline <style> blocks.

   Requires the font link in <head>:
   <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap" rel="stylesheet">
   ========================================================================== */

/* ----- Design tokens ----------------------------------------------------- */
:root {
	--ink: #14161c;
	--ink-soft: #3a3f4b;
	--muted: #6b7280;
	--faint: #99a0ac;
	--line: #e7e9ee;
	--line-soft: #f0f2f5;
	--canvas: #f5f6f9;
	--surface: #ffffff;
	--field-bg: #fbfcfd;
	--accent: #43bdf9;
	--accent-ink: #00abff;
	--accent-wash: #eef3ff;
	--mint: #0f9d72;
	--mint-wash: #e7f6f0;
	--footer-bg: #16181e;
	--footer-ink: #aeb4c0;
	--shadow-sm: 0 1px 2px rgba(20,22,28,.04), 0 1px 1px rgba(20,22,28,.03);
	--shadow-md: 0 8px 30px -12px rgba(20,22,28,.14), 0 2px 6px rgba(20,22,28,.04);
	--shadow-lg: 0 10px 40px -16px rgba(20,22,28,.18), 0 2px 8px rgba(20,22,28,.05);
	--radius: 16px;
	--radius-sm: 11px;
	--radius-fld: 10px;
}

/* ----- Base -------------------------------------------------------------- */
* {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	font-family: "Inter", system-ui, sans-serif;
	color: var(--ink);
/*	background: var(--canvas);*/
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}

a {
	color: inherit;
	text-decoration: none;
}

button {
	font-family: inherit;
	cursor: pointer;
}

.wrap {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 24px;
}

/* ----- Utility bar ------------------------------------------------------- */
.util {
	background: var(--ink);
	color: #cfd3dc;
	font-size: 12.5px;
	letter-spacing: .01em;
}

	.util .wrap {
		display: flex;
		align-items: center;
		justify-content: space-between;
		height: 38px;
	}

	.util .ship {
		display: inline-flex;
		align-items: center;
		gap: 8px;
	}

		.util .ship svg {
			opacity: .8;
		}

	.util .phone {
		color: #fff;
		font-weight: 500;
	}

		.util .phone a {
			display: inline-flex;
			align-items: center;
			gap: 7px;
		}

/* ----- Header ------------------------------------------------------------ */
/*header.site {
	position: sticky;
	top: 0;
	z-index: 40;
	background: rgba(255,255,255,.86);
	backdrop-filter: saturate(1.4) blur(12px);
	border-bottom: 1px solid var(--line);
}

	header.site .wrap {
		display: flex;
		align-items: center;
		gap: 28px;
		height: 74px;
	}

.brand {
	display: flex;
	flex-direction: column;
	line-height: 1;
}

	.brand .mark {
		font-family: "Space Grotesk", sans-serif;
		font-weight: 700;
		font-size: 23px;
		letter-spacing: -.02em;
	}

		.brand .mark b {
			color: var(--accent);
		}

	.brand .sub {
		margin-top: 5px;
		padding-left: 1px;
		font-size: 10.5px;
		font-weight: 600;
		letter-spacing: .42em;
		text-transform: uppercase;
		color: var(--muted);
	}

nav.main {
	display: flex;
	gap: 4px;
	margin-left: 14px;
}

	nav.main a {
		display: inline-flex;
		align-items: center;
		gap: 5px;
		padding: 8px 13px;
		border-radius: 9px;
		font-size: 14px;
		font-weight: 500;
		color: var(--ink-soft);
		transition: background .15s, color .15s;
	}

		nav.main a:hover {
			background: var(--line-soft);
			color: var(--ink);
		}

		nav.main a svg {
			opacity: .55;
		}

.head-actions {
	margin-left: auto;
	display: flex;
	align-items: center;
	gap: 6px;
}

.icon-btn {
	position: relative;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 11px;
	background: transparent;
	border: 1px solid transparent;
	color: var(--ink);
	transition: background .15s, border-color .15s;
}

	.icon-btn:hover {
		background: var(--surface);
		border-color: var(--line);
	}

	.icon-btn .badge {
		position: absolute;
		top: 4px;
		right: 4px;
		min-width: 17px;
		height: 17px;
		padding: 0 4px;
		display: grid;
		place-items: center;
		background: var(--accent);
		color: #fff;
		font-size: 10.5px;
		font-weight: 700;
		border-radius: 999px;
		border: 2px solid var(--surface);
	}*/

/* ----- Page head + checkout stepper -------------------------------------- */
.page-head {
	padding: 40px 0 22px;
}

	.page-head h1 {
		margin: 0;
		font-family: "Space Grotesk", sans-serif;
		font-size: 30px;
		font-weight: 600;
		letter-spacing: -.02em;
	}

	.page-head p {
		margin: 7px 0 0;
		color: var(--muted);
		font-size: 15px;
	}

.steps {
	display: flex;
	align-items: center;
	margin-top: 26px;
	flex-wrap: wrap;
}

.step {
	display: inline-flex;
	align-items: center;
	gap: 11px;
}

	.step .dot {
		width: 30px;
		height: 30px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 50%;
		font-size: 13px;
		font-weight: 600;
		border: 1.5px solid var(--line);
		background: var(--surface);
		color: var(--faint);
	}

	.step .label {
		font-size: 13.5px;
		font-weight: 500;
		color: var(--faint);
		white-space: nowrap;
	}

	.step.done .dot {
		background: var(--mint-wash);
		border-color: transparent;
		color: var(--mint);
	}

	.step.done .label {
		color: var(--ink-soft);
	}

	.step.current .dot {
		background: var(--accent);
		border-color: var(--accent);
		color: #fff;
		box-shadow: 0 0 0 4px var(--accent-wash);
	}

	.step.current .label {
		color: var(--ink);
		font-weight: 600;
	}

.step-sep {
	flex: 1 1 18px;
	min-width: 18px;
	height: 1.5px;
	margin: 0 14px;
	border-radius: 2px;
	background: var(--line);
}

.step.done + .step-sep {
	background: var(--mint);
	opacity: .35;
}

/* ----- Checkout layout --------------------------------------------------- */
.checkout {
	display: grid;
	grid-template-columns: minmax(0,1.55fr) minmax(320px,.9fr);
	gap: 26px;
	align-items: start;
	padding-bottom: 80px;
}

.stack {
	display: grid;
	gap: 18px;
}

/* ----- Cards ------------------------------------------------------------- */
.card {
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	box-shadow: var(--shadow-sm);
}

.card-head {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 18px 24px;
	border-bottom: 1px solid var(--line-soft);
}

	.card-head .ico {
		width: 34px;
		height: 34px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 9px;
/*		background: var(--accent-wash);*/
		color: var(--accent);
	}

	.card-head h2 {
		margin: 0;
		font-family: "Space Grotesk", sans-serif;
		font-size: 16px;
		font-weight: 600;
		letter-spacing: -.01em;
	}

	.card-head .edit {
		margin-left: auto;
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 7px 12px;
		border-radius: 8px;
		font-size: 13px;
		font-weight: 600;
		color: var(--accent);
		background: transparent;
		border: 1px solid transparent;
		transition: background .15s, border-color .15s;
	}

		.card-head .edit:hover {
			background: var(--accent-wash);
			border-color: #dbe5ff;
		}

.card-body {
	padding: 24px;
}

/* ----- Address review ---------------------------------------------------- */
.addr {
	display: grid;
	grid-template-columns: 116px 1fr;
	gap: 13px 16px;
	font-size: 14.5px;
}

	.addr dt {
		color: var(--muted);
		font-weight: 500;
	}

	.addr dd {
		margin: 0;
		color: var(--ink);
	}

		.addr dd.lines {
			color: var(--ink-soft);
			line-height: 1.55;
		}

.pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 3px 9px;
	border-radius: 999px;
	background: var(--line-soft);
	font-size: 12.5px;
	font-weight: 600;
	color: var(--ink-soft);
}

.same-note {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 2px;
	font-size: 13px;
	font-weight: 600;
	color: var(--mint);
}

/* ----- Eye-health consent choices ---------------------------------------- */
.eh-text {
	margin: 0 0 18px;
	max-width: 60ch;
	font-size: 14.5px;
	color: var(--ink-soft);
}

.choices {
	display: grid;
	gap: 10px;
}

.choice {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 14px 16px;
	border: 1.5px solid var(--line);
	border-radius: var(--radius-sm);
	cursor: pointer;
	transition: border-color .15s, background .15s;
}

	.choice:hover {
		border-color: #cdd3de;
	}

	.choice input {
		position: absolute;
		opacity: 0;
		pointer-events: none;
	}

	.choice .radio {
		width: 20px;
		height: 20px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 50%;
		border: 2px solid #c3c9d4;
		transition: border-color .15s;
	}

		.choice .radio::after {
			content: "";
			width: 9px;
			height: 9px;
			border-radius: 50%;
			background: var(--accent);
			transform: scale(0);
			transition: transform .15s;
		}

	.choice .ctext {
		font-size: 14.5px;
	}

		.choice .ctext b {
			display: block;
			font-weight: 600;
		}

		.choice .ctext span {
			color: var(--muted);
			font-size: 13px;
		}

		.choice .ctext a {
			color: var(--accent);
			font-weight: 600;
		}

	.choice:has(input:checked) {
		border-color: var(--accent);
		background: var(--accent-wash);
	}

		.choice:has(input:checked) .radio {
			border-color: var(--accent);
		}

			.choice:has(input:checked) .radio::after {
				transform: scale(1);
			}

	.choice input:focus-visible ~ .radio {
		outline: 2px solid var(--accent);
		outline-offset: 3px;
	}

/* ----- Forms ------------------------------------------------------------- */
.grid {
	display: grid;
	gap: 18px 16px;
}

.row-2 {
	grid-template-columns: 1fr 1fr;
}

.row-csz {
	grid-template-columns: 1.4fr 1fr .9fr;
}

.span-2 {
	grid-column: 1 / -1;
}

.block {
	margin-top: 18px;
}

.field {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

	.field > label {
		display: flex;
		align-items: center;
		gap: 5px;
		font-size: 13px;
		font-weight: 600;
		color: var(--ink-soft);
	}

	.field .req {
		color: var(--accent);
		font-weight: 700;
	}

	.field .hint {
		margin-top: -1px;
		font-size: 12px;
		font-weight: 400;
		color: var(--muted);
	}

.input, .select {
	width: 100%;
	height: 46px;
	padding: 0 14px;
	font-family: inherit;
	font-size: 14.5px;
	color: var(--ink);
	background: var(--field-bg);
	border: 1.5px solid var(--line);
	border-radius: var(--radius-fld);
	outline: none;
	transition: border-color .15s, box-shadow .15s, background .15s;
}

	.input::placeholder {
		color: var(--faint);
	}

	.input:hover, .select:hover {
		border-color: #d4d9e2;
	}

	.input:focus, .select:focus {
		border-color: var(--accent);
		background: #fff;
		box-shadow: 0 0 0 4px var(--accent-wash);
	}

.select {
	appearance: none;
	cursor: pointer;
	padding-right: 38px;
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}

.input.has-icon {
	padding-right: 46px;
}

/* segmented control (address type) */
.seg-wrap {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
}

	.seg-wrap .lbl {
		font-size: 13px;
		font-weight: 600;
		color: var(--ink-soft);
	}

.seg {
	display: inline-flex;
	align-items: stretch;
	gap: 3px;
	padding: 3px;
	border-radius: 10px;
	background: var(--line-soft);
	overflow: hidden;
}

/*	.seg label {
		position: relative;
		display: inline-flex;
		align-items: center;
		align-self:stretch;
		gap: 7px;
		padding: 8px 16px;
		border-radius: 8px;
		font-size: 13.5px;
		font-weight: 600;
		color: var(--muted);
		cursor: pointer;
		transition: color .15s, background .15s, box-shadow .15s;
	}*/
	.seg label {
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0;
		min-height: 38px;
		padding: 8px 16px;
		border-radius: 8px;
		color: var(--muted);
		cursor: pointer;
		font-size: 13.5px;
		font-weight: 600;
		transition: color .15s, background .15s, box-shadow .15s;
	}

	.seg input {
		position: absolute;
		opacity: 0;
		pointer-events: none;
	}

	.seg label:has(input:checked) {
		background: var(--surface);
		color: var(--accent);
		box-shadow: var(--shadow-sm);
	}

	.seg label input:focus-visible ~ span {
		outline: 2px solid var(--accent);
		outline-offset: 4px;
		border-radius: 4px;
	}

/* checkboxes */
.opts {
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid var(--line-soft);
	display: grid;
	gap: 4px;
}

.check {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 0;
	font-size: 14.5px;
	color: var(--ink-soft);
	cursor: pointer;
}

	.check input {
		position: absolute;
		opacity: 0;
		pointer-events: none;
	}

	.check .box, .remember .box {
		width: 21px;
		height: 21px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 6px;
		border: 1.8px solid #c3c9d4;
		background: var(--surface);
		transition: background .15s, border-color .15s;
	}

.remember .box {
	width: 19px;
	height: 19px;
	border-radius: 5px;
}

	.check .box svg, .remember .box svg {
		opacity: 0;
		transform: scale(.6);
		color: #fff;
		transition: opacity .12s, transform .12s;
	}

.check:has(input:checked) .box, .remember:has(input:checked) .box {
	background: var(--accent);
	border-color: var(--accent);
}

	.check:has(input:checked) .box svg, .remember:has(input:checked) .box svg {
		opacity: 1;
		transform: scale(1);
	}

.check input:focus-visible ~ .box, .remember input:focus-visible ~ .box {
	outline: 2px solid var(--accent);
	outline-offset: 3px;
}

.check .inline-sel {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

/*	.check .inline-sel select {
		height: 36px;
		padding: 0 30px 0 12px;
		font-size: 13.5px;
		font-weight: 600;
		border: 1.5px solid var(--line);
		border-radius: 8px;
		background-color: var(--field-bg);
		appearance: none;
		cursor: pointer;
		background-repeat: no-repeat;
		background-position: right 10px center;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	}*/
	.check .inline-sel select {
		height: 36px;
		line-height: 36px;
		padding: 0 32px 0 12px;
		font-size: 13.5px;
		font-weight: 600;
		border: 1.5px solid var(--line);
		border-radius: 8px;
		background-color: var(--field-bg);
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		vertical-align: middle;
		cursor: pointer;
		background-repeat: no-repeat;
		background-position: right 10px center;
		background-size: 12px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	}

/* ----- Buttons ----------------------------------------------------------- */
.btn-primary, .cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 15px 26px;
	border: none;
	border-radius: 12px;
	background: var(--accent);
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	box-shadow: 0 8px 20px -8px rgba(45,98,255,.55);
	transition: transform .12s, background .15s, box-shadow .15s;
}

.cta {
	width: 100%;
	margin-top: 20px;
	padding: 15px 20px;
	letter-spacing: .005em;
}

	.btn-primary:hover, .cta:hover {
		background: var(--accent-ink);
		transform: translateY(-1px);
		box-shadow: 0 12px 26px -8px rgba(45,98,255,.6);
	}

	.btn-primary:active, .cta:active {
		transform: translateY(0);
	}

	.btn-primary:focus-visible, .cta:focus-visible {
		outline: 2px solid var(--accent);
		outline-offset: 3px;
	}

.btn-ghost {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 15px 22px;
	border: 1.5px solid var(--line);
	border-radius: 12px;
	background: var(--surface);
	color: var(--ink-soft);
	font-size: 14.5px;
	font-weight: 600;
	transition: border-color .15s, color .15s;
}

	.btn-ghost:hover {
		border-color: #cdd3de;
		color: var(--ink);
	}

.back {
	width: 100%;
	margin-top: 10px;
	padding: 8px;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: var(--muted);
	font-size: 13.5px;
	font-weight: 500;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	transition: color .15s, background .15s;
}

	.back:hover {
		color: var(--ink);
		background: var(--line-soft);
	}

.actions {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 30px;
}

/* ----- Order summary ----------------------------------------------------- */
.summary {
	position: sticky;
	top: 94px;
}

	.summary .card-body {
		padding: 6px 22px 22px;
	}

.sum-title {
	margin: 0;
	padding: 20px 22px 0;
	font-family: "Space Grotesk", sans-serif;
	font-size: 16px;
	font-weight: 600;
}

.line-item {
	display: flex;
	gap: 14px;
	align-items: center;
	padding: 18px 0 20px;
}

.thumb {
	width: 66px;
	height: 66px;
	flex: none;
	display: grid;
	place-items: center;
	border-radius: 12px;
/*	background: linear-gradient(160deg,#eef3ff 0%,#e3ecff 100%);*/
	border: 1px solid #dde6ff;
}

.li-name {
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.35;
}

.li-meta {
	margin-top: 3px;
	color: var(--muted);
	font-size: 13px;
}

.li-price {
	margin-left: auto;
	font-size: 14.5px;
	font-weight: 600;
	white-space: nowrap;
}

.totals {
	padding-top: 16px;
	border-top: 1px dashed var(--line);
	display: grid;
	gap: 11px;
}

.trow {
	display: flex;
	justify-content: space-between;
	font-size: 14px;
	color: var(--ink-soft);
}

	.trow .num {
		font-variant-numeric: tabular-nums;
		font-weight: 500;
	}

	.trow .free {
		color: var(--mint);
		font-weight: 600;
	}

.grand {
	margin-top: 4px;
	padding-top: 16px;
	border-top: 1px solid var(--line);
	display: flex;
	align-items: baseline;
	justify-content: space-between;
}

	.grand .gl {
		font-family: "Space Grotesk", sans-serif;
		font-size: 16px;
		font-weight: 600;
	}

	.grand .gn {
		font-family: "Space Grotesk", sans-serif;
		font-size: 24px;
		font-weight: 700;
		letter-spacing: -.01em;
		font-variant-numeric: tabular-nums;
	}

	.grand .gcur {
		margin-left: 4px;
		font-size: 12px;
		font-weight: 500;
		color: var(--muted);
	}

.trust {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid var(--line-soft);
	display: grid;
	gap: 10px;
}

	.trust .tr {
		display: flex;
		align-items: center;
		gap: 10px;
		font-size: 12.5px;
		color: var(--muted);
	}

		.trust .tr svg {
			color: var(--mint);
			flex: none;
		}

		.trust .tr b {
			color: var(--ink-soft);
			font-weight: 600;
		}

/* ----- Auth (login / register) ------------------------------------------- */
/*.auth {
	padding: 56px 0 70px;
}

.auth-head {
	max-width: 540px;
	margin: 0 auto 38px;
	text-align: center;
}

	.auth-head h1 {
		margin: 0;
		font-family: "Space Grotesk", sans-serif;
		font-size: 32px;
		font-weight: 600;
		letter-spacing: -.02em;
	}

	.auth-head p {
		margin: 10px 0 0;
		color: var(--muted);
		font-size: 15.5px;
	}

.auth-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 22px;
	align-items: stretch;
	max-width: 940px;
	margin: 0 auto;

}*/

.panel {
	display: flex;
	flex-direction: column;
	padding: 34px 34px 36px;
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: 18px;
	box-shadow: var(--shadow-lg);
}

	.panel h2 {
		margin: 0 0 4px;
		font-family: "Space Grotesk", sans-serif;
		font-size: 20px;
		font-weight: 600;
		letter-spacing: -.01em;
	}

	.panel .lede {
		margin: 0 0 24px;
		color: var(--muted);
		font-size: 14px;
	}

	.panel .field {
		margin-bottom: 16px;
	}

		.panel .field label {
			font-size: 13px;
			font-weight: 600;
			color: var(--ink-soft);
		}

.input-wrap {
	position: relative;
}

.panel .input {
	height: 48px;
}

.toggle-pw {
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	width: 34px;
	height: 34px;
	display: grid;
	place-items: center;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: var(--muted);
	transition: background .15s, color .15s;
}

	.toggle-pw:hover {
		background: var(--line-soft);
		color: var(--ink);
	}

.row-between {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 4px 0 22px;
}

.remember {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	font-size: 13.5px;
	color: var(--ink-soft);
	cursor: pointer;
}

	.remember input {
		position: absolute;
		opacity: 0;
		pointer-events: none;
	}

.forgot {
	font-size: 13.5px;
	font-weight: 600;
	color: var(--accent);
}

	.forgot:hover {
		color: var(--accent-ink);
	}

.panel .btn-primary {
	width: 100%;
	padding: 15px 24px;
}

.alt {
	margin-top: 22px;
	padding-top: 20px;
	border-top: 1px solid var(--line-soft);
	text-align: center;
}

.alt-lbl {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--faint);
}

.btn-social {
	width: 100%;
	margin-top: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 12px;
	border: 1.5px solid var(--line);
	border-radius: 11px;
	background: var(--surface);
	font-size: 14px;
	font-weight: 600;
	color: var(--ink);
	transition: border-color .15s, background .15s;
}

	.btn-social:hover {
		border-color: #cdd3de;
		background: var(--field-bg);
	}

.panel.register {
	background: linear-gradient(180deg,#fbfcff 0%,var(--accent-wash) 130%);
	border-color: #d9e3ff;
}

	.panel.register h2 .star {
		color: var(--accent);
	}

.benefits {
	list-style: none;
	margin: 4px 0 28px;
	padding: 0;
	display: grid;
	gap: 14px;
}

	.benefits li {
		display: flex;
		gap: 12px;
		align-items: flex-start;
		font-size: 14px;
	}

	.benefits .bi {
		width: 30px;
		height: 30px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 9px;
		background: var(--surface);
		border: 1px solid #d9e3ff;
		color: var(--accent);
		box-shadow: var(--shadow-sm);
	}

	.benefits b {
		display: block;
		font-weight: 600;
		color: var(--ink);
	}

	.benefits span {
		color: var(--muted);
		font-size: 13px;
	}

.panel.register .grow {
	flex: 1;
}

/*.btn-register {
	width: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 15px 24px;
	border: 1.5px solid var(--ink);
	border-radius: 12px;
	background: var(--ink);
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	transition: transform .12s, background .15s;
}*/

	.btn-register:hover {
		background: #000;
		transform: translateY(-1px);
	}

	.btn-register:focus-visible {
		outline: 2px solid var(--accent);
		outline-offset: 3px;
	}

.reg-note {
	margin: 14px 0 0;
	text-align: center;
	font-size: 12.5px;
	color: var(--muted);
}


/* ----- Responsive -------------------------------------------------------- */
@media (max-width: 940px) {
	nav.main {
		display: none;
	}

	.checkout {
		grid-template-columns: 1fr;
	}

	.summary {
		position: static;
	}

	.auth-grid {
		grid-template-columns: 1fr;
		max-width: 480px;
	}

	.features .wrap {
		grid-template-columns: 1fr 1fr;
		gap: 24px;
	}

	footer.site .top {
		grid-template-columns: 1fr 1fr;
		gap: 36px 24px;
	}
}
/* On the shipping page the summary should sit above the form on mobile.
   Add class="summary form-summary" there, or just keep this scoped rule: */
@media (max-width: 940px) {
	.checkout .summary {
		order: -1;
	}
}

@media (max-width: 560px) {
	.wrap {
		padding: 0 16px;
	}

	header.site .wrap {
		height: 64px;
		gap: 12px;
	}

	.page-head {
		padding: 28px 0 18px;
	}

		.page-head h1 {
			font-size: 24px;
		}

	.auth {
		padding: 36px 0 50px;
	}

	.auth-head h1 {
		font-size: 26px;
	}

	.panel {
		padding: 26px 22px 28px;
	}

	.step .label {
		display: none;
	}

	.step.current .label {
		display: inline;
	}

	.step-sep {
		margin: 0 8px;
	}

	.row-2, .row-csz {
		grid-template-columns: 1fr;
	}

	.actions {
		flex-direction: column-reverse;
		align-items: stretch;
	}

	.addr {
		grid-template-columns: 96px 1fr;
	}

	.features .wrap {
		grid-template-columns: 1fr;
	}

	footer.site .top {
		grid-template-columns: 1fr;
	}

	footer.site .bottom .wrap {
		flex-direction: column;
		gap: 14px;
	}

	.util .ship {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	* {
		transition: none !important;
	}
}

/* ==========================================================================
   MyLens Optical — shared UI stylesheet
   Powers the checkout (review), shipping-details, and login/register pages.
   Link once (e.g. in _Layout.cshtml) and remove the inline <style> blocks.

   Requires the font link in <head>:
   <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap" rel="stylesheet">
   ========================================================================== */

/* ----- Design tokens ----------------------------------------------------- */
:root {
	--ink: #14161c;
	--ink-soft: #3a3f4b;
	--muted: #6b7280;
	--faint: #99a0ac;
	--line: #e7e9ee;
	--line-soft: #f0f2f5;
	--canvas: #f5f6f9;
	--surface: #ffffff;
	--field-bg: #fbfcfd;
	--accent: #43bdf9;
	--accent-ink: #00abff;
	--accent-wash: #eef3ff;
	--mint: #0f9d72;
	--mint-wash: #e7f6f0;
	--footer-bg: #16181e;
	--footer-ink: #aeb4c0;
	--shadow-sm: 0 1px 2px rgba(20,22,28,.04), 0 1px 1px rgba(20,22,28,.03);
	--shadow-md: 0 8px 30px -12px rgba(20,22,28,.14), 0 2px 6px rgba(20,22,28,.04);
	--shadow-lg: 0 10px 40px -16px rgba(20,22,28,.18), 0 2px 8px rgba(20,22,28,.05);
	--radius: 16px;
	--radius-sm: 11px;
	--radius-fld: 10px;
}

/* ----- Base -------------------------------------------------------------- */
* {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	font-family: "Inter", system-ui, sans-serif;
	color: var(--ink);
	/*  background: var(--canvas);*/
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}

a {
	color: inherit;
	text-decoration: none;
}

button {
	font-family: inherit;
	cursor: pointer;
}

.wrap {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 24px;
}

/* ----- Utility bar ------------------------------------------------------- */
.util {
	background: var(--ink);
	color: #cfd3dc;
	font-size: 12.5px;
	letter-spacing: .01em;
}

	.util .wrap {
		display: flex;
		align-items: center;
		justify-content: space-between;
		height: 38px;
	}

	.util .ship {
		display: inline-flex;
		align-items: center;
		gap: 8px;
	}

		.util .ship svg {
			opacity: .8;
		}

	.util .phone {
		color: #fff;
		font-weight: 500;
	}

		.util .phone a {
			display: inline-flex;
			align-items: center;
			gap: 7px;
		}

/* ----- Header ------------------------------------------------------------ */
/*header.site {
  position: sticky; top: 0; z-index: 40;
  background: rgba(255,255,255,.86);
  backdrop-filter: saturate(1.4) blur(12px);
  border-bottom: 1px solid var(--line);
}
header.site .wrap { display: flex; align-items: center; gap: 28px; height: 74px; }

.brand { display: flex; flex-direction: column; line-height: 1; }
.brand .mark { font-family: "Space Grotesk", sans-serif; font-weight: 700; font-size: 23px; letter-spacing: -.02em; }
.brand .mark b { color: var(--accent); }
.brand .sub { margin-top: 5px; padding-left: 1px; font-size: 10.5px; font-weight: 600; letter-spacing: .42em; text-transform: uppercase; color: var(--muted); }

nav.main { display: flex; gap: 4px; margin-left: 14px; }
nav.main a {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 8px 13px; border-radius: 9px;
  font-size: 14px; font-weight: 500; color: var(--ink-soft);
  transition: background .15s, color .15s;
}
nav.main a:hover { background: var(--line-soft); color: var(--ink); }
nav.main a svg { opacity: .55; }

.head-actions { margin-left: auto; display: flex; align-items: center; gap: 6px; }
.icon-btn {
  position: relative; display: grid; place-items: center;
  width: 42px; height: 42px; border-radius: 11px;
  background: transparent; border: 1px solid transparent; color: var(--ink);
  transition: background .15s, border-color .15s;
}
.icon-btn:hover { background: var(--surface); border-color: var(--line); }
.icon-btn .badge {
  position: absolute; top: 4px; right: 4px;
  min-width: 17px; height: 17px; padding: 0 4px;
  display: grid; place-items: center;
  background: var(--accent); color: #fff;
  font-size: 10.5px; font-weight: 700; border-radius: 999px;
  border: 2px solid var(--surface);
}*/

/* ----- Page head + checkout stepper -------------------------------------- */
.page-head {
	padding: 40px 0 22px;
}

	.page-head h1 {
		margin: 0;
		font-family: "Space Grotesk", sans-serif;
		font-size: 30px;
		font-weight: 600;
		letter-spacing: -.02em;
	}

	.page-head p {
		margin: 7px 0 0;
		color: var(--muted);
		font-size: 15px;
	}

.steps {
	display: flex;
	align-items: center;
	margin-top: 26px;
	flex-wrap: wrap;
}

.step {
	display: inline-flex;
	align-items: center;
	gap: 11px;
}

	.step .dot {
		width: 30px;
		height: 30px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 50%;
		font-size: 13px;
		font-weight: 600;
		border: 1.5px solid var(--line);
		background: var(--surface);
		color: var(--faint);
	}

	.step .label {
		font-size: 13.5px;
		font-weight: 500;
		color: var(--faint);
		white-space: nowrap;
	}

	.step.done .dot {
		background: var(--mint-wash);
		border-color: transparent;
		color: var(--mint);
	}

	.step.done .label {
		color: var(--ink-soft);
	}

	.step.current .dot {
		background: var(--accent);
		border-color: var(--accent);
		color: #fff;
		box-shadow: 0 0 0 4px var(--accent-wash);
	}

	.step.current .label {
		color: var(--ink);
		font-weight: 600;
	}

.step-sep {
	flex: 1 1 18px;
	min-width: 18px;
	height: 1.5px;
	margin: 0 14px;
	border-radius: 2px;
	background: var(--line);
}

.step.done + .step-sep {
	background: var(--mint);
	opacity: .35;
}

/* ----- Checkout layout --------------------------------------------------- */
.checkout {
	display: grid;
	grid-template-columns: minmax(0,1.55fr) minmax(320px,.9fr);
	gap: 26px;
	align-items: start;
	padding-bottom: 80px;
}

.stack {
	display: grid;
	gap: 18px;
}

/* ----- Cards ------------------------------------------------------------- */
.card {
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	box-shadow: var(--shadow-sm);
}

.card-head {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 18px 24px;
	border-bottom: 1px solid var(--line-soft);
}

	.card-head .ico {
		width: 34px;
		height: 34px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 9px;
		background: var(--accent-wash);
		color: var(--accent);
	}

	.card-head h2 {
		margin: 0;
		font-family: "Space Grotesk", sans-serif;
		font-size: 16px;
		font-weight: 600;
		letter-spacing: -.01em;
	}

	.card-head .edit {
		margin-left: auto;
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 7px 12px;
		border-radius: 8px;
		font-size: 13px;
		font-weight: 600;
		color: var(--accent);
		background: transparent;
		border: 1px solid transparent;
		transition: background .15s, border-color .15s;
	}

		.card-head .edit:hover {
			background: var(--accent-wash);
			border-color: #dbe5ff;
		}

.card-body {
	padding: 24px;
}

/* ----- Address review ---------------------------------------------------- */
.addr {
	display: grid;
	grid-template-columns: 116px 1fr;
	gap: 13px 16px;
	font-size: 14.5px;
}

	.addr dt {
		color: var(--muted);
		font-weight: 500;
	}

	.addr dd {
		margin: 0;
		color: var(--ink);
	}

		.addr dd.lines {
			color: var(--ink-soft);
			line-height: 1.55;
		}

.pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 3px 9px;
	border-radius: 999px;
	background: var(--line-soft);
	font-size: 12.5px;
	font-weight: 600;
	color: var(--ink-soft);
}

.same-note {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 2px;
	font-size: 13px;
	font-weight: 600;
	color: var(--mint);
}

/* ----- Eye-health consent choices ---------------------------------------- */
.eh-text {
	margin: 0 0 18px;
	max-width: 60ch;
	font-size: 14.5px;
	color: var(--ink-soft);
}

.choices {
	display: grid;
	gap: 10px;
}

.choice {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 14px 16px;
	border: 1.5px solid var(--line);
	border-radius: var(--radius-sm);
	cursor: pointer;
	transition: border-color .15s, background .15s;
}

	.choice:hover {
		border-color: #cdd3de;
	}

	.choice input {
		position: absolute;
		opacity: 0;
		pointer-events: none;
	}

	.choice .radio {
		width: 20px;
		height: 20px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 50%;
		border: 2px solid #c3c9d4;
		transition: border-color .15s;
	}

		.choice .radio::after {
			content: "";
			width: 9px;
			height: 9px;
			border-radius: 50%;
			background: var(--accent);
			transform: scale(0);
			transition: transform .15s;
		}

	.choice .ctext {
		font-size: 14.5px;
	}

		.choice .ctext b {
			display: block;
			font-weight: 600;
		}

		.choice .ctext span {
			color: var(--muted);
			font-size: 13px;
		}

		.choice .ctext a {
			color: var(--accent);
			font-weight: 600;
		}

	.choice:has(input:checked) {
		border-color: var(--accent);
		background: var(--accent-wash);
	}

		.choice:has(input:checked) .radio {
			border-color: var(--accent);
		}

			.choice:has(input:checked) .radio::after {
				transform: scale(1);
			}

	.choice input:focus-visible ~ .radio {
		outline: 2px solid var(--accent);
		outline-offset: 3px;
	}

/* ----- Forms ------------------------------------------------------------- */
.grid {
	display: grid;
	gap: 18px 16px;
}

.row-2 {
	grid-template-columns: 1fr 1fr;
}
/*added to reduce the size of form fields title */
.register-half-field {
	width: calc((100% - 16px) / 2);
}

.row-csz {
	grid-template-columns: 1.4fr 1fr .9fr;
}

.span-2 {
	grid-column: 1 / -1;
}

.block {
	margin-top: 18px;
}

.field {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

	.field > label {
		display: flex;
		align-items: center;
		gap: 5px;
		font-size: 13px;
		font-weight: 600;
		color: var(--ink-soft);
	}

	.field .req {
		color: var(--accent);
		font-weight: 700;
	}

	.field .hint {
		margin-top: -1px;
		font-size: 12px;
		font-weight: 400;
		color: var(--muted);
	}

.input, .select {
	width: 100%;
	height: 46px;
	padding: 0 14px;
	font-family: inherit;
	font-size: 14.5px;
	color: var(--ink);
	background: var(--field-bg);
	border: 1.5px solid var(--line);
	border-radius: var(--radius-fld);
	outline: none;
	transition: border-color .15s, box-shadow .15s, background .15s;
}

	.input::placeholder {
		color: var(--faint);
	}

	.input:hover, .select:hover {
		border-color: #d4d9e2;
	}

	.input:focus, .select:focus {
		border-color: var(--accent);
		background: #fff;
		box-shadow: 0 0 0 4px var(--accent-wash);
	}

.select {
	appearance: none;
	cursor: pointer;
	padding-right: 38px;
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}

.input.has-icon {
	padding-right: 46px;
}

/* segmented control (address type) */
.seg-wrap {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
}

	.seg-wrap .lbl {
		font-size: 13px;
		font-weight: 600;
		color: var(--ink-soft);
	}

.seg {
	display: inline-flex;
	gap: 3px;
	padding: 3px;
	border-radius: 10px;
	background: var(--line-soft);
}

	.seg label {
		position: relative;
		display: inline-flex;
		align-items: center;
		gap: 7px;
		padding: 8px 16px;
		border-radius: 8px;
		font-size: 13.5px;
		font-weight: 600;
		color: var(--muted);
		cursor: pointer;
		transition: color .15s, background .15s, box-shadow .15s;
	}

	.seg input {
		position: absolute;
		opacity: 0;
		pointer-events: none;
	}

	.seg label:has(input:checked) {
		background: var(--surface);
		color: var(--accent);
		box-shadow: var(--shadow-sm);
	}

	.seg label input:focus-visible ~ span {
		outline: 2px solid var(--accent);
		outline-offset: 4px;
		border-radius: 4px;
	}

/* checkboxes */
.opts {
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid var(--line-soft);
	display: grid;
	gap: 4px;
}

.check {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 0;
	font-size: 14.5px;
	color: var(--ink-soft);
	cursor: pointer;
}

	.check input {
		position: absolute;
		opacity: 0;
		pointer-events: none;
	}

	.check .box, .remember .box {
		width: 21px;
		height: 21px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 6px;
		border: 1.8px solid #c3c9d4;
		background: var(--surface);
		transition: background .15s, border-color .15s;
	}

.remember .box {
	width: 19px;
	height: 19px;
	border-radius: 5px;
}

	.check .box svg, .remember .box svg {
		opacity: 0;
		transform: scale(.6);
		color: #fff;
		transition: opacity .12s, transform .12s;
	}

.check:has(input:checked) .box, .remember:has(input:checked) .box {
	background: var(--accent);
	border-color: var(--accent);
}

	.check:has(input:checked) .box svg, .remember:has(input:checked) .box svg {
		opacity: 1;
		transform: scale(1);
	}

.check input:focus-visible ~ .box, .remember input:focus-visible ~ .box {
	outline: 2px solid var(--accent);
	outline-offset: 3px;
}

.check .inline-sel {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

	.check .inline-sel select {
		height: 36px;
		padding: 0 30px 0 12px;
		font-size: 13.5px;
		font-weight: 600;
		border: 1.5px solid var(--line);
		border-radius: 8px;
		background-color: var(--field-bg);
		appearance: none;
		cursor: pointer;
		background-repeat: no-repeat;
		background-position: right 10px center;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	}


/* ----- Order summary ----------------------------------------------------- */
.summary {
	position: sticky;
	top: 94px;
}

	.summary .card-body {
		padding: 6px 22px 22px;
	}

.sum-title {
	margin: 0;
	padding: 20px 22px 0;
	font-family: "Space Grotesk", sans-serif;
	font-size: 16px;
	font-weight: 600;
}

.line-item {
	display: flex;
	gap: 14px;
	align-items: center;
	padding: 18px 0 20px;
}

.thumb {
	width: 66px;
	height: 66px;
	flex: none;
	display: grid;
	place-items: center;
	border-radius: 12px;
/*	background: linear-gradient(160deg,#eef3ff 0%,#e3ecff 100%);*/
	border: 1px solid #dde6ff;
}

.li-name {
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.35;
}

.li-meta {
	margin-top: 3px;
	color: var(--muted);
	font-size: 13px;
}

.li-price {
	margin-left: auto;
	font-size: 14.5px;
	font-weight: 600;
	white-space: nowrap;
}

.totals {
	padding-top: 16px;
	border-top: 1px dashed var(--line);
	display: grid;
	gap: 11px;
}

.trow {
	display: flex;
	justify-content: space-between;
	font-size: 14px;
	color: var(--ink-soft);
}

	.trow .num {
		font-variant-numeric: tabular-nums;
		font-weight: 500;
	}

	.trow .free {
		color: var(--mint);
		font-weight: 600;
	}

.grand {
	margin-top: 4px;
	padding-top: 16px;
	border-top: 1px solid var(--line);
	display: flex;
	align-items: baseline;
	justify-content: space-between;
}

	.grand .gl {
		font-family: "Space Grotesk", sans-serif;
		font-size: 16px;
		font-weight: 600;
	}

	.grand .gn {
		font-family: "Space Grotesk", sans-serif;
		font-size: 24px;
		font-weight: 700;
		letter-spacing: -.01em;
		font-variant-numeric: tabular-nums;
	}

	.grand .gcur {
		margin-left: 4px;
		font-size: 12px;
		font-weight: 500;
		color: var(--muted);
	}

.trust {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid var(--line-soft);
	display: grid;
	gap: 10px;
}

	.trust .tr {
		display: flex;
		align-items: center;
		gap: 10px;
		font-size: 12.5px;
		color: var(--muted);
	}

		.trust .tr svg {
			color: var(--mint);
			flex: none;
		}

		.trust .tr b {
			color: var(--ink-soft);
			font-weight: 600;
		}

/* ----- Auth (login / register) ------------------------------------------- */
.auth {
	padding: 120px 0 70px;
	background: #f5f6f9;
}

.auth-head {
	max-width: 540px;
	margin: 0 auto 38px;
	text-align: center;
}

	.auth-head h1 {
		margin: 0;
		font-family: "Space Grotesk", sans-serif;
		font-size: 32px;
		font-weight: 600;
		letter-spacing: -.02em;
	}

	.auth-head p {
		margin: 10px 0 0;
		color: var(--muted);
		font-size: 15.5px;
	}

.auth-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 22px;
	align-items: stretch;
	max-width: 940px;
	margin: 0 auto;
}

	/* Full-width registration mode */
	.auth-grid.registration-active {
		grid-template-columns: 1fr;
	}

		.auth-grid.registration-active .login-panel {
			display: none;
		}

		.auth-grid.registration-active .panel.register {
			grid-column: 1 / -1;
			width: 100%;
			background:white;
		}

.panel {
	display: flex;
	flex-direction: column;
	padding: 34px 34px 36px;
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: 18px;
	box-shadow: var(--shadow-lg);
}

	.panel h2 {
		margin: 0 0 4px;
		font-family: "Space Grotesk", sans-serif;
		font-size: 20px;
		font-weight: 600;
		letter-spacing: -.01em;
	}

	.panel .lede {
		margin: 0 0 24px;
		color: var(--muted);
		font-size: 14px;
	}

	.panel .field {
		margin-bottom: 16px;
	}

		.panel .field label {
			font-size: 13px;
			font-weight: 600;
			color: var(--ink-soft);
		}

.input-wrap {
	position: relative;
}

.panel .input {
	height: 48px;
}

.toggle-pw {
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	width: 34px;
	height: 34px;
	display: grid;
	place-items: center;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: var(--muted);
	transition: background .15s, color .15s;
}

	.toggle-pw:hover {
		background: var(--line-soft);
		color: var(--ink);
	}

/*.row-between {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 4px 0 22px;
}*/

.remember {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	font-size: 13.5px;
	color: var(--ink-soft);
	cursor: pointer;
}

	.remember input {
		position: absolute;
		opacity: 0;
		pointer-events: none;
	}

/*.forgot {
	font-size: 13.5px;
	font-weight: 600;
	color: var(--accent);
}

	.forgot:hover {
		color: var(--accent-ink);
	}*/

.panel .btn-primary {
	width: 210px;
	height: 50px;
	padding: 15px 24px;
	margin-left: auto;
	margin-right: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
}

.alt {
	margin-top: 22px;
	padding-top: 20px;
	border-top: 1px solid var(--line-soft);
	text-align: center;
}

.alt-lbl {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--faint);
}

.btn-social {
	width: 100%;
	margin-top: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 12px;
	border: 1.5px solid var(--line);
	border-radius: 11px;
	background: var(--surface);
	font-size: 14px;
	font-weight: 600;
	color: var(--ink);
	transition: border-color .15s, background .15s;
}

	.btn-social:hover {
		border-color: #cdd3de;
		background: var(--field-bg);
	}

.panel.register {
	background: linear-gradient(180deg,#f3f6ff 0%,var(--accent-wash) 130%);
	border-color: #d9e3ff;
}

	.panel.register h2 .star {
		color: var(--accent);
	}

.benefits {
	list-style: none;
	margin: 4px 0 28px;
	padding: 0;
	display: grid;
	gap: 14px;
}

	.benefits li {
		display: flex;
		gap: 12px;
		align-items: flex-start;
		font-size: 14px;
	}

	.benefits .bi {
		width: 30px;
		height: 30px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 9px;
		background: var(--surface);
		border: 1px solid #d9e3ff;
		color: var(--accent);
		box-shadow: var(--shadow-sm);
	}

	.benefits b {
		display: block;
		font-weight: 600;
		color: var(--ink);
	}

	.benefits span {
		color: var(--muted);
		font-size: 13px;
	}

.panel.register .grow {
	flex: 1;
}

.btn-register {
	width: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 15px 24px;
	border: 1.5px solid var(--ink);
	border-radius: 12px;
	background: var(--ink);
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	transition: transform .12s, background .15s;
}

	.btn-register:hover {
		background: #000;
		transform: translateY(-1px);
	}

	.btn-register:focus-visible {
		outline: 2px solid var(--accent);
		outline-offset: 3px;
	}

.reg-note {
	margin: 14px 0 0;
	text-align: center;
	font-size: 12.5px;
	color: var(--muted);
	background: #f3f6ff;
}

/* ----- Feature strip ----------------------------------------------------- */
/*.features {
	background: var(--ink);
	color: #fff;
}
.features .wrap {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 20px;
	padding: 30px 24px;
}

.feat {
	display: flex;
	align-items: center;
	gap: 14px;
}

	.feat .fi {
		width: 44px;
		height: 44px;
		flex: none;
		display: grid;
		place-items: center;
		border-radius: 12px;
		background: rgba(255,255,255,.07);
		border: 1px solid rgba(255,255,255,.12);
		color: #fff;
	}

	.feat .ft {
		font-family: "Space Grotesk", sans-serif;
		font-size: 14.5px;
		font-weight: 600;
		letter-spacing: .01em;
	}

	.feat .fs {
		margin-top: 2px;
		font-size: 12px;
		color: #9aa0ad;
	}*/

/* ----- Footer ------------------------------------------------------------ */
/*footer.site { background: var(--footer-bg); color: var(--footer-ink); }
footer.site .top { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.2fr; gap: 32px; padding: 56px 24px 44px; }
.f-brand .mark { font-family: "Space Grotesk", sans-serif; color: #fff; font-size: 24px; font-weight: 700; letter-spacing: -.02em; }
.f-brand .mark b { color: var(--accent); }
.f-brand .sub { margin-top: 5px; font-size: 10.5px; font-weight: 600; letter-spacing: .42em; text-transform: uppercase; color: #8b919e; }
.f-brand p { margin: 18px 0 0; max-width: 30ch; font-size: 13.5px; line-height: 1.6; }
.f-col h4 { margin: 0 0 18px; font-family: "Space Grotesk", sans-serif; color: #fff; font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.f-col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 11px; }
.f-col a { font-size: 13.5px; color: var(--footer-ink); transition: color .15s; }
.f-col a:hover { color: #fff; }
footer.site .bottom { border-top: 1px solid rgba(255,255,255,.08); }
footer.site .bottom .wrap { display: flex; align-items: center; justify-content: space-between; padding: 20px 24px; }
footer.site .bottom .cr { font-size: 12.5px; color: #7b818e; }
.social { display: flex; gap: 10px; }
.social a { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); color: #c8cdd6; transition: background .15s, color .15s, border-color .15s; }
.social a:hover { background: var(--accent); color: #fff; border-color: var(--accent); }*/

/* ----- Footer note (checkout pages) -------------------------------------- */
footer.note {
	padding: 0 0 50px;
	text-align: center;
	font-size: 12.5px;
	color: var(--faint);
}

/* ----- Responsive -------------------------------------------------------- */
@media (max-width: 940px) {
	nav.main {
		display: none;
	}

	.checkout {
		grid-template-columns: 1fr;
	}

	.summary {
		position: static;
	}

	.auth-grid {
		grid-template-columns: 1fr;
		max-width: 480px;
	}

	.features .wrap {
		grid-template-columns: 1fr 1fr;
		gap: 24px;
	}

	footer.site .top {
		grid-template-columns: 1fr 1fr;
		gap: 36px 24px;
	}
}
/* On the shipping page the summary should sit above the form on mobile.
   Add class="summary form-summary" there, or just keep this scoped rule: */
@media (max-width: 940px) {
	.checkout .summary {
		order: -1;
	}
}

@media (max-width: 560px) {
	.wrap {
		padding: 0 16px;
	}

	.register-half-field {
		width: 100%;
	}

	header.site .wrap {
		height: 64px;
		gap: 12px;
	}

	.page-head {
		padding: 28px 0 18px;
	}

		.page-head h1 {
			font-size: 24px;
		}

	.auth {
		padding: 110px 0 50px;
	}

	.auth-head h1 {
		font-size: 26px;
	}

	.panel {
		padding: 26px 22px 28px;
	}

	.step .label {
		display: none;
	}

	.step.current .label {
		display: inline;
	}

	.step-sep {
		margin: 0 8px;
	}

	.row-2, .row-csz {
		grid-template-columns: 1fr;
	}

	.actions {
		flex-direction: column-reverse;
		align-items: stretch;
	}

	.addr {
		grid-template-columns: 96px 1fr;
	}

	.features .wrap {
		grid-template-columns: 1fr;
	}

	footer.site .top {
		grid-template-columns: 1fr;
	}

	footer.site .bottom .wrap {
		flex-direction: column;
		gap: 14px;
	}

	.util .ship {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	* {
		transition: none !important;
	}
}

/*#registerCTA {
	background: #f3f6ff;
	display:flex;
	flex-direction:column;
	height:100%
}
#backToLoginBtn {
	width:209px;
	height:50px;
	margin-right:30px;
}

.back-to-login {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 15px 22px;
	border: 1.5px solid var(--line);
	border-radius: 12px;
	background: var(--surface);
	color: var(--ink-soft);
	font-size: 14.5px;
	font-weight: 600;
	transition: border-color .15s, color .15s;
	cursor: pointer;
}

	.back-to-login:hover,
	.back-to-login:focus,
	.back-to-login:active {
		border-color: #cdd3de;
		background: var(--surface);
		color: var(--ink);
	}*/

/* ---------------------------------------
   COLLAPSED REGISTER CTA
   Center "Create your account" always
--------------------------------------- */

/*#registerCTA .btn-register {
	display: flex;
	width: 210px;
	height: 50px;
	margin: 0 auto;
}*/


/* ---------------------------------------
   MOBILE ONLY - EXPANDED REGISTRATION FORM
--------------------------------------- */

/*@media (max-width: 768px) {

	.auth-grid.registration-active #btnCreateAccount {
		margin:24px auto 0;
		width: fit-content;
		display:flex;
		float:none;
	}

	.auth-grid.registration-active #backToLoginBtn {
		display: flex;
		width: 210px;
		margin: 20px auto 0;
		float:none;
	}
}*/

/* Center the 3 benefits inside the registration card */
/*#registerCTA .benefits {
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
}

	#registerCTA .benefits li {
		text-align: left;
	}*/

/* Make registration benefits larger */
/*#registerCTA .benefits {
	gap: 20px;
}

	#registerCTA .benefits li {
		gap: 15px;
		font-size: 16px;
	}

	#registerCTA .benefits .bi {
		width: 40px;
		height: 40px;
	}

		#registerCTA .benefits .bi svg {
			width: 20px;
			height: 20px;
		}

	#registerCTA .benefits b {
		font-size: 16px;
	}

	#registerCTA .benefits span {
		font-size: 14px;
		line-height: 1.5;
	}*/

/* Align Create Account button with Sign In button */
/*#registerCTA .btn-register {
	position: relative;
	top: 8px;
}

#registerCTA .reg-note {
	position: relative;
	top: 8px;
}*/
/* =========================================================
   AUTH PAGE - FINAL OVERRIDES
   ========================================================= */

/* ---------- Collapsed registration card ---------- */

#registerCTA {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #f3f6ff;
}

	/* Center the benefits as one group */
	#registerCTA .benefits {
		width: fit-content;
		margin: 4px auto 28px;
		gap: 20px;
	}

		/* Larger benefit items */
		#registerCTA .benefits li {
			display: flex;
			align-items: flex-start;
			gap: 15px;
			font-size: 16px;
			text-align: left;
		}

		#registerCTA .benefits .bi {
			width: 40px;
			height: 40px;
			flex: none;
		}

			#registerCTA .benefits .bi svg {
				width: 20px;
				height: 20px;
			}

		#registerCTA .benefits b {
			font-size: 16px;
		}

		#registerCTA .benefits span {
			font-size: 14px;
			line-height: 1.5;
		}

	/* Push CTA area toward bottom of card */
	#registerCTA .grow {
		flex: 1;
	}

/* ---------- Sign In + Create Account buttons ---------- */

/* Sign In */
#loginBtn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 50px;
	margin-left: 0;
	margin-right: 0;
	padding: 0 24px;
}


/* Create your account */
#registerNowBtn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 50px;
	margin-left: 0;
	margin-right: 0;
	padding: 0 20px;
}

/* Registration note */
#registerCTA .reg-note {
	margin: 14px 0 0;
	text-align: center;
}

/* ---------- Back to Sign In button ---------- */

#backToLoginBtn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 210px;
	height: 50px;
	padding: 0 22px;
	border: 1.5px solid var(--line);
	border-radius: 12px;
	background: var(--surface);
	color: var(--ink-soft);
	font-size: 14.5px;
	font-weight: 600;
	cursor: pointer;
	transition: border-color .15s, color .15s;
	margin-right:30px;
}

	#backToLoginBtn:hover,
	#backToLoginBtn:focus,
	#backToLoginBtn:active {
		border-color: #cdd3de;
		background: var(--surface);
		color: var(--ink);
	}


/* =========================================================
   MOBILE - EXPANDED REGISTRATION FORM
   ========================================================= */

@media (max-width: 768px) {

	.auth-grid.registration-active #btnCreateAccount {
		display: flex;
		float: none;
		width: fit-content;
		margin: 24px auto 0;
	}

	.auth-grid.registration-active #backToLoginBtn {
		display: flex;
		float: none;
		width: 210px;
		margin: 20px auto 0;
	}
}

@charset "UTF-8";
/*
Animate.css - http://daneden.me/animate
Licensed under the MIT license

Copyright (c) 2013 Daniel Eden

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

.eds-animate {
	overflow: hidden;	
}

.edsanimate-sis-hidden, .eds-scroll-hidden {
	opacity:0;	
}

.eds-scroll-visible {
	opacity:1;	
}

.animated {
   -webkit-animation-duration: 1s;
      -moz-animation-duration: 1s;
        -ms-animation-duration: 1s;
          -o-animation-duration: 1s;
       	     animation-duration: 1s;
}

/*Delay classes*/
.delay1 {
    -webkit-animation-delay: .5s;
      -moz-animation-delay: .5s;
        -ms-animation-delay: .5s;
          -o-animation-delay: .5s;
             animation-delay: .5s;
}

.delay2 {
    -webkit-animation-delay: 1s;
      -moz-animation-delay: 1s;
        -ms-animation-delay: 1s;
          -o-animation-delay: 1s;
             animation-delay: 1s;
}

.delay3 {
    -webkit-animation-delay: 1.5s;
      -moz-animation-delay: 1.5s;
        -ms-animation-delay: 1.5s;
          -o-animation-delay: 1.5s;
             animation-delay: 1.5s;
}

.delay4 {
    -webkit-animation-delay: 2s;
      -moz-animation-delay: 2s;
        -ms-animation-delay: 2s;
          -o-animation-delay: 2s;
             animation-delay: 2s;
}

.delay5 {
    -webkit-animation-delay: 2.5s;
      -moz-animation-delay: 2.5s;
        -ms-animation-delay: 2.5s;
          -o-animation-delay: 2.5s;
             animation-delay: 2.5s;
}

.delay6 {
    -webkit-animation-delay: 3s;
      -moz-animation-delay: 3s;
        -ms-animation-delay: 3s;
          -o-animation-delay: 3s;
             animation-delay: 3s;
}

.delay7 {
    -webkit-animation-delay: 3.5s;
      -moz-animation-delay: 3.5s;
        -ms-animation-delay: 3.5s;
          -o-animation-delay: 3.5s;
             animation-delay: 3.5s;
}

.delay8 {
    -webkit-animation-delay: 4s;
      -moz-animation-delay: 4s;
        -ms-animation-delay: 4s;
          -o-animation-delay: 4s;
             animation-delay: 4s;
}

.delay9 {
    -webkit-animation-delay: 4.5s;
      -moz-animation-delay: 4.5s;
        -ms-animation-delay: 4.5s;
          -o-animation-delay: 4.5s;
             animation-delay: 4.5s;
}

.delay10 {
    -webkit-animation-delay: 5s;
      -moz-animation-delay: 5s;
        -ms-animation-delay: 5s;
          -o-animation-delay: 5s;
             animation-delay: 5s;
}

.delay11 {
    -webkit-animation-delay: 5.5s;
      -moz-animation-delay: 5.5s;
        -ms-animation-delay: 5.5s;
          -o-animation-delay: 5.5s;
             animation-delay: 5.5s;
}

.delay12 {
    -webkit-animation-delay: 6s;
      -moz-animation-delay: 6s;
        -ms-animation-delay: 6s;
          -o-animation-delay: 6s;
             animation-delay: 6s;
}

/*Duration Classes*/
.duration1 {
    -webkit-animation-duration: .5s !important;
      -moz-animation-duration: .5s !important;
        -ms-animation-duration: .5s !important;
          -o-animation-duration: .5s !important;
       	     animation-duration: .5s !important;
}

.duration2 {
    -webkit-animation-duration: 1s !important;
      -moz-animation-duration: 1s !important;
        -ms-animation-duration: 1s !important;
          -o-animation-duration: 1s !important;
       	     animation-duration: 1s !important;
}

.duration3 {
    -webkit-animation-duration: 1.5s !important;
      -moz-animation-duration: 1.5s !important;
        -ms-animation-duration: 1.5s !important;
          -o-animation-duration: 1.5s !important;
       	     animation-duration: 1.5s !important;
}

.duration4 {
    -webkit-animation-duration: 2s !important;
      -moz-animation-duration: 2s !important;
        -ms-animation-duration: 2s !important;
          -o-animation-duration: 2s !important;
       	     animation-duration: 2s !important;
}

.duration5 {
    -webkit-animation-duration: 2.5s !important;
      -moz-animation-duration: 2.5s !important;
        -ms-animation-duration: 2.5s !important;
          -o-animation-duration: 2.5s !important;
       	     animation-duration: 2.5s !important;
}

.duration6 {
    -webkit-animation-duration: 3s !important;
      -moz-animation-duration: 3s !important;
        -ms-animation-duration: 3s !important;
          -o-animation-duration: 3s !important;
       	     animation-duration: 3s !important;
}

.duration7 {
    -webkit-animation-duration: 3.5s !important;
      -moz-animation-duration: 3.5s !important;
        -ms-animation-duration: 3.5s !important;
          -o-animation-duration: 3.5s !important;
       	     animation-duration: 3.5s !important;
}

.duration8 {
    -webkit-animation-duration: 4s !important;
      -moz-animation-duration: 4s !important;
        -ms-animation-duration: 4s !important;
          -o-animation-duration: 4s !important;
       	     animation-duration: 4s !important;
}

.duration9 {
    -webkit-animation-duration: 4.5s !important;
      -moz-animation-duration: 4.5s !important;
        -ms-animation-duration: 4.5s !important;
          -o-animation-duration: 4.5s !important;
       	     animation-duration: 4.5s !important;
}

.duration10 {
    -webkit-animation-duration: 5s !important;
      -moz-animation-duration: 5s !important;
        -ms-animation-duration: 5s !important;
          -o-animation-duration: 5s !important;
       	     animation-duration: 5s !important;
}

.duration11 {
    -webkit-animation-duration: 5.5s !important;
      -moz-animation-duration: 5.5s !important;
        -ms-animation-duration: 5.5s !important;
          -o-animation-duration: 5.5s !important;
       	     animation-duration: 5.5s !important;
}

.duration12 {
    -webkit-animation-duration: 6s !important;
      -moz-animation-duration: 6s !important;
        -ms-animation-duration: 6s !important;
          -o-animation-duration: 6s !important;
       	     animation-duration: 6s !important;
}

.duration13 {
    -webkit-animation-duration: 6.5s !important;
      -moz-animation-duration: 6.5s !important;
        -ms-animation-duration: 6.5s !important;
          -o-animation-duration: 6.5s !important;
       	     animation-duration: 6.5s !important;
}

.duration14 {
    -webkit-animation-duration: 7s !important;
      -moz-animation-duration: 7s !important;
        -ms-animation-duration: 7s !important;
          -o-animation-duration: 7s !important;
       	     animation-duration: 7s !important;
}

.duration15 {
    -webkit-animation-duration: 7.5s !important;
      -moz-animation-duration: 7.5s !important;
        -ms-animation-duration: 7.5s !important;
          -o-animation-duration: 7.5s !important;
       	     animation-duration: 7.5s !important;
}

.duration16 {
    -webkit-animation-duration: 8s !important;
      -moz-animation-duration: 8s !important;
        -ms-animation-duration: 8s !important;
          -o-animation-duration: 8s !important;
       	     animation-duration: 8s !important;
}

.duration17 {
    -webkit-animation-duration: 8.5s !important;
      -moz-animation-duration: 8.5s !important;
        -ms-animation-duration: 8.5s !important;
          -o-animation-duration: 8.5s !important;
       	     animation-duration: 8.5s !important;
}

.duration18 {
    -webkit-animation-duration: 9s !important;
      -moz-animation-duration: 9s !important;
        -ms-animation-duration: 9s !important;
          -o-animation-duration: 9s !important;
       	     animation-duration: 9s !important;
}

.duration19 {
    -webkit-animation-duration: 9.5s !important;
      -moz-animation-duration: 9.5s !important;
        -ms-animation-duration: 9.5s !important;
          -o-animation-duration: 9.5s !important;
       	     animation-duration: 9.5s !important;
}

.duration20 {
    -webkit-animation-duration: 10s !important;
      -moz-animation-duration: 10s !important;
        -ms-animation-duration: 10s !important;
          -o-animation-duration: 10s !important;
       	     animation-duration: 10s !important;
}

.animated {
	/* Addresses a small issue in webkit: http://bit.ly/NEdoDq */
	backface-visibility: hidden;
	-o-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-webkit-backface-visibility: hidden;

	animation-fill-mode: both;
	transform: translate3d(0, 0, 0);	

	-o-animation-fill-mode: both;
	-o-transform: translate3d(0, 0, 0);	

	-moz-animation-fill-mode: both;
	-moz-transform: translate3d(0, 0, 0);
	
	-webkit-animation-fill-mode: both;
	-webkit-transform: translate3d(0, 0, 0);
}

.animated.infinite {
	-webkit-animation-iteration-count: infinite;
	-moz-animation-iteration-count: infinite;
	-ms-animation-iteration-count: infinite;
	-o-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

@-webkit-keyframes flash {
	0%, 50%, 100% {opacity: 1;}	
	25%, 75% {opacity: 0;}
}

@-moz-keyframes flash {
	0%, 50%, 100% {opacity: 1;}	
	25%, 75% {opacity: 0;}
}

@-o-keyframes flash {
	0%, 50%, 100% {opacity: 1;}	
	25%, 75% {opacity: 0;}
}

@keyframes flash {
	0%, 50%, 100% {opacity: 1;}	
	25%, 75% {opacity: 0;}
}

.animated.flash {
	-webkit-animation-name: flash;
	-moz-animation-name: flash;
	-o-animation-name: flash;
	animation-name: flash;
}
@-webkit-keyframes shake {
	0%, 100% {-webkit-transform: translateX(0);}
	10%, 30%, 50%, 70%, 90% {-webkit-transform: translateX(-10px);}
	20%, 40%, 60%, 80% {-webkit-transform: translateX(10px);}
}

@-moz-keyframes shake {
	0%, 100% {-moz-transform: translateX(0);}
	10%, 30%, 50%, 70%, 90% {-moz-transform: translateX(-10px);}
	20%, 40%, 60%, 80% {-moz-transform: translateX(10px);}
}

@-o-keyframes shake {
	0%, 100% {-o-transform: translateX(0);}
	10%, 30%, 50%, 70%, 90% {-o-transform: translateX(-10px);}
	20%, 40%, 60%, 80% {-o-transform: translateX(10px);}
}

@keyframes shake {
	0%, 100% {transform: translateX(0);}
	10%, 30%, 50%, 70%, 90% {transform: translateX(-10px);}
	20%, 40%, 60%, 80% {transform: translateX(10px);}
}

.animated.shake {
	-webkit-animation-name: shake;
	-moz-animation-name: shake;
	-o-animation-name: shake;
	animation-name: shake;
}
@-webkit-keyframes bounce {
	0%, 20%, 50%, 80%, 100% {-webkit-transform: translateY(0);}
	40% {-webkit-transform: translateY(-30px);}
	60% {-webkit-transform: translateY(-15px);}
}

@-moz-keyframes bounce {
	0%, 20%, 50%, 80%, 100% {-moz-transform: translateY(0);}
	40% {-moz-transform: translateY(-30px);}
	60% {-moz-transform: translateY(-15px);}
}

@-o-keyframes bounce {
	0%, 20%, 50%, 80%, 100% {-o-transform: translateY(0);}
	40% {-o-transform: translateY(-30px);}
	60% {-o-transform: translateY(-15px);}
}
@keyframes bounce {
	0%, 20%, 50%, 80%, 100% {transform: translateY(0);}
	40% {transform: translateY(-30px);}
	60% {transform: translateY(-15px);}
}

.animated.bounce {
	-webkit-animation-name: bounce;
	-moz-animation-name: bounce;
	-o-animation-name: bounce;
	animation-name: bounce;
}
@-webkit-keyframes tada {
	0% {-webkit-transform: scale(1);}	
	10%, 20% {-webkit-transform: scale(0.9) rotate(-3deg);}
	30%, 50%, 70%, 90% {-webkit-transform: scale(1.1) rotate(3deg);}
	40%, 60%, 80% {-webkit-transform: scale(1.1) rotate(-3deg);}
	100% {-webkit-transform: scale(1) rotate(0);}
}

@-moz-keyframes tada {
	0% {-moz-transform: scale(1);}	
	10%, 20% {-moz-transform: scale(0.9) rotate(-3deg);}
	30%, 50%, 70%, 90% {-moz-transform: scale(1.1) rotate(3deg);}
	40%, 60%, 80% {-moz-transform: scale(1.1) rotate(-3deg);}
	100% {-moz-transform: scale(1) rotate(0);}
}

@-o-keyframes tada {
	0% {-o-transform: scale(1);}	
	10%, 20% {-o-transform: scale(0.9) rotate(-3deg);}
	30%, 50%, 70%, 90% {-o-transform: scale(1.1) rotate(3deg);}
	40%, 60%, 80% {-o-transform: scale(1.1) rotate(-3deg);}
	100% {-o-transform: scale(1) rotate(0);}
}

@keyframes tada {
	0% {transform: scale(1);}	
	10%, 20% {transform: scale(0.9) rotate(-3deg);}
	30%, 50%, 70%, 90% {transform: scale(1.1) rotate(3deg);}
	40%, 60%, 80% {transform: scale(1.1) rotate(-3deg);}
	100% {transform: scale(1) rotate(0);}
}

.animated.tada {
	-webkit-animation-name: tada;
	-moz-animation-name: tada;
	-o-animation-name: tada;
	animation-name: tada;
}
@-webkit-keyframes swing {
	20%, 40%, 60%, 80%, 100% { -webkit-transform-origin: top center; }
	20% { -webkit-transform: rotate(15deg); }	
	40% { -webkit-transform: rotate(-10deg); }
	60% { -webkit-transform: rotate(5deg); }	
	80% { -webkit-transform: rotate(-5deg); }	
	100% { -webkit-transform: rotate(0deg); }
}

@-moz-keyframes swing {
	20% { -moz-transform: rotate(15deg); }	
	40% { -moz-transform: rotate(-10deg); }
	60% { -moz-transform: rotate(5deg); }	
	80% { -moz-transform: rotate(-5deg); }	
	100% { -moz-transform: rotate(0deg); }
}

@-o-keyframes swing {
	20% { -o-transform: rotate(15deg); }	
	40% { -o-transform: rotate(-10deg); }
	60% { -o-transform: rotate(5deg); }	
	80% { -o-transform: rotate(-5deg); }	
	100% { -o-transform: rotate(0deg); }
}

@keyframes swing {
	20% { transform: rotate(15deg); }	
	40% { transform: rotate(-10deg); }
	60% { transform: rotate(5deg); }	
	80% { transform: rotate(-5deg); }	
	100% { transform: rotate(0deg); }
}

.animated.swing {
	-webkit-transform-origin: top center;
	-moz-transform-origin: top center;
	-o-transform-origin: top center;
	transform-origin: top center;
	-webkit-animation-name: swing;
	-moz-animation-name: swing;
	-o-animation-name: swing;
	animation-name: swing;
}

@-webkit-keyframes rubberBand {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(.95, 1.05, 1);
    transform: scale3d(.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, .95, 1);
    transform: scale3d(1.05, .95, 1);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes rubberBand {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(.95, 1.05, 1);
    transform: scale3d(.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, .95, 1);
    transform: scale3d(1.05, .95, 1);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.animated.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
  0% { -webkit-transform: translateX(0%); }
  15% { -webkit-transform: translateX(-25%) rotate(-5deg); }
  30% { -webkit-transform: translateX(20%) rotate(3deg); }
  45% { -webkit-transform: translateX(-15%) rotate(-3deg); }
  60% { -webkit-transform: translateX(10%) rotate(2deg); }
  75% { -webkit-transform: translateX(-5%) rotate(-1deg); }
  100% { -webkit-transform: translateX(0%); }
}

@-moz-keyframes wobble {
  0% { -moz-transform: translateX(0%); }
  15% { -moz-transform: translateX(-25%) rotate(-5deg); }
  30% { -moz-transform: translateX(20%) rotate(3deg); }
  45% { -moz-transform: translateX(-15%) rotate(-3deg); }
  60% { -moz-transform: translateX(10%) rotate(2deg); }
  75% { -moz-transform: translateX(-5%) rotate(-1deg); }
  100% { -moz-transform: translateX(0%); }
}

@-o-keyframes wobble {
  0% { -o-transform: translateX(0%); }
  15% { -o-transform: translateX(-25%) rotate(-5deg); }
  30% { -o-transform: translateX(20%) rotate(3deg); }
  45% { -o-transform: translateX(-15%) rotate(-3deg); }
  60% { -o-transform: translateX(10%) rotate(2deg); }
  75% { -o-transform: translateX(-5%) rotate(-1deg); }
  100% { -o-transform: translateX(0%); }
}

@keyframes wobble {
  0% { transform: translateX(0%); }
  15% { transform: translateX(-25%) rotate(-5deg); }
  30% { transform: translateX(20%) rotate(3deg); }
  45% { transform: translateX(-15%) rotate(-3deg); }
  60% { transform: translateX(10%) rotate(2deg); }
  75% { transform: translateX(-5%) rotate(-1deg); }
  100% { transform: translateX(0%); }
}

.animated.wobble {
	-webkit-animation-name: wobble;
	-moz-animation-name: wobble;
	-o-animation-name: wobble;
	animation-name: wobble;
}

@-webkit-keyframes jello {
  0%, 11.1%, 100% {
    -webkit-transform: none;
    transform: none;
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

@keyframes jello {
  0%, 11.1%, 100% {
    -webkit-transform: none;
    transform: none;
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

.animated.jello {
	-webkit-animation-name: jello;
	animation-name: jello;
	-webkit-transform-origin: center;
	transform-origin: center;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse {
    0% { -webkit-transform: scale(1); }	
	50% { -webkit-transform: scale(1.1); }
    100% { -webkit-transform: scale(1); }
}
@-moz-keyframes pulse {
    0% { -moz-transform: scale(1); }	
	50% { -moz-transform: scale(1.1); }
    100% { -moz-transform: scale(1); }
}
@-o-keyframes pulse {
    0% { -o-transform: scale(1); }	
	50% { -o-transform: scale(1.1); }
    100% { -o-transform: scale(1); }
}
@keyframes pulse {
    0% { transform: scale(1); }	
	50% { transform: scale(1.1); }
    100% { transform: scale(1); }
}

.animated.pulse {
	-webkit-animation-name: pulse;
	-moz-animation-name: pulse;
	-o-animation-name: pulse;
	animation-name: pulse;
}
@-webkit-keyframes flip {
	0% {
		-webkit-transform: perspective(400px) rotateY(0);
		-webkit-animation-timing-function: ease-out;
	}
	40% {
		-webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
		-webkit-animation-timing-function: ease-out;
	}
	50% {
		-webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		-webkit-animation-timing-function: ease-in;
	}
	80% {
		-webkit-transform: perspective(400px) rotateY(360deg) scale(.95);
		-webkit-animation-timing-function: ease-in;
	}
	100% {
		-webkit-transform: perspective(400px) scale(1);
		-webkit-animation-timing-function: ease-in;
	}
}
@-moz-keyframes flip {
	0% {
		-moz-transform: perspective(400px) rotateY(0);
		-moz-animation-timing-function: ease-out;
	}
	40% {
		-moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
		-moz-animation-timing-function: ease-out;
	}
	50% {
		-moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		-moz-animation-timing-function: ease-in;
	}
	80% {
		-moz-transform: perspective(400px) rotateY(360deg) scale(.95);
		-moz-animation-timing-function: ease-in;
	}
	100% {
		-moz-transform: perspective(400px) scale(1);
		-moz-animation-timing-function: ease-in;
	}
}
@-o-keyframes flip {
	0% {
		-o-transform: perspective(400px) rotateY(0);
		-o-animation-timing-function: ease-out;
	}
	40% {
		-o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
		-o-animation-timing-function: ease-out;
	}
	50% {
		-o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		-o-animation-timing-function: ease-in;
	}
	80% {
		-o-transform: perspective(400px) rotateY(360deg) scale(.95);
		-o-animation-timing-function: ease-in;
	}
	100% {
		-o-transform: perspective(400px) scale(1);
		-o-animation-timing-function: ease-in;
	}
}
@keyframes flip {
	0% {
		transform: perspective(400px) rotateY(0);
		animation-timing-function: ease-out;
	}
	40% {
		transform: perspective(400px) translateZ(150px) rotateY(170deg);
		animation-timing-function: ease-out;
	}
	50% {
		transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		animation-timing-function: ease-in;
	}
	80% {
		transform: perspective(400px) rotateY(360deg) scale(.95);
		animation-timing-function: ease-in;
	}
	100% {
		transform: perspective(400px) scale(1);
		animation-timing-function: ease-in;
	}
}

.animated.flip {
	-webkit-backface-visibility: visible !important;
	-webkit-animation-name: flip;
	-moz-backface-visibility: visible !important;
	-moz-animation-name: flip;
	-o-backface-visibility: visible !important;
	-o-animation-name: flip;
	backface-visibility: visible !important;
	animation-name: flip;
}
@-webkit-keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
    
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
    }
    
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
    }
    
    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}
@-moz-keyframes flipInX {
    0% {
        -moz-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
    
    40% {
        -moz-transform: perspective(400px) rotateX(-10deg);
    }
    
    70% {
        -moz-transform: perspective(400px) rotateX(10deg);
    }
    
    100% {
        -moz-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}
@-o-keyframes flipInX {
    0% {
        -o-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
    
    40% {
        -o-transform: perspective(400px) rotateX(-10deg);
    }
    
    70% {
        -o-transform: perspective(400px) rotateX(10deg);
    }
    
    100% {
        -o-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}
@keyframes flipInX {
    0% {
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
    
    40% {
        transform: perspective(400px) rotateX(-10deg);
    }
    
    70% {
        transform: perspective(400px) rotateX(10deg);
    }
    
    100% {
        transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}

.animated.flipInX {
	-webkit-backface-visibility: visible !important;
	-webkit-animation-name: flipInX;
	-moz-backface-visibility: visible !important;
	-moz-animation-name: flipInX;
	-o-backface-visibility: visible !important;
	-o-animation-name: flipInX;
	backface-visibility: visible !important;
	animation-name: flipInX;
}
@-webkit-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
	100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}

@-moz-keyframes flipOutX {
    0% {
        -moz-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
	100% {
        -moz-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}

@-o-keyframes flipOutX {
    0% {
        -o-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
	100% {
        -o-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}

@keyframes flipOutX {
    0% {
        transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
	100% {
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}

.animated.flipOutX {
	-webkit-animation-name: flipOutX;
	-webkit-backface-visibility: visible !important;
	-moz-animation-name: flipOutX;
	-moz-backface-visibility: visible !important;
	-o-animation-name: flipOutX;
	-o-backface-visibility: visible !important;
	animation-name: flipOutX;
	backface-visibility: visible !important;
}
@-webkit-keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
    
    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
    }
    
    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
    }
    
    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
}
@-moz-keyframes flipInY {
    0% {
        -moz-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
    
    40% {
        -moz-transform: perspective(400px) rotateY(-10deg);
    }
    
    70% {
        -moz-transform: perspective(400px) rotateY(10deg);
    }
    
    100% {
        -moz-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
}
@-o-keyframes flipInY {
    0% {
        -o-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
    
    40% {
        -o-transform: perspective(400px) rotateY(-10deg);
    }
    
    70% {
        -o-transform: perspective(400px) rotateY(10deg);
    }
    
    100% {
        -o-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
}
@keyframes flipInY {
    0% {
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
    
    40% {
        transform: perspective(400px) rotateY(-10deg);
    }
    
    70% {
        transform: perspective(400px) rotateY(10deg);
    }
    
    100% {
        transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
}

.animated.flipInY {
	-webkit-backface-visibility: visible !important;
	-webkit-animation-name: flipInY;
	-moz-backface-visibility: visible !important;
	-moz-animation-name: flipInY;
	-o-backface-visibility: visible !important;
	-o-animation-name: flipInY;
	backface-visibility: visible !important;
	animation-name: flipInY;
}
@-webkit-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
	100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}
@-moz-keyframes flipOutY {
    0% {
        -moz-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
	100% {
        -moz-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}
@-o-keyframes flipOutY {
    0% {
        -o-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
	100% {
        -o-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}
@keyframes flipOutY {
    0% {
        transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
	100% {
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}

.animated.flipOutY {
	-webkit-backface-visibility: visible !important;
	-webkit-animation-name: flipOutY;
	-moz-backface-visibility: visible !important;
	-moz-animation-name: flipOutY;
	-o-backface-visibility: visible !important;
	-o-animation-name: flipOutY;
	backface-visibility: visible !important;
	animation-name: flipOutY;
}
@-webkit-keyframes fadeIn {
	0% {opacity: 0;}	
	100% {opacity: 1;}
}

@-moz-keyframes fadeIn {
	0% {opacity: 0;}	
	100% {opacity: 1;}
}

@-o-keyframes fadeIn {
	0% {opacity: 0;}	
	100% {opacity: 1;}
}

@keyframes fadeIn {
	0% {opacity: 0;}	
	100% {opacity: 1;}
}

.animated.fadeIn {
	-webkit-animation-name: fadeIn;
	-moz-animation-name: fadeIn;
	-o-animation-name: fadeIn;
	animation-name: fadeIn;
}
@-webkit-keyframes fadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translateY(20px);
	}
	
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
}

@-moz-keyframes fadeInUp {
	0% {
		opacity: 0;
		-moz-transform: translateY(20px);
	}
	
	100% {
		opacity: 1;
		-moz-transform: translateY(0);
	}
}

@-o-keyframes fadeInUp {
	0% {
		opacity: 0;
		-o-transform: translateY(20px);
	}
	
	100% {
		opacity: 1;
		-o-transform: translateY(0);
	}
}

@keyframes fadeInUp {
	0% {
		opacity: 0;
		transform: translateY(20px);
	}
	
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

.animated.fadeInUp {
	-webkit-animation-name: fadeInUp;
	-moz-animation-name: fadeInUp;
	-o-animation-name: fadeInUp;
	animation-name: fadeInUp;
}
@-webkit-keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-20px);
	}
	
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
}

@-moz-keyframes fadeInDown {
	0% {
		opacity: 0;
		-moz-transform: translateY(-20px);
	}
	
	100% {
		opacity: 1;
		-moz-transform: translateY(0);
	}
}

@-o-keyframes fadeInDown {
	0% {
		opacity: 0;
		-o-transform: translateY(-20px);
	}
	
	100% {
		opacity: 1;
		-o-transform: translateY(0);
	}
}

@keyframes fadeInDown {
	0% {
		opacity: 0;
		transform: translateY(-20px);
	}
	
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

.animated.fadeInDown {
	-webkit-animation-name: fadeInDown;
	-moz-animation-name: fadeInDown;
	-o-animation-name: fadeInDown;
	animation-name: fadeInDown;
}
@-webkit-keyframes fadeInLeft {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-20px);
	}
	
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
}

@-moz-keyframes fadeInLeft {
	0% {
		opacity: 0;
		-moz-transform: translateX(-20px);
	}
	
	100% {
		opacity: 1;
		-moz-transform: translateX(0);
	}
}

@-o-keyframes fadeInLeft {
	0% {
		opacity: 0;
		-o-transform: translateX(-20px);
	}
	
	100% {
		opacity: 1;
		-o-transform: translateX(0);
	}
}

@keyframes fadeInLeft {
	0% {
		opacity: 0;
		transform: translateX(-20px);
	}
	
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

.animated.fadeInLeft {
	-webkit-animation-name: fadeInLeft;
	-moz-animation-name: fadeInLeft;
	-o-animation-name: fadeInLeft;
	animation-name: fadeInLeft;
}
@-webkit-keyframes fadeInRight {
	0% {
		opacity: 0;
		-webkit-transform: translateX(20px);
	}
	
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
}

@-moz-keyframes fadeInRight {
	0% {
		opacity: 0;
		-moz-transform: translateX(20px);
	}
	
	100% {
		opacity: 1;
		-moz-transform: translateX(0);
	}
}

@-o-keyframes fadeInRight {
	0% {
		opacity: 0;
		-o-transform: translateX(20px);
	}
	
	100% {
		opacity: 1;
		-o-transform: translateX(0);
	}
}

@keyframes fadeInRight {
	0% {
		opacity: 0;
		transform: translateX(20px);
	}
	
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

.animated.fadeInRight {
	-webkit-animation-name: fadeInRight;
	-moz-animation-name: fadeInRight;
	-o-animation-name: fadeInRight;
	animation-name: fadeInRight;
}
@-webkit-keyframes fadeInUpBig {
	0% {
		opacity: 0;
		-webkit-transform: translateY(1080px);
	}
	
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
}

@-moz-keyframes fadeInUpBig {
	0% {
		opacity: 0;
		-moz-transform: translateY(1080px);
	}
	
	100% {
		opacity: 1;
		-moz-transform: translateY(0);
	}
}

@-o-keyframes fadeInUpBig {
	0% {
		opacity: 0;
		-o-transform: translateY(1080px);
	}
	
	100% {
		opacity: 1;
		-o-transform: translateY(0);
	}
}

@keyframes fadeInUpBig {
	0% {
		opacity: 0;
		transform: translateY(1080px);
	}
	
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

.animated.fadeInUpBig {
	-webkit-animation-name: fadeInUpBig;
	-moz-animation-name: fadeInUpBig;
	-o-animation-name: fadeInUpBig;
	animation-name: fadeInUpBig;
}
@-webkit-keyframes fadeInDownBig {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-1080px);
	}
	
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
}

@-moz-keyframes fadeInDownBig {
	0% {
		opacity: 0;
		-moz-transform: translateY(-1080px);
	}
	
	100% {
		opacity: 1;
		-moz-transform: translateY(0);
	}
}

@-o-keyframes fadeInDownBig {
	0% {
		opacity: 0;
		-o-transform: translateY(-1080px);
	}
	
	100% {
		opacity: 1;
		-o-transform: translateY(0);
	}
}

@keyframes fadeInDownBig {
	0% {
		opacity: 0;
		transform: translateY(-1080px);
	}
	
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

.animated.fadeInDownBig {
	-webkit-animation-name: fadeInDownBig;
	-moz-animation-name: fadeInDownBig;
	-o-animation-name: fadeInDownBig;
	animation-name: fadeInDownBig;
}
@-webkit-keyframes fadeInLeftBig {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-2000px);
	}
	
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
}
@-moz-keyframes fadeInLeftBig {
	0% {
		opacity: 0;
		-moz-transform: translateX(-2000px);
	}
	
	100% {
		opacity: 1;
		-moz-transform: translateX(0);
	}
}
@-o-keyframes fadeInLeftBig {
	0% {
		opacity: 0;
		-o-transform: translateX(-2000px);
	}
	
	100% {
		opacity: 1;
		-o-transform: translateX(0);
	}
}
@keyframes fadeInLeftBig {
	0% {
		opacity: 0;
		transform: translateX(-2000px);
	}
	
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

.animated.fadeInLeftBig {
	-webkit-animation-name: fadeInLeftBig;
	-moz-animation-name: fadeInLeftBig;
	-o-animation-name: fadeInLeftBig;
	animation-name: fadeInLeftBig;
}
@-webkit-keyframes fadeInRightBig {
	0% {
		opacity: 0;
		-webkit-transform: translateX(2000px);
	}
	
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
}

@-moz-keyframes fadeInRightBig {
	0% {
		opacity: 0;
		-moz-transform: translateX(2000px);
	}
	
	100% {
		opacity: 1;
		-moz-transform: translateX(0);
	}
}

@-o-keyframes fadeInRightBig {
	0% {
		opacity: 0;
		-o-transform: translateX(2000px);
	}
	
	100% {
		opacity: 1;
		-o-transform: translateX(0);
	}
}

@keyframes fadeInRightBig {
	0% {
		opacity: 0;
		transform: translateX(2000px);
	}
	
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

.animated.fadeInRightBig {
	-webkit-animation-name: fadeInRightBig;
	-moz-animation-name: fadeInRightBig;
	-o-animation-name: fadeInRightBig;
	animation-name: fadeInRightBig;
}
@-webkit-keyframes fadeOut {
	0% {opacity: 1;}
	100% {opacity: 0;}
}

@-moz-keyframes fadeOut {
	0% {opacity: 1;}
	100% {opacity: 0;}
}

@-o-keyframes fadeOut {
	0% {opacity: 1;}
	100% {opacity: 0;}
}

@keyframes fadeOut {
	0% {opacity: 1;}
	100% {opacity: 0;}
}

.animated.fadeOut {
	-webkit-animation-name: fadeOut;
	-moz-animation-name: fadeOut;
	-o-animation-name: fadeOut;
	animation-name: fadeOut;
}
@-webkit-keyframes fadeOutUp {
	0% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateY(-20px);
	}
}
@-moz-keyframes fadeOutUp {
	0% {
		opacity: 1;
		-moz-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateY(-20px);
	}
}
@-o-keyframes fadeOutUp {
	0% {
		opacity: 1;
		-o-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateY(-20px);
	}
}
@keyframes fadeOutUp {
	0% {
		opacity: 1;
		transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		transform: translateY(-20px);
	}
}

.animated.fadeOutUp {
	-webkit-animation-name: fadeOutUp;
	-moz-animation-name: fadeOutUp;
	-o-animation-name: fadeOutUp;
	animation-name: fadeOutUp;
}
@-webkit-keyframes fadeOutDown {
	0% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateY(20px);
	}
}

@-moz-keyframes fadeOutDown {
	0% {
		opacity: 1;
		-moz-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateY(20px);
	}
}

@-o-keyframes fadeOutDown {
	0% {
		opacity: 1;
		-o-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateY(20px);
	}
}

@keyframes fadeOutDown {
	0% {
		opacity: 1;
		transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		transform: translateY(20px);
	}
}

.animated.fadeOutDown {
	-webkit-animation-name: fadeOutDown;
	-moz-animation-name: fadeOutDown;
	-o-animation-name: fadeOutDown;
	animation-name: fadeOutDown;
}
@-webkit-keyframes fadeOutLeft {
	0% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateX(-20px);
	}
}

@-moz-keyframes fadeOutLeft {
	0% {
		opacity: 1;
		-moz-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateX(-20px);
	}
}

@-o-keyframes fadeOutLeft {
	0% {
		opacity: 1;
		-o-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateX(-20px);
	}
}

@keyframes fadeOutLeft {
	0% {
		opacity: 1;
		transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		transform: translateX(-20px);
	}
}

.animated.fadeOutLeft {
	-webkit-animation-name: fadeOutLeft;
	-moz-animation-name: fadeOutLeft;
	-o-animation-name: fadeOutLeft;
	animation-name: fadeOutLeft;
}
@-webkit-keyframes fadeOutRight {
	0% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateX(20px);
	}
}

@-moz-keyframes fadeOutRight {
	0% {
		opacity: 1;
		-moz-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateX(20px);
	}
}

@-o-keyframes fadeOutRight {
	0% {
		opacity: 1;
		-o-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateX(20px);
	}
}

@keyframes fadeOutRight {
	0% {
		opacity: 1;
		transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		transform: translateX(20px);
	}
}

.animated.fadeOutRight {
	-webkit-animation-name: fadeOutRight;
	-moz-animation-name: fadeOutRight;
	-o-animation-name: fadeOutRight;
	animation-name: fadeOutRight;
}
@-webkit-keyframes fadeOutUpBig {
	0% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateY(-1080px);
	}
}

@-moz-keyframes fadeOutUpBig {
	0% {
		opacity: 1;
		-moz-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateY(-1080px);
	}
}

@-o-keyframes fadeOutUpBig {
	0% {
		opacity: 1;
		-o-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateY(-1080px);
	}
}

@keyframes fadeOutUpBig {
	0% {
		opacity: 1;
		transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		transform: translateY(-1080px);
	}
}

.animated.fadeOutUpBig {
	-webkit-animation-name: fadeOutUpBig;
	-moz-animation-name: fadeOutUpBig;
	-o-animation-name: fadeOutUpBig;
	animation-name: fadeOutUpBig;
}
@-webkit-keyframes fadeOutDownBig {
	0% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateY(1080px);
	}
}

@-moz-keyframes fadeOutDownBig {
	0% {
		opacity: 1;
		-moz-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateY(1080px);
	}
}

@-o-keyframes fadeOutDownBig {
	0% {
		opacity: 1;
		-o-transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateY(1080px);
	}
}

@keyframes fadeOutDownBig {
	0% {
		opacity: 1;
		transform: translateY(0);
	}
	
	100% {
		opacity: 0;
		transform: translateY(1080px);
	}
}

.animated.fadeOutDownBig {
	-webkit-animation-name: fadeOutDownBig;
	-moz-animation-name: fadeOutDownBig;
	-o-animation-name: fadeOutDownBig;
	animation-name: fadeOutDownBig;
}
@-webkit-keyframes fadeOutLeftBig {
	0% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateX(-2000px);
	}
}

@-moz-keyframes fadeOutLeftBig {
	0% {
		opacity: 1;
		-moz-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateX(-2000px);
	}
}

@-o-keyframes fadeOutLeftBig {
	0% {
		opacity: 1;
		-o-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateX(-2000px);
	}
}

@keyframes fadeOutLeftBig {
	0% {
		opacity: 1;
		transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		transform: translateX(-2000px);
	}
}

.animated.fadeOutLeftBig {
	-webkit-animation-name: fadeOutLeftBig;
	-moz-animation-name: fadeOutLeftBig;
	-o-animation-name: fadeOutLeftBig;
	animation-name: fadeOutLeftBig;
}
@-webkit-keyframes fadeOutRightBig {
	0% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateX(2000px);
	}
}
@-moz-keyframes fadeOutRightBig {
	0% {
		opacity: 1;
		-moz-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateX(2000px);
	}
}
@-o-keyframes fadeOutRightBig {
	0% {
		opacity: 1;
		-o-transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateX(2000px);
	}
}
@keyframes fadeOutRightBig {
	0% {
		opacity: 1;
		transform: translateX(0);
	}
	
	100% {
		opacity: 0;
		transform: translateX(2000px);
	}
}

.animated.fadeOutRightBig {
	-webkit-animation-name: fadeOutRightBig;
	-moz-animation-name: fadeOutRightBig;
	-o-animation-name: fadeOutRightBig;
	animation-name: fadeOutRightBig;
}
@-webkit-keyframes bounceIn {
	0% {
		opacity: 0;
		-webkit-transform: scale(.3);
	}
	
	50% {
		opacity: 1;
		-webkit-transform: scale(1.05);
	}
	
	70% {
		-webkit-transform: scale(.9);
	}
	
	100% {
		-webkit-transform: scale(1);
	}
}

@-moz-keyframes bounceIn {
	0% {
		opacity: 0;
		-moz-transform: scale(.3);
	}
	
	50% {
		opacity: 1;
		-moz-transform: scale(1.05);
	}
	
	70% {
		-moz-transform: scale(.9);
	}
	
	100% {
		-moz-transform: scale(1);
	}
}

@-o-keyframes bounceIn {
	0% {
		opacity: 0;
		-o-transform: scale(.3);
	}
	
	50% {
		opacity: 1;
		-o-transform: scale(1.05);
	}
	
	70% {
		-o-transform: scale(.9);
	}
	
	100% {
		-o-transform: scale(1);
	}
}

@keyframes bounceIn {
	0% {
		opacity: 0;
		transform: scale(.3);
	}
	
	50% {
		opacity: 1;
		transform: scale(1.05);
	}
	
	70% {
		transform: scale(.9);
	}
	
	100% {
		transform: scale(1);
	}
}

.animated.bounceIn {
	-webkit-animation-name: bounceIn;
	-moz-animation-name: bounceIn;
	-o-animation-name: bounceIn;
	animation-name: bounceIn;
}
@-webkit-keyframes bounceInUp {
	0% {
		opacity: 0;
		-webkit-transform: translateY(1080px);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translateY(-30px);
	}
	
	80% {
		-webkit-transform: translateY(10px);
	}
	
	100% {
		-webkit-transform: translateY(0);
	}
}
@-moz-keyframes bounceInUp {
	0% {
		opacity: 0;
		-moz-transform: translateY(1080px);
	}
	
	60% {
		opacity: 1;
		-moz-transform: translateY(-30px);
	}
	
	80% {
		-moz-transform: translateY(10px);
	}
	
	100% {
		-moz-transform: translateY(0);
	}
}

@-o-keyframes bounceInUp {
	0% {
		opacity: 0;
		-o-transform: translateY(1080px);
	}
	
	60% {
		opacity: 1;
		-o-transform: translateY(-30px);
	}
	
	80% {
		-o-transform: translateY(10px);
	}
	
	100% {
		-o-transform: translateY(0);
	}
}

@keyframes bounceInUp {
	0% {
		opacity: 0;
		transform: translateY(1080px);
	}
	
	60% {
		opacity: 1;
		transform: translateY(-30px);
	}
	
	80% {
		transform: translateY(10px);
	}
	
	100% {
		transform: translateY(0);
	}
}

.animated.bounceInUp {
	-webkit-animation-name: bounceInUp;
	-moz-animation-name: bounceInUp;
	-o-animation-name: bounceInUp;
	animation-name: bounceInUp;
}
@-webkit-keyframes bounceInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-1080px);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translateY(30px);
	}
	
	80% {
		-webkit-transform: translateY(-10px);
	}
	
	100% {
		-webkit-transform: translateY(0);
	}
}

@-moz-keyframes bounceInDown {
	0% {
		opacity: 0;
		-moz-transform: translateY(-1080px);
	}
	
	60% {
		opacity: 1;
		-moz-transform: translateY(30px);
	}
	
	80% {
		-moz-transform: translateY(-10px);
	}
	
	100% {
		-moz-transform: translateY(0);
	}
}

@-o-keyframes bounceInDown {
	0% {
		opacity: 0;
		-o-transform: translateY(-1080px);
	}
	
	60% {
		opacity: 1;
		-o-transform: translateY(30px);
	}
	
	80% {
		-o-transform: translateY(-10px);
	}
	
	100% {
		-o-transform: translateY(0);
	}
}

@keyframes bounceInDown {
	0% {
		opacity: 0;
		transform: translateY(-1080px);
	}
	
	60% {
		opacity: 1;
		transform: translateY(30px);
	}
	
	80% {
		transform: translateY(-10px);
	}
	
	100% {
		transform: translateY(0);
	}
}

.animated.bounceInDown {
	-webkit-animation-name: bounceInDown;
	-moz-animation-name: bounceInDown;
	-o-animation-name: bounceInDown;
	animation-name: bounceInDown;
}
@-webkit-keyframes bounceInLeft {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-2000px);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translateX(30px);
	}
	
	80% {
		-webkit-transform: translateX(-10px);
	}
	
	100% {
		-webkit-transform: translateX(0);
	}
}

@-moz-keyframes bounceInLeft {
	0% {
		opacity: 0;
		-moz-transform: translateX(-2000px);
	}
	
	60% {
		opacity: 1;
		-moz-transform: translateX(30px);
	}
	
	80% {
		-moz-transform: translateX(-10px);
	}
	
	100% {
		-moz-transform: translateX(0);
	}
}

@-o-keyframes bounceInLeft {
	0% {
		opacity: 0;
		-o-transform: translateX(-2000px);
	}
	
	60% {
		opacity: 1;
		-o-transform: translateX(30px);
	}
	
	80% {
		-o-transform: translateX(-10px);
	}
	
	100% {
		-o-transform: translateX(0);
	}
}

@keyframes bounceInLeft {
	0% {
		opacity: 0;
		transform: translateX(-2000px);
	}
	
	60% {
		opacity: 1;
		transform: translateX(30px);
	}
	
	80% {
		transform: translateX(-10px);
	}
	
	100% {
		transform: translateX(0);
	}
}

.animated.bounceInLeft {
	-webkit-animation-name: bounceInLeft;
	-moz-animation-name: bounceInLeft;
	-o-animation-name: bounceInLeft;
	animation-name: bounceInLeft;
}
@-webkit-keyframes bounceInRight {
	0% {
		opacity: 0;
		-webkit-transform: translateX(2000px);
	}
	
	60% {
		opacity: 1;
		-webkit-transform: translateX(-30px);
	}
	
	80% {
		-webkit-transform: translateX(10px);
	}
	
	100% {
		-webkit-transform: translateX(0);
	}
}

@-moz-keyframes bounceInRight {
	0% {
		opacity: 0;
		-moz-transform: translateX(2000px);
	}
	
	60% {
		opacity: 1;
		-moz-transform: translateX(-30px);
	}
	
	80% {
		-moz-transform: translateX(10px);
	}
	
	100% {
		-moz-transform: translateX(0);
	}
}

@-o-keyframes bounceInRight {
	0% {
		opacity: 0;
		-o-transform: translateX(2000px);
	}
	
	60% {
		opacity: 1;
		-o-transform: translateX(-30px);
	}
	
	80% {
		-o-transform: translateX(10px);
	}
	
	100% {
		-o-transform: translateX(0);
	}
}

@keyframes bounceInRight {
	0% {
		opacity: 0;
		transform: translateX(2000px);
	}
	
	60% {
		opacity: 1;
		transform: translateX(-30px);
	}
	
	80% {
		transform: translateX(10px);
	}
	
	100% {
		transform: translateX(0);
	}
}

.animated.bounceInRight {
	-webkit-animation-name: bounceInRight;
	-moz-animation-name: bounceInRight;
	-o-animation-name: bounceInRight;
	animation-name: bounceInRight;
}
@-webkit-keyframes bounceOut {
	0% {
		-webkit-transform: scale(1);
	}
	
	25% {
		-webkit-transform: scale(.95);
	}
	
	50% {
		opacity: 1;
		-webkit-transform: scale(1.1);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: scale(.3);
	}	
}

@-moz-keyframes bounceOut {
	0% {
		-moz-transform: scale(1);
	}
	
	25% {
		-moz-transform: scale(.95);
	}
	
	50% {
		opacity: 1;
		-moz-transform: scale(1.1);
	}
	
	100% {
		opacity: 0;
		-moz-transform: scale(.3);
	}	
}

@-o-keyframes bounceOut {
	0% {
		-o-transform: scale(1);
	}
	
	25% {
		-o-transform: scale(.95);
	}
	
	50% {
		opacity: 1;
		-o-transform: scale(1.1);
	}
	
	100% {
		opacity: 0;
		-o-transform: scale(.3);
	}	
}

@keyframes bounceOut {
	0% {
		transform: scale(1);
	}
	
	25% {
		transform: scale(.95);
	}
	
	50% {
		opacity: 1;
		transform: scale(1.1);
	}
	
	100% {
		opacity: 0;
		transform: scale(.3);
	}	
}

.animated.bounceOut {
	-webkit-animation-name: bounceOut;
	-moz-animation-name: bounceOut;
	-o-animation-name: bounceOut;
	animation-name: bounceOut;
}
@-webkit-keyframes bounceOutUp {
	0% {
		-webkit-transform: translateY(0);
	}
	
	20% {
		opacity: 1;
		-webkit-transform: translateY(20px);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateY(-1080px);
	}
}

@-moz-keyframes bounceOutUp {
	0% {
		-moz-transform: translateY(0);
	}
	
	20% {
		opacity: 1;
		-moz-transform: translateY(20px);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateY(-1080px);
	}
}

@-o-keyframes bounceOutUp {
	0% {
		-o-transform: translateY(0);
	}
	
	20% {
		opacity: 1;
		-o-transform: translateY(20px);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateY(-1080px);
	}
}

@keyframes bounceOutUp {
	0% {
		transform: translateY(0);
	}
	
	20% {
		opacity: 1;
		transform: translateY(20px);
	}
	
	100% {
		opacity: 0;
		transform: translateY(-1080px);
	}
}

.animated.bounceOutUp {
	-webkit-animation-name: bounceOutUp;
	-moz-animation-name: bounceOutUp;
	-o-animation-name: bounceOutUp;
	animation-name: bounceOutUp;
}
@-webkit-keyframes bounceOutDown {
	0% {
		-webkit-transform: translateY(0);
	}
	
	20% {
		opacity: 1;
		-webkit-transform: translateY(-20px);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateY(1080px);
	}
}

@-moz-keyframes bounceOutDown {
	0% {
		-moz-transform: translateY(0);
	}
	
	20% {
		opacity: 1;
		-moz-transform: translateY(-20px);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateY(1080px);
	}
}

@-o-keyframes bounceOutDown {
	0% {
		-o-transform: translateY(0);
	}
	
	20% {
		opacity: 1;
		-o-transform: translateY(-20px);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateY(1080px);
	}
}

@keyframes bounceOutDown {
	0% {
		transform: translateY(0);
	}
	
	20% {
		opacity: 1;
		transform: translateY(-20px);
	}
	
	100% {
		opacity: 0;
		transform: translateY(1080px);
	}
}

.animated.bounceOutDown {
	-webkit-animation-name: bounceOutDown;
	-moz-animation-name: bounceOutDown;
	-o-animation-name: bounceOutDown;
	animation-name: bounceOutDown;
}
@-webkit-keyframes bounceOutLeft {
	0% {
		-webkit-transform: translateX(0);
	}
	
	20% {
		opacity: 1;
		-webkit-transform: translateX(20px);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateX(-2000px);
	}
}

@-moz-keyframes bounceOutLeft {
	0% {
		-moz-transform: translateX(0);
	}
	
	20% {
		opacity: 1;
		-moz-transform: translateX(20px);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateX(-2000px);
	}
}

@-o-keyframes bounceOutLeft {
	0% {
		-o-transform: translateX(0);
	}
	
	20% {
		opacity: 1;
		-o-transform: translateX(20px);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateX(-2000px);
	}
}

@keyframes bounceOutLeft {
	0% {
		transform: translateX(0);
	}
	
	20% {
		opacity: 1;
		transform: translateX(20px);
	}
	
	100% {
		opacity: 0;
		transform: translateX(-2000px);
	}
}

.animated.bounceOutLeft {
	-webkit-animation-name: bounceOutLeft;
	-moz-animation-name: bounceOutLeft;
	-o-animation-name: bounceOutLeft;
	animation-name: bounceOutLeft;
}
@-webkit-keyframes bounceOutRight {
	0% {
		-webkit-transform: translateX(0);
	}
	
	20% {
		opacity: 1;
		-webkit-transform: translateX(-20px);
	}
	
	100% {
		opacity: 0;
		-webkit-transform: translateX(2000px);
	}
}

@-moz-keyframes bounceOutRight {
	0% {
		-moz-transform: translateX(0);
	}
	
	20% {
		opacity: 1;
		-moz-transform: translateX(-20px);
	}
	
	100% {
		opacity: 0;
		-moz-transform: translateX(2000px);
	}
}

@-o-keyframes bounceOutRight {
	0% {
		-o-transform: translateX(0);
	}
	
	20% {
		opacity: 1;
		-o-transform: translateX(-20px);
	}
	
	100% {
		opacity: 0;
		-o-transform: translateX(2000px);
	}
}

@keyframes bounceOutRight {
	0% {
		transform: translateX(0);
	}
	
	20% {
		opacity: 1;
		transform: translateX(-20px);
	}
	
	100% {
		opacity: 0;
		transform: translateX(2000px);
	}
}

.animated.bounceOutRight {
	-webkit-animation-name: bounceOutRight;
	-moz-animation-name: bounceOutRight;
	-o-animation-name: bounceOutRight;
	animation-name: bounceOutRight;
}
@-webkit-keyframes rotateIn {
	0% {
		-webkit-transform-origin: center center;
		-webkit-transform: rotate(-200deg);
		opacity: 0;
	}
	
	100% {
		-webkit-transform-origin: center center;
		-webkit-transform: rotate(0);
		opacity: 1;
	}
}
@-moz-keyframes rotateIn {
	0% {
		-moz-transform-origin: center center;
		-moz-transform: rotate(-200deg);
		opacity: 0;
	}
	
	100% {
		-moz-transform-origin: center center;
		-moz-transform: rotate(0);
		opacity: 1;
	}
}
@-o-keyframes rotateIn {
	0% {
		-o-transform-origin: center center;
		-o-transform: rotate(-200deg);
		opacity: 0;
	}
	
	100% {
		-o-transform-origin: center center;
		-o-transform: rotate(0);
		opacity: 1;
	}
}
@keyframes rotateIn {
	0% {
		transform-origin: center center;
		transform: rotate(-200deg);
		opacity: 0;
	}
	
	100% {
		transform-origin: center center;
		transform: rotate(0);
		opacity: 1;
	}
}

.animated.rotateIn {
	-webkit-animation-name: rotateIn;
	-moz-animation-name: rotateIn;
	-o-animation-name: rotateIn;
	animation-name: rotateIn;
}
@-webkit-keyframes rotateInUpLeft {
	0% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(90deg);
		opacity: 0;
	}
	
	100% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(0);
		opacity: 1;
	}
}

@-moz-keyframes rotateInUpLeft {
	0% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(90deg);
		opacity: 0;
	}
	
	100% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(0);
		opacity: 1;
	}
}

@-o-keyframes rotateInUpLeft {
	0% {
		-o-transform-origin: left bottom;
		-o-transform: rotate(90deg);
		opacity: 0;
	}
	
	100% {
		-o-transform-origin: left bottom;
		-o-transform: rotate(0);
		opacity: 1;
	}
}

@keyframes rotateInUpLeft {
	0% {
		transform-origin: left bottom;
		transform: rotate(90deg);
		opacity: 0;
	}
	
	100% {
		transform-origin: left bottom;
		transform: rotate(0);
		opacity: 1;
	}
}

.animated.rotateInUpLeft {
	-webkit-animation-name: rotateInUpLeft;
	-moz-animation-name: rotateInUpLeft;
	-o-animation-name: rotateInUpLeft;
	animation-name: rotateInUpLeft;
}
@-webkit-keyframes rotateInDownLeft {
	0% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(-90deg);
		opacity: 0;
	}
	
	100% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(0);
		opacity: 1;
	}
}

@-moz-keyframes rotateInDownLeft {
	0% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(-90deg);
		opacity: 0;
	}
	
	100% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(0);
		opacity: 1;
	}
}

@-o-keyframes rotateInDownLeft {
	0% {
		-o-transform-origin: left bottom;
		-o-transform: rotate(-90deg);
		opacity: 0;
	}
	
	100% {
		-o-transform-origin: left bottom;
		-o-transform: rotate(0);
		opacity: 1;
	}
}

@keyframes rotateInDownLeft {
	0% {
		transform-origin: left bottom;
		transform: rotate(-90deg);
		opacity: 0;
	}
	
	100% {
		transform-origin: left bottom;
		transform: rotate(0);
		opacity: 1;
	}
}

.animated.rotateInDownLeft {
	-webkit-animation-name: rotateInDownLeft;
	-moz-animation-name: rotateInDownLeft;
	-o-animation-name: rotateInDownLeft;
	animation-name: rotateInDownLeft;
}
@-webkit-keyframes rotateInUpRight {
	0% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(-90deg);
		opacity: 0;
	}
	
	100% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(0);
		opacity: 1;
	}
}

@-moz-keyframes rotateInUpRight {
	0% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(-90deg);
		opacity: 0;
	}
	
	100% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(0);
		opacity: 1;
	}
}

@-o-keyframes rotateInUpRight {
	0% {
		-o-transform-origin: right bottom;
		-o-transform: rotate(-90deg);
		opacity: 0;
	}
	
	100% {
		-o-transform-origin: right bottom;
		-o-transform: rotate(0);
		opacity: 1;
	}
}

@keyframes rotateInUpRight {
	0% {
		transform-origin: right bottom;
		transform: rotate(-90deg);
		opacity: 0;
	}
	
	100% {
		transform-origin: right bottom;
		transform: rotate(0);
		opacity: 1;
	}
}

.animated.rotateInUpRight {
	-webkit-animation-name: rotateInUpRight;
	-moz-animation-name: rotateInUpRight;
	-o-animation-name: rotateInUpRight;
	animation-name: rotateInUpRight;
}
@-webkit-keyframes rotateInDownRight {
	0% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(90deg);
		opacity: 0;
	}
	
	100% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(0);
		opacity: 1;
	}
}

@-moz-keyframes rotateInDownRight {
	0% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(90deg);
		opacity: 0;
	}
	
	100% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(0);
		opacity: 1;
	}
}

@-o-keyframes rotateInDownRight {
	0% {
		-o-transform-origin: right bottom;
		-o-transform: rotate(90deg);
		opacity: 0;
	}
	
	100% {
		-o-transform-origin: right bottom;
		-o-transform: rotate(0);
		opacity: 1;
	}
}

@keyframes rotateInDownRight {
	0% {
		transform-origin: right bottom;
		transform: rotate(90deg);
		opacity: 0;
	}
	
	100% {
		transform-origin: right bottom;
		transform: rotate(0);
		opacity: 1;
	}
}

.animated.rotateInDownRight {
	-webkit-animation-name: rotateInDownRight;
	-moz-animation-name: rotateInDownRight;
	-o-animation-name: rotateInDownRight;
	animation-name: rotateInDownRight;
}
@-webkit-keyframes rotateOut {
	0% {
		-webkit-transform-origin: center center;
		-webkit-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-webkit-transform-origin: center center;
		-webkit-transform: rotate(200deg);
		opacity: 0;
	}
}

@-moz-keyframes rotateOut {
	0% {
		-moz-transform-origin: center center;
		-moz-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-moz-transform-origin: center center;
		-moz-transform: rotate(200deg);
		opacity: 0;
	}
}

@-o-keyframes rotateOut {
	0% {
		-o-transform-origin: center center;
		-o-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-o-transform-origin: center center;
		-o-transform: rotate(200deg);
		opacity: 0;
	}
}

@keyframes rotateOut {
	0% {
		transform-origin: center center;
		transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		transform-origin: center center;
		transform: rotate(200deg);
		opacity: 0;
	}
}

.animated.rotateOut {
	-webkit-animation-name: rotateOut;
	-moz-animation-name: rotateOut;
	-o-animation-name: rotateOut;
	animation-name: rotateOut;
}
@-webkit-keyframes rotateOutUpLeft {
	0% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(-90deg);
		opacity: 0;
	}
}

@-moz-keyframes rotateOutUpLeft {
	0% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(-90deg);
		opacity: 0;
	}
}

@-o-keyframes rotateOutUpLeft {
	0% {
		-o-transform-origin: left bottom;
		-o-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-o-transform-origin: left bottom;
		-o-transform: rotate(-90deg);
		opacity: 0;
	}
}

@keyframes rotateOutUpLeft {
	0% {
		transform-origin: left bottom;
		transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		transform-origin: left bottom;
		transform: rotate(-90deg);
		opacity: 0;
	}
}

.animated.rotateOutUpLeft {
	-webkit-animation-name: rotateOutUpLeft;
	-moz-animation-name: rotateOutUpLeft;
	-o-animation-name: rotateOutUpLeft;
	animation-name: rotateOutUpLeft;
}
@-webkit-keyframes rotateOutDownLeft {
	0% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(90deg);
		opacity: 0;
	}
}

@-moz-keyframes rotateOutDownLeft {
	0% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(90deg);
		opacity: 0;
	}
}

@-o-keyframes rotateOutDownLeft {
	0% {
		-o-transform-origin: left bottom;
		-o-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-o-transform-origin: left bottom;
		-o-transform: rotate(90deg);
		opacity: 0;
	}
}

@keyframes rotateOutDownLeft {
	0% {
		transform-origin: left bottom;
		transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		transform-origin: left bottom;
		transform: rotate(90deg);
		opacity: 0;
	}
}

.animated.rotateOutDownLeft {
	-webkit-animation-name: rotateOutDownLeft;
	-moz-animation-name: rotateOutDownLeft;
	-o-animation-name: rotateOutDownLeft;
	animation-name: rotateOutDownLeft;
}
@-webkit-keyframes rotateOutUpRight {
	0% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(90deg);
		opacity: 0;
	}
}

@-moz-keyframes rotateOutUpRight {
	0% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(90deg);
		opacity: 0;
	}
}

@-o-keyframes rotateOutUpRight {
	0% {
		-o-transform-origin: right bottom;
		-o-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-o-transform-origin: right bottom;
		-o-transform: rotate(90deg);
		opacity: 0;
	}
}

@keyframes rotateOutUpRight {
	0% {
		transform-origin: right bottom;
		transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		transform-origin: right bottom;
		transform: rotate(90deg);
		opacity: 0;
	}
}

.animated.rotateOutUpRight {
	-webkit-animation-name: rotateOutUpRight;
	-moz-animation-name: rotateOutUpRight;
	-o-animation-name: rotateOutUpRight;
	animation-name: rotateOutUpRight;
}
@-webkit-keyframes rotateOutDownRight {
	0% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(-90deg);
		opacity: 0;
	}
}

@-moz-keyframes rotateOutDownRight {
	0% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(-90deg);
		opacity: 0;
	}
}

@-o-keyframes rotateOutDownRight {
	0% {
		-o-transform-origin: right bottom;
		-o-transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		-o-transform-origin: right bottom;
		-o-transform: rotate(-90deg);
		opacity: 0;
	}
}

@keyframes rotateOutDownRight {
	0% {
		transform-origin: right bottom;
		transform: rotate(0);
		opacity: 1;
	}
	
	100% {
		transform-origin: right bottom;
		transform: rotate(-90deg);
		opacity: 0;
	}
}

.animated.rotateOutDownRight {
	-webkit-animation-name: rotateOutDownRight;
	-moz-animation-name: rotateOutDownRight;
	-o-animation-name: rotateOutDownRight;
	animation-name: rotateOutDownRight;
}

@-webkit-keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

.animated.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInDown {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.animated.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInLeft {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.animated.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInRight {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.animated.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInUp {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.animated.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  100% {
    opacity: 0;
  }
}

@keyframes zoomOut {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  100% {
    opacity: 0;
  }
}

.animated.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1080px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 1080px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1080px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 1080px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.animated.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
    transform: scale(.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
    transform: scale(.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

.animated.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
    transform: scale(.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
    transform: scale(.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

.animated.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1080px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -1080px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1080px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -1080px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.animated.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  0% {
    -webkit-transform: translate3d(0, -1080px, 0);
    transform: translate3d(0, -1080px, 0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInDown {
  0% {
    -webkit-transform: translate3d(0, -1080px, 0);
    transform: translate3d(0, -1080px, 0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.animated.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  0% {
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInLeft {
  0% {
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.animated.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  0% {
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInRight {
  0% {
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.animated.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  0% {
    -webkit-transform: translate3d(0, 1080px, 0);
    transform: translate3d(0, 1080px, 0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInUp {
  0% {
    -webkit-transform: translate3d(0, 1080px, 0);
    transform: translate3d(0, 1080px, 0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.animated.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 1080px, 0);
    transform: translate3d(0, 1080px, 0);
  }
}

@keyframes slideOutDown {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 1080px, 0);
    transform: translate3d(0, 1080px, 0);
  }
}

.animated.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }
}

@keyframes slideOutLeft {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }
}

.animated.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }
}

@keyframes slideOutRight {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }
}

.animated.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -1080px, 0);
    transform: translate3d(0, -1080px, 0);
  }
}

@keyframes slideOutUp {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -1080px, 0);
    transform: translate3d(0, -1080px, 0);
  }
}

.animated.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

@-webkit-keyframes hinge {
	0% { -webkit-transform: rotate(0); -webkit-transform-origin: top left; -webkit-animation-timing-function: ease-in-out; }	
	20%, 60% { -webkit-transform: rotate(80deg); -webkit-transform-origin: top left; -webkit-animation-timing-function: ease-in-out; }	
	40% { -webkit-transform: rotate(60deg); -webkit-transform-origin: top left; -webkit-animation-timing-function: ease-in-out; }	
	80% { -webkit-transform: rotate(60deg) translateY(0); opacity: 1; -webkit-transform-origin: top left; -webkit-animation-timing-function: ease-in-out; }	
	100% { -webkit-transform: translateY(700px); opacity: 0; }
}

@-moz-keyframes hinge {
	0% { -moz-transform: rotate(0); -moz-transform-origin: top left; -moz-animation-timing-function: ease-in-out; }	
	20%, 60% { -moz-transform: rotate(80deg); -moz-transform-origin: top left; -moz-animation-timing-function: ease-in-out; }	
	40% { -moz-transform: rotate(60deg); -moz-transform-origin: top left; -moz-animation-timing-function: ease-in-out; }	
	80% { -moz-transform: rotate(60deg) translateY(0); opacity: 1; -moz-transform-origin: top left; -moz-animation-timing-function: ease-in-out; }	
	100% { -moz-transform: translateY(700px); opacity: 0; }
}

@-o-keyframes hinge {
	0% { -o-transform: rotate(0); -o-transform-origin: top left; -o-animation-timing-function: ease-in-out; }	
	20%, 60% { -o-transform: rotate(80deg); -o-transform-origin: top left; -o-animation-timing-function: ease-in-out; }	
	40% { -o-transform: rotate(60deg); -o-transform-origin: top left; -o-animation-timing-function: ease-in-out; }	
	80% { -o-transform: rotate(60deg) translateY(0); opacity: 1; -o-transform-origin: top left; -o-animation-timing-function: ease-in-out; }	
	100% { -o-transform: translateY(700px); opacity: 0; }
}

@keyframes hinge {
	0% { transform: rotate(0); transform-origin: top left; animation-timing-function: ease-in-out; }	
	20%, 60% { transform: rotate(80deg); transform-origin: top left; animation-timing-function: ease-in-out; }	
	40% { transform: rotate(60deg); transform-origin: top left; animation-timing-function: ease-in-out; }	
	80% { transform: rotate(60deg) translateY(0); opacity: 1; transform-origin: top left; animation-timing-function: ease-in-out; }	
	100% { transform: translateY(700px); opacity: 0; }
}

.animated.hinge {
	-webkit-animation-name: hinge;
	-moz-animation-name: hinge;
	-o-animation-name: hinge;
	animation-name: hinge;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
	0% { opacity: 0; -webkit-transform: translateX(-3000px) rotate(-120deg); }
	100% { opacity: 1; -webkit-transform: translateX(0px) rotate(0deg); }
}

@-moz-keyframes rollIn {
	0% { opacity: 0; -moz-transform: translateX(-3000px) rotate(-120deg); }
	100% { opacity: 1; -moz-transform: translateX(0px) rotate(0deg); }
}

@-o-keyframes rollIn {
	0% { opacity: 0; -o-transform: translateX(-3000px) rotate(-120deg); }
	100% { opacity: 1; -o-transform: translateX(0px) rotate(0deg); }
}

@keyframes rollIn {
	0% { opacity: 0; transform: translateX(-3000px) rotate(-120deg); }
	100% { opacity: 1; transform: translateX(0px) rotate(0deg); }
}

.animated.rollIn {
	-webkit-animation-name: rollIn;
	-moz-animation-name: rollIn;
	-o-animation-name: rollIn;
	animation-name: rollIn;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
    0% {
		opacity: 1;
		-webkit-transform: translateX(0px) rotate(0deg);
	}

    100% {
		opacity: 0;
		-webkit-transform: translateX(3000px) rotate(120deg);
	}
}

@-moz-keyframes rollOut {
    0% {
		opacity: 1;
		-moz-transform: translateX(0px) rotate(0deg);
	}

    100% {
		opacity: 0;
		-moz-transform: translateX(3000px) rotate(120deg);
	}
}

@-o-keyframes rollOut {
    0% {
		opacity: 1;
		-o-transform: translateX(0px) rotate(0deg);
	}

    100% {
		opacity: 0;
		-o-transform: translateX(3000px) rotate(120deg);
	}
}

@keyframes rollOut {
    0% {
		opacity: 1;
		transform: translateX(0px) rotate(0deg);
	}

    100% {
		opacity: 0;
		transform: translateX(3000px) rotate(120deg);
	}
}

.animated.rollOut {
	-webkit-animation-name: rollOut;
	-moz-animation-name: rollOut;
	-o-animation-name: rollOut;
	animation-name: rollOut;
}

/* originally authored by Angelo Rohit - https://github.com/angelorohit */

@-webkit-keyframes lightSpeedIn {
	0% { -webkit-transform: translateX(100%) skewX(-30deg); opacity: 0; }
	60% { -webkit-transform: translateX(-20%) skewX(30deg); opacity: 1; }
	80% { -webkit-transform: translateX(0%) skewX(-15deg); opacity: 1; }
	100% { -webkit-transform: translateX(0%) skewX(0deg); opacity: 1; }
}

@-moz-keyframes lightSpeedIn {
	0% { -moz-transform: translateX(100%) skewX(-30deg); opacity: 0; }
	60% { -moz-transform: translateX(-20%) skewX(30deg); opacity: 1; }
	80% { -moz-transform: translateX(0%) skewX(-15deg); opacity: 1; }
	100% { -moz-transform: translateX(0%) skewX(0deg); opacity: 1; }
}

@-o-keyframes lightSpeedIn {
	0% { -o-transform: translateX(100%) skewX(-30deg); opacity: 0; }
	60% { -o-transform: translateX(-20%) skewX(30deg); opacity: 1; }
	80% { -o-transform: translateX(0%) skewX(-15deg); opacity: 1; }
	100% { -o-transform: translateX(0%) skewX(0deg); opacity: 1; }
}

@keyframes lightSpeedIn {
	0% { transform: translateX(100%) skewX(-30deg); opacity: 0; }
	60% { transform: translateX(-20%) skewX(30deg); opacity: 1; }
	80% { transform: translateX(0%) skewX(-15deg); opacity: 1; }
	100% { transform: translateX(0%) skewX(0deg); opacity: 1; }
}

.animated.lightSpeedIn {
    -webkit-animation-name: lightSpeedIn;
    -moz-animation-name: lightSpeedIn;
    -o-animation-name: lightSpeedIn;
    animation-name: lightSpeedIn;

    -webkit-animation-timing-function: ease-out;
    -moz-animation-timing-function: ease-out;
    -o-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
}

/* originally authored by Angelo Rohit - https://github.com/angelorohit */

@-webkit-keyframes lightSpeedOut {
    0% { -webkit-transform: translateX(0%) skewX(0deg); opacity: 1; }
	100% { -webkit-transform: translateX(100%) skewX(-30deg); opacity: 0; }
}

@-moz-keyframes lightSpeedOut {
	0% { -moz-transform: translateX(0%) skewX(0deg); opacity: 1; }
	100% { -moz-transform: translateX(100%) skewX(-30deg); opacity: 0; }
}

@-o-keyframes lightSpeedOut {
	0% { -o-transform: translateX(0%) skewX(0deg); opacity: 1; }
	100% { -o-transform: translateX(100%) skewX(-30deg); opacity: 0; }
}

@keyframes lightSpeedOut {
	0% { transform: translateX(0%) skewX(0deg); opacity: 1; }
	100% { transform: translateX(100%) skewX(-30deg); opacity: 0; }
}

.animated.lightSpeedOut {
    -webkit-animation-name: lightSpeedOut;
    -moz-animation-name: lightSpeedOut;
    -o-animation-name: lightSpeedOut;
    animation-name: lightSpeedOut;

    -webkit-animation-timing-function: ease-in;
    -moz-animation-timing-function: ease-in;
    -o-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
}

/* originally authored by Angelo Rohit - https://github.com/angelorohit */

@-webkit-keyframes wiggle {
    0% { -webkit-transform: skewX(9deg); }
    10% { -webkit-transform: skewX(-8deg); }
    20% { -webkit-transform: skewX(7deg); }
    30% { -webkit-transform: skewX(-6deg); }
    40% { -webkit-transform: skewX(5deg); }
    50% { -webkit-transform: skewX(-4deg); }
    60% { -webkit-transform: skewX(3deg); }
    70% { -webkit-transform: skewX(-2deg); }
    80% { -webkit-transform: skewX(1deg); }
    90% { -webkit-transform: skewX(0deg); }
	100% { -webkit-transform: skewX(0deg); }
}

@-moz-keyframes wiggle {
    0% { -moz-transform: skewX(9deg); }
    10% { -moz-transform: skewX(-8deg); }
    20% { -moz-transform: skewX(7deg); }
    30% { -moz-transform: skewX(-6deg); }
    40% { -moz-transform: skewX(5deg); }
    50% { -moz-transform: skewX(-4deg); }
    60% { -moz-transform: skewX(3deg); }
    70% { -moz-transform: skewX(-2deg); }
    80% { -moz-transform: skewX(1deg); }
    90% { -moz-transform: skewX(0deg); }
	100% { -moz-transform: skewX(0deg); }
}

@-o-keyframes wiggle {
    0% { -o-transform: skewX(9deg); }
    10% { -o-transform: skewX(-8deg); }
    20% { -o-transform: skewX(7deg); }
    30% { -o-transform: skewX(-6deg); }
    40% { -o-transform: skewX(5deg); }
    50% { -o-transform: skewX(-4deg); }
    60% { -o-transform: skewX(3deg); }
    70% { -o-transform: skewX(-2deg); }
    80% { -o-transform: skewX(1deg); }
    90% { -o-transform: skewX(0deg); }
	100% { -o-transform: skewX(0deg); }
}

@keyframes wiggle {
    0% { transform: skewX(9deg); }
    10% { transform: skewX(-8deg); }
    20% { transform: skewX(7deg); }
    30% { transform: skewX(-6deg); }
    40% { transform: skewX(5deg); }
    50% { transform: skewX(-4deg); }
    60% { transform: skewX(3deg); }
    70% { transform: skewX(-2deg); }
    80% { transform: skewX(1deg); }
    90% { transform: skewX(0deg); }
	100% { transform: skewX(0deg); }
}

.animated.wiggle {
    -webkit-animation-name: wiggle;
    -moz-animation-name: wiggle;
    -o-animation-name: wiggle;
    animation-name: wiggle;

    -webkit-animation-timing-function: ease-in;
    -moz-animation-timing-function: ease-in;
    -o-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
}



/*

A couple of additions for the animo.js library

Daniel Raftery <@ThirvingKings>

*/

.animated.fade {
	-webkit-animation-name: fade;
  -moz-animation-name: fade;
  -o-animation-name: fade;
  animation-name: fade;
}

@-webkit-keyframes fade {
	0% { opacity: 1; }
	100% { opacity: 0; }
}

@-moz-keyframes fade {
	0% { opacity: 1; }
	100% { opacity: 0; }
}

@-o-keyframes fade {
	0% { opacity: 1; }
	100% { opacity: 0; }
}

@keyframes fade {
	0% { opacity: 1; }
	100% { opacity: 0; }
}

.animated.appear {
	-webkit-animation-name: appear;
  -moz-animation-name: appear;
  -o-animation-name: appear;
  animation-name: appear;
}

@-webkit-keyframes appear {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

@-moz-keyframes appear {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

@-o-keyframes appear {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

@keyframes appear {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

.animated.spinner {
	-webkit-animation-name: spinner;
  -moz-animation-name: spinner;
  -o-animation-name: spinner;
  animation-name: spinner;
}

@-webkit-keyframes spinner {
	0% { -webkit-transform: rotate(0deg); }
	100% { -webkit-transform: rotate(360deg); }
}

@-moz-keyframes spinner {
	0% { -moz-transform: rotate(0deg); }
	100% { -moz-transform: rotate(360deg); }
}

@-o-keyframes spinner {
	0% { -o-transform: rotate(0deg); }
	100% { -o-transform: rotate(360deg); }
}

@keyframes spinner {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

.animated.twirlIn {
  -webkit-animation-name: twirlIn;
  -moz-animation-name: twirlIn;
  -o-animation-name: twirlIn;
  animation-name: twirlIn;
}

@-webkit-keyframes twirlIn {
  0% { -webkit-transform: rotate3d( 80,-70,10,180deg ); }
  100% { -webkit-transform: rotate3d( 0,0,0,0deg ); }
}

@-moz-keyframes twirlIn {
  0% { -moz-transform: rotate3d( 80,70,10,180deg ); }
  100% { -moz-transform: rotate3d( 0,0,0,0deg ); }
}

@-o-keyframes twirlIn {
  0% { -o-transform: rotate3d( 80,70,10,180deg ); }
  100% { -o-transform: rotate3d( 0,0,0,0deg ); }
}

@keyframes twirlIn {
  0% { transform: rotate3d( 0,0,0,0deg ); }
  100% { transform: rotate3d( 80,70,10,180deg ); }
}

.animated.twirlOut {
  -webkit-animation-name: twirlOut;
  -moz-animation-name: twirlOut;
  -o-animation-name: twirlOut;
  animation-name: twirlOut;
}

@-webkit-keyframes twirlOut {
  0% { -webkit-transform: rotate3d( 0,0,0,0deg ); }
  100% { -webkit-transform: rotate3d( 80,-70,10,180deg );  }
}

@-moz-keyframes twirlOut {
  0% { -moz-transform: rotate3d( 0,0,0,0deg ); }
  100% { -moz-transform: rotate3d( 80,70,10,180deg ); }
}

@-o-keyframes twirlOut { 
  0% { -o-transform: rotate3d( 0,0,0,0deg ); }
  100% { -o-transform: rotate3d( 80,70,10,180deg ); }
}

@keyframes twirlOut { 
  0% { transform: rotate3d( 0,0,0,0deg ); }
  100% { transform: rotate3d( 80,70,10,180deg ); }
}

.eds-animation-paused {
 -webkit-animation-play-state: paused; 
   animation-play-state: paused;
}

/* originally authored by Ian Lunn - https://github.com/IanLunn */

/* Grow */
@-webkit-keyframes grow {
  100% { -webkit-transform: scale(1.1);  }
}

@-moz-keyframes grow {
  100% { -moz-transform: scale(1.1);  }
}

@-o-keyframes grow { 
  100% { -o-transform: scale(1.1);  }
}

@keyframes grow { 
  100% { transform: scale(1.1);  }
}

.animated.grow {
  -webkit-animation-name: grow;
  -moz-animation-name: grow;
  -o-animation-name: grow;
  animation-name: grow;
}

/* Shrink */
@-webkit-keyframes shrink {
  100% { -webkit-transform: scale(0.9);  }
}

@-moz-keyframes shrink {
  100% { -moz-transform: scale(0.9);  }
}

@-o-keyframes shrink { 
  100% { -o-transform: scale(0.9);  }
}

@keyframes shrink { 
  100% { transform: scale(0.9);  }
}

.animated.shrink {
  -webkit-animation-name: shrink;
  -moz-animation-name: shrink;
  -o-animation-name: shrink;
  animation-name: shrink;
}

/* Pulse Grow */
@-webkit-keyframes pulseGrow {
  0% { -webkit-transform: scale(1.1); }
}

@-moz-keyframes pulseGrow {
  0% { -moz-transform: scale(1.1); }
}

@-o-keyframes pulseGrow {
  0% { -o-transform: scale(1.1); }
}

@keyframes pulseGrow {
  0% { transform: scale(1.1); }
}

.animated.pulseGrow {
  -webkit-animation-direction: alternate;
  -moz-animation-direction: alternate;
  -o-animation-direction: alternate;
  animation-direction: alternate;
  -webkit-animation-name: pulseGrow;
  -moz-animation-name: pulseGrow;
  -o-animation-name: pulseGrow;
  animation-name: pulseGrow;
}

/* Pulse Shrink */
@-webkit-keyframes pulseShrink {
  0% { -webkit-transform: scale(0.9); }
}

@-moz-keyframes pulseShrink {
  0% { -moz-transform: scale(0.9); }
}

@-o-keyframes pulseShrink {
  0% { -o-transform: scale(0.9); }
}

@keyframes pulseShrink {
  0% { transform: scale(0.9); }
}

.animated.pulseShrink {
  -webkit-animation-direction: alternate;
  -moz-animation-direction: alternate;
  -o-animation-direction: alternate;
  animation-direction: alternate;
  -webkit-animation-name: pulseShrink;
  -moz-animation-name: pulseShrink;
  -o-animation-name: pulseShrink;
  animation-name: pulseShrink;
}

/* Push */
@-webkit-keyframes push {
  50% { -webkit-transform: scale(0.8); }
  100% { -webkit-transform: scale(1); }
}

@-moz-keyframes push {
  50% { -moz-transform: scale(0.8); }
  100% { -moz-transform: scale(1); }
}

@-o-keyframes push {
  50% { -o-transform: scale(0.8); }
  100% { -o-transform: scale(1); }
}

@keyframes push {
  50% { transform: scale(0.8); }
  100% { transform: scale(1); }
}

.animated.push {
  -webkit-animation-name: push;
  -moz-animation-name: push;
  -o-animation-name: push;
  animation-name: push;
}

/* Pop */
@-webkit-keyframes pop {
  50% { -webkit-transform: scale(1.2); }
}

@-moz-keyframes pop {
  50% { -moz-transform: scale(1.2); }
}

@-o-keyframes pop {
  50% { -o-transform: scale(1.2); }
}

@keyframes pop {
  50% { transform: scale(1.2); }
}

.animated.pop {
  -webkit-animation-name: pop;
  -moz-animation-name: pop;
  -o-animation-name: pop;
  animation-name: pop;
}

/* Rotate */
@-webkit-keyframes rotate {
  100% { -webkit-transform: rotate(60deg);  }
}

@-moz-keyframes rotate {
  100% { -moz-transform: rotate(60deg);  }
}

@-o-keyframes rotate { 
  100% { -o-transform: rotate(60deg);  }
}

@keyframes rotate { 
  100% { transform: rotate(60deg);  }
}

.animated.rotate {
  -webkit-animation-name: rotate;
  -moz-animation-name: rotate;
  -o-animation-name: rotate;
  animation-name: rotate;
}

/* Grow Rotate */
@-webkit-keyframes growRotate {
  100% { -webkit-transform: scale(1.1) rotate(60deg);  }
}

@-moz-keyframes growRotate {
  100% { -moz-transform: scale(1.1) rotate(60deg);  }
}

@-o-keyframes growRotate { 
  100% { -o-transform: scale(1.1) rotate(60deg);  }
}

@keyframes growRotate { 
  100% { transform: scale(1.1) rotate(60deg);  }
}

.animated.growRotate {
  -webkit-animation-name: growRotate;
  -moz-animation-name: growRotate;
  -o-animation-name: growRotate;
  animation-name: growRotate;
}

/* Float */
@-webkit-keyframes float {
  100% { -webkit-transform: translateY(-8px);  }
}

@-moz-keyframes float {
  100% { -moz-transform: translateY(-8px);  }
}

@-o-keyframes float { 
  100% { -o-transform: translateY(-8px);  }
}

@keyframes float { 
  100% { transform: translateY(-8px);  }
}

.animated.float {
  -webkit-animation-name: float;
  -moz-animation-name: float;
  -o-animation-name: float;
  animation-name: float;
}

/* Sink */
@-webkit-keyframes sink {
  100% { -webkit-transform: translateY(8px);  }
}

@-moz-keyframes sink {
  100% { -moz-transform: translateY(8px);  }
}

@-o-keyframes sink { 
  100% { -o-transform: translateY(8px);  }
}

@keyframes sink { 
  100% { transform: translateY(8px);  }
}

.animated.sink {
  -webkit-animation-name: sink;
  -moz-animation-name: sink;
  -o-animation-name: sink;
  animation-name: sink;
}

/* Skew */
@-webkit-keyframes skew {
  100% { -webkit-transform: skew(-10deg);  }
}

@-moz-keyframes skew {
  100% { -moz-transform: skew(-10deg);  }
}

@-o-keyframes skew { 
  100% { -o-transform: skew(-10deg);  }
}

@keyframes skew { 
  100% { transform: skew(-10deg);  }
}

.animated.skew {
  -webkit-animation-name: skew;
  -moz-animation-name: skew;
  -o-animation-name: skew;
  animation-name: skew;
}

/* Skew Forward */
@-webkit-keyframes skewForward {
  100% { -webkit-transform: skew(-10deg);  }
}

@-moz-keyframes skewForward {
  100% { -moz-transform: skew(-10deg);  }
}

@-o-keyframes skewForward { 
  100% { -o-transform: skew(-10deg);  }
}

@keyframes skewForward { 
  100% { transform: skew(-10deg);  }
}

.animated.skewForward {
  -webkit-transform-origin: 0 100%;
  -moz-transform-origin: 0 100%;
  -o-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-animation-name: skewForward;
  -moz-animation-name: skewForward;
  -o-animation-name: skewForward;
  animation-name: skewForward;
}

/* Skew Backward */
@-webkit-keyframes skewBackward {
  100% { -webkit-transform: skew(10deg);  }
}

@-moz-keyframes skewBackward {
  100% { -moz-transform: skew(10deg);  }
}

@-o-keyframes skewBackward { 
  100% { -o-transform: skew(10deg);  }
}

@keyframes skewBackward { 
  100% { transform: skew(10deg);  }
}

.animated.skewBackward {
  -webkit-transform-origin: 0 100%;
  -moz-transform-origin: 0 100%;
  -o-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-animation-name: skewBackward;
  -moz-animation-name: skewBackward;
  -o-animation-name: skewBackward;
  animation-name: skewBackward;
}

/* Wobble Vertical */
@-webkit-keyframes wobbleVertical {
  16.65% { -webkit-transform: translateY(8px); }
  33.3% { -webkit-transform: translateY(-6px); }
  49.95% { -webkit-transform: translateY(4px); }
  66.6% { -webkit-transform: translateY(-2px); }
  83.25% { -webkit-transform: translateY(1px); }
  100% { -webkit-transform: translateY(0); }
}

@-moz-keyframes wobbleVertical {
  16.65% { -moz-transform: translateY(8px); }
  33.3% { -moz-transform: translateY(-6px); }
  49.95% { -moz-transform: translateY(4px); }
  66.6% { -moz-transform: translateY(-2px); }
  83.25% { -moz-transform: translateY(1px); }
  100% { -moz-transform: translateY(0); }
}

@-o-keyframes wobbleVertical {
  16.65% { -o-transform: translateY(8px); }
  33.3% { -o-transform: translateY(-6px); }
  49.95% { -o-transform: translateY(4px); }
  66.6% { -o-transform: translateY(-2px); }
  83.25% { -o-transform: translateY(1px); }
  100% { -o-transform: translateY(0); }
}

@keyframes wobbleVertical {
  16.65% { transform: translateY(8px); }
  33.3% { transform: translateY(-6px); }
  49.95% { transform: translateY(4px); }
  66.6% { transform: translateY(-2px); }
  83.25% { transform: translateY(1px); }
  100% { transform: translateY(0); }
}

.animated.wobbleVertical {
  -webkit-animation-name: wobbleVertical;
  -moz-animation-name: wobbleVertical;
  -o-animation-name: wobbleVertical;
  animation-name: wobbleVertical;
}

/* Wobble Horizontal */
@-webkit-keyframes wobbleHorizontal {
  16.65% { -webkit-transform: translateX(8px); }
  33.3% { -webkit-transform: translateX(-6px); }
  49.95% { -webkit-transform: translateX(4px); }
  66.6% { -webkit-transform: translateX(-2px); }
  83.25% { -webkit-transform: translateX(1px); }
  100% { -webkit-transform: translateX(0); }
}

@-moz-keyframes wobbleHorizontal {
  16.65% { -moz-transform: translateX(8px); }
  33.3% { -moz-transform: translateX(-6px); }
  49.95% { -moz-transform: translateX(4px); }
  66.6% { -moz-transform: translateX(-2px); }
  83.25% { -moz-transform: translateX(1px); }
  100% { -moz-transform: translateX(0); }
}

@-o-keyframes wobbleHorizontal {
  16.65% { -o-transform: translateX(8px); }
  33.3% { -o-transform: translateX(-6px); }
  49.95% { -o-transform: translateX(4px); }
  66.6% { -o-transform: translateX(-2px); }
  83.25% { -o-transform: translateX(1px); }
  100% { -o-transform: translateX(0); }
}

@keyframes wobbleHorizontal {
  16.65% { transform: translateX(8px); }
  33.3% { transform: translateX(-6px); }
  49.95% { transform: translateX(4px); }
  66.6% { transform: translateX(-2px); }
  83.25% { transform: translateX(1px); }
  100% { transform: translateX(0); }
}

.animated.wobbleHorizontal {
  -webkit-animation-name: wobbleHorizontal;
  -moz-animation-name: wobbleHorizontal;
  -o-animation-name: wobbleHorizontal;
  animation-name: wobbleHorizontal;
}

/* Wobble To Bottom Right */
@-webkit-keyframes wobbleToBottomRight {
  16.65% { -webkit-transform: translate(8px, 8px); }
  33.3% { -webkit-transform: translate(-6px, -6px); }
  49.95% { -webkit-transform: translate(4px, 4px); }
  66.6% { -webkit-transform: translate(-2px, -2px); }
  83.25% { -webkit-transform: translate(1px, 1px); }
  100% { -webkit-transform: translate(0, 0); }
}

@-moz-keyframes wobbleToBottomRight {
  16.65% { -moz-transform: translate(8px, 8px); }
  33.3% { -moz-transform: translate(-6px, -6px); }
  49.95% { -moz-transform: translate(4px, 4px); }
  66.6% { -moz-transform: translate(-2px, -2px); }
  83.25% { -moz-transform: translate(1px, 1px); }
  100% { -moz-transform: translate(0, 0); }
}

@-o-keyframes wobbleToBottomRight {
  16.65% { -o-transform: translate(8px, 8px); }
  33.3% { -o-transform: translate(-6px, -6px); }
  49.95% { -o-transform: translate(4px, 4px); }
  66.6% { -o-transform: translate(-2px, -2px); }
  83.25% { -o-transform: translate(1px, 1px); }
  100% { -o-transform: translate(0, 0); }
}

@keyframes wobbleToBottomRight {
  16.65% { transform: translate(8px, 8px); }
  33.3% { transform: translate(-6px, -6px); }
  49.95% { transform: translate(4px, 4px); }
  66.6% { transform: translate(-2px, -2px); }
  83.25% { transform: translate(1px, 1px); }
  100% { transform: translate(0, 0); }
}

.animated.wobbleToBottomRight {
  -webkit-animation-name: wobbleToBottomRight;
  -moz-animation-name: wobbleToBottomRight;
  -o-animation-name: wobbleToBottomRight;
  animation-name: wobbleToBottomRight;
}

/* Wobble To Top Right */
@-webkit-keyframes wobbleToTopRight {
  16.65% { -webkit-transform: translate(8px, -8px); }
  33.3% { -webkit-transform: translate(-6px, 6px); }
  49.95% { -webkit-transform: translate(4px, -4px); }
  66.6% { -webkit-transform: translate(-2px, 2px); }
  83.25% { -webkit-transform: translate(1px, -1px); }
  100% { -webkit-transform: translate(0, 0); }
}

@-moz-keyframes wobbleToTopRight {
  16.65% { -moz-transform: translate(8px, -8px); }
  33.3% { -moz-transform: translate(-6px, 6px); }
  49.95% { -moz-transform: translate(4px, -4px); }
  66.6% { -moz-transform: translate(-2px, 2px); }
  83.25% { -moz-transform: translate(1px, -1px); }
  100% { -moz-transform: translate(0, 0); }
}

@-o-keyframes wobbleToTopRight {
  16.65% { -o-transform: translate(8px, -8px); }
  33.3% { -o-transform: translate(-6px, 6px); }
  49.95% { -o-transform: translate(4px, -4px); }
  66.6% { -o-transform: translate(-2px, 2px); }
  83.25% { -o-transform: translate(1px, -1px); }
  100% { -o-transform: translate(0, 0); }
}

@keyframes wobbleToTopRight {
  16.65% { transform: translate(8px, -8px); }
  33.3% { transform: translate(-6px, 6px); }
  49.95% { transform: translate(4px, -4px); }
  66.6% { transform: translate(-2px, 2px); }
  83.25% { transform: translate(1px, -1px); }
  100% { transform: translate(0, 0); }
}

.animated.wobbleToTopRight {
  -webkit-animation-name: wobbleToTopRight;
  -moz-animation-name: wobbleToTopRight;
  -o-animation-name: wobbleToTopRight;
  animation-name: wobbleToTopRight;
}

/* Wobble Top */
@-webkit-keyframes wobbleTop {
  16.65% { -webkit-transform: skew(-12deg); }
  33.3% { -webkit-transform: skew(10deg); }
  49.95% { -webkit-transform: skew(-6deg); }
  66.6% { -webkit-transform: skew(4deg); }
  83.25% { -webkit-transform: skew(-2deg); }
  100% { -webkit-transform: skew(0); }
}

@-moz-keyframes wobbleTop {
  16.65% { -moz-transform: skew(-12deg); }
  33.3% { -moz-transform: skew(10deg); }
  49.95% { -moz-transform: skew(-6deg); }
  66.6% { -moz-transform: skew(4deg); }
  83.25% { -moz-transform: skew(-2deg); }
  100% { -moz-transform: skew(0); }
}

@-o-keyframes wobbleTop {
  16.65% { -o-transform: skew(-12deg); }
  33.3% { -o-transform: skew(10deg); }
  49.95% { -o-transform: skew(-6deg); }
  66.6% { -o-transform: skew(4deg); }
  83.25% { -o-transform: skew(-2deg); }
  100% { -o-transform: skew(0); }
}

@keyframes wobbleTop {
  16.65% { transform: skew(-12deg); }
  33.3% { transform: skew(10deg); }
  49.95% { transform: skew(-6deg); }
  66.6% { transform: skew(4deg); }
  83.25% { transform: skew(-2deg); }
  100% { transform: skew(0); }
}

.animated.wobbleTop {
  -webkit-transform-origin: 0 100%;
  -moz-transform-origin: 0 100%;
  -o-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-animation-name: wobbleTop;
  -moz-animation-name: wobbleTop;
  -o-animation-name: wobbleTop;
  animation-name: wobbleTop;
}

/* Wobble Bottom */
@-webkit-keyframes wobbleBottom {
  16.65% { -webkit-transform: skew(-12deg); }
  33.3% { -webkit-transform: skew(10deg); }
  49.95% { -webkit-transform: skew(-6deg); }
  66.6% { -webkit-transform: skew(4deg); }
  83.25% { -webkit-transform: skew(-2deg); }
  100% { -webkit-transform: skew(0); }
}

@-moz-keyframes wobbleBottom {
  16.65% { -moz-transform: skew(-12deg); }
  33.3% { -moz-transform: skew(10deg); }
  49.95% { -moz-transform: skew(-6deg); }
  66.6% { -moz-transform: skew(4deg); }
  83.25% { -moz-transform: skew(-2deg); }
  100% { -moz-transform: skew(0); }
}

@-o-keyframes wobbleBottom {
  16.65% { -o-transform: skew(-12deg); }
  33.3% { -o-transform: skew(10deg); }
  49.95% { -o-transform: skew(-6deg); }
  66.6% { -o-transform: skew(4deg); }
  83.25% { -o-transform: skew(-2deg); }
  100% { -o-transform: skew(0); }
}

@keyframes wobbleBottom {
  16.65% { transform: skew(-12deg); }
  33.3% { transform: skew(10deg); }
  49.95% { transform: skew(-6deg); }
  66.6% { transform: skew(4deg); }
  83.25% { transform: skew(-2deg); }
  100% { transform: skew(0); }
}

.animated.wobbleBottom {
  -webkit-transform-origin: 100% 0;
  -moz-transform-origin: 100% 0;
  -o-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-animation-name: wobbleBottom;
  -moz-animation-name: wobbleBottom;
  -o-animation-name: wobbleBottom;
  animation-name: wobbleBottom;
}

/* Wobble Skew */
@-webkit-keyframes wobbleSkew {
  16.65% { -webkit-transform: skew(-12deg); }
  33.3% { -webkit-transform: skew(10deg); }
  49.95% { -webkit-transform: skew(-6deg); }
  66.6% { -webkit-transform: skew(4deg); }
  83.25% { -webkit-transform: skew(-2deg); }
  100% { -webkit-transform: skew(0); }
}

@-moz-keyframes wobbleSkew {
  16.65% { -moz-transform: skew(-12deg); }
  33.3% { -moz-transform: skew(10deg); }
  49.95% { -moz-transform: skew(-6deg); }
  66.6% { -moz-transform: skew(4deg); }
  83.25% { -moz-transform: skew(-2deg); }
  100% { -moz-transform: skew(0); }
}

@-o-keyframes wobbleSkew {
  16.65% { -o-transform: skew(-12deg); }
  33.3% { -o-transform: skew(10deg); }
  49.95% { -o-transform: skew(-6deg); }
  66.6% { -o-transform: skew(4deg); }
  83.25% { -o-transform: skew(-2deg); }
  100% { -o-transform: skew(0); }
}

@keyframes wobbleSkew {
  16.65% { transform: skew(-12deg); }
  33.3% { transform: skew(10deg); }
  49.95% { transform: skew(-6deg); }
  66.6% { transform: skew(4deg); }
  83.25% { transform: skew(-2deg); }
  100% { transform: skew(0); }
}

.animated.wobbleSkew {
  -webkit-animation-name: wobbleSkew;
  -moz-animation-name: wobbleSkew;
  -o-animation-name: wobbleSkew;
  animation-name: wobbleSkew;
}

/* Buzz */
@-webkit-keyframes buzz {
  50% { -webkit-transform: translateX(3px) rotate(2deg); }
  100% { -webkit-transform: translateX(-3px) rotate(-2deg); }
}

@-moz-keyframes buzz {
  50% { -moz-transform: translateX(3px) rotate(2deg); }
  100% { -moz-transform: translateX(-3px) rotate(-2deg); }
}

@-o-keyframes buzz {
  50% { -o-transform: translateX(3px) rotate(2deg); }
  100% { -o-transform: translateX(-3px) rotate(-2deg); }
}

@keyframes buzz {
  50% { transform: translateX(3px) rotate(2deg); }
  100% { transform: translateX(-3px) rotate(-2deg); }
}

.animated.buzz {
  -webkit-animation-name: buzz;
  -moz-animation-name: buzz;
  -o-animation-name: buzz;
  animation-name: buzz;
}

/* Buzz Out */
@-webkit-keyframes buzzOut {
  10% { -webkit-transform: translateX(3px) rotate(2deg); }
  20% { -webkit-transform: translateX(-3px) rotate(-2deg); }
  30% { -webkit-transform: translateX(3px) rotate(2deg); }
  40% { -webkit-transform: translateX(-3px) rotate(-2deg); }
  50% { -webkit-transform: translateX(2px) rotate(1deg); }
  60% { -webkit-transform: translateX(-2px) rotate(-1deg); }
  70% { -webkit-transform: translateX(2px) rotate(1deg); }
  80% { -webkit-transform: translateX(-2px) rotate(-1deg); }
  90% { -webkit-transform: translateX(1px) rotate(0); }
  100% { -webkit-transform: translateX(-1px) rotate(0); }
}

@-moz-keyframes buzzOut {
  10% { -moz-transform: translateX(3px) rotate(2deg); }
  20% { -moz-transform: translateX(-3px) rotate(-2deg); }
  30% { -moz-transform: translateX(3px) rotate(2deg); }
  40% { -moz-transform: translateX(-3px) rotate(-2deg); }
  50% { -moz-transform: translateX(2px) rotate(1deg); }
  60% { -moz-transform: translateX(-2px) rotate(-1deg); }
  70% { -moz-transform: translateX(2px) rotate(1deg); }
  80% { -moz-transform: translateX(-2px) rotate(-1deg); }
  90% { -moz-transform: translateX(1px) rotate(0); }
  100% { -moz-transform: translateX(-1px) rotate(0); }
}

@-o-keyframes buzzOut {
  10% { -o-transform: translateX(3px) rotate(2deg); }
  20% { -o-transform: translateX(-3px) rotate(-2deg); }
  30% { -o-transform: translateX(3px) rotate(2deg); }
  40% { -o-transform: translateX(-3px) rotate(-2deg); }
  50% { -o-transform: translateX(2px) rotate(1deg); }
  60% { -o-transform: translateX(-2px) rotate(-1deg); }
  70% { -o-transform: translateX(2px) rotate(1deg); }
  80% { -o-transform: translateX(-2px) rotate(-1deg); }
  90% { -o-transform: translateX(1px) rotate(0); }
  100% { -o-transform: translateX(-1px) rotate(0); }
}

@keyframes buzzOut {
  10% { transform: translateX(3px) rotate(2deg); }
  20% { transform: translateX(-3px) rotate(-2deg); }
  30% { transform: translateX(3px) rotate(2deg); }
  40% { transform: translateX(-3px) rotate(-2deg); }
  50% { transform: translateX(2px) rotate(1deg); }
  60% { transform: translateX(-2px) rotate(-1deg); }
  70% { transform: translateX(2px) rotate(1deg); }
  80% { transform: translateX(-2px) rotate(-1deg); }
  90% { transform: translateX(1px) rotate(0); }
  100% { transform: translateX(-1px) rotate(0); }
}

.animated.buzzOut {
  -webkit-animation-name: buzzOut;
  -moz-animation-name: buzzOut;
  -o-animation-name: buzzOut;
  animation-name: buzzOut;
}

/* Forward */
@-webkit-keyframes forward {
  100% { -webkit-transform: translateX(8px);  }
}

@-moz-keyframes forward {
  100% { -moz-transform: translateX(8px);  }
}

@-o-keyframes forward { 
  100% { -o-transform: translateX(8px);  }
}

@keyframes forward { 
  100% { transform: translateX(8px);  }
}

.animated.forward {
  -webkit-animation-name: forward;
  -moz-animation-name: forward;
  -o-animation-name: forward;
  animation-name: forward;
}

/* Backward */
@-webkit-keyframes backward {
  100% { -webkit-transform: translateX(-8px);  }
}

@-moz-keyframes backward {
  100% { -moz-transform: translateX(-8px);  }
}

@-o-keyframes backward { 
  100% { -o-transform: translateX(-8px);  }
}

@keyframes backward { 
  100% { transform: translateX(-8px);  }
}

.animated.backward {
  -webkit-animation-name: backward;
  -moz-animation-name: backward;
  -o-animation-name: backward;
  animation-name: backward;
}
/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
			This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
			calculation of the height of the owl-item that breaks page layouts
		 */ }
  .owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease; }
  .owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
    max-height: 0; }
  .owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
      transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
/*
 * 	Default theme - Owl Carousel CSS File
 */
.owl-theme .owl-nav {
  margin-top: 10px;
  text-align: center;
  -webkit-tap-highlight-color: transparent; }
  .owl-theme .owl-nav [class*='owl-'] {
    color: #FFF;
    font-size: 14px;
    margin: 5px;
    padding: 4px 7px;
    background: #D6D6D6;
    display: inline-block;
    cursor: pointer;
    border-radius: 3px; }
    .owl-theme .owl-nav [class*='owl-']:hover {
      background: #869791;
      color: #FFF;
      text-decoration: none; }
  .owl-theme .owl-nav .disabled {
    opacity: 0.5;
    cursor: default; }

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 10px; }

.owl-theme .owl-dots {
  text-align: center;
  -webkit-tap-highlight-color: transparent; }
  .owl-theme .owl-dots .owl-dot {
    display: inline-block;
    zoom: 1;
    *display: inline; }
    .owl-theme .owl-dots .owl-dot span {
      width: 10px;
      height: 10px;
      margin: 5px 7px;
      background: #D6D6D6;
      display: block;
      -webkit-backface-visibility: visible;
      transition: opacity 200ms ease;
      border-radius: 30px; }
    .owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
      background: #869791; }

