:root {
  --bg-primary: #0a0a0a;
  --bg-secondary: #1a1a1a;
  --text-primary: #ffffff;
  --text-secondary: #b0b0b0;
  --accent-gold: #d4af37;
  --accent-coral: #ff6b6b;
  --accent-teal: #00d4aa;
  --bg-tertiary: #2a2a2a;
  --text-muted: #808080;
  --spacing-xs: 0.5rem;
  --spacing-sm: 1rem;
  --spacing-md: 1.5rem;
  --spacing-lg: 2rem;
  --spacing-xl: 3rem;
  --font-heading: 'Playfair Display', serif;
  --font-body: 'DM Sans', sans-serif;
  --glass-bg: rgba(255, 255, 255, 0.05);
  --glass-border: rgba(255, 255, 255, 0.1);
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.5);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: system-ui;
  background: var(--bg-primary);
  color: #666666;
  overflow-x: hidden;
  line-height: 1.80857;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 3rem 0;
  font-size: 15px;
}

.sidebar {
  position: fixed;
  left: 0;
  top: 0;
  width: 280px;
  height: 100vh;
  background: var(--bg-secondary);
  border-right: 1px solid rgba(255, 255, 255, 0.05);
  padding: 2rem 0;
  z-index: 100;
}

.sidebar-logo {
  font-family: 'Playfair Display', serif;
  font-size: 2rem;
  font-weight: 900;
  background: linear-gradient(135deg, var(--accent-gold), var(--accent-coral));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  padding: 0 2rem;
  margin-bottom: 3rem;
}

.sidebar-menu {
  list-style: none;
}

.sidebar-menu li {
  margin-bottom: 0.5rem;
}

.sidebar-menu a {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 2rem;
  color: var(--text-secondary);
  text-decoration: none;
  transition: all 0.3s ease;
  font-weight: 500;
}

.sidebar-menu a:hover, .sidebar-menu a.active {
  color: var(--accent-gold);
  background: rgba(212, 175, 55, 0.1);
  border-left: 3px solid var(--accent-gold);
}

.sidebar-menu .icon {
  font-size: 1.3rem;
}

.main-content {
  margin-left: 280px;
  padding: var(--spacing-xl) 0;
  min-height: calc(100vh - 200px);
  position: relative;
  z-index: 1;
}

.header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 3rem;
}

.header h1 {
  font-family: 'Playfair Display', serif;
  font-size: 2.5rem;
}

.add-product-btn {
  padding: 1rem 2rem;
  background: linear-gradient(135deg, var(--accent-coral), #ff8787);
  border: none;
  border-radius: 12px;
  color: white;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s ease;
}

.add-product-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 30px rgba(255, 107, 107, 0.4);
}

.products-table {
  background: rgba(26, 26, 26, 0.6);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 20px;
  padding: 2rem;
  overflow-x: auto;
}

table {
  width: 100%;
  border-collapse: collapse;
}

thead {
  border-bottom: 2px solid rgba(255, 255, 255, 0.1);
}

th {
  text-align: left;
  padding: 1rem;
  font-weight: 600;
  color: var(--accent-gold);
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: #f8f9fa;
}

td {
  padding: 1.5rem 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

tr:hover {
  background: rgba(255, 255, 255, 0.02);
}

.product-img {
  width: 50px;
  height: 50px;
  border-radius: 6px;
  object-fit: cover;
  background: linear-gradient(135deg, #2a2a2a, #1a1a1a);
}

.product-name {
  font-weight: 700;
  margin-bottom: 0.8rem;
  font-family: 'Playfair Display', serif;
  font-size: 1.5rem;
  line-height: 1.2;
  background: linear-gradient(135deg, var(--text-primary), var(--accent-gold));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin: 0;
  color: var(--text-primary);
}

.product-category {
  font-size: 0.85rem;
  color: var(--accent-gold);
  display: inline-block;
  padding: var(--spacing-xs) var(--spacing-md);
  background: var(--accent-teal);
  border-radius: 20px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  width: fit-content;
  margin-bottom: 0.5rem;
}

.price {
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--accent-gold);
}

.stock {
  padding: 0.4rem 0.8rem;
  border-radius: 50px;
  font-size: 0.85rem;
  font-weight: 600;
}

.stock.in-stock {
  background: rgba(0, 212, 170, 0.1);
  color: var(--accent-teal);
}

.stock.low-stock {
  background: rgba(255, 193, 7, 0.1);
  color: #ffc107;
}

.stock.out-of-stock {
  background: rgba(255, 107, 107, 0.1);
  color: var(--accent-coral);
}

.actions {
  display: flex;
  gap: 0.5rem;
}

.btn-icon {
  width: 35px;
  height: 35px;
  border-radius: 8px;
  border: none;
  background: none;
  color: var(--text-primary);
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

.btn-icon:hover {
  background: rgba(212, 175, 55, 0.1);
  border-color: var(--accent-gold);
}

.btn-icon.delete:hover {
  background: rgba(255, 107, 107, 0.1);
  border-color: var(--accent-coral);
  color: var(--accent-coral);
}

.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  z-index: 1000;
  overflow-y: auto;
  padding: 2rem;
}

.modal.show {
  display: flex;
  align-items: center;
  justify-content: center;
}

.modal-content {
  background: var(--bg-secondary);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  padding: 3rem;
  max-width: 700px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  position: relative;
  animation: slideUp 0.3s ease;
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
}

.modal-header h2 {
  font-family: 'Playfair Display', serif;
  font-size: 2rem;
  color: #808080;
}

.close-btn {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: none;
  background: rgba(255, 255, 255, 0.05);
  color: var(--text-primary);
  cursor: pointer;
  font-size: 1.5rem;
  transition: all 0.3s ease;
}

.close-btn:hover {
  background: rgba(255, 107, 107, 0.2);
  color: var(--accent-coral);
}

.form-group {
  margin-bottom: 1.5rem;
}

.form-group label {
  display: block;
  margin-bottom: 0.6rem;
  font-weight: 500;
  color: var(--text-secondary);
  font-size: 0.9rem;
  letter-spacing: 0.03em;
}

.form-group input, .form-group textarea, .form-group select {
  width: 100%;
  padding: 1rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  color: var(--text-primary);
  font-family: 'DM Sans', sans-serif;
  font-size: 1rem;
  transition: all 0.3s ease;
}

.form-group input:focus, .form-group textarea:focus, .form-group select:focus {
  outline: none;
  border-color: var(--accent-gold);
  background: rgba(255, 255, 255, 0.08);
}

.form-group textarea {
  min-height: 120px;
  resize: vertical;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
}

.checkbox-group {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.checkbox-group input[type="checkbox"] {
  width: auto;
  height: auto;
  accent-color: var(--accent-gold);
}

.badge-bundle {
  padding: 0.25rem 0.75rem;
  border-radius: 12px;
  font-size: 0.875rem;
  font-weight: 600;
  background: linear-gradient(135deg, #00d4aa, #00f0c8);
  color: white;
}

.badge-bundle.active {
  background: rgba(0, 212, 170, 0.2);
  color: #00d4aa;
  border: 1px solid #00d4aa;
}

.badge-bundle.inactive {
  background: rgba(255, 255, 255, 0.05);
  color: #808080;
  border: 1px solid #333;
}

.uploaded-image {
  position: relative;
  border: 1px solid #ddd;
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 1;
  width: 90px;
  height: 90px;
  margin-right: 10px;
  margin-bottom: 10px;
}

.uploaded-image.existing-image {
  border-color: #d4af37;
}

.set-primary-btn {
  position: absolute;
  bottom: 10px;
  left: 10px;
  width: 36px;
  height: 36px;
  background: rgba(0, 0, 0, 0.7);
  border: 1px solid #333;
  color: #fff;
  border-radius: 50%;
  cursor: pointer;
  font-size: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.set-primary-btn:hover {
  background: #d4af37;
  border-color: #d4af37;
  transform: scale(1.1);
}

.set-primary-btn.active {
  background: #d4af37;
  border-color: #d4af37;
  color: white;
}

.remove-image {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 22px;
  height: 22px;
  background: rgba(0,0,0,0.6);
  border: none;
  color: white;
  border-radius: 50%;
  cursor: pointer;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.remove-image:hover {
  background: #ff3333;
  transform: scale(1.1);
}

.primary-badge {
  position: absolute;
  top: 10px;
  left: 0.5rem;
  background: gold;
  color: var(--bg-primary);
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 12px;
  bottom: 4px;
  right: 4px;
  font-weight: bold;
}

.file-upload {
  border: 2px dashed rgba(255, 255, 255, 0.2);
  border-radius: 15px;
  padding: 2rem;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
}

.file-upload:hover {
  border-color: var(--accent-gold);
  background: rgba(212, 175, 55, 0.05);
}

.file-upload input[type="file"] {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  cursor: pointer;
}

.file-upload-icon {
  font-size: 3rem;
  margin-bottom: 1rem;
}

.file-upload-text {
  color: var(--text-secondary);
}

.uploaded-images {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}

.bundle-settings-container {
  max-width: 800px;
  margin: 0 auto;
  padding: 2rem;
}

.settings-card {
  background: var(--card-bg, #1a1a1a);
  border: 1px solid var(--border-color, #333);
  border-radius: 12px;
  padding: 2rem;
  margin-bottom: 2rem;
}

.settings-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
}

.settings-header h1 {
  font-size: 2rem;
  margin: 0;
  color: #d4af37;
}

.form-group input {
  width: 100%;
  padding: 0.75rem;
  background: #0a0a0a;
  border: 1px solid #333;
  border-radius: 8px;
  color: #fff;
  font-size: 1rem;
}

.form-group input:focus {
  outline: none;
  border-color: #d4af37;
}

.toggle-group {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.toggle-switch {
  position: relative;
  width: 60px;
  height: 30px;
}

.toggle-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.toggle-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #333;
  transition: 0.3s;
  border-radius: 30px;
}

.toggle-slider:before {
  position: absolute;
  content: "";
  height: 22px;
  width: 22px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  transition: 0.3s;
  border-radius: 50%;
}

input:checked + .toggle-slider {
  background-color: #00d4aa;
}

input:checked + .toggle-slider:before {
  transform: translateX(30px);
}

.btn-save {
  padding: 1rem 2rem;
  background: linear-gradient(135deg, #00d4aa, #00f0c8);
  color: white;
  border: none;
  border-radius: 12px;
  font-weight: 700;
  font-size: 1rem;
  cursor: pointer;
  transition: all 0.3s ease;
}

.btn-save:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 24px rgba(0, 212, 170, 0.4);
}

.btn-save.saving {
  background: #666;
  cursor: not-allowed;
}

.info-box {
  background: rgba(0, 212, 170, 0.1);
  border: 1px solid #00d4aa;
  border-radius: 8px;
  padding: 1rem;
  margin-top: 2rem;
}

.info-box h3 {
  margin: 0 0 0.5rem 0;
  color: #00d4aa;
}

.info-box p {
  margin: 0.5rem 0;
  color: #b0b0b0;
}

.example-box {
  background: rgba(255, 255, 255, 0.05);
  border-radius: 8px;
  padding: 1rem;
  margin-top: 1rem;
  font-family: monospace;
}

.uploaded-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.submit-btn {
  width: 100%;
  padding: 1.2rem;
  background: linear-gradient(135deg, var(--accent-coral), #ff8787);
  border: none;
  border-radius: 12px;
  color: white;
  font-weight: 700;
  font-size: 1.1rem;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-top: 2rem;
  margin-bottom: 1.5rem;
  font-family: 'DM Sans', sans-serif;
  position: relative;
  overflow: hidden;
}

.submit-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 15px 40px rgba(255, 107, 107, 0.4);
}

.submit-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}

.loading {
  text-align: center;
  padding: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 200px;
  font-size: 1.2rem;
  color: var(--text-secondary);
}

.spinner {
  width: 50px;
  height: 50px;
  border: 4px solid rgba(255, 255, 255, 0.1);
  border-top-color: var(--accent-gold);
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  margin: 0 auto 1rem;
  margin-right: 1rem;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.empty-state {
  text-align: center;
  padding: 6rem 2rem;
}

.empty-state-icon {
  font-size: 5rem;
  margin-bottom: 1.5rem;
  opacity: 0.5;
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.flipOutX, .animated.flipOutY, .animated.bounceIn, .animated.bounceOut {
  -webkit-animation-duration: .75s;
  animation-duration: .75s;
}

@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
    animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755,0.050,0.855,0.060);
    animation-timing-function: cubic-bezier(0.755,0.050,0.855,0.060);
    -webkit-transform: translate3d(0,-30px,0);
    transform: translate3d(0,-30px,0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755,0.050,0.855,0.060);
    animation-timing-function: cubic-bezier(0.755,0.050,0.855,0.060);
    -webkit-transform: translate3d(0,-15px,0);
    transform: translate3d(0,-15px,0);
  }
  90% {
    -webkit-transform: translate3d(0,-4px,0);
    transform: translate3d(0,-4px,0);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}

.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

@keyframes pulse {
  from {
    -webkit-transform: scale3d(1,1,1);
    transform: scale3d(1,1,1);
  }
  50% {
    -webkit-transform: scale3d(1.05,1.05,1.05);
    transform: scale3d(1.05,1.05,1.05);
  }
  to {
    -webkit-transform: scale3d(1,1,1);
    transform: scale3d(1,1,1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@keyframes rubberBand {
  from {
    -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);
  }
  to {
    -webkit-transform: scale3d(1,1,1);
    transform: scale3d(1,1,1);
  }
}

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@keyframes shake {
  from, to {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px,0,0);
    transform: translate3d(-10px,0,0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px,0,0);
    transform: translate3d(10px,0,0);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake;
}

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0,0,1,15deg);
    transform: rotate3d(0,0,1,15deg);
  }
  40% {
    -webkit-transform: rotate3d(0,0,1,-10deg);
    transform: rotate3d(0,0,1,-10deg);
  }
  60% {
    -webkit-transform: rotate3d(0,0,1,5deg);
    transform: rotate3d(0,0,1,5deg);
  }
  80% {
    -webkit-transform: rotate3d(0,0,1,-5deg);
    transform: rotate3d(0,0,1,-5deg);
  }
  to {
    -webkit-transform: rotate3d(0,0,1,0deg);
    transform: rotate3d(0,0,1,0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@keyframes tada {
  from {
    -webkit-transform: scale3d(1,1,1);
    transform: scale3d(1,1,1);
  }
  10%, 20% {
    -webkit-transform: scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg);
    transform: scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg);
    transform: scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg);
    transform: scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg);
  }
  to {
    -webkit-transform: scale3d(1,1,1);
    transform: scale3d(1,1,1);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

@keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }
  15% {
    -webkit-transform: translate3d(-25%,0,0) rotate3d(0,0,1,-5deg);
    transform: translate3d(-25%,0,0) rotate3d(0,0,1,-5deg);
  }
  30% {
    -webkit-transform: translate3d(20%,0,0) rotate3d(0,0,1,3deg);
    transform: translate3d(20%,0,0) rotate3d(0,0,1,3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%,0,0) rotate3d(0,0,1,-3deg);
    transform: translate3d(-15%,0,0) rotate3d(0,0,1,-3deg);
  }
  60% {
    -webkit-transform: translate3d(10%,0,0) rotate3d(0,0,1,2deg);
    transform: translate3d(10%,0,0) rotate3d(0,0,1,2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%,0,0) rotate3d(0,0,1,-1deg);
    transform: translate3d(-5%,0,0) rotate3d(0,0,1,-1deg);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@keyframes jello {
  from, 11.1%, to {
    -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);
  }
}

.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
    animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(.3,.3,.3);
    transform: scale3d(.3,.3,.3);
  }
  20% {
    -webkit-transform: scale3d(1.1,1.1,1.1);
    transform: scale3d(1.1,1.1,1.1);
  }
  40% {
    -webkit-transform: scale3d(.9,.9,.9);
    transform: scale3d(.9,.9,.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03,1.03,1.03);
    transform: scale3d(1.03,1.03,1.03);
  }
  80% {
    -webkit-transform: scale3d(.97,.97,.97);
    transform: scale3d(.97,.97,.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1,1,1);
    transform: scale3d(1,1,1);
  }
}

.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
    animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0,-3000px,0);
    transform: translate3d(0,-3000px,0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0,25px,0);
    transform: translate3d(0,25px,0);
  }
  75% {
    -webkit-transform: translate3d(0,-10px,0);
    transform: translate3d(0,-10px,0);
  }
  90% {
    -webkit-transform: translate3d(0,5px,0);
    transform: translate3d(0,5px,0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
    animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px,0,0);
    transform: translate3d(-3000px,0,0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px,0,0);
    transform: translate3d(25px,0,0);
  }
  75% {
    -webkit-transform: translate3d(-10px,0,0);
    transform: translate3d(-10px,0,0);
  }
  90% {
    -webkit-transform: translate3d(5px,0,0);
    transform: translate3d(5px,0,0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
    animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px,0,0);
    transform: translate3d(3000px,0,0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px,0,0);
    transform: translate3d(-25px,0,0);
  }
  75% {
    -webkit-transform: translate3d(10px,0,0);
    transform: translate3d(10px,0,0);
  }
  90% {
    -webkit-transform: translate3d(-5px,0,0);
    transform: translate3d(-5px,0,0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
    animation-timing-function: cubic-bezier(0.215,0.610,0.355,1.000);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0,3000px,0);
    transform: translate3d(0,3000px,0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0,-20px,0);
    transform: translate3d(0,-20px,0);
  }
  75% {
    -webkit-transform: translate3d(0,10px,0);
    transform: translate3d(0,10px,0);
  }
  90% {
    -webkit-transform: translate3d(0,-5px,0);
    transform: translate3d(0,-5px,0);
  }
  to {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(.9,.9,.9);
    transform: scale3d(.9,.9,.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1,1.1,1.1);
    transform: scale3d(1.1,1.1,1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(.3,.3,.3);
    transform: scale3d(.3,.3,.3);
  }
}

