        :root {
            --ocean-blue: #0077be;
            --ocean-dark: #004d7a;
            --sea-foam: #7dd3c0;
        }
        .bg-ocean-blue { background-color: var(--ocean-blue); }
        .bg-ocean-dark { background-color: var(--ocean-dark); }
        .bg-sea-foam { background-color: var(--sea-foam); }
        .text-ocean-blue { color: var(--ocean-blue); }
        .text-ocean-dark { color: var(--ocean-dark); }
        
        .hero-section { 
            background: linear-gradient(135deg, var(--ocean-blue), var(--ocean-dark)); 
            position: relative;
            z-index: 0;
            overflow: hidden;
            min-height: 100vh;
            display: flex;
            align-items: center;
            padding: 2rem 0;
        }
        .hero-section::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background-size: 100% 100px;
            z-index: -1;
            pointer-events: none;
        }

        
        .register-card {
            position: relative;
            background: white;
            border-radius: 20px;
            box-shadow: 0 20px 60px rgba(0,0,0,0.1);
            overflow: hidden;
            z-index: 1;
        }
        
        .register-form {
            padding: 3rem;
        }
        
        .form-control {
            border: 2px solid #e9ecef;
            border-radius: 12px;
            padding: 0.75rem 1rem;
            font-size: 1rem;
            transition: border-color 0.3s ease, box-shadow 0.3s ease;
        }
        
        .form-control:focus {
            border-color: var(--ocean-blue);
            box-shadow: 0 0 0 0.2rem rgba(0, 119, 190, 0.25);
        }
        
        .form-select {
            border: 2px solid #e9ecef;
            border-radius: 12px;
            padding: 0.75rem 1rem;
            font-size: 1rem;
            transition: border-color 0.3s ease, box-shadow 0.3s ease;
        }
        
        .form-select:focus {
            border-color: var(--ocean-blue);
            box-shadow: 0 0 0 0.2rem rgba(0, 119, 190, 0.25);
        }
        
        .btn-register {
            background: linear-gradient(135deg, var(--ocean-blue), var(--ocean-dark));
            border: none;
            border-radius: 12px;
            padding: 0.75rem 2rem;
            font-weight: 600;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        
        .btn-register:hover {
            transform: translateY(-2px);
            box-shadow: 0 8px 25px rgba(0, 119, 190, 0.3);
            background: linear-gradient(135deg, var(--ocean-dark), var(--ocean-blue));
        }
        
        .divider {
            position: relative;
            text-align: center;
            margin: 2rem 0;
        }
        
        .divider::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 0;
            right: 0;
            height: 1px;
            background: #dee2e6;
        }
        
        .divider span {
            background: white;
            padding: 0 1rem;
            color: #6c757d;
            font-size: 0.9rem;
        }
        
        .social-btn {
            border: 2px solid #e9ecef;
            border-radius: 12px;
            padding: 0.75rem;
            transition: all 0.3s ease;
        }
        
        .social-btn:hover {
            border-color: var(--ocean-blue);
            transform: translateY(-2px);
        }
        
        .password-strength {
            font-size: 0.85rem;
            margin-top: 0.5rem;
        }
        
        .strength-bar {
            height: 4px;
            border-radius: 2px;
            background: #e9ecef;
            margin-top: 0.25rem;
            overflow: hidden;
        }
        
        .strength-fill {
            height: 100%;
            transition: all 0.3s ease;
            border-radius: 2px;
        }
        
        .terms-box {
            background: #f8f9fa;
            border-radius: 12px;
            padding: 1rem;
            border: 2px solid #e9ecef;
        }