@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&display=swap');

:root {
  --background-1: #0A0A0A;
  --background-1-transparent: rgb(10 10 10 / 80%);
  --background-2: #1A1A1A;
  --background-3: #2A2A2A;
  --background-4: #3A3A3A;

  --foreground-1: #FFFFFF;
  --foreground-2: #B8B8B8;

  --accent-1: #8B1538;
  --accent-2: #A91B47;
  --accent-3: #C7215C;
  --accent-gold: #FFD700;
  --accent-gold-dark: #DAA520;
}

/* Light theme variables - Much softer contrast for comfortable viewing */
[data-theme="light"] {
  --background-1: #F8F9FA;
  --background-1-transparent: rgb(248 249 250 / 95%);
  --background-2: #F1F3F4;
  --background-3: #E8EAED;
  --background-4: #DADCE0;

  --foreground-1: #3C4043;
  --foreground-2: #5F6368;

  --accent-1: #8B1538;
  --accent-2: #A91B47;
  --accent-3: #C7215C;
  --accent-gold: #B8860B;
  --accent-gold-dark: #996F0C;
}

/* Theme toggle button */
.theme-toggle {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 1000;
  background: var(--background-2);
  border: 2px solid var(--background-3);
  border-radius: 50%;
  width: 50px;
  height: 50px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 200ms ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  font-family: inherit;
}

.theme-toggle:hover {
  background: var(--background-3);
  border-color: var(--accent-1);
  transform: scale(1.1);
}

.theme-toggle::before {
  content: '🌙';
  font-size: 20px;
  transition: all 200ms ease;
  line-height: 1;
}

[data-theme="light"] .theme-toggle::before {
  content: '☀️';
}

