body {
      box-sizing: border-box;
    }
    
    :root {
      --primary-blue: #1e40af;
      --light-blue: #3b82f6;
      --gold: #d4a84b;
      --warm-white: #fefdfb;
      --soft-cream: #faf8f5;
    }
    
    .font-display {
      font-family: 'Playfair Display', Georgia, serif;
    }
    
    .font-body {
      font-family: 'Source Sans 3', system-ui, sans-serif;
    }
    
    .gradient-hero {
      background: linear-gradient(135deg, #1e3a5f 0%, #2d5a87 50%, #1e40af 100%);
    }
    
    .gradient-gold {
      background: linear-gradient(135deg, #d4a84b 0%, #f0c75e 50%, #d4a84b 100%);
    }
    
    .text-gold {
      color: #d4a84b;
    }
    
    .bg-gold {
      background-color: #d4a84b;
    }
    
    .border-gold {
      border-color: #d4a84b;
    }
    
    .hover-gold:hover {
      background-color: #c49a3d;
    }
    
    .card-shadow {
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    }
    
    .nav-link {
      position: relative;
      transition: color 0.3s ease;
    }
    
    .nav-link::after {
      content: '';
      position: absolute;
      bottom: -4px;
      left: 0;
      width: 0;
      height: 2px;
      background: #d4a84b;
      transition: width 0.3s ease;
    }
    
    .nav-link:hover::after {
      width: 100%;
    }
    
    .page-section {
      display: none;
    }
    
    .page-section.active {
      display: block;
    }
    
    .animate-fade-in {
      animation: fadeIn 0.5s ease-out;
    }
    
    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(20px); }
      to { opacity: 1; transform: translateY(0); }
    }
    
    .dove-pattern {
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Cpath d='M30 10c-2 0-4 2-4 4s2 4 4 4 4-2 4-4-2-4-4-4zm0 12c-3 0-5 2-6 5l-4 8c0 1 0 2 1 3l9 8 9-8c1-1 1-2 1-3l-4-8c-1-3-3-5-6-5z' fill='%23d4a84b' fill-opacity='0.03'/%3E%3C/svg%3E");
    }
    
    .cross-icon {
      display: inline-block;
      width: 24px;
      height: 24px;
      background: linear-gradient(#d4a84b, #d4a84b) center/3px 100% no-repeat,
                  linear-gradient(#d4a84b, #d4a84b) center/100% 3px no-repeat;
    }
    
    .scroll-smooth {
      scroll-behavior: smooth;
    }
    
    input:focus, textarea:focus, select:focus {
      outline: none;
      border-color: #d4a84b;
      box-shadow: 0 0 0 3px rgba(212, 168, 75, 0.2);
    }
    
    .btn-primary {
      background: linear-gradient(135deg, #d4a84b 0%, #e8bc5a 100%);
      transition: all 0.3s ease;
    }
    
    .btn-primary:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 20px rgba(212, 168, 75, 0.4);
    }
    
    .btn-secondary {
      border: 2px solid #d4a84b;
      transition: all 0.3s ease;
    }
    
    .btn-secondary:hover {
      background: #d4a84b;
      color: white;
    }
    
    .program-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
    }
    
    .testimonial-card {
      background: linear-gradient(145deg, #ffffff 0%, #faf8f5 100%);
    }