.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0,10px,0);
    transform: translate3d(0,10px,0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0,-20px,0);
    transform: translate3d(0,-20px,0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0,2000px,0);
    transform: translate3d(0,2000px,0);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px,0,0);
    transform: translate3d(20px,0,0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px,0,0);
    transform: translate3d(-2000px,0,0);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px,0,0);
    transform: translate3d(-20px,0,0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px,0,0);
    transform: translate3d(2000px,0,0);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0,-10px,0);
    transform: translate3d(0,-10px,0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0,20px,0);
    transform: translate3d(0,20px,0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0,-2000px,0);
    transform: translate3d(0,-2000px,0);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0,-100%,0);
    transform: translate3d(0,-100%,0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0,-2000px,0);
    transform: translate3d(0,-2000px,0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%,0,0);
    transform: translate3d(-100%,0,0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px,0,0);
    transform: translate3d(-2000px,0,0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%,0,0);
    transform: translate3d(100%,0,0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px,0,0);
    transform: translate3d(2000px,0,0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0,2000px,0);
    transform: translate3d(0,2000px,0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0,2000px,0);
    transform: translate3d(0,2000px,0);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%,0,0);
    transform: translate3d(-100%,0,0);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px,0,0);
    transform: translate3d(-2000px,0,0);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%,0,0);
    transform: translate3d(100%,0,0);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px,0,0);
    transform: translate3d(2000px,0,0);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0,-100%,0);
    transform: translate3d(0,-100%,0);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0,-2000px,0);
    transform: translate3d(0,-2000px,0);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0,1,0,-360deg);
    transform: perspective(400px) rotate3d(0,1,0,-360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);
    transform: perspective(400px) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);
    transform: perspective(400px) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) scale3d(.95,.95,.95);
    transform: perspective(400px) scale3d(.95,.95,.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1,0,0,90deg);
    transform: perspective(400px) rotate3d(1,0,0,90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1,0,0,-20deg);
    transform: perspective(400px) rotate3d(1,0,0,-20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1,0,0,10deg);
    transform: perspective(400px) rotate3d(1,0,0,10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1,0,0,-5deg);
    transform: perspective(400px) rotate3d(1,0,0,-5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInX {
  -webkit-backface-visibility: visible!important;
  backface-visibility: visible!important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0,1,0,90deg);
    transform: perspective(400px) rotate3d(0,1,0,90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0,1,0,-20deg);
    transform: perspective(400px) rotate3d(0,1,0,-20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0,1,0,10deg);
    transform: perspective(400px) rotate3d(0,1,0,10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0,1,0,-5deg);
    transform: perspective(400px) rotate3d(0,1,0,-5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInY {
  -webkit-backface-visibility: visible!important;
  backface-visibility: visible!important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1,0,0,-20deg);
    transform: perspective(400px) rotate3d(1,0,0,-20deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(1,0,0,90deg);
    transform: perspective(400px) rotate3d(1,0,0,90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible!important;
  backface-visibility: visible!important;
}

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0,1,0,-15deg);
    transform: perspective(400px) rotate3d(0,1,0,-15deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(0,1,0,90deg);
    transform: perspective(400px) rotate3d(0,1,0,90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-backface-visibility: visible!important;
  backface-visibility: visible!important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%,0,0) skewX(-30deg);
    transform: translate3d(100%,0,0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%,0,0) skewX(30deg);
    transform: translate3d(100%,0,0) skewX(30deg);
    opacity: 0;
  }
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0,0,1,-200deg);
    transform: rotate3d(0,0,1,-200deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0,0,1,-45deg);
    transform: rotate3d(0,0,1,-45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0,0,1,45deg);
    transform: rotate3d(0,0,1,45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0,0,1,45deg);
    transform: rotate3d(0,0,1,45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0,0,1,-90deg);
    transform: rotate3d(0,0,1,-90deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0,0,1,200deg);
    transform: rotate3d(0,0,1,200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0,0,1,45deg);
    transform: rotate3d(0,0,1,45deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0,0,1,-45deg);
    transform: rotate3d(0,0,1,-45deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0,0,1,-45deg);
    transform: rotate3d(0,0,1,-45deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0,0,1,90deg);
    transform: rotate3d(0,0,1,90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate3d(0,0,1,80deg);
    transform: rotate3d(0,0,1,80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40%, 80% {
    -webkit-transform: rotate3d(0,0,1,60deg);
    transform: rotate3d(0,0,1,60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0,700px,0);
    transform: translate3d(0,700px,0);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%,0,0) rotate3d(0,0,1,-120deg);
    transform: translate3d(-100%,0,0) rotate3d(0,0,1,-120deg);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

@keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%,0,0) rotate3d(0,0,1,120deg);
    transform: translate3d(100%,0,0) rotate3d(0,0,1,120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.3,.3,.3);
    transform: scale3d(.3,.3,.3);
  }
  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@keyframes zoomInDown {
  from {
    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);
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@keyframes zoomInLeft {
  from {
    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);
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@keyframes zoomInRight {
  from {
    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);
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@keyframes zoomInUp {
  from {
    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);
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(.3,.3,.3);
    transform: scale3d(.3,.3,.3);
  }
  to {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@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);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(.1,.1,.1) translate3d(0,2000px,0);
    transform: scale3d(.1,.1,.1) translate3d(0,2000px,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);
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475,.475,.475) translate3d(42px,0,0);
    transform: scale3d(.475,.475,.475) translate3d(42px,0,0);
  }
  to {
    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;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475,.475,.475) translate3d(-42px,0,0);
    transform: scale3d(.475,.475,.475) translate3d(-42px,0,0);
  }
  to {
    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;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@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);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(.1,.1,.1) translate3d(0,-2000px,0);
    transform: scale3d(.1,.1,.1) translate3d(0,-2000px,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);
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0,-100%,0);
    transform: translate3d(0,-100%,0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%,0,0);
    transform: translate3d(-100%,0,0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%,0,0);
    transform: translate3d(100%,0,0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%,0,0);
    transform: translate3d(-100%,0,0);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%,0,0);
    transform: translate3d(100%,0,0);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0,-100%,0);
    transform: translate3d(0,-100%,0);
  }
}

.logout-btn {
  position: absolute;
  bottom: 2rem;
  left: 2rem;
  right: 2rem;
  padding: 1rem;
  background: rgba(255, 107, 107, 0.1);
  border: 1px solid rgba(255, 107, 107, 0.3);
  border-radius: 10px;
  color: var(--accent-coral);
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
}

.logout-btn:hover {
  background: rgba(255, 107, 107, 0.2);
  transform: translateY(-2px);
}

.user-info {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.8rem 1.5rem;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 50px;
}

.user-avatar {
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg, var(--accent-gold), var(--accent-coral));
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 3rem;
  margin-bottom: 3rem;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

.stat-card {
  background: rgba(26, 26, 26, 0.6);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 20px;
  padding: 2rem;
  position: relative;
  overflow: hidden;
  transition: transform 0.3s ease;
}

.stat-card:hover {
  transform: translateY(-5px);
}

.stat-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
}

.stat-card.gold::before {
  background: var(--accent-gold);
}

.stat-card.coral::before {
  background: var(--accent-coral);
}

.stat-card.teal::before {
  background: var(--accent-teal);
}

.stat-card.purple::before {
  background: #9b59b6;
}

.stat-icon {
  font-size: 2.5rem;
  margin-bottom: 1rem;
}

.stat-value {
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.stat-label {
  color: var(--text-secondary);
  font-size: 0.95rem;
}

.section {
  margin-bottom: 3rem;
}

.section-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(2.5rem, 5vw, 4rem);
  margin-bottom: 1rem;
  text-align: center;
}

.activity-list {
  background: rgba(26, 26, 26, 0.6);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 20px;
  padding: 2rem;
}

.activity-item {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 1.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  transition: background 0.3s ease;
}

.activity-item:last-child {
  border-bottom: none;
}

.activity-item:hover {
  background: rgba(255, 255, 255, 0.02);
}

.activity-icon {
  width: 50px;
  height: 50px;
  background: rgba(212, 175, 55, 0.1);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
}

.activity-content {
  flex: 1;
}

.activity-title {
  font-weight: 600;
  margin-bottom: 0.3rem;
}

.activity-time {
  color: var(--text-secondary);
  font-size: 0.9rem;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

nav {
  position: fixed;
  top: 0;
  width: 100%;
  padding: 1.5rem 5%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 100;
  background: rgba(10, 10, 10, 0.95);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  animation: slideDown 0.6s ease;
}

.nav-links {
  display: flex;
  gap: 2.5rem;
  list-style: none;
}

.logo {
  font-family: 'Playfair Display', serif;
  font-size: 2rem;
  font-weight: 900;
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-coral) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  letter-spacing: -0.02em;
  text-decoration: none;
  text-align: center;
  margin-bottom: 2rem;
  color: var(--accent-gold);
}

.nav-links a::after {
  content: '';
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--accent-gold);
  transition: width 0.3s ease;
}

.nav-links a:hover, .nav-links a.active {
  color: var(--accent-gold);
}

.cta-btn {
  padding: 0.75rem 2rem;
  background: linear-gradient(135deg, var(--accent-coral), #ff8787);
  color: white;
  border: none;
  border-radius: 50px;
  font-weight: 600;
  cursor: pointer;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  font-size: 0.95rem;
  text-decoration: none;
  display: inline-block;
}

.cta-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 30px rgba(255, 107, 107, 0.3);
}

.btn-outline {
  padding: 0.75rem 2rem;
  background: transparent;
  color: var(--text-primary);
  border: 2px solid var(--accent-gold);
  border-radius: 50px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 0.95rem;
  text-decoration: none;
  display: inline-block;
}

.btn-outline:hover {
  background: var(--accent-gold);
  color: var(--bg-primary);
  transform: translateY(-2px);
}

.user-avatar-nav {
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg, var(--accent-gold), var(--accent-coral));
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  cursor: pointer;
  transition: transform 0.3s ease;
}

body::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulance type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.03'/%3E%3C/svg%3E");
  pointer-events: none;
  z-index: 1000;
  opacity: 0.4;
}

@keyframes slideDown {
  from {
    transform: translateY(-100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

.nav-links a {
  color: var(--text-primary);
  text-decoration: none;
  font-weight: 500;
  font-size: 0.95rem;
  position: relative;
  transition: color 0.3s ease;
  letter-spacing: 0.03em;
}

.nav-links a:hover {
  color: var(--accent-gold);
}

.nav-links a:hover::after {
  width: 100%;
}

.nav-actions {
  display: flex;
  gap: 1rem;
  align-items: center;
}

.user-menu {
  position: relative;
}

.dropdown-menu {
  position: absolute;
  top: 60px;
  right: 0;
  background: rgba(26, 26, 26, 0.95);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  padding: 0.5rem 0;
  min-width: 200px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.3s ease;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
  z-index: 1000;
}

.dropdown-menu.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.dropdown-item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0.9rem 1.5rem;
  color: var(--text-primary);
  text-decoration: none;
  transition: background 0.3s ease;
  cursor: pointer;
}

.dropdown-item:hover {
  background: rgba(255, 255, 255, 0.05);
}

.dropdown-item.danger {
  color: var(--accent-coral);
}

.dropdown-divider {
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
  margin: 0.5rem 0;
}

.hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  padding: 8rem 5% 4rem;
  position: relative;
  overflow: hidden;
  text-align: center;
}

.hero-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(circle at 20% 50%, rgba(212, 175, 55, 0.15) 0%, transparent 50%), radial-gradient(circle at 80% 80%, rgba(255, 107, 107, 0.1) 0%, transparent 50%), radial-gradient(circle at 40% 40%, rgba(0, 212, 170, 0.08) 0%, transparent 50%);
  z-index: 0;
}