/* Ensure theme toggle is visible on all themes */
[data-theme="light"] .theme-toggle {
  background: var(--background-2);
  border: 2px solid var(--background-3);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

[data-theme="light"] .theme-toggle:hover {
  background: var(--background-3);
  border-color: var(--accent-1);
}

/* Adjust hero background for light theme - much softer */
[data-theme="light"] .hero {
  background: 
    radial-gradient(ellipse at top left, rgba(255, 215, 0, 0.02) 0%, transparent 60%),
    radial-gradient(ellipse at top right, rgba(139, 21, 56, 0.015) 0%, transparent 60%),
    radial-gradient(ellipse at bottom, rgba(199, 33, 92, 0.01) 0%, transparent 70%),
    linear-gradient(135deg, var(--background-1) 0%, var(--background-2) 100%);
}

/* Adjust portal hero background for light theme */
[data-theme="light"] .portal-hero {
  background: 
    radial-gradient(ellipse at top left, rgba(255, 215, 0, 0.06) 0%, transparent 40%),
    radial-gradient(ellipse at top right, rgba(139, 21, 56, 0.04) 0%, transparent 40%),
    radial-gradient(ellipse at bottom, rgba(199, 33, 92, 0.03) 0%, transparent 50%),
    linear-gradient(135deg, var(--background-1) 0%, var(--background-2) 100%);
}

/* Improve contrast for light theme text shadows */
[data-theme="light"] .company-main {
  text-shadow: 0 0 20px rgba(184, 134, 11, 0.3);
  background: linear-gradient(135deg, var(--accent-gold) 0%, #DAA520 50%, var(--accent-gold) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Light theme button improvements */
[data-theme="light"] button {
  background: var(--background-2);
  border: 2px solid var(--background-3);
  color: var(--foreground-1);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

[data-theme="light"] button:hover {
  background: var(--background-3);
  border-color: var(--accent-1);
  box-shadow: 0 3px 8px rgba(139, 21, 56, 0.12);
}

/* Light theme card improvements - softer shadows */
[data-theme="light"] .features .tile {
  background: var(--background-1);
  border: 1px solid var(--background-3);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);
}

[data-theme="light"] .features .tile:hover {
  border-color: var(--accent-1);
  box-shadow: 0 2px 8px rgba(139, 21, 56, 0.04);
}

[data-theme="light"] .expertise-item {
  background: var(--background-1);
  border: 1px solid var(--background-3);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

[data-theme="light"] .expertise-item:hover {
  border-color: var(--accent-1);
  box-shadow: 0 3px 12px rgba(139, 21, 56, 0.06);
}

[data-theme="light"] .testimonial-card {
  background: var(--background-1);
  border: 1px solid var(--background-3);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
}

[data-theme="light"] .testimonial-card:hover {
  border-color: var(--accent-1);
  box-shadow: 0 4px 12px rgba(139, 21, 56, 0.08);
}

/* Adjust floating elements opacity for light theme */
[data-theme="light"] .floating-elements {
  opacity: 0.04;
}

/* Improve visibility of tech icons in light theme */
[data-theme="light"] .tech-icons {
  opacity: 0.8;
}

[data-theme="light"] .icon {
  opacity: 0.1;
}

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

html {
  height: 100%;
  width: 100%;
  scroll-behavior: smooth;
}

body {
  background: var(--background-1);
  font-family: 'IBM Plex Sans', sans-serif;
  color: var(--foreground-1);
}

h1 {
  font-size: 48px;
  line-height: 150%;
  font-weight: 600;
}

h2 {
  font-size: 32px;
  line-height: 40px;
  font-weight: 600;
}

h3 {
  font-size: 24px;
  line-height: 32px;
  font-weight: 500;
}

h4 {
  font-size: 20px;
  line-height: 28px;
  color: var(--foreground-2);
  font-weight: 400;
}

p {
  color: var(--foreground-2);
  font-size: 16px;
  line-height: 150%;
}

a {
  color: var(--foreground-1);
  font-weight: medium;
  transition: 120ms ease-out;
  text-decoration: none;
}

a:hover {
  color: var(--accent-gold) !important;
}

button {
  font-family: 'IBM Plex Sans', sans-serif;
  padding: 12px 24px;
  font-size: 16px;
  border-radius: 8px;
  background: var(--background-2);
  border: 2px solid var(--background-3);
  color: var(--foreground-1);
  cursor: pointer;
  position: relative;
  top: 0;
  transition: all 120ms ease-out;
  font-weight: 500;
}

button:hover {
  background: var(--background-3);
  border-color: var(--accent-1);
  top: -2px;
  box-shadow: 0 8px 16px rgb(139 21 56 / 20%);
}

button:active {
  top: 1px;
  box-shadow: 0 4px 8px rgb(139 21 56 / 16%);
}

button.cta {
  background: linear-gradient(135deg, var(--accent-1), var(--accent-2));
  border-color: var(--accent-2);
  color: white;
}

button.cta:hover {
  background: linear-gradient(135deg, var(--accent-2), var(--accent-3));
  border-color: var(--accent-3);
}

a:focus-visible,
button:focus-visible {
  outline: 2px solid var(--accent-gold);
  outline-offset: 2px;
  border-radius: 8px;
}

main {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 auto;
  gap: 80px;
}

nav {
  display: flex;
  justify-content: center;
  padding: 16px 16px;
  width: 100%;
  position: sticky;
  top: 0;
  background: var(--background-1-transparent);
  backdrop-filter: blur(20px);
  z-index: 100;
  border-bottom: 1px solid var(--background-3);
}

.nav-inner {
  max-width: 1200px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

nav .left,
nav .right {
  display: flex;
  gap: 48px;
  align-items: center;
}

nav .left .logo {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
}

nav .left .logo img {
  height: 50px;
  width: auto;
}

nav .left .name {
  color: var(--foreground-1);
  font-weight: 600;
  font-size: 20px;
}

section {
  display: flex;
  flex-direction: column;
  gap: 48px;
  justify-content: center;
  align-items: center;
  max-width: 1200px;
  width: 100%;
  padding: 0 24px;
}

.buttons {
  display: flex;
  gap: 16px;
  justify-content: center;
}

.hero {
  padding: 100px 0 80px 0;
  min-height: 70vh;
  background: 
    radial-gradient(ellipse at top left, rgba(255, 215, 0, 0.12) 0%, transparent 50%),
    radial-gradient(ellipse at top right, rgba(139, 21, 56, 0.1) 0%, transparent 50%),
    radial-gradient(ellipse at bottom, rgba(199, 33, 92, 0.08) 0%, transparent 60%),
    linear-gradient(135deg, var(--background-1) 0%, var(--background-2) 100%);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.hero-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.floating-elements {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0.08;
}

.element {
  position: absolute;
  border-radius: 50%;
  background: linear-gradient(45deg, var(--accent-gold), var(--accent-1));
  animation: float 6s ease-in-out infinite;
}

.element-1 {
  width: 120px;
  height: 120px;
  top: 10%;
  left: 5%;
  animation-delay: 0s;
}

.element-2 {
  width: 80px;
  height: 80px;
  top: 60%;
  right: 8%;
  animation-delay: -2s;
}

.element-3 {
  width: 60px;
  height: 60px;
  top: 20%;
  right: 20%;
  animation-delay: -4s;
}

.element-4 {
  width: 100px;
  height: 100px;
  bottom: 15%;
  left: 10%;
  animation-delay: -1s;
}

@keyframes float {
  0%, 100% { transform: translateY(0px) rotate(0deg); }
  25% { transform: translateY(-10px) rotate(90deg); }
  50% { transform: translateY(-20px) rotate(180deg); }
  75% { transform: translateY(-10px) rotate(270deg); }
}

/* Technology Animation Effects */
.tech-animation {
  position: absolute;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
}

.ai-nodes {
  position: absolute;
  width: 100%;
  height: 100%;
}

.node {
  position: absolute;
  width: 12px;
  height: 12px;
  background: linear-gradient(45deg, var(--accent-gold), var(--accent-1));
  border-radius: 50%;
  box-shadow: 0 0 20px rgba(255, 215, 0, 0.5);
  animation: nodeGlow 3s ease-in-out infinite;
}

.node-1 {
  top: 15%;
  left: 10%;
  animation-delay: 0s;
}

.node-2 {
  top: 30%;
  right: 15%;
  animation-delay: 0.6s;
}

.node-3 {
  bottom: 25%;
  left: 20%;
  animation-delay: 1.2s;
}

.node-4 {
  top: 60%;
  left: 50%;
  animation-delay: 1.8s;
}

.node-5 {
  bottom: 15%;
  right: 25%;
  animation-delay: 2.4s;
}

@keyframes nodeGlow {
  0%, 100% {
    transform: scale(1);
    opacity: 0.6;
    box-shadow: 0 0 20px rgba(255, 215, 0, 0.5);
  }
  50% {
    transform: scale(1.5);
    opacity: 1;
    box-shadow: 0 0 30px rgba(255, 215, 0, 0.8);
  }
}

.data-streams {
  position: absolute;
  width: 100%;
  height: 100%;
}

.stream {
  position: absolute;
  background: linear-gradient(90deg, transparent, var(--accent-1), transparent);
  height: 2px;
  opacity: 0.4;
  animation: streamFlow 4s linear infinite;
}

.stream-1 {
  top: 20%;
  width: 300px;
  left: -100px;
  animation-delay: 0s;
}

.stream-2 {
  top: 50%;
  width: 250px;
  right: -100px;
  animation-delay: 1.5s;
  animation-direction: reverse;
}

.stream-3 {
  bottom: 30%;
  width: 200px;
  left: -80px;
  animation-delay: 3s;
}

@keyframes streamFlow {
  0% {
    transform: translateX(-100%);
    opacity: 0;
  }
  20% {
    opacity: 0.6;
  }
  80% {
    opacity: 0.6;
  }
  100% {
    transform: translateX(100vw);
    opacity: 0;
  }
}

.tech-icons {
  position: absolute;
  width: 100%;
  height: 100%;
}

.icon {
  position: absolute;
  width: 40px;
  height: 40px;
  opacity: 0.15;
  background-size: contain;
  background-repeat: no-repeat;
  animation: iconFloat 8s ease-in-out infinite;
}

.cpu-icon {
  top: 25%;
  left: 5%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Crect width='16' height='16' x='4' y='4' rx='2'/%3E%3Crect width='6' height='6' x='9' y='9' rx='1'/%3E%3Cpath d='M15 2v2'/%3E%3Cpath d='M15 20v2'/%3E%3Cpath d='M9 2v2'/%3E%3Cpath d='M9 20v2'/%3E%3Cpath d='M20 9h2'/%3E%3Cpath d='M20 15h2'/%3E%3Cpath d='M2 9h2'/%3E%3Cpath d='M2 15h2'/%3E%3C/svg%3E");
  animation-delay: 0s;
}

.database-icon {
  top: 65%;
  right: 8%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C7215C' stroke-width='1.5'%3E%3Cellipse cx='12' cy='5' rx='9' ry='3'/%3E%3Cpath d='M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5'/%3E%3Cpath d='M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3'/%3E%3C/svg%3E");
  animation-delay: 2s;
}

.cloud-icon {
  top: 45%;
  left: 15%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233B82F6' stroke-width='1.5'%3E%3Cpath d='M18 10h-1.26A8 8 0 1 0 9 20h9a5 5 0 0 0 0-10z'/%3E%3C/svg%3E");
  animation-delay: 4s;
}

.ai-icon {
  bottom: 20%;
  right: 30%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M12 2L2 7l10 5 10-5-10-5z'/%3E%3Cpath d='M2 17l10 5 10-5'/%3E%3Cpath d='M2 12l10 5 10-5'/%3E%3C/svg%3E");
  animation-delay: 6s;
}

@keyframes iconFloat {
  0%, 100% {
    transform: translateY(0px) rotate(0deg);
    opacity: 0.15;
  }
  25% {
    transform: translateY(-15px) rotate(90deg);
    opacity: 0.25;
  }
  50% {
    transform: translateY(-30px) rotate(180deg);
    opacity: 0.3;
  }
  75% {
    transform: translateY(-15px) rotate(270deg);
    opacity: 0.25;
  }
}

.company-showcase {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 60px;
  max-width: 1000px;
  width: 100%;
}

.company-title-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}

.company-logo-section {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.logo-backdrop {
  position: absolute;
  width: 140px;
  height: 140px;
  background: 
    radial-gradient(circle, rgba(255, 215, 0, 0.15) 0%, transparent 70%),
    radial-gradient(circle, rgba(139, 21, 56, 0.1) 0%, transparent 60%);
  border-radius: 50%;
  filter: blur(20px);
  animation: pulse 4s ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% { transform: scale(1); opacity: 0.6; }
  50% { transform: scale(1.1); opacity: 0.8; }
}

.hero-logo {
  height: 100px;
  width: auto;
  position: relative;
  z-index: 2;
  filter: drop-shadow(0 0 20px rgba(255, 215, 0, 0.3));
}

.company-name-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
}

.company-name {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.company-main {
  font-size: 84px;
  font-weight: 700;
  letter-spacing: 12px;
  background: linear-gradient(135deg, var(--accent-gold) 0%, #FFF8DC  50%, var(--accent-gold) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-shadow: 0 0 40px rgba(255, 215, 0, 0.3);
  animation: shimmer 3s ease-in-out infinite;
}

.company-sub {
  font-size: 36px;
  font-weight: 400;
  letter-spacing: 8px;
  color: var(--foreground-1);
  opacity: 0.9;
  margin-top: -8px;
}

.company-legal {
  font-size: 16px;
  font-weight: 300;
  letter-spacing: 4px;
  color: var(--accent-gold);
  opacity: 0.8;
  margin-top: 8px;
}

@keyframes shimmer {
  0%, 100% { 
    background-position: 0% 50%; 
    text-shadow: 0 0 40px rgba(255, 215, 0, 0.3);
  }
  50% { 
    background-position: 100% 50%; 
    text-shadow: 0 0 60px rgba(255, 215, 0, 0.5);
  }
}

.company-tagline {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.tagline-text {
  font-size: 18px;
  font-weight: 400;
  color: var(--accent-3);
  letter-spacing: 2px;
  text-transform: uppercase;
  opacity: 0.9;
}

.tagline-underline {
  width: 100px;
  height: 2px;
  background: linear-gradient(90deg, transparent 0%, var(--accent-gold) 50%, transparent 100%);
  border-radius: 2px;
  animation: expand 2s ease-in-out infinite;
}

@keyframes expand {
  0%, 100% { width: 100px; opacity: 0.6; }
  50% { width: 200px; opacity: 1; }
}

.company-descriptor {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
  width: 100%;
}

.descriptor-line {
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, var(--accent-gold) 20%, var(--accent-1) 50%, var(--accent-gold) 80%, transparent 100%);
  opacity: 0.4;
}

.hero-headline {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center;
  font-size: 48px;
  line-height: 1.2;
}

.headline-primary {
  font-weight: 300;
  color: var(--foreground-1);
  opacity: 0.95;
}

.headline-accent {
  font-weight: 600;
  background: linear-gradient(135deg, var(--accent-1) 0%, var(--accent-3) 50%, var(--accent-gold) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  position: relative;
}

.headline-accent::after {
  content: '';
  position: absolute;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  width: 60%;
  height: 3px;
  background: linear-gradient(90deg, var(--accent-1), var(--accent-gold));
  border-radius: 2px;
  opacity: 0.6;
}

.hero-subtitle {
  text-align: center;
  max-width: 700px;
  font-size: 20px;
  line-height: 1.6;
  color: var(--foreground-2);
  font-weight: 300;
  position: relative;
  z-index: 1;
}

.features .grid {
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 100%;
}

.features .tile {
  width: 100%;
  height: 300px;
  background: var(--background-2);
  border: 1px solid var(--background-3);
  border-radius: 16px;
  display: flex;
  align-items: center;
  overflow: hidden;
  transition: border-color 200ms ease;
}

.features .tile:hover {
  border-color: var(--accent-1);
}

.features .row .tile.small {
  width: 50%;
  flex-direction: column;
  height: 280px;
}

.features .row {
  display: flex;
  gap: 32px;
}

.features .tile .text {
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex: 1;
}

.features .row .tile.small .text {
  flex: revert;
}

.features .tile .media {
  background: linear-gradient(135deg, var(--accent-1), var(--accent-2));
  opacity: 0.1;
  position: relative;
}

/* Data Management Recruiting - Database/Analytics Theme */
.features .tile:nth-child(1) .media {
  background: 
    linear-gradient(135deg, rgba(59, 130, 246, 0.15), rgba(147, 51, 234, 0.15)),
    radial-gradient(circle at 30% 30%, rgba(34, 197, 94, 0.1) 0%, transparent 50%),
    radial-gradient(circle at 70% 70%, rgba(59, 130, 246, 0.1) 0%, transparent 50%);
  position: relative;
}

.features .tile:nth-child(1) .media::before {
  content: '';
  position: absolute;
  top: 20px;
  left: 20px;
  width: 60px;
  height: 60px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1 0-5H20'/%3E%3Cpath d='M9 10h6'/%3E%3Cpath d='M9 14h6'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.4;
}

.features .tile:nth-child(1) .media::after {
  content: '';
  position: absolute;
  bottom: 20px;
  right: 20px;
  width: 80px;
  height: 80px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233B82F6' stroke-width='1'%3E%3Crect width='7' height='18' x='3' y='3' rx='1'/%3E%3Crect width='7' height='5' x='14' y='14' rx='1'/%3E%3Crect width='7' height='12' x='14' y='3' rx='1'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.2;
}

/* System Implementation - Enterprise/Integration Theme */
.features .row .tile:nth-child(1) .media {
  background: 
    linear-gradient(135deg, rgba(16, 185, 129, 0.15), rgba(59, 130, 246, 0.15)),
    radial-gradient(circle at 30% 70%, rgba(139, 21, 56, 0.1) 0%, transparent 50%),
    radial-gradient(circle at 70% 30%, rgba(255, 215, 0, 0.08) 0%, transparent 40%);
}

.features .row .tile:nth-child(1) .media::before {
  content: '';
  position: absolute;
  top: 15px;
  left: 15px;
  width: 50px;
  height: 50px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Crect width='18' height='18' x='3' y='3' rx='2'/%3E%3Cpath d='M9 9h6v6h-6z'/%3E%3Cpath d='M16 1v6'/%3E%3Cpath d='M8 1v6'/%3E%3Cpath d='M16 17v6'/%3E%3Cpath d='M8 17v6'/%3E%3Cpath d='M1 8h6'/%3E%3Cpath d='M17 8h6'/%3E%3Cpath d='M1 16h6'/%3E%3Cpath d='M17 16h6'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.4;
}

.features .row .tile:nth-child(1) .media::after {
  content: '';
  position: absolute;
  bottom: 15px;
  right: 15px;
  width: 40px;
  height: 40px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310B981' stroke-width='1.5'%3E%3Cpolyline points='22,12 18,12 15,21 9,3 6,12 2,12'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.3;
}

/* Digital Transformation - Innovation/Future Theme */
.features .row .tile:nth-child(2) .media {
  background: 
    linear-gradient(135deg, rgba(168, 85, 247, 0.15), rgba(236, 72, 153, 0.15)),
    radial-gradient(circle at 50% 20%, rgba(255, 215, 0, 0.12) 0%, transparent 50%),
    radial-gradient(circle at 80% 80%, rgba(59, 130, 246, 0.08) 0%, transparent 50%);
}

.features .row .tile:nth-child(2) .media::before {
  content: '';
  position: absolute;
  top: 15px;
  left: 15px;
  width: 50px;
  height: 50px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M12 2L2 7l10 5 10-5-10-5z'/%3E%3Cpath d='M2 17l10 5 10-5'/%3E%3Cpath d='M2 12l10 5 10-5'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.4;
}

.features .row .tile:nth-child(2) .media::after {
  content: '';
  position: absolute;
  bottom: 15px;
  right: 15px;
  width: 40px;
  height: 40px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A855F7' stroke-width='1.5'%3E%3Cpath d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z'/%3E%3Cpolyline points='7.5,4.21 12,6.81 16.5,4.21'/%3E%3Cpolyline points='7.5,19.79 7.5,14.6 3,12'/%3E%3Cpolyline points='21,12 16.5,14.6 16.5,19.79'/%3E%3Cpolyline points='3.27,6.96 12,12.01 20.73,6.96'/%3E%3Cline x1='12' y1='22.08' x2='12' y2='12'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.3;
}

/* AI Services - Neural Network/AI Theme */
.features .tile.ai-services .media.ai-gradient {
  background: 
    linear-gradient(45deg, var(--accent-1), var(--accent-3), var(--accent-gold)),
    radial-gradient(circle at 25% 25%, rgba(255, 215, 0, 0.2) 0%, transparent 40%),
    radial-gradient(circle at 75% 75%, rgba(139, 21, 56, 0.2) 0%, transparent 40%),
    radial-gradient(circle at 50% 50%, rgba(199, 33, 92, 0.1) 0%, transparent 60%);
  opacity: 0.15;
  position: relative;
}

.features .tile.ai-services .media.ai-gradient::before {
  content: '';
  position: absolute;
  top: 20px;
  left: 20px;
  width: 80px;
  height: 80px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M12 2L2 7l10 5 10-5-10-5z'/%3E%3Cpath d='M2 17l10 5 10-5'/%3E%3Cpath d='M2 12l10 5 10-5'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.5;
}

.features .tile.ai-services .media.ai-gradient::after {
  content: '';
  position: absolute;
  bottom: 20px;
  right: 20px;
  width: 100px;
  height: 60px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C7215C' stroke-width='1'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M12 1v6m0 6v6m11-7h-6m-6 0H1m15.5-6.5l-4.24 4.24M7.76 7.76 3.52 3.52m12.96 12.96l-4.24-4.24M7.76 16.24l-4.24 4.24'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.3;
}

/* Services Grid Layout - 3 columns, 2 rows */
.services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 24px;
  margin-top: 40px;
}

.service-tile {
  background: var(--background-2);
  border: 1px solid var(--background-3);
  border-radius: 16px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 280px;
  transition: all 200ms ease;
  position: relative;
  overflow: hidden;
}

.service-tile:hover {
  border-color: var(--accent-1);
  transform: translateY(-4px);
  box-shadow: 0 8px 32px rgba(139, 21, 56, 0.1);
}

.service-tile .text {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.service-tile .text h3 {
  color: var(--accent-gold);
  font-size: 18px;
  font-weight: 600;
  margin: 0;
}

.service-tile .text p {
  color: var(--foreground-2);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

.service-tile .media {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 80px;
  height: 60px;
  opacity: 0.1;
  border-radius: 8px;
}

/* Individual service media styles */
.media.data-management {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.3), rgba(147, 51, 234, 0.3));
}

.media.system-impl {
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.3), rgba(59, 130, 246, 0.3));
}

.media.digital-transform {
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.3), rgba(236, 72, 153, 0.3));
}

.media.cloud-solutions {
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.3), rgba(59, 130, 246, 0.3));
}

.media.ai-services {
  background: linear-gradient(135deg, var(--accent-1), var(--accent-gold));
}

.media.security-services {
  background: linear-gradient(135deg, rgba(239, 68, 68, 0.3), rgba(245, 101, 101, 0.3));
}

@media (max-width: 1024px) {
  .services-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
  }
}

