/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,500&family=Inter:wght@400;500;700&display=swap');

/* Base */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; -webkit-font-smoothing: antialiased; }
html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
h1, h2, h3, h4, h5, h6 { font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif; }

/* Radial section backgrounds */
.hero-section {
  background: radial-gradient(65% 55% at 88% 22%, rgba(91,44,255,0.13) 0%, rgba(91,44,255,0.06) 34%, rgba(255,255,255,0) 68%);
}
.technology-section {
  background: radial-gradient(50% 35% at 8% 10%, rgba(212,154,36,0.08) 0%, rgba(212,154,36,0.03) 40%, rgba(255,255,255,0) 72%);
}
.products-section {
  background: radial-gradient(68% 52% at 78% 16%, rgba(91,44,255,0.07) 0%, rgba(91,44,255,0.02) 34%, rgba(255,255,255,0) 70%);
}
.business-section {
  background: radial-gradient(50% 35% at 8% 10%, rgba(212,154,36,0.08) 0%, rgba(212,154,36,0.03) 40%, rgba(255,255,255,0) 72%);
}
.contact-section {
  background: radial-gradient(50% 35% at 8% 10%, rgba(212,154,36,0.07) 0%, rgba(212,154,36,0.02) 40%, rgba(255,255,255,0) 72%);
}

/* Noise overlay on hero */
.hero-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
  opacity: 0.025;
  pointer-events: none;
  z-index: 0;
}
.hero-section > * { position: relative; z-index: 1; }

/* Liquid glass nav pill — always active */
.nav-pill {
  background: rgba(255, 255, 255, 0.55);
  backdrop-filter: blur(28px) saturate(180%);
  -webkit-backdrop-filter: blur(28px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.55);
  box-shadow:
    inset 0 1.5px 0 rgba(255, 255, 255, 0.85),
    inset 0 -1px 0 rgba(255, 255, 255, 0.25),
    0 2px 12px rgba(11, 13, 23, 0.06),
    0 8px 32px rgba(11, 13, 23, 0.05);
}

/* Scrolled: slightly more filled, header bg disappears (pill carries it) */
header.scrolled {
  background-color: transparent;
}
header.scrolled .nav-pill {
  background: rgba(255, 255, 255, 0.72);
  box-shadow:
    inset 0 1.5px 0 rgba(255, 255, 255, 0.9),
    inset 0 -1px 0 rgba(255, 255, 255, 0.3),
    0 4px 20px rgba(11, 13, 23, 0.08),
    0 12px 40px rgba(11, 13, 23, 0.06);
}

/* Liquid glass — light variant (badge, secondary btn, form card) */
.glass-light {
  background: rgba(255, 255, 255, 0.52);
  backdrop-filter: blur(20px) saturate(160%);
  -webkit-backdrop-filter: blur(20px) saturate(160%);
  border: 1px solid rgba(255, 255, 255, 0.6);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.8),
    inset 0 -1px 0 rgba(255, 255, 255, 0.2),
    0 2px 16px rgba(11, 13, 23, 0.06);
}

/* Liquid glass — dark variant (footer) */
.glass-dark {
  background: rgba(11, 13, 23, 0.72);
  backdrop-filter: blur(32px) saturate(150%);
  -webkit-backdrop-filter: blur(32px) saturate(150%);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 -8px 40px rgba(11, 13, 23, 0.3);
}

/* Custom select appearance */
.form-select {
  appearance: none;
  -webkit-appearance: none;
  padding-right: 40px;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M3.5 6L8 10.5L12.5 6' fill='none' stroke='%236f7178' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
}

/* Focus ring for form inputs */
.form-input:focus {
  border-color: #5b2cff;
  box-shadow: 0 0 0 3px rgba(91,44,255,0.15);
  outline: none;
}

/* Success message hidden by default */
#success-msg { display: none; }
