body {
  background-color: #fafcfb;
  color: #4a3c31;
  overflow-x: hidden;
}

.glass {
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.5);
}

.glass-card {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(16px);
  border: 1px solid rgba(205, 229, 226, 0.4);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.03);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.glass-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 40px rgba(139, 168, 136, 0.15);
  border-color: rgba(139, 168, 136, 0.4);
}

.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.8s cubic-bezier(0.5, 0, 0, 1);
}

.reveal.active {
  opacity: 1;
  transform: translateY(0);
}

.text-gradient {
  background: linear-gradient(135deg, #4a3c31 0%, #8ba888 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.bg-pattern {
  background-image: radial-gradient(#a8bcab 1px, transparent 1px);
  background-size: 30px 30px;
  opacity: 0.3;
}

.page-shell {
  position: relative;
}

.page-section {
  position: relative;
  overflow: hidden;
}

.page-kicker {
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