@media (max-width: 768px) {
  .services-grid {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(6, 1fr);
    gap: 16px;
  }

  .service-tile {
    height: 240px;
    padding: 24px;
  }
}

.features .grid .tile.large .media {
  width: 400px;
  height: 240px;
  border-radius: 8px;
  margin: 30px;
  margin-left: auto;
}

.features .tile.ai-services {
  border: 1px solid var(--accent-3);
  background: linear-gradient(135deg, var(--background-2), rgba(199, 33, 92, 0.05));
  height: auto;
  min-height: 400px;
}

.features .tile.ai-services:hover {
  border-color: var(--accent-gold);
  box-shadow: 0 8px 32px rgba(255, 215, 0, 0.1);
}

.features .tile.ai-services .media.ai-gradient {
  background: linear-gradient(45deg, var(--accent-1), var(--accent-3), var(--accent-gold));
  opacity: 0.15;
}

.features .tile.ai-services h3 {
  color: var(--accent-gold);
}

.features .row .tile.small .media {
  width: calc(100% - 64px);
  flex: 1;
  border-radius: 8px;
  margin: 32px;
  margin-top: auto;
}

.expertise {
  background: var(--background-2);
  border-radius: 16px;
  padding: 60px 40px;
  border: 1px solid var(--background-3);
  position: relative;
  overflow: hidden;
}

