.page-about { color: #333333; max-width: 100%; overflow-x: hidden; }
.page-about__hero-section { display: flex; flex-direction: column; width: 100%; padding: 10px 0 0; }
.page-about__hero-image { width: 100%; }
.page-about__hero-img { display: block; width: 100%; height: auto; object-fit: cover; margin: 0; }
.page-about__hero-content { text-align: center; padding: 20px 16px 24px; }
.page-about__main-title { font-weight: 800; line-height: 1.25; letter-spacing: -0.02em; margin: 0 auto 12px; max-width: 900px; }
.page-about__hero-description { max-width: 800px; margin: 0 auto 20px; line-height: 1.6; font-size: 1.05rem; }
.page-about__hero-cta-group, .page-about__cta-group { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; width: 100%; max-width: 100%; box-sizing: border-box; overflow: hidden; }
.page-about__cta-btn { display: inline-block; padding: 12px 28px; border-radius: 40px; font-weight: 700; font-size: 1rem; text-decoration: none; border: none; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease; text-align: center; max-width: 100%; box-sizing: border-box; white-space: normal; word-wrap: break-word; }
.page-about__cta-btn--register:hover, .page-about__cta-btn--consult:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25); }
.page-about__cta-btn--login:hover, .page-about__cta-btn--support:hover, .page-about__cta-btn--download:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2); }
.page-about__cta-btn--register, .page-about__cta-btn--login, .page-about__cta-btn--consult { background: #C30808; color: #FFFF00; }
.page-about__cta-btn--download, .page-about__cta-btn--support { background: #017439; color: #FFFFFF; }
.page-about__intro-section, .page-about__services-section, .page-about__journey-section { background: #FFFFFF; padding: 40px 16px; }
.page-about__section-subtitle { color: #017439; font-weight: 750; text-align: center; margin: 0 auto 20px; font-size: 1.9rem; line-height: 1.3; }
.page-about__section-subtitle--light { color: #FFFFFF; }
.page-about__intro-content { max-width: 1000px; margin: 0 auto; }
.page-about__intro-text { line-height: 1.7; font-size: 1.05rem; }
.page-about__intro-section .page-about__section-subtitle::after, .page-about__services-section> .page-about__section-subtitle::after, .page-about__journey-section > .page-about__section-subtitle::after, .page-about__faq-section > .page-about__section-subtitle::after { content: ''; display: block; width: 60px; height: 4px; background: #017439; border-radius: 2px; margin: 8px auto 0; }
.page-about__values-section, .page-about__team-section { background: #F4F9F7; padding: 40px 16px; }
.page-about__values-section .page-about__section-subtitle::after, .page-about__team-section .page-about__section-subtitle::after { content: ''; display: block; width: 60px; height: 4px; background: #017439; border-radius: 2px; margin: 8px auto 0; }
.page-about__values-section .page-about__section-subtitle, .page-about__team-section .page-about__section-subtitle { color: #017439; }
.page-about__stats-section, .page-about__commitment-section, .page-about__history-section { background: #017439; padding-top: 30px; padding-bottom: 30px; }
.page-about__section-subtitle--light::after { content: ''; display: block; width: 60px; height: 4px; background: #FFFFFF; border-radius: 2px; margin: 8px auto 0; }
.page-about__values-grid, .page-about__services-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; max-width: 1200px; margin: 0 auto; }
.page-about__value-card, .page-about__service-item { background: #FFFFFF; border-radius: 16px; padding: 24px; flex: 1 1 300px; max-width: 360px; box-shadow: 0 4px 16px rgba(0,0,0,0.05); display: flex; flex-direction: column; box-sizing: border-box; }
.page-about__card-image, .page-about__service-image { width: 100%; max-width: 100%; height: auto; border-radius: 12px; margin-bottom: 16px; }
.page-about__card-title, .page-about__service-title { font-size: 1.25rem; font-weight: 700; color: #017439; margin: 0 0 8px; }
.page-about__card-title { text-align: center; margin-bottom: 12px; }
.page-about__value-list { list-style: none; padding: 0; margin: 0; line-height: 1.6; list-style: disc; padding-left: 20px; color: #444; font-size: 0.95rem; }
.page-about__stats-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 40px; margin-top: 20px; color: #FFFFFF; padding-bottom: 20px; }
.page-about__stat-item { text-align: center; }
.page-about__stat-number { font-size: 2.6rem; font-weight: 800; color: #FFFFFF; display: block; line-height: 1.2; }
.page-about__stat-label { font-size: 1rem; color: #e0f2e9; }
.page-about__services-description { text-align: center; max-width: 800px; margin: 0 auto 32px; }
.page-about__timeline { max-width: 800px; margin: 0 auto; position: relative; padding-left: 30px; border-left: 3px solid #CCE6DA; }
.page-about__timeline-item { position: relative; margin-bottom: 24px; }
.page-about__timeline-item::before { content: ''; position: absolute; left: -36px; top: 6px; width: 12px; height: 12px; background: #017439; border-radius: 50%; border: 3px solid white; }
.page-about__timeline-content { background: #f7faf8; border-radius: 8px; padding: 16px; }
.page-about__timeline-content h3 { color: #017439; margin-bottom: 5px; }
.page-about__commitment-content, .page-about__contact-container { max-width: 1000px; margin: 0 auto; padding: 0 16px; color: #FFFFFF; }
.page-about__commitment-lead, .page-about__guide-inner :not(.page-about__section-subtitle--light), .page-about__cta-section .page-about__cta-title { color: #FFFFFF; text-align: center; }
.page-about__guide-inner p { color: #FFFFFF; }
.page-about__commitment-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 24px; margin-top: 32px; background-color: #EDF3EF; color: #444444; }
.page-about__commitment-item { background: #FFFFFF; padding: 20px; border-radius: 12px; margin-bottom: 16px; box-shadow: 0 2px 6px rgba(0,0,0,0.05); }
.page-about__commitment-title { color: #017439; margin-bottom: 10px; }
.page-about__commitment-widget { background: #017439; padding: 20px; border-radius: 12px; color: #FFFFFF; margin-top: 32px; }
.page-about__widget-title { color: #FFFFFF; }
.page-about__team-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; max-width: 1200px; margin: 0 auto; }
.page-about__team-card { background: #FFFFFF; border-radius: 16px; padding: 24px; text-align: center; flex: 1 1 260px; max-width: 320px; box-sizing: border-box; }
.page-about__team-avatar { width: 100%; max-width: 200px; margin: 0 auto 12px; }
.page-about__team-image { width: 100%; height: auto; border-radius: 50%; aspect-ratio: 1/1; object-fit: cover; }
.page-about__team-name { margin: 12px 0 4px; font-size: 1.2rem; color: #222; }
.page-about__team-role { font-weight: 600; color: #017439; }
.page-about__team-desc { font-size: 0.9rem; color: #555; }
.page-about__cta-section { background: #F4F9F7; padding: 30px 16px; }
.page-about__cta-section .page-about__cta-title { color: #222222; }
.page-about__cta-section .page-about__cta-text { color: #444; }
.page-about__cta-content { max-width: 800px; margin: 0 auto; text-align: center; }
.page-about__cta-section .page-about__cta-btn--register, .page-about__contact-section .page-about__cta-btn--consult { background: #C30808; color: #FFFF00; }
.page-about__faq-section { max-width: 900px; margin: 0 auto; padding: 30px 16px; }
.page-about__faq-list { background: #FFFFFF; border-radius: 8px; }
.page-about__faq-item { border-bottom: 1px solid #E0E0E0; }
.page-about__faq-item:last-child { border-bottom: 0; }
.page-about__faq-question { background: #FFFFFF; cursor: pointer; list-style: none; padding: 16px 20px; display: flex; justify-content: space-between; align-items: center; font-weight: 600; color: #333333; }
.page-about__faq-question::-webkit-details-marker { display: none; }
.page-about__faq-question:hover { background: #F2F7F5; }
.page-about__faq-answer { padding: 0 20px 16px; line-height: 1.6; color: #555; }
.page-about__faq-toggle { font-size: 1.5rem; color: #017439; margin-left: 12px; font-weight: 700; }
.page-about__contact-section { background: #F4F9F7; padding: 40px 16px; }
.page-about__contact-section .page-about__section-subtitle::after { content: ''; display: block; width: 60px; height: 4px; background: #017439; border-radius: 2px; margin: 8px auto 0; }
.page-about__contact-info { max-width: 700px; margin: 0 auto; background: white; padding: 30px; border-radius: 16px; box-shadow: 0 4px 16px rgba(0,0,0,0.05); }
.page-about__contact-info p { text-align: center; }
.page-about__contact-list { list-style: none; padding: 0; margin: 20px 0; line-height: 1.8; }
.page-about__contact-list li { color: #234; display: flex; flex-wrap: wrap; gap: 8px; }
.page-about__contact-label { min-width: 113px; font-weight: 700; color: #017439; }
.page-about__contact-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 16px; }
.page-about__history-section { background: linear-gradient(135deg, #017439 0%, #025e30 100%); padding: 50px 16px; }
.page-about__guide-inner { max-width: 1100px; margin: 0 auto; }
.page-about__logo-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px 16px; justify-items: center; margin-top: 24px; }
.page-about__logo-item { background: rgba(255, 255, 255, 0.1); border-radius: 16px; padding: 16px; text-align: center; display: flex; flex-direction: column; align-items: center; width: 100%; max-width: 280px; box-sizing: border-box; }
.page-about__guide-image { max-width: 100%; width: 100%; height: auto; border-radius: 12px; }
.page-about__guide-step { background: #FFFFFF; color: #017439; border-radius: 50%; width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: 1.2rem; margin-top: 8px; }
.page-about__guide-step-title { color: #FFFFFF; font-weight: 800; margin: 8px 0; }
.page-about__guide-step-desc { color: #E6F4EE; font-size: 0.9rem; }
@media (max-width: 768px) {
  .page-about__hero-image, .page-about img { max-width: 100% !important; height: auto !important; }
  .page-about__hero-content { padding: 16px 12px 20px; }
  .page-about__main-title { font-size: 1.6rem; }
  .page-about__hero-description { font-size: 1rem; }
  .page-about__values-grid, .page-about__services-grid, .page-about__team-grid { flex-direction: column; align-items: center; }
  .page-about__value-card, .page-about__service-item, .page-about__team-card { max-width: 100%; }
  .page-about__stats-grid { gap: 16px; }
  .page-about__logo-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .page-about__logo-item { max-width: 100%; }
  .page-about__cta-group, .page-about__commitment-grid, .page-about__team-grid { flex-direction: column; align-items: center; }
  .page-about__cta-btn { width: 100%; max-width: 100%; box-sizing: border-box; white-space: normal; word-wrap: break-word; }
  .page-about__commitment-grid { display: flex; }
}
@media (max-width: 480px) {
  .page-about__section-subtitle { font-size: 1.6rem; }
}