/* cooperation.css */
.cooperation-page { padding: 60px 0; }
.hero-section { text-align: center; padding: 80px 20px; background-color: #f4f8fb; border-radius: 24px; margin-bottom: 60px; }
.hero-section h1 { font-size: 48px; color: #345E8D; margin-bottom: 20px; }
.hero-section .subtitle { font-size: 20px; color: #5A7B9A; max-width: 700px; margin: 0 auto 30px auto; line-height: 1.6; }
.btn.primary-btn { background-color: #4680B6; color: #fff; padding: 15px 35px; border-radius: 50px; text-decoration: none; font-weight: 600; font-size: 16px; transition: all 0.3s ease; border: none; cursor: pointer; }
.btn.primary-btn:hover { background-color: #345E8D; transform: translateY(-3px); }
.benefits-section { text-align: center; margin-bottom: 80px; }
.benefits-section h2, .how-it-works-section h2, .form-section h2 { font-size: 36px; color: #345E8D; margin-bottom: 40px; }
.benefits-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 30px; }
.benefit-item { background-color: #fff; padding: 30px; border-radius: 16px; box-shadow: 0 8px 30px rgba(62, 95, 133, 0.08); text-align: left; }
.benefit-item .emoji-icon { font-size: 40px; margin-bottom: 15px; display: block; }
.benefit-item h3 { font-size: 22px; color: #4A6A8A; margin-bottom: 10px; }
.benefit-item p { color: #5A7B9A; line-height: 1.6; }
.how-it-works-section { text-align: center; margin-bottom: 80px; }
.steps-container { display: flex; justify-content: center; align-items: center; gap: 20px; flex-wrap: wrap; }
.step-item { display: flex; align-items: center; gap: 15px; }
.step-item span { width: 50px; height: 50px; border-radius: 50%; background-color: #4680B6; color: #fff; font-size: 24px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.step-item p { font-size: 18px; font-weight: 500; color: #3E5F85; }
.step-arrow { font-size: 30px; color: #9FB3C8; }
.form-section { background-color: #f4f8fb; padding: 60px 20px; border-radius: 24px; text-align: center; }
.callback-form { max-width: 500px; margin: 0 auto; display: flex; flex-direction: column; gap: 20px; }
.callback-form input { width: 100%; padding: 15px; border: 1px solid #e0eaf3; border-radius: 8px; font-size: 16px; box-sizing: border-box;}
.form-message { margin-top: 20px; padding: 15px; border-radius: 8px; font-weight: 500; border: 1px solid; }