.expertise::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: 
    radial-gradient(circle at 10% 20%, rgba(255, 215, 0, 0.05) 0%, transparent 50%),
    radial-gradient(circle at 90% 80%, rgba(139, 21, 56, 0.05) 0%, transparent 50%);
  z-index: 0;
}

.expertise > * {
  position: relative;
  z-index: 1;
}

.expertise-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 24px;
  width: 100%;
  margin-top: 40px;
}

.expertise-item {
  background: var(--background-1);
  padding: 32px;
  border-radius: 16px;
  border: 1px solid var(--background-3);
  transition: all 200ms ease;
  position: relative;
  overflow: hidden;
  height: 200px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.expertise-item::before {
  content: '';
  position: absolute;
  top: 16px;
  right: 16px;
  width: 32px;
  height: 32px;
  opacity: 0.2;
  background-size: contain;
  background-repeat: no-repeat;
}

.expertise-item:nth-child(1)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3Cpath d='M3 5v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2z'/%3E%3C/svg%3E");
}

.expertise-item:nth-child(2)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpolyline points='16,18 22,12 16,6'/%3E%3Cpolyline points='8,6 2,12 8,18'/%3E%3C/svg%3E");
}

.expertise-item:nth-child(3)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1 0-5H20'/%3E%3C/svg%3E");
}