.hero-content {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 4rem;
  align-items: center;
  position: relative;
  z-index: 1;
}

.hero-text h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(3rem, 7vw, 6rem);
  font-weight: 900;
  line-height: 1.1;
  margin-bottom: 1.5rem;
  opacity: 0;
  animation: fadeInUp 0.8s ease 0.2s forwards;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.hero-text h1 .highlight {
  background: linear-gradient(135deg, var(--accent-gold), var(--accent-coral));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: block;
}

.hero-text p {
  font-size: 1.2rem;
  color: var(--text-secondary);
  margin-bottom: 2.5rem;
  max-width: 600px;
  opacity: 0;
  animation: fadeInUp 0.8s ease 0.4s forwards;
  line-height: 1.8;
}

.hero-cta {
  display: flex;
  gap: 1.5rem;
  opacity: 0;
  animation: fadeInUp 0.8s ease 0.6s forwards;
}

.btn-primary {
  padding: 1.2rem 3rem;
  background: linear-gradient(135deg, var(--accent-coral), #ff8787);
  color: white;
  border: none;
  border-radius: 50px;
  font-weight: 700;
  font-size: 1.1rem;
  cursor: pointer;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  text-decoration: none;
  display: inline-block;
}

.btn-primary:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 15px 40px rgba(255, 107, 107, 0.4);
}

.btn-secondary {
  padding: 1.2rem 3rem;
  background: transparent;
  color: var(--text-primary);
  border: 2px solid var(--accent-gold);
  border-radius: 50px;
  font-weight: 700;
  font-size: 1.1rem;
  cursor: pointer;
  transition: all 0.3s ease;
  text-decoration: none;
  display: inline-block;
}

.btn-secondary:hover {
  background: var(--accent-gold);
  color: var(--bg-primary);
  transform: translateY(-3px);
  box-shadow: 0 15px 40px rgba(212, 175, 55, 0.3);
}

.hero-visual {
  position: relative;
  opacity: 0;
  animation: fadeIn 1s ease 0.8s forwards;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.floating-card {
  background: rgba(26, 26, 26, 0.8);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  padding: 2rem;
  position: relative;
  animation: float 3s ease-in-out infinite;
}

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

.floating-card img {
  width: 100%;
  border-radius: 12px;
  margin-bottom: 1rem;
}

.card-title {
  font-family: 'Playfair Display', serif;
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
}

.card-price {
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--accent-gold);
}

.features {
  padding: 8rem 5%;
  background: linear-gradient(180deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);
  position: relative;
}

.features-grid {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 3rem;
  margin-top: 4rem;
}

.feature-card {
  background: rgba(26, 26, 26, 0.5);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 20px;
  padding: 3rem 2rem;
  transition: transform 0.3s ease, border-color 0.3s ease;
  position: relative;
  overflow: hidden;
}

.feature-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-coral) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.feature-card:hover::before {
  opacity: 0.05;
}

.feature-card:hover {
  transform: translateY(-10px);
  border-color: var(--accent-gold);
}

.feature-icon {
  width: 60px;
  height: 60px;
  background: linear-gradient(135deg, var(--accent-gold), var(--accent-coral));
  border-radius: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
  font-size: 2rem;
  position: relative;
  z-index: 1;
}

.feature-card h3 {
  font-family: 'Playfair Display', serif;
  font-size: 1.8rem;
  margin-bottom: 1rem;
  position: relative;
  z-index: 1;
}

.feature-card p {
  color: var(--text-secondary);
  line-height: 1.8;
  position: relative;
  z-index: 1;
}

.section-subtitle {
  text-align: center;
  color: var(--text-secondary);
  font-size: 1.2rem;
  max-width: 600px;
  margin: 0 auto;
}

.products-preview {
  padding: 8rem 5%;
  background: var(--bg-primary);
}

.products-grid {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 2.5rem;
}

.product-card {
  background: rgba(26, 26, 26, 0.6);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 20px;
  overflow: hidden;
  transition: all 0.4s ease;
  cursor: pointer;
  position: relative;
  animation: fadeInUp 0.6s ease;
}

.product-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
  border-color: rgba(212, 175, 55, 0.3);
}

.product-image {
  width: 100%;
  height: 350px;
  background: linear-gradient(135deg, #2a2a2a, #1a1a1a);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 3rem;
  position: relative;
  overflow: hidden;
}

.product-image::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(212, 175, 55, 0.1) 0%, transparent 70%);
  animation: rotate 15s linear infinite;
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.product-info {
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.product-price {
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--accent-gold);
  margin-bottom: 1rem;
  font-family: var(--font-heading);
  margin: var(--spacing-md) 0;
}

.add-to-cart {
  width: 100%;
  padding: 0.8rem;
  background: linear-gradient(135deg, var(--accent-coral), #ff8787);
  border: none;
  border-radius: 10px;
  color: white;
  font-weight: 600;
  cursor: pointer;
  transition: transform 0.2s ease;
}

.add-to-cart:hover {
  transform: scale(1.05);
}

.stats {
  padding: 6rem 5%;
  background: var(--bg-secondary);
}

.stat-item h3 {
  font-family: 'Playfair Display', serif;
  font-size: 3.5rem;
  background: linear-gradient(135deg, var(--accent-gold), var(--accent-coral));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 0.5rem;
}

.stat-item p {
  color: var(--text-secondary);
  font-size: 1.1rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.cta-section {
  padding: 8rem 5%;
  background: linear-gradient(135deg, var(--accent-gold), var(--accent-coral));
  text-align: center;
  position: relative;
  overflow: hidden;
}

.cta-section::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
  animation: rotate 20s linear infinite;
}

.cta-section h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(2.5rem, 5vw, 4rem);
  color: var(--bg-primary);
  margin-bottom: 1.5rem;
  position: relative;
  z-index: 1;
}

.cta-section p {
  font-size: 1.3rem;
  color: rgba(10, 10, 10, 0.8);
  margin-bottom: 2.5rem;
  position: relative;
  z-index: 1;
}

.cta-section .btn-primary {
  background: var(--bg-primary);
  color: var(--accent-gold);
  position: relative;
  z-index: 1;
}

.cta-section .btn-primary:hover {
  background: #000;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.4);
}

footer {
  padding: 4rem 5% 2rem;
  background: var(--bg-primary);
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.footer-content {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: var(--spacing-md);
  margin-bottom: 3rem;
  padding: 0 var(--spacing-lg);
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.footer-brand h3 {
  font-family: 'Playfair Display', serif;
  font-size: 2rem;
  background: linear-gradient(135deg, var(--accent-gold), var(--accent-coral));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 1rem;
}

.footer-brand p {
  color: var(--text-secondary);
  line-height: 1.8;
}

.footer-links h4 {
  font-size: 1.1rem;
  margin-bottom: 1.5rem;
  font-weight: 600;
}

.footer-links ul {
  list-style: none;
}

.footer-links a {
  color: var(--text-secondary);
  text-decoration: none;
  display: block;
  margin-bottom: 0.8rem;
  transition: color 0.3s ease;
}

.footer-links a:hover {
  color: var(--accent-gold);
}

.footer-bottom {
  text-align: center;
  padding-top: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  color: var(--text-secondary);
}

.fade-in-section {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.bg-animation {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(circle at 20% 50%, rgba(212, 175, 55, 0.15) 0%, transparent 50%), radial-gradient(circle at 80% 80%, rgba(255, 107, 107, 0.1) 0%, transparent 50%), radial-gradient(circle at 40% 40%, rgba(0, 212, 170, 0.08) 0%, transparent 50%);
  z-index: 0;
}

.orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  opacity: 0.6;
  animation: float 8s ease-in-out infinite;
}

.orb1 {
  width: 300px;
  height: 300px;
  background: var(--accent-gold);
  top: 10%;
  left: 20%;
  animation-delay: 0s;
}

.orb2 {
  width: 400px;
  height: 400px;
  background: var(--accent-coral);
  bottom: 10%;
  right: 20%;
  animation-delay: 2s;
}

.orb3 {
  width: 250px;
  height: 250px;
  background: var(--accent-teal);
  top: 50%;
  right: 30%;
  animation-delay: 4s;
}

@keyframes float {
  0%, 100% {
    transform: translate(0, 0) scale(1);
  }
  33% {
    transform: translate(30px, -30px) scale(1.1);
  }
  66% {
    transform: translate(-20px, 20px) scale(0.9);
  }
}

.login-container {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 600px;
  padding: 3rem;
  animation: fadeInUp 0.8s ease;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.login-card {
  background: rgba(26, 26, 26, 0.8);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 30px;
  padding: 3.5rem 3rem;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
  position: relative;
  overflow: hidden;
}

.login-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, var(--accent-gold), var(--accent-coral), var(--accent-teal));
}

.logo h1 {
  font-family: 'Playfair Display', serif;
  font-size: 2.5rem;
  font-weight: 900;
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-coral) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  letter-spacing: -0.02em;
  margin-bottom: 0.5rem;
}

.logo p {
  color: var(--text-secondary);
  font-size: 0.95rem;
  letter-spacing: 0.05em;
}

.form-title {
  font-family: 'Playfair Display', serif;
  font-size: 2rem;
  margin-bottom: 2rem;
  text-align: center;
  color: var(--text-primary);
}

.input-wrapper {
  position: relative;
}

.input-wrapper input {
  width: 100%;
  padding: 1rem 1.2rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  color: var(--text-primary);
  font-size: 1rem;
  font-family: 'DM Sans', sans-serif;
  transition: all 0.3s ease;
  outline: none;
}

.input-wrapper input:focus {
  background: rgba(255, 255, 255, 0.08);
  border-color: var(--accent-gold);
  box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.1);
}

.input-wrapper input::placeholder {
  color: var(--text-secondary);
  opacity: 0.5;
}

.input-icon {
  position: absolute;
  right: 1.2rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.2rem;
  opacity: 0.5;
}

.form-options {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
  font-size: 0.9rem;
}

.checkbox-wrapper {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  margin-bottom: 2rem;
}

.checkbox-wrapper input[type="checkbox"] {
  width: 18px;
  height: 18px;
  cursor: pointer;
  accent-color: var(--accent-gold);
  margin-top: 0.2rem;
  flex-shrink: 0;
}

.checkbox-wrapper label {
  color: var(--text-secondary);
  cursor: pointer;
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.5;
}

.forgot-link {
  color: var(--accent-gold);
  text-decoration: none;
  transition: color 0.3s ease;
}

.forgot-link:hover {
  color: var(--accent-coral);
}

.submit-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  transition: left 0.5s ease;
}

.submit-btn:hover::before {
  left: 100%;
}

.submit-btn:active {
  transform: translateY(0);
}

.divider {
  display: flex;
  align-items: center;
  margin: 2rem 0;
  color: var(--text-secondary);
  font-size: 0.9rem;
}

.divider::before, .divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
}

.divider span {
  padding: 0 1rem;
}

.social-login {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 2rem;
}

.social-btn {
  padding: 1rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  color: var(--text-primary);
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  font-family: 'DM Sans', sans-serif;
}

.social-btn:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: var(--accent-gold);
  transform: translateY(-2px);
}

.signup-link {
  text-align: center;
  color: var(--text-secondary);
  font-size: 0.95rem;
}

.signup-link a {
  color: var(--accent-gold);
  text-decoration: none;
  font-weight: 600;
  transition: color 0.3s ease;
}

.signup-link a:hover {
  color: var(--accent-coral);
}

.error-message {
  background: rgba(255, 107, 107, 0.1);
  border: 1px solid rgba(255, 107, 107, 0.3);
  color: var(--accent-coral);
  padding: 1rem;
  border-radius: 10px;
  margin-bottom: 1.5rem;
  font-size: 0.9rem;
  display: none;
}

.error-message.show {
  display: block;
  animation: shake 0.5s ease;
}

@keyframes shake {
  0%, 100% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-10px);
  }
  75% {
    transform: translateX(10px);
  }
}

.submit-btn.loading {
  pointer-events: none;
  opacity: 0.7;
}

.submit-btn.loading::after {
  content: '';
  position: absolute;
  width: 20px;
  height: 20px;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-top-color: white;
  border-radius: 50%;
  animation: spin 0.6s linear infinite;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}

@keyframes spin {
  to {
    transform: translateY(-50%) rotate(360deg);
  }
}

.bg-orbs {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.orb-1 {
  width: 500px;
  height: 500px;
  background: var(--accent-gold);
  top: -250px;
  left: -250px;
  animation-delay: 0s;
}

.orb-2 {
  width: 400px;
  height: 400px;
  background: var(--accent-coral);
  bottom: -200px;
  right: -200px;
  animation-delay: 7s;
}

.orb-3 {
  width: 350px;
  height: 350px;
  background: var(--accent-teal);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation-delay: 14s;
}

@keyframes float {
  0%, 100% {
    transform: translate(0, 0) scale(1);
  }
  33% {
    transform: translate(100px, -100px) scale(1.1);
  }
  66% {
    transform: translate(-100px, 100px) scale(0.9);
  }
}

.navbar {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(10, 10, 10, 0.8);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--glass-border);
  padding: var(--spacing-md) 0;
}

.nav-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 var(--spacing-lg);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.nav-link {
  color: var(--text-primary);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.3s ease;
}

.nav-link:hover {
  color: var(--accent-gold);
}

.cart-icon {
  position: relative;
  font-size: 1.5rem;
  cursor: pointer;
  transition: all 0.3s ease;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: var(--text-primary);
  padding: 0.75rem 1.5rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  border-radius: 50px;
}

.cart-icon:hover {
  transform: scale(1.1);
  background: rgba(212, 175, 55, 0.1);
  border-color: var(--accent-gold);
}

.cart-count {
  position: absolute;
  top: 0;
  right: 0;
  background: var(--accent-coral);
  color: white;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 50%;
  min-width: 20px;
  text-align: center;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 var(--spacing-lg);
}

