/* Main Design System & Tokens */
:root {
  --navy-900: #0F172A;
  --gold-500: #C5A059;
  --gold-gradient: linear-gradient(135deg, #C5A059 0%, #F1D192 100%);
  --ice-50: #F8FAFC;
}

/* Glassmorphism */
.glass-dark { 
  background: rgba(15, 23, 42, 0.85); 
  backdrop-filter: blur(20px); 
  border: 1px solid rgba(255, 255, 255, 0.05); 
}

/* Typography & Colors */
.text-gold-gradient { 
  background: var(--gold-gradient); 
  -webkit-background-clip: text; 
  background-clip: text;
  -webkit-text-fill-color: transparent; 
}

.font-headline { font-family: 'Noto Serif', serif; }
.font-body { font-family: 'Manrope', sans-serif; }

/* Components */
.btn-luxury { 
  background: linear-gradient(135deg, #C5A059 0%, #A6803F 100%); 
  transition: all 0.4s ease; 
  box-shadow: 0 10px 20px -5px rgba(197, 160, 89, 0.3); 
}

.btn-luxury:hover { 
  transform: translateY(-3px); 
  box-shadow: 0 15px 30px -5px rgba(197, 160, 89, 0.4); 
}

.card-expertise { 
  background: rgba(255, 255, 255, 0.02); 
  border: 1px solid rgba(255, 255, 255, 0.03); 
  transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1); 
  overflow: hidden; 
}

.card-expertise:hover { 
  transform: translateY(-15px); 
  border-color: rgba(197, 160, 89, 0.2); 
  background: rgba(255, 255, 255, 0.04); 
}

/* Global Styles */
body { 
  background-color: var(--navy-900); 
  color: var(--ice-50); 
  overflow-x: hidden; 
}

/* Specialty Sections */
.section-specialty {
  padding: 100px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.03);
}

.specialty-image-container {
  position: relative;
  border-radius: 60px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.05);
  box-shadow: 0 30px 60px -15px rgba(0, 0, 0, 0.5);
}

.specialty-image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 1.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.section-specialty:hover .specialty-image-container img {
  transform: scale(1.05);
}

.specialty-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

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

.float-anim { animation: float 4s ease-in-out infinite; }

.selection-gold::selection {
    background: rgba(197, 160, 89, 0.3);
}