.expertise-item:nth-child(4)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M18 10h-1.26A8 8 0 1 0 9 20h9a5 5 0 0 0 0-10z'/%3E%3C/svg%3E");
}

.expertise-item:nth-child(5)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M3 3v18h18'/%3E%3Cpath d='M18.7 8l-5.1 5.2-2.8-2.7L7 14.3'/%3E%3C/svg%3E");
}

.expertise-item:nth-child(6)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Crect width='20' height='14' x='2' y='3' rx='2'/%3E%3Cline x1='8' y1='21' x2='16' y2='21'/%3E%3Cline x1='12' y1='17' x2='12' y2='21'/%3E%3C/svg%3E");
}

.expertise-item:hover {
  border-color: var(--accent-1);
  transform: translateY(-4px);
}

.expertise-item h3 {
  color: var(--accent-gold);
  margin-bottom: 12px;
}

.about {
  background: var(--background-2);
  border-radius: 16px;
  padding: 60px 40px;
  border: 1px solid var(--background-3);
  text-align: center;
  position: relative;
  overflow: hidden;
}

.about::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: 
    radial-gradient(circle at 30% 30%, rgba(255, 215, 0, 0.08) 0%, transparent 30%),
    radial-gradient(circle at 70% 70%, rgba(139, 21, 56, 0.06) 0%, transparent 30%);
  animation: rotate 20s linear infinite;
  z-index: 0;
}

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