.product-detail {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-xl);
  background: var(--glass-bg);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--glass-border);
  border-radius: 24px;
  padding: var(--spacing-xl);
  box-shadow: var(--shadow-lg);
  animation: fadeIn 0.5s ease;
}

.product-gallery {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.main-image {
  width: 100%;
  aspect-ratio: 1;
  background: var(--bg-secondary);
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid var(--glass-border);
  display: flex;
  align-items: center;
  justify-content: center;
}

.main-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.main-image img:hover {
  transform: scale(1.05);
}

.placeholder-image {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--bg-secondary), var(--bg-tertiary));
}

.placeholder-icon {
  font-size: 8rem;
  opacity: 0.3;
}

.thumbnails {
  display: flex;
  gap: var(--spacing-sm);
  flex-wrap: wrap;
}

.thumbnail {
  width: 80px;
  height: 80px;
  border-radius: 12px;
  overflow: hidden;
  cursor: pointer;
  border: 2px solid transparent;
  transition: all 0.3s ease;
  object-fit: cover;
  flex-shrink: 0;
}

.thumbnail:hover {
  border-color: var(--accent-gold);
  transform: scale(1.05);
}

.thumbnail.active {
  border-color: var(--accent-teal);
}

.product-description {
  font-size: 0.95rem;
  color: var(--text-secondary);
  line-height: 1.6;
  margin-bottom: 1.5rem;
}

.stock-status {
  display: inline-block;
  padding: var(--spacing-xs) var(--spacing-md);
  border-radius: 8px;
  font-weight: 700;
  font-size: 0.875rem;
  width: fit-content;
}

.stock-status.in-stock {
  background: rgba(0, 212, 170, 0.2);
  color: var(--accent-teal);
  border: 1px solid var(--accent-teal);
}

.stock-status.low-stock {
  background: rgba(255, 193, 7, 0.2);
  color: #ffc107;
  border: 1px solid #ffc107;
}

.stock-status.out-of-stock {
  background: rgba(255, 107, 107, 0.2);
  color: var(--accent-coral);
  border: 1px solid var(--accent-coral);
}

.product-actions {
  display: flex;
  gap: var(--spacing-md);
  margin-top: var(--spacing-lg);
}

.btn-add-cart, .btn-wishlist {
  flex: 1;
  padding: var(--spacing-md) var(--spacing-lg);
  border: none;
  border-radius: 12px;
  font-size: 1.125rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s ease;
  font-family: var(--font-body);
  position: relative;
  overflow: hidden;
}

.btn-add-cart {
  background: linear-gradient(135deg, var(--accent-coral), #ff8787);
  color: white;
  box-shadow: 0 4px 16px rgba(255, 107, 107, 0.4);
}

.btn-add-cart:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 6px 24px rgba(255, 107, 107, 0.6);
}

.btn-add-cart:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

.btn-add-cart.btn-success, .btn-wishlist.btn-success {
  background: linear-gradient(135deg, var(--accent-teal), #00f0c8);
}

.btn-add-cart.btn-error, .btn-wishlist.btn-error {
  background: linear-gradient(135deg, #dc3545, #c82333);
}

.btn-wishlist {
  background: var(--glass-bg);
  color: var(--text-primary);
  border: 1px solid var(--glass-border);
}

.btn-wishlist:hover:not(:disabled) {
  background: var(--glass-border);
  transform: translateY(-2px);
}

.btn-wishlist:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

.btn-wishlist.active {
  background: linear-gradient(135deg, var(--accent-coral), #ff8787);
  color: white;
  border-color: var(--accent-coral);
}

.btn-spinner {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-top-color: white;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  vertical-align: middle;
  margin-right: 8px;
}

.loading-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--spacing-xl);
  min-height: 400px;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.loading-state p {
  margin-top: var(--spacing-md);
  color: var(--text-secondary);
  font-size: 1.125rem;
}

.error-state {
  text-align: center;
  padding: var(--spacing-xl);
  background: var(--glass-bg);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--glass-border);
  border-radius: 24px;
  box-shadow: var(--shadow-lg);
}

.error-icon {
  font-size: 5rem;
  margin-bottom: var(--spacing-md);
}

.error-state h2 {
  font-family: var(--font-heading);
  font-size: 2rem;
  margin-bottom: var(--spacing-sm);
}

.error-state p {
  font-size: 1.125rem;
  color: var(--text-secondary);
  margin-bottom: var(--spacing-lg);
}

.error-state button {
  padding: var(--spacing-md) var(--spacing-xl);
  background: linear-gradient(135deg, var(--accent-coral), #ff8787);
  border: none;
  border-radius: 12px;
  color: white;
  font-weight: 700;
  font-size: 1.125rem;
  cursor: pointer;
  transition: all 0.3s ease;
}

.error-state button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 24px rgba(255, 107, 107, 0.6);
}

.footer {
  position: relative;
  z-index: 1;
  background: var(--bg-secondary);
  border-top: 1px solid var(--glass-border);
  padding: var(--spacing-lg) 0;
  margin-top: var(--spacing-xl);
}

.footer-content p {
  color: var(--text-secondary);
  margin: 0;
}

.footer-links {
  display: flex;
  gap: var(--spacing-lg);
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.notification {
  position: fixed;
  bottom: var(--spacing-lg);
  right: var(--spacing-lg);
  background: var(--glass-bg);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--glass-border);
  padding: var(--spacing-md) var(--spacing-lg);
  border-radius: 12px;
  box-shadow: var(--shadow-lg);
  color: var(--text-primary);
  font-weight: 500;
  z-index: 1000;
  transform: translateY(100px);
  opacity: 0;
  transition: all 0.3s ease;
}

.notification.show {
  transform: translateY(0);
  opacity: 1;
}

.notification.success {
  border-color: var(--accent-teal);
}

.notification.error {
  border-color: var(--accent-coral);
}

.cart-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}

.cart-overlay.show {
  opacity: 1;
  visibility: visible;
}

.cart-sidebar {
  position: fixed;
  top: 0;
  right: -450px;
  width: 450px;
  max-width: 90vw;
  height: 100vh;
  background: var(--bg-secondary);
  border-left: 1px solid var(--glass-border);
  z-index: 1000;
  display: flex;
  flex-direction: column;
  transition: right 0.3s ease;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.5);
}

.cart-sidebar.open {
  right: 0;
}

.cart-header {
  padding: var(--spacing-lg);
  border-bottom: 1px solid var(--glass-border);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cart-header h2 {
  font-family: var(--font-heading);
  font-size: 1.75rem;
  margin: 0;
  color: var(--accent-gold);
}

.cart-close {
  background: none;
  border: none;
  font-size: 2rem;
  color: var(--text-secondary);
  cursor: pointer;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  transition: all 0.3s ease;
}

.cart-close:hover {
  background: var(--glass-bg);
  color: var(--text-primary);
}

.cart-content {
  flex: 1;
  overflow-y: auto;
  padding: var(--spacing-lg);
}

.cart-item {
  display: flex;
  gap: var(--spacing-md);
  padding: var(--spacing-md);
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  margin-bottom: var(--spacing-md);
  position: relative;
}

.cart-item-image {
  width: 80px;
  height: 80px;
  object-fit: cover;
  border-radius: 8px;
  flex-shrink: 0;
}

.cart-item-info {
  flex: 1;
}

.cart-item-name {
  font-weight: 600;
  margin-bottom: var(--spacing-xs);
  color: var(--text-primary);
}

.cart-item-price {
  color: var(--accent-gold);
  font-weight: 700;
  margin-bottom: var(--spacing-xs);
}

.cart-item-quantity {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
}

.qty-btn {
  width: 28px;
  height: 28px;
  border: 1px solid var(--glass-border);
  background: var(--glass-bg);
  color: var(--text-primary);
  border-radius: 6px;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 700;
  transition: all 0.3s ease;
}

.qty-btn:hover {
  background: var(--accent-teal);
  border-color: var(--accent-teal);
  color: white;
}

.cart-item-remove {
  position: absolute;
  top: var(--spacing-sm);
  right: var(--spacing-sm);
  background: rgba(255, 107, 107, 0.2);
  border: 1px solid var(--accent-coral);
  color: var(--accent-coral);
  width: 28px;
  height: 28px;
  border-radius: 50%;
  cursor: pointer;
  font-size: 1.25rem;
  line-height: 1;
  transition: all 0.3s ease;
}

.cart-item-remove:hover {
  background: var(--accent-coral);
  color: white;
}

.empty-cart {
  text-align: center;
  padding: var(--spacing-xl) var(--spacing-md);
}

.empty-cart-icon {
  font-size: 4rem;
  opacity: 0.3;
  margin-bottom: var(--spacing-md);
}

.empty-cart p {
  color: var(--text-secondary);
  font-size: 1.125rem;
}

.cart-footer {
  padding: var(--spacing-lg);
  border-top: 1px solid var(--glass-border);
  background: var(--bg-primary);
}

.cart-total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--spacing-md);
  font-size: 1.25rem;
  font-weight: 700;
}

.cart-total span:last-child {
  color: var(--accent-gold);
  font-family: var(--font-heading);
}

.btn-checkout, .btn-continue {
  width: 100%;
  padding: var(--spacing-md);
  border: none;
  border-radius: 12px;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s ease;
  font-family: var(--font-body);
}

.btn-checkout {
  background: linear-gradient(135deg, var(--accent-teal), #00f0c8);
  color: white;
  margin-bottom: var(--spacing-sm);
}

.btn-checkout:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 24px rgba(0, 212, 170, 0.4);
}

.btn-continue {
  background: var(--glass-bg);
  color: var(--text-primary);
  border: 1px solid var(--glass-border);
}

.btn-continue:hover {
  background: var(--glass-border);
}

.product-badges-container {
  display: flex;
  gap: 0.5rem;
  margin: 1rem 0;
  flex-wrap: wrap;
}

