/* Custom CSS for finer control and animations */
body {
  margin: auto;
  font-family: "EuclidCircularA", "Inter", sans-serif; /* Prioriza EuclidCircularA */
  background-color: #000000; /* Light gray background, similar to Kabum
  color: #1a202c; /* Dark text */
}
.btn-primary {
  background-color: var(--color-enterprise-blue1); /* Dark Black from Veed.io */
  color: white;
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 600;
  transition: background-color 0.3s ease;
}
.btn-primary:hover {
  background-color: var(
    --color-enterprise-blue2
  ); /* Slightly darker black on hover */
}
.pmred1 {
  color: var(--color-enterprise-red1);
}
.pmred2 {
  color: var(--color-enterprise-red2);
}
.pmblue1 {
  color: var(--color-enterprise-red1);
}
.pmblue2 {
  color: var(--color-enterprise-red2);
}

.btn-secondary {
  background-color: var(
    --color-enterprise-light-gray
  ); /* Light Gray from Veed.io */
  color: var(--color-enterprise-black); /* Dark text for contrast */
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 600;
  transition: background-color 0.3s ease;
}
.btn-secondary:hover {
  background-color: #dcdcdc; /* Slightly darker light gray on hover */
}
.card {
  /*background-color: white; /* White background for cards */
  border-radius: 0.5rem;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.card:hover {
  transform: translateY(-3px);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.modal {
  background-color: rgba(0, 0, 0, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.modal.show {
  opacity: 1;
  visibility: visible;
}
.modal-content {
  background-color: #80808080;
  padding: 2rem;
  border-radius: 1rem;
  width: 90%;
  max-width: 600px;
  position: relative;
  transform: translateY(20px);
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.modal.show .modal-content {
  transform: translateY(0);
  opacity: 1;
}
.close-button {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: none;
  border: none;
  color: #1a202c;
  font-size: 1.5rem;
  cursor: pointer;
}
/* Custom checkbox styling */
input[type="checkbox"],
input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 1.25rem;
  height: 1.25rem;
  border: 2px solid var(--color-enterprise-black); /* Dark Black border */
  border-radius: 0.25rem;
  background-color: #f3f4f6; /* Light background */
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  position: relative;
}
input[type="checkbox"]:checked,
input[type="radio"]:checked {
  background-color: var(--color-enterprise-black); /* Dark Black when checked */
  border-color: var(--color-enterprise-black);
}
input[type="checkbox"]:checked::after {
  content: "✔"; /* Checkmark character */
  font-size: 0.8rem;
  color: white;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
input[type="radio"] {
  border-radius: 50%; /* Make radio buttons round */
}
input[type="radio"]:checked::after {
  content: ""; /* No checkmark for radio, just a dot */
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  background-color: white;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.star-rating .star {
  color: var(--color-enterprise-black); /* Dark Black for stars */
}
.star-rating .star.empty {
  color: #d1d5db; /* Gray for empty stars */
}
/* Page specific styles */
.page-section {
  display: none; /* Hidden by default */
}
.page-section.active {
  display: block; /* Show active page */
}
.page-section.flex {
  display: flex; /* Show active page flex */
}
.page-section.hidden {
  display: none; /* Show active page flex */
}

/* Custom fonts from Veed.io */
@font-face {
  font-display: swap;
  font-family: EuclidCircularA;
  font-style: normal;
  font-weight: 300;
  src: url(https://static-assets.veed.io/fonts/Euclid%20Circular%20A/Light.woff2)
      format("woff2"),
    url(https://static-assets.veed.io/fonts/Euclid%20Circular%20A/Light.woff)
      format("woff");
}
@font-face {
  font-display: swap;
  font-family: EuclidCircularA;
  font-style: normal;
  font-weight: 400;
  src: url(https://static-assets.veed.io/fonts/Euclid%20Circular%20A/Regular.woff2)
      format("woff2"),
    url(https://static-assets.veed.io/fonts/Euclid%20Circular%20A/Regular.woff)
      format("woff");
}
@font-face {
  font-display: swap;
  font-family: EuclidCircularA;
  font-style: bold;
  font-weight: 500;
  src: url(https://static-assets.veed.io/fonts/Euclid%20Circular%20A/Medium.woff2)
      format("woff2"),
    url(https://static-assets.veed.io/fonts/Euclid%20Circular%20A/Medium.woff)
      format("woff");
}
@font-face {
  font-display: swap;
  font-family: EuclidCircularA;
  font-style: bold;
  font-weight: 600;
  src: url(https://static-assets.veed.io/fonts/Euclid%20Circular%20A/Semibold.woff2)
      format("woff2"),
    url(https://static-assets.veed.io/fonts/Euclid%20Circular%20A/Semibold.woff)
      format("woff");
}
@font-face {
  font-display: swap;
  font-family: EuclidCircularA;
  font-style: bold;
  font-weight: 700;
  src: url(https://static-assets.veed.io/fonts/Euclid%20Circular%20A/Bold.woff2)
      format("woff2"),
    url(https://static-assets.veed.io/fonts/Euclid%20Circular%20A/Bold.woff)
      format("woff");
}
@font-face {
  font-display: swap;
  font-family: SwissNow;
  font-style: normal;
  font-weight: 300;
  src: url(https://static-assets.veed.io/fonts/SwissNow/SwissNow-Light.woff2)
    format("woff2");
}
@font-face {
  font-display: swap;
  font-family: SwissNow;
  font-style: normal;
  font-weight: 400;
  src: url(https://static-assets.veed.io/fonts/SwissNow/SwissNow-Regular.woff2)
    format("woff2");
}
@font-face {
  font-display: swap;
  font-family: SwissNow;
  font-style: normal;
  font-weight: 500;
  src: url(https://static-assets.veed.io/fonts/SwissNow/SwissNow-Medium.woff2)
    format("woff2");
}

/* Veed.io color variables (subset for header styling) */
:root {
  --color-enterprise-gray: oklch(73.8% 0 0); /* Equivalent to #aaaaaa */
  --color-enterprise-light-gray: oklch(
    94.8% 0.002 197.1
  ); /* Equivalent to #eceeee */
  --color-enterprise-black: #0e2436; /* Equivalent to #323232 */
  --color-enterprise-blue1: #0e2436;
  --color-enterprise-red1: #e23d5c;
  --color-enterprise-blue2: #1e6887;
  --color-enterprise-red2: #77253b;
}

/* Specific styles for header elements to match Veed.io */
.font-swissnow {
  font-family: "SwissNow", sans-serif;
}
.text-enterprise-black {
  color: var(--color-enterprise-black);
}
.bg-enterprise-black {
  background-color: var(--color-enterprise-black);
}
.bg-enterprise-lightGray {
  background-color: var(--color-enterprise-light-gray);
}
.to-enterprise-gray\/10 {
  --tw-gradient-to: hsla(0, 0%, 67%, 0.1) var(--tw-gradient-to-position);
}
.from-enterprise-gray\/5 {
  --tw-gradient-from: hsla(0, 0%, 67%, 0.05) var(--tw-gradient-from-position);
}
.main-header a {
  color: aliceblue !important;
  text-decoration: none;
  transition: color 0.3s ease;
}
.main-header {
  border-color: aliceblue !important;
}
.aliceblue {
  color: aliceblue !important;
}

/* New styles for the "Powerfully simple" section */
.section-dark-bg {
  /*background-color: #1a1a1a;  Dark background color from the image */
  padding: 4rem 0; /* Add some vertical padding */
}

.product-card {
  /*background-color: #2c2c2c; /* Darker background for the card */
  /*background-color: aliceblue; /* Use aliceblue for the card background */
  border-radius: 1rem; /* Rounded corners */
  padding: 2.5rem; /* Internal padding */
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5); /* Subtle shadow */
  display: flex; /* Use flexbox for layout */
  align-items: center; /* Center items vertically */
  gap: 3rem; /* Space between image and text content */
  max-width: 1000px; /* Max width for the card */
  margin: 0 auto; /* Center the card */
  color: white; /* Default text color for the card */
  box-shadow: inset 0px 0px 1px 1px #87c1f855;
}
.vertical-card {
  flex-direction: column;
}
.product-image-container {
  flex-shrink: 0; /* Prevent image from shrinking */
  width: 370px; /* Fixed width for the image container */
  /* height: 300px;  */
  display: flex;
  justify-content: center;
  align-items: center;
  /* The image itself has the gradient, so the container doesn't need a background */
  
}

.hp-product-info__image {
  max-width: 100%; /* Ensure image fits container */
  height: auto;
  border-radius: 0.75rem; /* Slightly rounded corners for the image */

}

.product-content {
  flex-grow: 1; /* Allow content to take remaining space */
  text-align: left; /* Align text to the left */
}

.product-tag {
  font-family: "Inter", sans-serif; /* Use Inter for this tag */
  font-size: 0.875rem; /* Smaller font size */
  text-transform: uppercase; /* Uppercase text */
  color: #aaaaaa; /* Light gray color */
  margin-bottom: 0.5rem; /* Space below the tag */
  letter-spacing: 0.1em; /* Slight letter spacing */
}

.product-title {
  font-family: "EuclidCircularA", sans-serif; /* Use EuclidCircularA for title */
  font-size: 3rem; /* Larger font size */
  font-weight: 700; /* Bold font weight */
  color: white; /* White color */
  line-height: 1.2; /* Adjust line height */
  margin-bottom: 1rem; /* Space below the title */
}

.product-description {
  font-family: "Inter", sans-serif; /* Use Inter for description */
  font-size: 1.125rem; /* Slightly larger font size */
  color: #cccccc; /* Lighter gray for description */
  line-height: 1.6; /* Improve readability */
  margin-bottom: 1.5rem; /* Space below description */
}

.product-action-button {
  background-color: #007bff; /* Blue button background */
  color: white; /* White text */
  padding: 0.75rem 2rem; /* Padding for the button */
  border-radius: 0.5rem; /* Rounded corners */
  font-weight: 600; /* Semi-bold font */
  transition: background-color 0.3s ease; /* Smooth transition on hover */
  text-decoration: none; /* Remove underline */
  display: inline-block; /* Allow padding and margin */
}

.product-action-button:hover {
  background-color: #0056b3; /* Darker blue on hover */
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .product-card {
    flex-direction: column; /* Stack elements vertically on small screens */
    text-align: center; /* Center text */
    padding: 1.5rem;
    gap: 1.5rem;
  }

  .product-image-container {
    width: 200px; /* Smaller image on mobile */
    height: 200px;
  }

  .product-title {
    font-size: 2.5rem; /* Adjust title size for mobile */
  }

  .product-description {
    font-size: 1rem; /* Adjust description size for mobile */
  }
}
body {
  cursor: none;
}
#custom-cursor {
  position: fixed;
  top: 0;
  left: 0;
  /* width and height are now defined by JS via cursorSize */
  border-radius: 50%;
  pointer-events: none;
  z-index: 9999;
  border: 1.25px solid #87c2f8;
  background: none;
  /* box-shadow: 0 2px 12px #0e243633; */
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  transition: transform 0.08s cubic-bezier(0.4, 1, 0.7, 1), box-shadow 0.2s,
    background 0.2s, border 0.2s;
  mix-blend-mode: lighten;
  display: flex;
  align-items: center;
  justify-content: center;
}
#cursor-inner {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  /* background: linear-gradient(135deg, #0e2436cc 60%, #4f1d9ecc 100%); */
  border: none;
  transition: box-shadow 0.2s, background 0.2s, border 0.2s, filter 0.2s;
}
/* Shockwave (subtle, circular, 1.4s) */
#custom-cursor.shockwave #cursor-inner {
  animation: shockwave 1.4s cubic-bezier(0.4, 1, 0.7, 1);
}
@keyframes shockwave {
  0% {
    box-shadow: 0 0 0 0 #a084e880, 0 2px 12px #0e243633;
  }
  60% {
    box-shadow: 0 0 0 18px #a084e800, 0 2px 12px #0e243633;
  }
  100% {
    box-shadow: 0 0 0 0 #a084e800, 0 2px 12px #0e243633;
  }
}
/* Pulse */
#cursor-inner.pulse {
  animation: pulse 0.6s cubic-bezier(0.4, 1, 0.7, 1) infinite alternate;
  border: 1.5px solid #a084e8;
  background: linear-gradient(135deg, #a084e8cc 60%, #4f1d9ecc 100%);
}
@keyframes pulse {
  0% {
    transform: scale(1);
    box-shadow: 0 2px 12px #a084e833;
  }
  100% {
    transform: scale(1.5);
    box-shadow: 0 2px 32px #a084e8cc;
  }
}
/* Rainbow */
#cursor-inner.rainbow {
  animation: rainbow 1.2s linear infinite;
  border: 1.5px solid #fff;
  background: conic-gradient(from 0deg, #a084e8, #4f1d9e, #0e2436, #a084e8);
}
@keyframes rainbow {
  0% {
    filter: hue-rotate(0deg);
  }
  100% {
    filter: hue-rotate(360deg);
  }
}
/* Glow */
#cursor-inner.glow {
  box-shadow: 0 0 32px 8px #a084e8cc, 0 2px 12px #0e243633;
  border: 1.5px solid #fff;
  background: linear-gradient(135deg, #fff 60%, #a084e8cc 100%);
}
/* Explode (rocket particles) with blur */
#custom-cursor.explode #cursor-inner {
  animation: explode 0.7s cubic-bezier(0.4, 1, 0.7, 1);
  opacity: 0.2;
  filter: blur(4px);
}
@keyframes explode {
  0% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0);
  }
  60% {
    opacity: 0.2;
    transform: scale(2.5);
    filter: blur(4px);
  }
  100% {
    opacity: 0;
    transform: scale(0.5);
    filter: blur(8px);
  }
}
.cursor-particle {
  position: fixed;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: linear-gradient(135deg, #a084e8 60%, #fff 100%);
  pointer-events: none;
  z-index: 9999;
  opacity: 1;
  transition: transform 0.7s cubic-bezier(0.4, 1, 0.7, 1), opacity 0.7s,
    filter 0.7s;
  filter: blur(1px);
}
@media (max-width: 768px) {
  #custom-cursor {
    display: none;
  }
  body {
    cursor: auto;
  }
}
.border-87c2f8 {
  border-color: #87c2f8 !important;
}

.transparent {
  background-color: transparent !important;
  box-shadow: none !important;
}