.about-container {
  position: relative;
  z-index: 1;
}

.about-container {
  max-width: 800px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.about-container h2 {
  color: var(--accent-gold);
}

.testimonials {
  background: var(--background-2);
  border-radius: 16px;
  padding: 60px 40px;
  border: 1px solid var(--background-3);
  position: relative;
  overflow: hidden;
}

.testimonials::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: 
    radial-gradient(circle at 20% 20%, rgba(255, 215, 0, 0.06) 0%, transparent 40%),
    radial-gradient(circle at 80% 80%, rgba(139, 21, 56, 0.04) 0%, transparent 40%);
  z-index: 0;
}

.testimonials > * {
  position: relative;
  z-index: 1;
}

.testimonials h2 {
  color: var(--accent-gold);
  text-align: center;
  margin-bottom: 48px;
}

.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 32px;
  width: 100%;
}

.testimonial-card {
  background: var(--background-1);
  border: 1px solid var(--background-3);
  border-radius: 12px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  transition: all 200ms ease;
  position: relative;
  overflow: hidden;
}

.testimonial-card::before {
  content: '';
  position: absolute;
  top: 16px;
  right: 16px;
  width: 40px;
  height: 40px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M9 15c-4.419 0-8-2.686-8-6s3.581-6 8-6 8 2.686 8 6c0 2.56-1.615 4.773-4.072 5.61l-1.316-1.316A3 3 0 0 0 15 12c0-1.657-1.343-3-3-3s-3 1.343-3 3 1.343 3 3 3z'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.2;
  z-index: 0;
}

