/* About and contact pages */
.page_ban_about{position:relative;overflow:hidden;background:#f5f5f5;}
.page_ban_about>img{width:100%;max-height:360px;display:block;object-fit:cover;}
.about_intro{padding-bottom:10px;}
.about_intro_inner{display:flex;align-items:flex-start;gap:70px;}
.about2_img{flex:0 0 460px;}
.about_txt{flex:1;width:auto;}
.about_content{line-height:28px;text-align:justify;color:#555;}
.about_content p{margin-top:15px;}
.about_content img{max-width:100%;height:auto;}
.about_environment{padding:1px 0 40px;background:#f5f7fa;}
.environment_swiper{overflow:hidden;padding-bottom:42px;}
.environment_swiper .swiper-wrapper{align-items:stretch;}
.environment_swiper .swiper-slide{height:auto;box-sizing:border-box;}
.environment_item{overflow:hidden;background:#fff;transition:all .3s ease;}
.environment_item:hover{box-shadow:0 8px 24px rgba(0,0,0,.1);transform:translateY(-3px);}
.environment_pic{height:500px;overflow:hidden;background:#eee;}
.environment_pic img{width:100%;height:100%;display:block;object-fit:cover;transition:all .5s ease;}
.environment_item:hover .environment_pic img{transform:scale(1.05);}
.environment_text{padding:18px 20px 20px;}
.environment_text h3{font-size:17px;font-weight:normal;color:#222;}
.environment_text p{margin-top:10px;line-height:22px;color:#888;font-size:13px;}
.environment_swiper .swiper-pagination{bottom:8px;}
.contact_layout{display:flex;gap:55px;align-items:stretch;}
.contact_info{width:360px;padding:15px 0;}
.contact_item{padding:20px 0;border-bottom:1px solid #eee;}
.contact_item:last-child{border-bottom:0;}
.contact_label{display:block;margin-bottom:10px;font-size:14px;color:#999;}
.contact_item a,.contact_item p{font-size:18px;line-height:28px;color:#333;word-break:break-all;}
.contact_item a:hover{color:#de0029;}
.contact_form{flex:1;padding:28px 35px;background:#f5f7fa;}
.contact_form h3{margin-bottom:22px;font-size:21px;font-weight:normal;color:#222;}
.contact_form_row{display:flex;gap:18px;}
.contact_form input,.contact_form textarea{width:100%;border:1px solid #ddd;background:#fff;box-sizing:border-box;font-family:inherit;font-size:14px;color:#555;outline:none;}
.contact_form input{height:48px;padding:0 15px;}
.contact_form textarea{height:130px;margin-top:18px;padding:14px 15px;resize:vertical;}
.contact_form input[type=submit]{width:145px;margin-top:18px;border:0;background:#035cac;color:#fff;cursor:pointer;}
.contact_form input[type=submit]:hover{background:#146bbb;}
.contact_map_section{padding-bottom:10px;}
#dituContent{width:100%;height:420px;border:1px solid #e5e5e5;box-sizing:border-box;background:#f2f2f2;}
@media screen and (max-width:900px){
  .about_intro_inner{gap:30px;}
  .about2_img{flex-basis:40%;}
  .contact_layout{gap:30px;}
  .contact_info{width:32%;}
}

.about_documents{padding:1px 0 46px;background:#fff;}
.document_grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.document_item{background:#fff;border:1px solid #e8edf3;box-sizing:border-box;transition:all .3s ease;}
.document_item:hover{box-shadow:0 8px 24px rgba(0,0,0,.09);transform:translateY(-3px);}
.document_pic{display:block;height:260px;overflow:hidden;background:#f1f3f6;}
.document_pic img{width:100%;height:100%;display:block;object-fit:cover;transition:all .45s ease;}
.document_item:hover .document_pic img{transform:scale(1.04);}
.document_body{padding:18px 20px 22px;}
.document_body h3{font-size:18px;font-weight:normal;color:#222;line-height:26px;}
.document_body p{min-height:44px;margin-top:8px;font-size:13px;line-height:22px;color:#888;}
.document_btn{display:inline-block;margin-top:14px;padding:0 22px;height:34px;line-height:34px;background:#035cac;color:#fff;}
.document_btn:hover{background:#146bbb;color:#fff;}
@media screen and (max-width:900px){
  .document_grid{grid-template-columns:repeat(2,1fr);}
}

/* News card list and team carousel */
.news_card_section{padding:44px 0 10px;}
.news_card_head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;}
.news_card_head h2{font-size:26px;line-height:34px;font-weight:normal;color:#222;}
.news_card_grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.news_card_item{background:#fff;border:1px solid #e8edf3;box-sizing:border-box;transition:all .3s ease;}
.news_card_item:hover{box-shadow:0 8px 24px rgba(0,0,0,.09);transform:translateY(-3px);}
.news_card_pic{display:block;height:220px;overflow:hidden;background:#f1f3f6;}
.news_card_pic img{width:100%;height:100%;display:block;object-fit:cover;transition:all .45s ease;}
.news_card_item:hover .news_card_pic img{transform:scale(1.04);}
.news_card_body{padding:18px 20px 22px;}
.news_card_name{display:block;font-size:18px;line-height:26px;color:#222;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
.news_card_name:hover{color:#035cac;}
.news_card_desc{height:44px;margin-top:8px;font-size:13px;line-height:22px;color:#888;overflow:hidden;}
.news_card_meta{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid #edf0f5;font-size:13px;color:#999;}
.news_card_meta a{display:inline-block;padding:0 18px;height:32px;line-height:32px;background:#de0029;color:#fff;}
.news_card_meta a:hover{background:#c40024;color:#fff;}
.news_card_section .pagebar{margin-top:34px;}
.about_team{padding:1px 0 46px;background:#fff;}
.team_swiper{overflow:hidden;padding-bottom:42px;}
.team_swiper .swiper-wrapper{align-items:stretch;}
.team_swiper .swiper-slide{height:auto;box-sizing:border-box;}
.team_item{background:#fff;border:1px solid #e8edf3;transition:all .3s ease;}
.team_item:hover{box-shadow:0 8px 24px rgba(0,0,0,.09);transform:translateY(-3px);}
.team_item a{display:block;color:#222;}
.team_pic{aspect-ratio:4/5;overflow:hidden;background:#f1f3f6;}
.team_pic img{width:100%;height:100%;display:block;object-fit:cover;transition:all .45s ease;}
.team_item:hover .team_pic img{transform:scale(1.04);}
.team_item h3{padding:14px 16px 16px;font-size:17px;line-height:24px;font-weight:normal;text-align:center;color:#222;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
.team_swiper .swiper-pagination{bottom:8px;}
@media screen and (max-width:900px){
  .news_card_grid{grid-template-columns:repeat(2,1fr);}
}