.product-badge {
  padding: 0.375rem 0.875rem;
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  display: inline-block;
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: linear-gradient(135deg, var(--accent-coral), #ff8787);
  color: white;
  z-index: 2;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.badge-custom {
  background: linear-gradient(135deg, #ff6b6b, #ff8787);
  color: white;
}

.nav-links a:hover::after, .nav-links a.active::after {
  width: 100%;
}

.hero h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(3rem, 6vw, 5rem);
  font-weight: 900;
  margin-bottom: 1rem;
  background: linear-gradient(135deg, var(--accent-gold), var(--accent-coral));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hero p {
  font-size: 1.2rem;
  color: var(--text-secondary);
  max-width: 600px;
  margin: 0 auto;
}

.filters {
  padding: 2rem 5%;
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  justify-content: center;
}

.filter-btn {
  padding: 0.8rem 2rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50px;
  color: var(--text-primary);
  cursor: pointer;
  transition: all 0.3s ease;
  font-weight: 600;
  font-size: 0.95rem;
}

.filter-btn:hover, .filter-btn.active {
  background: linear-gradient(135deg, var(--accent-gold), var(--accent-coral));
  border-color: transparent;
  color: var(--bg-primary);
  transform: translateY(-2px);
}

.products-section {
  padding: 2rem 5% 6rem;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease;
}

.product-card:hover .product-image img {
  transform: scale(1.1);
}

.product-placeholder {
  font-size: 4rem;
  position: relative;
  z-index: 1;
}

.product-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.product-price .original-price {
  font-size: 1rem;
  color: var(--text-secondary);
  text-decoration: line-through;
  margin-left: 0.5rem;
}

.add-to-cart-btn {
  flex: 1;
  padding: 1rem;
  background: linear-gradient(135deg, var(--accent-coral), #ff8787);
  border: none;
  border-radius: 12px;
  color: white;
  font-weight: 700;
  font-size: 1rem;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.add-to-cart-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  transition: left 0.5s ease;
}

.add-to-cart-btn:hover::before {
  left: 100%;
}

.add-to-cart-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 10px 30px rgba(255, 107, 107, 0.4);
}

.add-to-cart-btn.added {
  background: linear-gradient(135deg, var(--accent-teal), #00b894);
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.empty-state h3 {
  font-family: 'Playfair Display', serif;
  font-size: 2rem;
  margin-bottom: 1rem;
}

.empty-state p {
  color: var(--text-secondary);
  font-size: 1.1rem;
}

.cart-notification {
  position: fixed;
  top: 100px;
  right: 2rem;
  background: rgba(26, 26, 26, 0.95);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--accent-teal);
  border-radius: 15px;
  padding: 1.5rem 2rem;
  box-shadow: 0 10px 40px rgba(0, 212, 170, 0.3);
  z-index: 1000;
  opacity: 0;
  transform: translateX(400px);
  transition: all 0.4s ease;
}

.cart-notification.show {
  opacity: 1;
  transform: translateX(0);
}

.cart-notification-content {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.cart-notification-icon {
  font-size: 2rem;
}

.cart-notification-text h4 {
  font-weight: 700;
  margin-bottom: 0.3rem;
}

.cart-notification-text p {
  color: var(--text-secondary);
  font-size: 0.9rem;
}

.product-badges {
  position: absolute;
  top: 10px;
  left: 10px;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  z-index: 10;
}

@keyframes float {
  0%, 100% {
    transform: translate(0, 0) scale(1);
  }
  33% {
    transform: translate(30px, -30px) scale(1.1);
  }
  66% {
    transform: translate(-20px, 20px) scale(0.9);
  }
}

.signup-container {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 600px;
  padding: 3rem 1.5rem;
  animation: fadeInUp 0.8s ease;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.signup-card {
  background: rgba(26, 26, 26, 0.8);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 30px;
  padding: 3.5rem 3rem;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
  position: relative;
  overflow: hidden;
}

.signup-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, var(--accent-gold), var(--accent-coral), var(--accent-teal));
}

.password-strength {
  margin-top: 0.5rem;
  height: 4px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 2px;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.password-strength.show {
  opacity: 1;
}

.password-strength-bar {
  height: 100%;
  width: 0%;
  transition: all 0.3s ease;
  border-radius: 2px;
}

.strength-weak {
  width: 33%;
  background: #ff6b6b;
}

.strength-medium {
  width: 66%;
  background: #ffd93d;
}

.strength-strong {
  width: 100%;
  background: #00d4aa;
}

.password-strength-text {
  font-size: 0.8rem;
  margin-top: 0.3rem;
  color: var(--text-secondary);
}

.checkbox-wrapper label a {
  color: var(--accent-gold);
  text-decoration: none;
}

.checkbox-wrapper label a:hover {
  color: var(--accent-coral);
}

.login-link {
  text-align: center;
  color: var(--text-secondary);
  font-size: 0.95rem;
}

.login-link a {
  color: var(--accent-gold);
  text-decoration: none;
  font-weight: 600;
  transition: color 0.3s ease;
}

.login-link a:hover {
  color: var(--accent-coral);
}

.message {
  padding: 1rem;
  border-radius: 10px;
  margin-bottom: 1.5rem;
  font-size: 0.9rem;
  display: none;
}

.message.show {
  display: block;
  animation: slideIn 0.3s ease;
}

@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.message.error {
  background: rgba(255, 107, 107, 0.1);
  border: 1px solid rgba(255, 107, 107, 0.3);
  color: var(--accent-coral);
}

.message.success {
  background: rgba(0, 212, 170, 0.1);
  border: 1px solid rgba(0, 212, 170, 0.3);
  color: var(--accent-teal);
}

@keyframes spin {
  to {
    transform: translateY(-50%) rotate(360deg);
  }
}

a {
  color: #1f1f1f;
  text-decoration: none;
  outline: none;
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

h1, h2, h3, h4, h5, h6 {
  letter-spacing: 0;
  font-weight: normal;
  position: relative;
  padding: 0 0 10px 0;
  line-height: 120% !important;
  color: #1f1f1f;
  margin: 0;
}

h1 {
  font-size: 24px;
}

h2 {
  font-size: 22px;
}

h3 {
  font-size: 18px;
}

h4 {
  font-size: 16px;
}

h5 {
  font-size: 14px;
}

h6 {
  font-size: 13px;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: #212121;
  text-decoration: none!important;
  opacity: 1;
}

h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
  opacity: .8;
}

a, .btn {
  text-decoration: none !important;
  outline: none !important;
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.btn-custom {
  margin-top: 20px;
  background-color: transparent !important;
  border: 2px solid #ddd;
  padding: 12px 40px;
  font-size: 16px;
}

.lead {
  font-size: 18px;
  line-height: 30px;
  color: #767676;
  margin: 0;
  padding: 0;
}

blockquote {
  margin: 20px 0 20px;
  padding: 30px;
}

ul, li, ol {
  list-style: none;
  margin: 0px;
  padding: 0px;
}

button:focus {
  outline: none;
  box-shadow: none;
}

:focus {
  outline: 0;
}

p {
  margin: 0px;
}

.bootstrap-select .dropdown-toggle:focus {
  outline: none !important;
  box-shadow: none !important;
}

.form-control::-moz-placeholder {
  color: #ffffff;
  opacity: 1;
}

#back-to-top {
  position: fixed;
  bottom: 40px;
  right: 40px;
  z-index: 9999;
  width: 32px;
  height: 32px;
  text-align: center;
  line-height: 30px;
  background: #d33b33;
  color: #ffffff;
  cursor: pointer;
  border: 0;
  border-radius: 2px;
  text-decoration: none;
  transition: opacity 0.2s ease-out;
  font-size: 30px;
}

.main-top {
  background: #010101;
  padding: 10px 0px;
}

.custom-select-box {
  float: right;
  width: 95px;
  margin-left: 20px;
}

.custom-select-box .form-control {
  background: none;
  border: none;
}

.custom-select-box .bootstrap-select .btn-light {
  padding: 4px;
  font-size: 14px;
  background: #d33b33;
  color: #fff;
  border: none;
  border-radius: 0px;
}

.custom-select-box .bootstrap-select .btn-light span {
  padding: 2px;
  line-height: 15px;
}

.dropdown-toggle::after {
  margin-left: -24px;
  display: none;
}

.custom-select-box .dropdown-toggle::after {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: .255em;
  vertical-align: .255em;
  content: "";
  border-top: .3em solid;
  border-right: .3em solid transparent;
  border-bottom: 0;
  border-left: .3em solid transparent;
  position: absolute;
  top: 13px;
  right: 10px;
}

.bootstrap-select.btn-group .dropdown-toggle .filter-option {
  overflow: inherit;
}

.bootstrap-select.btn-group .dropdown-menu {
  border: none;
  padding: 0px;
  border-radius: 0px;
}

.right-phone-box {
  float: right;
  margin-left: 10px;
}

.right-phone-box p {
  margin: 0px;
  color: #ffffff;
  font-size: 14px;
  line-height: 30px;
}

.right-phone-box p a {
  color: #ffffff;
}

.right-phone-box p a:hover {
  color: #d33b33;
}

.offer-box, .slide {
  color: #FFFFFF;
  font-size: 13px;
  padding: 2px 15px;
  font-family: 'Montserrat', sans-serif;
}

.offer-box li {
  font-weight: 600;
}

.offer-box li i {
  margin-right: 15px;
  color: #d33b33;
  font-size: 20px;
}

.our-link {
  float: right;
}

.our-link ul li {
  display: inline-block;
  border-right: 1px solid #ffffff;
  padding: 0px 10px;
  line-height: 14px;
}

.our-link ul {
  line-height: 30px;
}

.our-link ul li a {
  color: #ffffff;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 14px;
}

.our-link ul li a:hover {
  color: #d33b33;
}

.our-link ul li:last-child {
  border: none;
}

.search a {
  color: #d33b33;
}

.attr-nav > ul > li > a:hover {
  color: #d33b33;
}

nav.navbar.bootsnav ul.nav > li > a {
  margin: 0px;
  position: relative;
  font-weight: 700;
  font-size: 16px;
  color: #010101;
  padding-top: 30px;
  padding-bottom: 30px;
  padding-left: 10px;
  padding-right: 30px;
}

.attr-nav > ul > li > a {
  padding: 28px 15px;
}

ul.cart-list > li.total > .btn {
  border-bottom: solid 1px #cfcfcf !important;
  color: #ffffff;
  padding: 10px 15px;
  border: none;
  font-weight: 700;
}

nav.navbar.navbar-inverse {
  background-color: #222;
  border-bottom: solid 1px #303030;
}

nav.navbar.navbar-inverse ul.cart-list > li.total > .btn {
  border-bottom: solid 1px #222 !important;
}

nav.navbar.navbar-inverse ul.cart-list > li.total .pull-right {
  color: #fff;
}

nav.navbar.navbar-inverse.megamenu ul.dropdown-menu.megamenu-content .content ul.menu-col li a, nav.navbar.navbar-inverse ul.nav > li > a {
  color: #eee;
}

nav.navbar.navbar-inverse ul.nav > li.dropdown > a {
  background-color: #222;
}

nav.navbar.navbar-inverse li.dropdown ul.dropdown-menu > li > a {
  color: #999;
}

nav.navbar.navbar-inverse ul.nav .dropdown-menu h1, nav.navbar.navbar-inverse ul.nav .dropdown-menu h2, nav.navbar.navbar-inverse ul.nav .dropdown-menu h3, nav.navbar.navbar-inverse ul.nav .dropdown-menu h4, nav.navbar.navbar-inverse ul.nav .dropdown-menu h5, nav.navbar.navbar-inverse ul.nav .dropdown-menu h6 {
  color: #fff;
}

nav.navbar.navbar-inverse .form-control {
  background-color: #333;
  border-color: #303030;
  color: #fff;
}

nav.navbar.navbar-inverse .attr-nav > ul > li > a {
  color: #eee;
}

nav.navbar.navbar-inverse .attr-nav > ul > li.dropdown ul.dropdown-menu {
  background-color: #222;
  border-left: solid 1px #303030;
  border-bottom: solid 1px #303030;
  border-right: solid 1px #303030;
}

nav.navbar.navbar-inverse ul.cart-list > li {
  border-bottom: solid 1px #303030;
  color: #eee;
}

nav.navbar.navbar-inverse ul.cart-list > li img {
  border: solid 1px #303030;
}

nav.navbar.navbar-inverse ul.cart-list > li.total {
  background-color: #333;
}

nav.navbar.navbar-inverse .share ul > li > a {
  background-color: #555;
}

nav.navbar.navbar-inverse .dropdown-tabs .tab-menu {
  border-right: solid 1px #303030;
}

nav.navbar.navbar-inverse .dropdown-tabs .tab-menu > ul > li > a {
  border-bottom: solid 1px #303030;
}

nav.navbar.navbar-inverse .dropdown-tabs .tab-content {
  border-left: solid 1px #303030;
}

nav.navbar.navbar-inverse .dropdown-tabs .tab-menu > ul > li > a:hover, nav.navbar.navbar-inverse .dropdown-tabs .tab-menu > ul > li > a:focus, nav.navbar.navbar-inverse .dropdown-tabs .tab-menu > ul > li.active > a {
  background-color: #333 !important;
}

nav.navbar-inverse.navbar-full ul.nav > li > a {
  border: none;
}

nav.navbar-inverse.navbar-full .navbar-collapse .wrap-full-menu {
  background-color: #222;
}

nav.navbar-inverse.navbar-full .navbar-toggle {
  background-color: #222 !important;
  color: #6f6f6f;
}

nav.navbar.bootsnav ul.nav li.active > a {
  color: #d33b33;
}

nav.navbar.bootsnav ul.nav li.active > a:hover {
  color: #d33b33;
}

nav.navbar.bootsnav ul.nav li > a:hover {
  color: #d33b33;
}

nav.navbar.bootsnav ul.nav li.megamenu-fw > a:hover {
  color: #d33b33;
}

.arrow::before {
  font-family: 'FontAwesome';
  content: "\f0d7";
  margin-left: 5px;
  margin-top: 2px;
  border: none;
  display: inline-block;
  vertical-align: inherit;
  position: absolute;
  right: 10px;
  top: 28px;
}

nav.navbar.bootsnav ul.navbar-nav li.dropdown ul.dropdown-menu li a {
  display: block;
}

nav.navbar.bootsnav li.dropdown ul.dropdown-menu {
  border: solid 1px #e0e0e0;
  left: auto;
}

.cart-list h6 a {
  font-size: 16px;
  font-weight: 700;
}

.cart-list h6 a:hover {
  color: #d33b33;
}

ul.cart-list p .price {
  font-weight: normal;
}

.col-menu .title {
  font-size: 20px;
  font-weight: 700;
  text-transform: uppercase;
}

.hvr-hover {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: none;
  position: relative;
  background: #d33b33;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  border-radius: 0;
}

.hvr-hover::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #010101;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.hvr-hover:hover::after {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  color: #ffffff;
}

ul.cart-list > li.total > .btn:hover {
  color: #ffffff;
}

.cart-box {
  margin-top: 40px;
  background: #ffffff;
}

.main-header.fixed-menu {
  position: fixed;
  visibility: visible;
  left: 0px;
  top: 0px;
  width: 100%;
  padding: 0px;
  background: #ffffff;
  z-index: 999;
  transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  opacity: 1;
  -ms-animation-name: fadeInDown;
  -moz-animation-name: fadeInDown;
  -op-animation-name: fadeInDown;
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -ms-animation-duration: 500ms;
  -moz-animation-duration: 500ms;
  -op-animation-duration: 500ms;
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
  -ms-animation-timing-function: linear;
  -moz-animation-timing-function: linear;
  -op-animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -ms-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  -op-animation-iteration-count: 1;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  box-shadow: 0 0 8px 0 rgba(0,0,0,.12);
  border-radius: 0;
}

.top-search .input-group-addon {
  line-height: 40px;
}

.top-search input.form-control {
  color: #ffffff;
}

.cover-slides {
  height: 100vh;
}

.slides-navigation a {
  background: #d33b33;
  position: absolute;
  height: 70px;
  width: 70px;
  top: 50%;
  font-size: 20px;
  display: block;
  color: #fff;
  line-height: 90px;
  text-align: center;
  transition: all .3s ease-in-out;
}

.slides-navigation a i {
  font-size: 40px;
}

.slides-navigation a:hover {
  background: #010101;
}

.cover-slides .container {
  height: 100%;
  position: relative;
  z-index: 2;
}

.cover-slides .container > .row {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
}

.overlay-background {
  background: #333;
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  opacity: 0.5;
}

.cover-slides h1 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 64px;
  color: #fff;
}

.cover-slides p {
  font-size: 18px;
  color: #fff;
  padding-bottom: 30px;
}

.slides-pagination a {
  border: 2px solid #ffffff;
}

.slides-pagination a.current {
  background: #d33b33;
  border: 2px solid #d33b33;
}

.cover-slides p a {
  font-size: 24px;
  color: #ffffff;
  border: none;
  text-transform: uppercase;
  padding: 10px 20px;
}

.categories-shop {
  padding: 70px 0px;
}

.shop-cat-box {
  margin-bottom: 30px;
  position: relative;
  padding: 3px;
  overflow: hidden;
  border: 1px solid #010101;
  -webkit-transition: background 0.4s 0.5s;
  transition: background 0.4s 0.5s;
}

.shop-cat-box img {
  margin: -10px 0 0 -10px;
  max-width: none;
  width: calc(100% + 10px);
  opacity: 0.9;
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
  -webkit-transform: translate3d(10px,10px,0);
  transform: translate3d(10px,10px,0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.shop-cat-box:hover img {
  opacity: 0.6;
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}

.shop-cat-box a {
  position: absolute;
  z-index: 2;
  bottom: 0px;
  left: 0px;
  right: 0;
  margin: 0 auto;
  text-align: center;
  border: none;
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  padding: 8px 0px;
}

.title-all {
  margin-bottom: 30px;
}

.title-all h1 {
  font-size: 32px;
  font-weight: 700;
  color: #010101;
}

.title-all p {
  color: #999999;
  font-size: 16px;
}

.products-box {
  padding: 70px 0px;
}

.special-menu {
  margin-bottom: 40px;
}

.filter-button-group {
  display: inline-block;
}

.filter-button-group button {
  background: #d33b33;
  color: #ffffff;
  border: none;
  cursor: pointer;
  padding: 5px 30px;
  font-size: 18px;
}

.filter-button-group button.active {
  background: #010101;
}

.products-single {
  overflow: hidden;
  position: relative;
  margin-bottom: 30px;
}

.products-single .box-img-hover {
  overflow: hidden;
  position: relative;
}

.box-img-hover img {
  margin: 0 auto;
  text-align: center;
  display: block;
}

.type-lb {
  position: absolute;
  top: 0px;
  right: 0px;
  z-index: 8;
}

.type-lb .sale {
  background: red;
  color: #ffffff;
  padding: 2px 10px;
  font-weight: 700;
  text-transform: uppercase;
}

.type-lb .new {
  background: #010101;
  color: #ffffff;
  padding: 2px 10px;
  font-weight: 700;
  text-transform: uppercase;
}

.why-text {
  background: #f5f5f5;
  padding: 15px;
}

.why-text h4 {
  font-size: 16px;
  font-weight: 700;
  padding-bottom: 15px;
}

.why-text h5 {
  font-size: 18px;
  font-family: 'Montserrat', sans-serif;
  padding: 0px;
  font-weight: 600;
}

.mask-icon {
  width: 100%;
  height: 100%;
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
}

.mask-icon ul {
  display: inline-block;
}

.mask-icon ul li {
  background: #d33b33;
}

.mask-icon ul li a {
  color: #ffffff;
  padding: 5px 10px;
  display: block;
}

.mask-icon a.cart {
  background: #d33b33;
  position: absolute;
  bottom: 0;
  right: 0px;
  padding: 10px 20px;
  font-weight: 700;
  color: #ffffff;
}

.mask-icon a.cart:hover {
  background: #010101;
  color: #ffffff;
}

.mask-icon ul li a:hover {
  background: #010101;
  color: #ffffff;
}

.products-single .mask-icon {
  background: rgba(1,1,1, 0.5);
  top: -100%;
  -ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  opacity: 0;
  -webkit-transition: all 0.3s ease-out 0.5s;
  -moz-transition: all 0.3s ease-out 0.5s;
  -o-transition: all 0.3s ease-out 0.5s;
  -ms-transition: all 0.3s ease-out 0.5s;
  transition: all 0.3s ease-out 0.5s;
}

.products-single:hover .mask-icon {
  -ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  opacity: 1;
  top: 0px;
  -webkit-transition-delay: 0s;
  -moz-transition-delay: 0s;
  -o-transition-delay: 0s;
  -ms-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-animation: bounceY 0.9s linear;
  -moz-animation: bounceY 0.9s linear;
  -ms-animation: bounceY 0.9s linear;
  animation: bounceY 0.9s linear;
}

@keyframes bounceY {
  0% {
    transform: translateY(-205px);
  }
  40% {
    transform: translateY(-100px);
  }
  65% {
    transform: translateY(-52px);
  }
  82% {
    transform: translateY(-25px);
  }
  92% {
    transform: translateY(-12px);
  }
  55%, 75%, 87%, 97%, 100% {
    transform: translateY(0px);
  }
}

.latest-blog {
  padding: 70px 0px;
  background: #f5f5f5;
}

.blog-box {
  -webkit-box-shadow: 0px 5px 35px 0px rgba(148, 146, 245, 0.15);
  box-shadow: 0px 5px 35px 0px rgba(148, 146, 245, 0.15);
  background: #ffffff;
  margin-bottom: 30px;
}

.blog-content {
  position: relative;
}

.title-blog {
  padding: 30px 15px 30px 45px;
}

.title-blog h3 {
  font-size: 20px;
  font-weight: 700;
  color: #010101;
}

.title-blog p {
  margin: 0px;
}

.option-blog {
  position: absolute;
  top: 50%;
  left: 0px;
  transform: translate(0%,-50%);
}

.option-blog li a {
  background: #010101;
  display: inline-block;
  font-size: 18px;
  color: #ffffff;
  width: 34px;
  height: 34px;
  text-align: center;
  line-height: 34px;
}

.option-blog li a:hover {
  background: #d33b33;
  color: #ffffff;
}

.tooltip-inner {
  background-color: #d33b33;
}

.tooltip.bs-tooltip-right .arrow:before {
  border-right-color: #d33b33 !important;
  padding-top: 0px !important;
  top: 0px !important;
}

.tooltip.bs-tooltip-left .arrow:before {
  border-right-color: #d33b33 !important;
}

.tooltip.bs-tooltip-bottom .arrow:before {
  border-right-color: #d33b33 !important;
}

.tooltip.bs-tooltip-top .arrow:before {
  border-right-color: #d33b33 !important;
}

.instagram-box {
  padding: 70px 0px;
  background: url(../../assets/img/images/ins-bg.jpg) no-repeat center center;
  background-size: cover;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  position: relative;
}

.instagram-box::before {
  background: rgba(0,0,0,0.9);
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  content: "";
  position: absolute;
  z-index: 0;
}

.main-instagram.owl-carousel .owl-nav button.owl-prev {
  background: #010101;
  position: absolute;
  z-index: 1;
  display: block;
  height: 100%;
  width: 50px;
  line-height: 0px;
  font-size: 24px;
  cursor: pointer;
  color: #ffffff;
  top: 0;
  padding: 0;
  margin-top: 0;
  opacity: 1;
  left: 0px;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.main-instagram.owl-carousel .owl-nav button.owl-next {
  background: #010101;
  position: absolute;
  z-index: 1;
  display: block;
  height: 100%;
  width: 50px;
  line-height: 0px;
  font-size: 24px;
  cursor: pointer;
  color: #ffffff;
  top: 0;
  padding: 0;
  margin-top: 0;
  opacity: 1;
  right: 0px;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.main-instagram.owl-carousel .owl-nav button.owl-next:hover, .main-instagram.owl-carousel .owl-nav button.owl-prev:hover {
  background: #d33b33;
}

.ins-inner-box {
  position: relative;
}

.hov-in {
  opacity: 0;
  background: rgba(211,59,51, 0.5);
  bottom: -100%;
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.3s ease-out 0.5s;
  -moz-transition: all 0.3s ease-out 0.5s;
  -o-transition: all 0.3s ease-out 0.5s;
  -ms-transition: all 0.3s ease-out 0.5s;
  transition: all 0.3s ease-out 0.5s;
  text-align: center;
  display: table;
}

.hov-in a {
  display: table-cell;
  vertical-align: middle;
  height: 100%;
}

.hov-in i {
  color: #010101;
  font-size: 48px;
  position: relative;
  z-index: 2;
}

.hov-in a i:hover {
  color: #ffffff;
}

.ins-inner-box:hover .hov-in {
  bottom: 0;
  opacity: 1;
}

.footer-main {
  padding: 70px 0px;
  background: #202020;
}

.footer-widget h4 {
  color: #ffffff;
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 20px;
  position: relative;
  font-weight: 700;
}

.footer-widget h4::before {
  border-bottom: 3px solid #d33b33;
  content: "";
  height: 3px;
  width: 100%;
  position: absolute;
  bottom: 3px;
  left: 0px;
}

.footer-widget p {
  color: #cccccc;
  font-weight: 400;
  font-size: 14px;
  padding-bottom: 20px;
}

.footer-widget ul {
  display: inline-block;
}

.footer-widget ul li {
  float: left;
  margin-right: 5px;
}

.footer-widget ul li a {
  color: #ffffff;
  display: inline-block;
  width: 36px;
  height: 36px;
  border: 2px solid #ffffff;
  text-align: center;
  line-height: 32px;
}

.footer-widget ul li a:hover {
  color: #d33b33;
  border-color: #d33b33;
}

.footer-link h4 {
  color: #ffffff;
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 20px;
  position: relative;
  font-weight: 700;
}

.footer-link h4::before {
  border-bottom: 3px solid #d33b33;
  content: "";
  height: 3px;
  width: 100%;
  position: absolute;
  bottom: 3px;
  left: 0px;
}

.footer-link ul li {
  margin-right: 5px;
}

.footer-link ul li a {
  color: #ffffff;
  text-align: left;
  display: block;
  line-height: 32px;
  position: relative;
  padding-left: 15px;
  transition: all .3s ease-in-out;
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
}

.footer-link ul li a::before {
  font-family: FontAwesome;
  content: "\f105";
  position: absolute;
  left: 5px;
  line-height: 30px;
  font-size: 16px;
  transition: all .3s ease-in-out;
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
}

.footer-link ul li a:hover::before {
  left: 5px;
}

.footer-link ul li a:hover {
  color: #d33b33;
  border-color: #d33b33;
  padding-left: 20px;
}

.footer-link-contact h4 {
  color: #ffffff;
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 20px;
  position: relative;
  font-weight: 700;
}

.footer-link-contact h4::before {
  border-bottom: 3px solid #d33b33;
  content: "";
  height: 3px;
  width: 100%;
  position: absolute;
  bottom: 3px;
  left: 0px;
}

.footer-link-contact ul li {
  margin-bottom: 12px;
}

.footer-link-contact ul li i {
  position: absolute;
  left: 0;
  top: 5px;
  padding-right: 6px;
}

.footer-link-contact ul li p {
  padding-left: 25px;
  color: #cccccc;
  position: relative;
  font-size: 16px;
  font-weight: 300;
  padding-right: 16px;
  line-height: 24px;
}

.footer-link-contact ul li p a {
  color: #cccccc;
}

.footer-link-contact ul li p a:hover {
  color: #d33b33;
}

.footer-copyright {
  background: #2c2c2c;
  padding: 20px 0px;
  position: relative;
}

.footer-copyright p {
  text-align: center;
  color: #ffffff;
  font-size: 16px;
}

.footer-copyright p a {
  color: #ffffff;
}

.footer-copyright p a:hover {
  color: #d33b33;
}

.all-title-box {
  background: url("../../assets/img/images/all-bg-title.jpg") no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  text-align: center;
  background-attachment: fixed;
  padding: 70px 0px;
  position: relative;
}

.all-title-box::before {
  background: rgba(0,0,0,0.6);
  content: "";
  position: absolute;
  z-index: 0;
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
}

.all-title-box h2 {
  font-size: 28px;
  font-weight: 700;
  color: #ffffff;
  padding-bottom: 30px;
}

.all-title-box .breadcrumb {
  background: #d33b33;
  margin: 0px;
  display: inline-block;
  border-radius: 0px;
}

.all-title-box .breadcrumb li {
  display: inline-block;
  color: #010101;
  font-size: 16px;
}

.all-title-box .breadcrumb li a {
  color: #ffffff;
  font-size: 16px;
}

.all-title-box .breadcrumb-item + .breadcrumb-item::before {
  color: #010101;
}

.about-box-main {
  padding: 70px 0px;
}

.noo-sh-title {
  font-size: 28px;
  text-transform: uppercase;
  font-style: italic;
  font-weight: 700;
}

.about-box-main p {
  padding-bottom: 20px;
}

.service-block-inner {
  padding: 15px 20px;
  position: relative;
  margin-bottom: 30px;
}

.service-block-inner::before {
  content: "";
  width: 5px;
  height: 100%;
  border-radius: 0px;
  background: #010101;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.5s ease 0s;
}

.service-block-inner::after {
  content: "";
  width: 5px;
  height: 0;
  border-radius: 0px;
  background: #d33b33;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.5s ease 0s;
}

.service-block-inner h3 {
  font-size: 24px;
  text-transform: uppercase;
  font-weight: 600;
}

.service-block-inner p {
  margin: 0px;
  font-size: 16px;
  font-weight: 300;
  padding-bottom: 0px;
}

.service-block-inner:hover::after {
  height: 100%;
}

.our-team {
  box-shadow: 0 0 0 rgba(0, 0, 0, 0.3);
  overflow: hidden;
  position: relative;
  transition: all 0.3s ease 0s;
}

.our-team:hover {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

.our-team img {
  width: 100%;
  height: auto;
  transition: all 0.3s ease-in-out 0s;
}

.our-team:hover img {
  opacity: 0.5;
}

.our-team .team-content {
  color: #000;
  opacity: 0;
  position: absolute;
  bottom: 30px;
  left: 40px;
  transform: translate(-10px, 0px);
  transition: all 0.3s ease 0s;
}

.our-team:hover .team-content {
  opacity: 1;
  transform: translate(20px, 0px);
  transition-delay: 0.2s;
}

.our-team .title {
  display: block;
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 7px 0;
}

.our-team .post {
  display: block;
  font-size: 15px;
}

.our-team .social {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 35px;
  text-align: center;
  opacity: 0;
  position: absolute;
  bottom: 35px;
  transition: all 0.3s ease 0s;
}

.our-team:hover .social {
  opacity: 1;
}

.our-team .social li {
  display: block;
}

.our-team .social li a {
  display: inline-block;
  width: 35px;
  height: 35px;
  line-height: 35px;
  background: #010101;
  font-size: 17px;
  color: #fff;
  opacity: 0.9;
  position: relative;
  transform: translate(-35px, 35px);
  transition: all 0.3s ease-in-out 0s;
}

.our-team .social li a:hover {
  width: 40px;
  background: #d33b33;
  transition-delay: 0s;
}

.our-team .icon {
  width: 35px;
  height: 35px;
  line-height: 35px;
  background: #d33b33;
  text-align: center;
  color: #fff;
  position: absolute;
  bottom: 0;
}

.team-description {
  padding: 20px 0px;
}

.team-description p {
  font-size: 14px;
  margin: 0px;
}

.hover-team:hover .team-content {
  opacity: 1;
  transform: translate(20px, 0px);
  transition-delay: 0.2s;
}

.hover-team:hover .social {
  opacity: 1;
}

.hover-team:hover .social li:nth-child(1) a {
  transition-delay: 0.3s;
}

.hover-team:hover .social li:nth-child(2) a {
  transition-delay: 0.2s;
}

.hover-team:hover .social li:nth-child(3) a {
  transition-delay: 0.1s;
}

.hover-team:hover .social li:nth-child(4) a {
  transition-delay: 0.0s;
}

.hover-team:hover .social li a {
  transform: translate(0, 0);
}

.hover-team:hover img {
  opacity: 0.5;
}

.hover-team .team-content .title {
  border-bottom: 2px solid #d33b33;
}

.shop-box-inner {
  padding: 70px 0px;
}

.search-product {
  position: relative;
}

.search-product input[type="text"] {
  background: #f6f6f6;
  border: 0;
  box-shadow: none;
  border-radius: 0;
  color: #000;
  height: 50px;
  font-weight: 300;
  font-size: 16px;
  margin-bottom: 15px;
  padding: 0 20px;
  -webkit-transition: all .5s ease;
  -moz-transition: all .5s ease;
  transition: all .5s ease;
  width: 100%;
  outline: 0;
}

.search-product .form-control::-moz-placeholder {
  color: #000000;
  opacity: 1;
}

.search-product button {
  background: #010101;
  color: #ffffff;
  font-size: 18px;
  position: absolute;
  right: 0px;
  padding: 12px 15px;
  top: 0;
  line-height: 27px;
  border: none;
  cursor: pointer;
  height: 100%;
}

.search-product button:hover {
  background: #d33b33;
}

.filter-sidebar-left {
  margin-bottom: 20px;
}

.title-left {
  font-size: 16px;
  border-bottom: 3px solid #010101;
  margin-bottom: 20px;
}

.title-left h3 {
  font-weight: 700;
}

.list-group-item {
  border: none;
  padding: 5px 20px;
  font-size: 14px;
}

.text-muted {
  padding: 10px 0px;
}

.list-group-item[data-toggle="collapse"]::after {
  width: 0;
  height: 0;
  position: absolute;
  top: calc(50% - 12px);
  right: 10px;
  content: "\f105";
  -webkit-transition: top .2s,-webkit-transform .2s;
  transition: transform .2s,top .2s,-webkit-transform .2s;
  font-family: FontAwesome;
}

.list-group-tree .list-group-collapse .list-group {
  margin-left: 25px;
  border-left: 1px solid #ced4da;
}

.list-group-tree .list-group-item.active {
  color: #d33b33;
  background-color: #fff;
  font-weight: 700;
}

.list-group-tree .list-group-collapse .list-group > .list-group-item::before {
  position: absolute;
  top: 14px;
  left: 0;
  content: '';
  width: 8px;
  height: 1px;
  background-color: #ced4da;
}

.list-group-tree .list-group-item:hover {
  color: #d33b33;
  background-color: #fff;
  outline: 0;
  font-weight: 700;
}

.filter-price-left {
  margin-bottom: 20px;
}

#slider-range .ui-slider-handle {
  background-color: #d33b33;
  border: 2px solid #fff;
  border-radius: 50%;
  cursor: pointer;
  height: 21px;
  top: -6px;
  transition: none 0s ease 0s;
  width: 21px;
  box-shadow: 0px 0px 6.65px 0.35px rgba(0,0,0,0.15);
}

#slider-range .ui-slider-range {
  background-color: #d33b33;
  border-radius: 0;
}

#slider-range {
  background: #010101;
  border: medium none;
  border-radius: 50px;
  float: left;
  height: 10px;
  margin-top: 14px;
  width: 100%;
}

.price-box-slider p {
  clear: both;
  margin-top: 20px;
  display: inline-block;
  width: 100%;
}

.price-box-slider p input {
  margin-top: 5px;
}

.price-box-slider p button {
  border: none;
  color: #ffffff;
  float: right;
}

.brand-box {
  display: inline-block;
  width: 100%;
  height: 259px;
  position: relative;
}

.product-item-filter {
  border-bottom: 1px solid #010101;
  border-top: 1px solid #010101;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding: 5px 0;
}

.nice-select.wide {
  width: 75%;
}

.product-item-filter .toolbar-sorter-right span {
  line-height: 42px;
  padding-right: 15px;
  float: left;
}

.product-item-filter .toolbar-sorter-right {
  width: 65%;
}

.toolbar-sorter-right {
  float: left;
}

.toolbar-sorter-right .bootstrap-select.form-control:not([class*="col-"]) {
  width: 77%;
  float: right;
}

.toolbar-sorter-right .bootstrap-select.btn-group > .dropdown-toggle {
  padding: 0px;
  border-radius: 0px;
  border: none;
}

.toolbar-sorter-right .bootstrap-select.btn-group .dropdown-toggle .filter-option {
  padding-left: 15px;
}

.toolbar-sorter-right .btn-light {
  background: #010101;
  color: #ffffff;
}

.toolbar-sorter-right .btn-light:hover {
  background: #d33b33;
  border-radius: 0px;
  border: none;
}

.toolbar-sorter-right .show > .btn-light.dropdown-toggle {
  background-color: #d33b33;
}

.toolbar-sorter-right .bootstrap-select .dropdown-toggle:focus {
  background: #d33b33;
}

.toolbar-sorter-right .dropup .dropdown-toggle::after {
  position: absolute;
  right: 15px;
  top: 18px;
}

.product-item-filter p {
  float: right;
  line-height: 42px;
}

.product-item-filter .nav-tabs {
  border: none;
  float: right;
}

.nav > li {
  position: inherit;
  display: inline-block;
  vertical-align: middle;
}

.product-item-filter li .nav-link {
  border: none;
  border-radius: 0px;
  color: #111111;
  font-size: 18px;
  padding: 4px 12px;
}

.product-item-filter li .nav-link.active {
  background: #d33b33;
  border: none;
  color: #ffffff;
}

.product-item-filter li .nav-link:hover {
  background: #010101;
  border: none;
  color: #ffffff;
}

.product-categori {
  margin-bottom: 30px;
}

.product-categorie-box {
  margin-top: 20px;
}

.tab-content, .tab-pane {
  width: 100%;
}

.why-text.full-width h4 {
  font-size: 24px;
  font-weight: 700;
  padding-bottom: 15px;
}

.why-text.full-width h5 del {
  font-size: 13px;
  color: #666;
}

.why-text.full-width h5 {
  color: #d33b33;
  font-weight: 700;
}

.why-text.full-width p {
  padding-bottom: 20px;
}

.why-text.full-width a {
  padding: 10px 20px;
  font-weight: 700;
  color: #ffffff;
  border: none;
}

.list-view-box {
  margin-bottom: 30px;
}

.list-view-box:hover .mask-icon {
  -ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  opacity: 1;
  top: 0px;
  -webkit-transition-delay: 0s;
  -moz-transition-delay: 0s;
  -o-transition-delay: 0s;
  -ms-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-animation: bounceY 0.9s linear;
  -moz-animation: bounceY 0.9s linear;
  -ms-animation: bounceY 0.9s linear;
  animation: bounceY 0.9s linear;
}

.cart-box-main {
  padding: 70px 0px;
}

.table-main table thead {
  background: #d33b33;
  color: #ffffff;
}

.table-main .table thead th {
  font-size: 18px;
}

.table-main table td.thumbnail-img {
  width: 120px;
}

.table-main table td {
  vertical-align: middle;
  font-size: 16px;
}

.quantity-box input {
  width: 100%;
  border: 2px solid #010101;
  text-align: center;
}

.quantity-box input:focus {
  border-color: #d33b33;
}

.name-pr a {
  font-weight: 700;
  font-size: 18px;
  color: #010101;
}

.remove-pr {
  text-align: center;
}

.coupon-box .input-group .form-control {
  min-height: 50px;
  border-radius: 0px;
  font-weight: 400;
  border: 1px solid #e8e8e8;
  box-shadow: none !important;
}

.coupon-box .input-group .form-control::-moz-placeholder {
  color: #010101;
}

.coupon-box .input-group .input-group-append .btn-theme {
  background: #010101;
  color: #ffffff;
  border: none;
  border-radius: 0px;
  font-size: 16px;
  padding: 0px 20px;
}

.coupon-box .input-group .input-group-append .btn-theme:hover {
  background: #d33b33;
}

.update-box input[type="submit"] {
  background: #010101;
  border: medium none;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: #fff;
  display: inline-block;
  float: right;
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
  height: 50px;
  line-height: 40px;
  margin-right: 15px;
  padding: 0 20px;
  text-shadow: none;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  white-space: nowrap;
  width: inherit;
}

.update-box input[type="submit"]:hover {
  background: #d33b33;
}

.order-box h3 {
  font-size: 16px;
  color: #222222;
  font-weight: 700;
}

.order-box h4 {
  font-size: 16px;
  padding: 0px;
  line-height: 35px !important;
}

.order-box .font-weight-bold {
  font-size: 18px;
}

.gr-total h5 {
  font-weight: 700;
  color: #d33b33;
  font-size: 18px;
  margin: 0px;
  padding: 0px;
  line-height: 35px !important;
}

.gr-total .h5 {
  margin: 0px;
  font-weight: 700;
  line-height: 35px;
}

.my-account-box-main {
  padding: 70px 0px;
}

.shopping-box a {
  font-size: 18px;
  color: #ffffff;
  border: none;
  padding: 10px 20px;
}

.payment-icon {
  display: inline-block;
  padding: 10px 0px;
}

.payment-icon ul li {
  width: 20%;
  float: left;
}

.needs-validation label {
  font-size: 16px;
  margin-bottom: 0px;
  line-height: 24px;
}

.needs-validation .form-control {
  min-height: 40px;
  border-radius: 0px;
  border: 1px solid #e8e8e8;
  box-shadow: none !important;
  font-size: 14px;
}

.needs-validation .form-control:focus {
  border: 1px solid #d33b33 !important;
}

.review-form-box .form-control {
  min-height: 40px;
  border-radius: 0px;
  border: 1px solid #e8e8e8;
  box-shadow: none !important;
  font-size: 14px;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-color: #d33b33;
  box-shadow: none;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  background-color: #d33b33;
  box-shadow: none;
}

.new-account-login h5 {
  font-size: 18px;
  color: #1111111;
  font-weight: 600;
}

.new-account-login h5 a:hover {
  color: #d33b33;
}

.review-form-box button {
  padding: 10px 20px;
  color: #ffffff;
  font-size: 18px;
  border: none;
}

.wide.w-100 {
  min-height: 40px;
  border: 1px solid #e8e8e8;
}

.wide.w-100 option {
  min-height: 40px;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: none;
}

.odr-box a {
  font-size: 18px;
  color: #111111;
  font-weight: 700;
}

.account-box {
  text-align: center;
  background: #ffffff;
  padding: 30px;
  border: 2px solid #010101;
  margin-top: 15px;
}

.bottom-box {
  border-top: 1px solid #eee;
  margin-bottom: 30px;
  margin-top: 30px;
  padding-top: 15px;
}

.bottom-box .account-box {
  min-height: 205px;
}

.my-account-page a {
  color: #010101;
}

.my-account-page a:hover {
  color: #d33b33;
}

.service-icon i {
  font-size: 34px;
}

.service-desc p {
  font-size: 16px;
}

.service-desc h4 {
  text-decoration: underline;
  font-size: 18px;
  font-weight: 700;
}

.service-icon a {
  background: rgba(0, 53, 68, 0.9);
  -webkit-transition: -webkit-transform ease-out 0.1s, background 0.2s;
  -moz-transition: -moz-transform ease-out 0.1s, background 0.2s;
  transition: transform ease-out 0.1s, background 0.2s;
  display: inline-block;
  font-size: 0px;
  cursor: pointer;
  margin: 15px 0px;
  width: 90px;
  height: 90px;
  line-height: 110px;
  border-radius: 50%;
  text-align: center;
  position: relative;
  z-index: 1;
  color: #ffffff;
}

.service-icon a::after {
  pointer-events: none;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  content: "";
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  top: 0;
  left: 0;
  padding: 0;
  z-index: -1;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.1);
  opacity: 0;
  -webkit-transform: scale(0.9);
  -moz-transform: scale(0.9);
  -ms-transform: scale(0.9);
  transform: scale(0.9);
}

.service-icon a:hover::after {
  -webkit-animation: sonarEffect 1.3s ease-out 75ms;
  -moz-animation: sonarEffect 1.3s ease-out 75ms;
  animation: sonarEffect 1.3s ease-out 75ms;
}

.service-icon a:hover {
  background: rgba(251, 183, 20, 1);
  -webkit-transform: scale(0.93);
  -moz-transform: scale(0.93);
  -ms-transform: scale(0.93);
  transform: scale(0.93);
  color: #fff;
}

@keyframes sonarEffect {
  0% {
    opacity: 0.3;
  }
  40% {
    opacity: 0.5;
    box-shadow: 0 0 0 2px rgba(0, 53, 68, 0.1), 0 0 10px 10px #d33b33, 0 0 0 10px rgba(0, 53, 68, 0.5);
  }
  100% {
    box-shadow: 0 0 0 2px rgba(0, 53, 68, 0.1), 0 0 10px 10px #3851bc, 0 0 0 10px rgba(0, 53, 68, 0.5);
    transform: scale(1.5);
    opacity: 0;
  }
}

.add-pr a {
  padding: 10px 20px;
  font-weight: 700;
  color: #ffffff;
  border: none;
}

.wishlist-box-main {
  padding: 70px 0px;
}

.services-box-main {
  padding: 70px 0px;
}

.contact-box-main {
  padding: 70px 0px;
}

.contact-info-left {
  padding: 20px;
  background: rgba(0, 53, 68, 0.1);
}

.contact-info-left h2 {
  font-size: 22px;
  font-weight: 700;
}

.contact-info-left p {
  margin-bottom: 15px;
}

.contact-info-left ul li {
  margin-bottom: 12px;
}

.contact-info-left ul li p {
  font-size: 16px;
  color: #222222;
  font-weight: 300;
  padding-right: 16px;
  padding-left: 25px;
  line-height: 24px;
  position: relative;
}

.contact-info-left ul li p i {
  position: absolute;
  left: 0;
  top: 5px;
  padding-right: 6px;
  color: #d33b33;
}

.contact-info-left ul li p a:hover {
  color: #d33b33;
}

.contact-form-right {
  padding: 20px;
}

.contact-form-right h2 {
  font-size: 24px;
  font-weight: 700;
}

.contact-form-right p {
  margin-bottom: 15px;
}

.contact-form-right .form-group .form-control::-moz-placeholder {
  color: #999999;
}

.contact-form-right .form-group .form-control {
  border-radius: 0px;
  min-height: 40px;
}

.contact-form-right .form-group {
  margin-bottom: 30px;
  position: relative;
}

.contact-form-right .form-group .form-control:focus {
  border: 1px solid #d33b33;
  box-shadow: none;
}

.submit-button button {
  padding: 10px 20px;
  font-weight: 700;
  color: #ffffff;
  border: none;
}

.help-block.with-errors {
  position: absolute;
  right: 0;
  background: red;
  color: #fff;
  padding: 0px 15px;
}

.help-block ul li {
  color: #fff;
}

.shop-detail-box-main {
  padding: 70px 0px;
}

.single-product-slider .carousel-control-prev {
  bottom: auto;
  background: #111111;
  width: 6%;
  padding: 10px 0;
  background-image: none;
  top: 40%;
}

.single-product-slider .carousel-control-next {
  bottom: auto;
  background: #111111;
  width: 6%;
  padding: 10px 0;
  background-image: none;
  top: 40%;
}

.single-product-slider .carousel-indicators li img {
  opacity: 0.5;
}

.single-product-slider .carousel-indicators li.active img {
  opacity: 1;
}

.carousel-indicators {
  position: relative;
  bottom: 0;
  background: #010101;
}

.carousel-indicators li {
  width: 30%;
  height: 100%;
  cursor: pointer;
}

.single-product-details h2 {
  color: #010101;
  font-weight: 700;
  font-size: 24px;
}

.single-product-details h5 {
  color: #d33b33;
  font-weight: 700;
  font-size: 18px;
}

.single-product-details h5 del {
  font-size: 13px;
  color: #666;
}

.available-stock span {
  font-size: 15px;
}

.available-stock span a {
  color: #d33b33;
}

.single-product-details h4 {
  font-size: 18px;
  font-weight: 700;
  margin-top: 20px;
}

.single-product-details p {
  font-size: 16px;
  margin-bottom: 20px;
}

.single-product-details ul {
  display: inline-block;
  width: 100%;
  border: 1px #010101 dashed;
  margin-bottom: 30px;
}

.single-product-details ul li {
  width: 50%;
  float: left;
  padding: 0px 15px;
}

.size-st .bootstrap-select > .dropdown-toggle.btn-light {
  background: #010101;
  border: none;
  border-radius: 0px;
  color: #ffffff;
}

.price-box-bar {
  margin-bottom: 30px;
}

.price-box-bar a {
  padding: 10px 20px;
  font-weight: 700;
  color: #ffffff;
  border: none;
}

.add-to-btn .add-comp {
  float: left;
}

.add-to-btn .share-bar {
  float: right;
}

.add-comp a {
  padding: 10px 20px;
  font-weight: 700;
  color: #ffffff;
  border: none;
}

.share-bar a {
  background: #d33b33;
  color: #ffffff;
  padding: 5px 10px;
  display: inline-block;
  width: 34px;
  text-align: center;
}

.featured-products-box .owl-nav {
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: -20px;
  text-align: center;
}

.featured-products-box .owl-nav button.owl-prev {
  background: #010101;
  color: #ffffff;
  width: 38px;
  height: 38px;
  text-align: center;
}

.featured-products-box .owl-nav button.owl-next {
  background: #010101;
  color: #ffffff;
  width: 38px;
  height: 38px;
  text-align: center;
}

.featured-products-box .owl-nav button.owl-prev:hover, .featured-products-box .owl-nav button.owl-next:hover {
  background: #d33b33;
}

.table-responsive .table td, .table-responsive .table th {
  vertical-align: middle;
  white-space: nowrap;
}

.fade-in-section.visible {
  opacity: 1;
  transform: translateY(0);
}

.user-avatar-nav:hover {
  transform: scale(1.1);
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

#productCategory {
  color: #808080;
}

.sidebar .collapse {
  display: none;
}

.sidebar .collapse.show {
  display: block !important;
}

.sidebar .nav-item .collapse .collapse-inner {
  margin: 0 1rem;
  font-size: 0.85rem;
}

.collapse-item:hover {
  background-color: #eaecf4;
  font-weight: bold;
}

.rotate-n-15 {
  transform: rotate(-15deg);
}

#uploadedImages {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  background: #f8f9fc;
  padding: 15px;
  border-radius: 10px;
}

th, td {
  padding: 12px;
  border-bottom: 1px solid #ddd;
}

.actions button {
  margin-right: 6px;
}

.btn-icon.delete {
  color: #dc3545;
}

.btn-icon.edit {
  color: #0d6efd;
}

.stock-badge {
  padding: 4px 8px;
  border-radius: 6px;
  font-size: 12px;
}

.in-stock {
  background: #d1e7dd;
  color: #0f5132;
}

.low-stock {
  background: #fff3cd;
  color: #664d03;
}

.out-of-stock {
  background: #f8d7da;
  color: #842029;
}

.set-primary {
  position: absolute;
  bottom: 4px;
  left: 4px;
  background: rgba(255,255,255,0.8);
  border: none;
  padding: 2px 6px;
  font-size: 12px;
  border-radius: 4px;
  cursor: pointer;
}

@media (max-width: 968px) {
  .sidebar {
    width: 100%;
    height: auto;
    position: relative;
  }
}

@media (max-width: 968px) {
  .main-content {
    margin-left: 0;
  }
}

@media (max-width: 968px) {
  .form-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 968px) {
  .sidebar {
    width: 100%;
    height: auto;
    position: relative;
  }
}

@media (max-width: 968px) {
  .main-content {
    margin-left: 0;
  }
}

@media (max-width: 968px) {
  .form-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 968px) {
  .header {
    flex-direction: column;
    gap: 1rem;
  }
}

@media (max-width: 968px) {
  .sidebar {
    width: 100%;
    height: auto;
    position: relative;
  }
}

@media (max-width: 968px) {
  .main-content {
    margin-left: 0;
  }
}

@media (min-width: 768px) {
  .logo-sm {
    display: none;
  }
}

@media (max-width: 767px) {
  .logo-sm {
    display: block;
    max-width: 100px;
  }
}

@media (min-width: 768px) {
  .logo-lg {
    display: block;
  }
}

@media (max-width: 767px) {
  .logo-lg {
    display: none;
  }
}

@media (max-width: 968px) {
  .nav-links {
    display: none;
  }
}

@media (max-width: 968px) {
  .nav-actions {
    flex-wrap: wrap;
  }
}

@media (max-width: 968px) {
  .nav-actions a {
    font-size: 0.85rem;
    padding: 0.6rem 1.5rem;
  }
}

@media (max-width: 968px) {
  .hero-content {
    grid-template-columns: 1fr;
    text-align: center;
  }
}

@media (max-width: 968px) {
  .hero-text p {
    margin: 0 auto 2.5rem;
  }
}

@media (max-width: 968px) {
  .hero-cta {
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
}

@media (max-width: 968px) {
  .footer-content {
    grid-template-columns: 1fr;
    text-align: center;
  }
}

@media (max-width: 968px) {
  .dropdown-menu {
    right: -50px;
  }
}

@media (max-width: 600px) {
  .login-container {
    padding: 1.5rem;
  }
}

@media (max-width: 600px) {
  .login-card {
    padding: 2.5rem 2rem;
  }
}

@media (max-width: 600px) {
  .logo h1 {
    font-size: 2rem;
  }
}

@media (max-width: 968px) {
  .product-detail {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }
}

@media (max-width: 968px) {
  .product-name {
    font-size: 2.5rem;
  }
}

@media (max-width: 968px) {
  .product-price {
    font-size: 2rem;
  }
}

@media (max-width: 968px) {
  .product-actions {
    flex-direction: column;
  }
}

@media (max-width: 968px) {
  .btn-add-cart, .btn-wishlist {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .nav-container {
    padding: 0 var(--spacing-md);
  }
}

@media (max-width: 640px) {
  .logo {
    font-size: 1.5rem;
  }
}

@media (max-width: 640px) {
  .container {
    padding: 0 var(--spacing-md);
  }
}

@media (max-width: 640px) {
  .product-detail {
    padding: var(--spacing-lg);
  }
}

@media (max-width: 640px) {
  .product-name {
    font-size: 2rem;
  }
}

@media (max-width: 640px) {
  .product-price {
    font-size: 1.75rem;
  }
}

@media (max-width: 640px) {
  .thumbnails {
    gap: var(--spacing-xs);
  }
}

@media (max-width: 640px) {
  .thumbnail {
    width: 60px;
    height: 60px;
  }
}

@media (max-width: 640px) {
  .footer-content {
    flex-direction: column;
    text-align: center;
  }
}

@media (max-width: 968px) {
  .nav-links {
    display: none;
  }
}

@media (max-width: 968px) {
  .products-grid {
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 1.5rem;
  }
}

@media (max-width: 968px) {
  .hero {
    padding: 6rem 5% 3rem;
  }
}

@media (max-width: 968px) {
  .cart-notification {
    right: 1rem;
    left: 1rem;
  }
}

@media (max-width: 600px) {
  .signup-container {
    padding: 1.5rem;
  }
}

@media (max-width: 600px) {
  .signup-card {
    padding: 2.5rem 2rem;
  }
}

@media (max-width: 600px) {
  .logo h1 {
    font-size: 2rem;
  }
}

@media (min-width: 1024px) {
  nav.navbar ul.nav > li > a {
    padding: 30px 15px;
    font-weight: 600;
  }
}

@media (min-width: 1024px) {
  nav.navbar .navbar-brand {
    margin-top: 0;
  }
}

@media (min-width: 1024px) {
  nav.navbar .navbar-brand {
    margin-top: 0;
  }
}

@media (min-width: 1024px) {
  nav.navbar li.dropdown ul.dropdown-menu {
    border-top: solid 5px;
  }
}

@media (min-width: 1024px) {
  nav.navbar-center .navbar-brand {
    margin: 0 !important;
  }
}

@media (min-width: 1024px) {
  nav.navbar-brand-top .navbar-brand {
    margin: 10px !important;
  }
}

@media (min-width: 1024px) {
  nav.navbar-full .navbar-brand {
    position: relative;
    top: -15px;
  }
}

@media (min-width: 1024px) {
  nav.navbar-sidebar ul.nav, nav.navbar-sidebar .navbar-brand {
    margin-bottom: 50px;
  }
}

@media (min-width: 1024px) {
  nav.navbar-sidebar ul.nav > li > a {
    padding: 10px 15px;
    font-weight: bold;
  }
}

@media (min-width: 1024px) {
  nav.navbar.bootsnav.navbar-transparent.white {
    background-color: rgba(255,255,255,0.3);
    border-bottom: solid 1px #bbb;
  }
}

@media (min-width: 1024px) {
  nav.navbar.navbar-inverse.bootsnav.navbar-transparent.dark, nav.navbar.bootsnav.navbar-transparent.dark {
    background-color: rgba(0,0,0,0.3);
    border-bottom: solid 1px #555;
  }
}

@media (min-width: 1024px) {
  nav.navbar.bootsnav.navbar-transparent.white .attr-nav {
    border-left: solid 1px #bbb;
  }
}

@media (min-width: 1024px) {
  nav.navbar.navbar-inverse.bootsnav.navbar-transparent.dark .attr-nav, nav.navbar.bootsnav.navbar-transparent.dark .attr-nav {
    border-left: solid 1px #555;
  }
}

@media (min-width: 1024px) {
  nav.navbar.bootsnav.no-background.white .attr-nav > ul > li > a, nav.navbar.bootsnav.navbar-transparent.white .attr-nav > ul > li > a, nav.navbar.bootsnav.navbar-transparent.white ul.nav > li > a, nav.navbar.bootsnav.no-background.white ul.nav > li > a {
    color: #fff;
  }
}

@media (min-width: 1024px) {
  nav.navbar.bootsnav.navbar-transparent.dark .attr-nav > ul > li > a, nav.navbar.bootsnav.navbar-transparent.dark ul.nav > li > a {
    color: #eee;
  }
}

@media (max-width: 992px) {
  nav.navbar .navbar-brand {
    margin-top: 0;
    position: relative;
    top: -2px;
  }
}

@media (max-width: 992px) {
  nav.navbar .navbar-brand img.logo {
    width: 160px;
  }
}

@media (max-width: 992px) {
  .attr-nav > ul > li > a {
    padding: 16px 15px 15px;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-mobile ul.nav > li > a {
    padding: 15px 15px;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-mobile ul.nav ul.dropdown-menu > li > a {
    padding-right: 15px !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-mobile ul.nav ul.dropdown-menu .col-menu .title {
    padding-right: 30px !important;
    padding-top: 13px !important;
    padding-bottom: 13px !important;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-mobile ul.nav ul.dropdown-menu .col-menu ul.menu-col li a {
    padding-top: 13px !important;
    padding-bottom: 13px !important;
  }
}

@media (max-width: 992px) {
  nav.navbar-full .navbar-brand {
    top: 0;
    padding-top: 10px;
  }
}

@media (min-width: 1024px) {
  nav.navbar.navbar-inverse ul.nav .dropdown-menu {
    background-color: #222 !important;
    border-left: solid 1px #303030 !important;
    border-bottom: solid 1px #303030 !important;
    border-right: solid 1px #303030 !important;
  }
}

@media (min-width: 1024px) {
  nav.navbar.navbar-inverse li.dropdown ul.dropdown-menu > li > a {
    border-bottom: solid 1px #303030;
  }
}

@media (min-width: 1024px) {
  nav.navbar.navbar-inverse ul.dropdown-menu.megamenu-content .col-menu {
    border-left: solid 1px #303030;
    border-right: solid 1px #303030;
  }
}

@media (min-width: 1024px) {
  nav.navbar.navbar-inverse.navbar-transparent.dark {
    background-color: rgba(0,0,0,0.3);
    border-bottom: solid 1px #999;
  }
}

@media (min-width: 1024px) {
  nav.navbar.navbar-inverse.navbar-transparent.dark .attr-nav {
    border-left: solid 1px #999;
  }
}

@media (min-width: 1024px) {
  nav.navbar.navbar-inverse.no-background.white .attr-nav > ul > li > a, nav.navbar.navbar-inverse.navbar-transparent.dark .attr-nav > ul > li > a, nav.navbar.navbar-inverse.navbar-transparent.dark ul.nav > li > a, nav.navbar.navbar-inverse.no-background.white ul.nav > li > a {
    color: #fff;
  }
}

@media (min-width: 1024px) {
  nav.navbar.navbar-inverse.no-background.dark .attr-nav > ul > li > a, nav.navbar.navbar-inverse.no-background.dark .attr-nav > ul > li > a, nav.navbar.navbar-inverse.no-background.dark ul.nav > li > a, nav.navbar.navbar-inverse.no-background.dark ul.nav > li > a {
    color: #3f3f3f;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-inverse .navbar-toggle {
    color: #eee;
    background-color: #222 !important;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-inverse .navbar-nav > li > a {
    border-top: solid 1px #303030;
    border-bottom: solid 1px #303030;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-inverse ul.nav li.dropdown ul.dropdown-menu > li > a {
    color: #999;
    border-bottom: solid 1px #303030;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-inverse .dropdown .megamenu-content .col-menu .title {
    border-bottom: solid 1px #303030;
    color: #eee;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-inverse .dropdown .megamenu-content .col-menu ul > li > a {
    border-bottom: solid 1px #303030;
    color: #999 !important;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-inverse .dropdown .megamenu-content .col-menu.on:last-child .title {
    border-bottom: solid 1px #303030;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-inverse .dropdown-tabs .tab-menu > ul {
    border-top: solid 1px #303030;
  }
}

@media (max-width: 992px) {
  nav.navbar.navbar-inverse.navbar-mobile .navbar-collapse {
    background-color: #222;
  }
}

@media (max-width: 767px) {
  nav.navbar.navbar-inverse.navbar-mobile ul.nav {
    border-top: solid 1px #222;
  }
}

@media (max-width: 600px) {
  .social-login {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .social-login {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 968px) {
  .logout-btn {
    position: relative;
    margin-top: 2rem;
  }
}

@media (max-width: 968px) {
  .products-table {
    overflow-x: scroll;
  }
}

@media (max-width: 968px) {
  .header {
    flex-direction: column;
    gap: 1rem;
  }
}

@media (max-width: 968px) {
  .products-table {
    overflow-x: scroll;
  }
}