.testimonial-card:hover {
  border-color: var(--accent-1);
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(139, 21, 56, 0.1);
}

.testimonial-content {
  position: relative;
  z-index: 1;
}

.testimonial-content p {
  font-size: 16px;
  line-height: 1.6;
  color: var(--foreground-2);
  font-style: italic;
  position: relative;
}

.testimonial-content p::before {
  content: '"';
  font-size: 48px;
  color: var(--accent-gold);
  position: absolute;
  top: -16px;
  left: -16px;
  font-family: Georgia, serif;
  opacity: 0.5;
}

.testimonial-author {
  display: flex;
  align-items: center;
  gap: 16px;
  border-top: 1px solid var(--background-3);
  padding-top: 20px;
}

.author-info h4 {
  color: var(--foreground-1);
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 4px;
}

.author-info p {
  color: var(--accent-gold);
  font-size: 14px;
  font-weight: 500;
}

@media (max-width: 1024px) {
  .expertise-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
  }
}

@media (max-width: 768px) {
  .expertise-grid {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(6, 1fr);
    gap: 16px;
  }

  .expertise-item {
    height: 160px;
    padding: 24px;
  }

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

  .testimonial-card {
    padding: 24px;
  }
}

.job-seekers {
  background: var(--background-2);
  border-radius: 16px;
  padding: 60px 40px;
  border: 1px solid var(--background-3);
  position: relative;
  overflow: hidden;
}

.job-seekers::before {
  content: '';
  position: absolute;
  top: 20px;
  right: 20px;
  width: 60px;
  height: 60px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.1;
  z-index: 0;
}

.job-seekers-container {
  max-width: 800px;
  display: flex;
  flex-direction: column;
  gap: 32px;
  text-align: center;
}

.job-seekers-container h2 {
  color: var(--accent-gold);
}

.job-seeker-form {
  display: flex;
  flex-direction: column;
  gap: 24px;
  text-align: left;
}

.form-row {
  display: flex;
  gap: 16px;
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}

.form-group label {
  color: var(--foreground-1);
  font-weight: 500;
  font-size: 14px;
}

.form-group input,
.form-group select,
.form-group textarea {
  padding: 12px 16px;
  border-radius: 8px;
  border: 2px solid var(--background-3);
  background: var(--background-1);
  color: var(--foreground-1);
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 16px;
  transition: border-color 200ms ease;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
  outline: none;
  border-color: var(--accent-1);
}

.form-group small {
  color: var(--foreground-2);
  font-size: 12px;
}

.checkbox-group {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 12px;
  margin-top: 8px;
}

.checkbox-label {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--foreground-2);
  cursor: pointer;
}

.checkbox-label input[type="checkbox"] {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--accent-1);
}

.submit-btn {
  margin-top: 16px;
  align-self: center;
  min-width: 200px;
}

.form-message {
  padding: 16px;
  border-radius: 8px;
  text-align: center;
  font-weight: 500;
}

.form-message.success {
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.3);
  color: #22c55e;
}

.form-message.error {
  background: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.3);
  color: #ef4444;
}

.call-to-action .callout-container {
  width: 100%;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--accent-1), var(--accent-2));
  padding: 60px 40px;
  display: flex;
  flex-direction: column;
  gap: 32px;
  align-items: center;
  border: 1px solid var(--accent-2);
  position: relative;
  overflow: hidden;
}

.call-to-action .callout-container::before {
  content: '';
  position: absolute;
  top: 20px;
  left: 20px;
  width: 80px;
  height: 80px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1.5'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.2;
  z-index: 0;
}

.call-to-action .callout-container::after {
  content: '';
  position: absolute;
  bottom: 20px;
  right: 20px;
  width: 100px;
  height: 100px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD700' stroke-width='1'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.15;
  z-index: 0;
}

.call-to-action .callout-container .text {
  display: flex;
  flex-direction: column;
  gap: 16px;
  text-align: center;
  max-width: 600px;
}

.call-to-action .callout-container h2 {
  color: white;
}

.call-to-action .callout-container p {
  color: rgba(255, 255, 255, 0.9);
}

.contact-info {
  margin-top: 16px;
}

.contact-info p {
  color: var(--accent-gold) !important;
  font-weight: 500;
}

.call-to-action .callout-container .buttons button:not(.cta) {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.2);
  color: white;
}

.call-to-action .callout-container .buttons button:not(.cta):hover {
  background: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.3);
}

.call-to-action .callout-container .buttons button.cta {
  background: var(--accent-gold);
  border-color: var(--accent-gold-dark);
  color: var(--background-1);
}

.call-to-action .callout-container .buttons button.cta:hover {
  background: var(--accent-gold-dark);
}

footer {
  background: var(--background-2);
  border-top: 1px solid var(--background-3);
  padding: 60px 24px;
  width: 100%;
  display: flex;
  justify-content: center;
  position: relative;
}

footer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 215, 0, 0.03) 50%, transparent 100%);
  z-index: 0;
}

footer .inner {
  position: relative;
  z-index: 1;
}

footer .inner {
  max-width: 1200px;
  display: flex;
  justify-content: space-between;
  width: 100%;
  gap: 40px;
}

footer .inner .column {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 200px;
}

footer .inner .column .logo {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
}

footer .inner .column .logo img {
  height: 50px;
  width: auto;
}

footer .inner .column .name {
  color: var(--foreground-1);
  font-weight: 600;
  font-size: 18px;
}

footer .inner .column .tagline {
  color: var(--accent-gold);
  font-size: 14px;
  font-style: italic;
}

footer .inner .column a {
  color: var(--foreground-2);
  font-size: 14px;
}

footer .column p {
  color: var(--foreground-1);
  font-weight: 500;
  font-size: 16px;
}

/* Theme toggle positioning in navigation */
#theme-toggle {
  position: relative !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--background-2) !important;
  border: 2px solid var(--background-3) !important;
  cursor: pointer !important;
  font-size: 0 !important;
  margin-left: 12px !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
  transition: all 200ms ease !important;
}

#theme-toggle:hover {
  background: var(--background-3) !important;
  border-color: var(--accent-1) !important;
  transform: scale(1.05) !important;
}

#theme-toggle::before {
  content: '🌙' !important;
  font-size: 18px !important;
  display: block !important;
  line-height: 1 !important;
}

[data-theme="light"] #theme-toggle::before {
  content: '☀️' !important;
}

@media (max-width: 768px) {
  .nav-inner {
    flex-direction: column;
    gap: 16px;
  }

  .theme-toggle, #theme-toggle {
    top: 70px !important;
    right: 15px !important;
    width: 45px !important;
    height: 45px !important;
  }

  .theme-toggle::before, #theme-toggle::before {
    font-size: 18px !important;
  }

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

  .features .row {
    flex-direction: column;
  }

  .features .row .tile.small {
    width: 100%;
  }

  footer .inner {
    flex-direction: column;
    gap: 32px;
  }

  .company-main {
    font-size: 56px !important;
    letter-spacing: 8px !important;
  }

  .company-sub {
    font-size: 24px !important;
    letter-spacing: 4px !important;
  }

  .hero-headline {
    font-size: 32px !important;
  }

  .hero-subtitle {
    font-size: 18px !important;
  }

  .company-title-wrapper {
    gap: 30px !important;
  }

  .company-descriptor {
    gap: 24px !important;
  }

  .buttons {
    flex-direction: column;
    width: 100%;
    max-width: 300px;
  }

  .form-row {
    flex-direction: column;
  }

  .checkbox-group {
    grid-template-columns: 1fr;
  }

  .floating-elements .element {
    display: none;
  }
}

@media (max-width: 480px) {
  .company-main {
    font-size: 42px !important;
    letter-spacing: 4px !important;
  }

  .company-sub {
    font-size: 20px !important;
    letter-spacing: 2px !important;
  }

  .hero-headline {
    font-size: 28px !important;
  }

  .hero {
    padding: 60px 0 !important;
  }
}