/* Source homepage bridge: keep the original page rhythm while retaining Pboot data bindings. */
.source-home-banner { max-width: 1200px; margin: 0 auto; }
.source-home-banner .banner-slide img { display:block; width:100%; height:auto; max-height:420px; object-fit:cover; }
.source-home-sci { max-width:1200px; margin:0 auto; }
.source-home-sci .index_sci_div { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:16px 36px; }
.source-home-sci img { max-width:100%; height:auto; }
.source-home-sci button { border:0; border-radius:2px; background:#f39800; color:#fff; cursor:pointer; padding:12px 32px; font-size:16px; }
.source-home-main { max-width:1200px; margin:0 auto; }
.source-home-section { margin:0 auto 34px; }
.translationEdit-home .editorial-block .J-role-list { display:flex; flex-wrap:nowrap; align-items:stretch; }
.translationEdit-home .editorial-block .J-role-list > li { display:flex; flex:0 0 auto; align-items:stretch; }
.translationEdit-home .editorial-block .J-role-content { display:flex; height:100%; box-sizing:border-box; }
.translationEdit-home .editorial-block .J-role-content > a { display:flex; flex-direction:column; min-height:100%; box-sizing:border-box; }
.source-home-section-title { color:#333; font-size:22px; line-height:1.55; margin:36px 0 20px; text-align:center; }
.source-home-section-title span:first-child { color:#9a9a9a; font-size:12px; letter-spacing:2px; }
.source-home-experiment .experiment-box img { display:block; width:100%; height:auto; }
.source-home-information { padding:0 18px; }
.source-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; }
.source-info-grid article { border-top:2px solid #f39800; padding:16px 20px; background:#fafafa; }
.source-info-grid h2 { margin:0 0 12px; font-size:20px; font-weight:500; }
.source-info-grid a { display:flex; justify-content:space-between; gap:12px; border-bottom:1px solid #eee; padding:9px 0; color:#555; }
.source-info-grid a:hover { color:#f39800; }
.source-info-grid time { color:#aaa; white-space:nowrap; }
.source-testimonial-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; padding:0 18px; }
.source-testimonial-grid blockquote { margin:0; min-height:140px; padding:20px; background:#fafafa; border-top:2px solid #ddd; }
.source-testimonial-grid p { margin:0 0 16px; color:#666; line-height:1.7; }
.source-testimonial-grid strong { color:#333; font-weight:500; }
.source-home-testimonials.message-block { width:100%; max-width:none; margin:0 auto 34px; vertical-align:top; color:#757575; }
.source-home-testimonials.message-block .source-home-section-title { margin-top:36px; }
.source-home-testimonials.message-block .source-home-section-title span:first-child { color:#25538a; }
.source-home-testimonials.message-block .source-home-section-title span:last-child { color:#25538a; }
.source-home-testimonials .msg-list { background:#f5f5f5; min-height:0; border-radius:10px; width:100%; overflow-x:auto; overflow-y:hidden; box-sizing:border-box; padding:10px; }
.source-home-testimonials .msg-list ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin:0; padding:0; list-style:none; align-items:stretch; }
.source-home-testimonials .msg-list li { min-width:0; min-height:230px; padding:15px; border-radius:10px; background:#fff; color:#626262; margin-bottom:0!important; align-self:stretch; box-sizing:border-box; }
.source-home-testimonials .msg-list li:last-child { margin-bottom:0; }
.source-home-testimonials .msg-list .msg-header { padding-bottom:10px; border-bottom:1px dashed #d7d7d7; margin-bottom:10px; }
.source-home-testimonials .msg-list .msg-header .name { color:#25538a; margin-right:28px; }
.source-home-testimonials .msg-list .msg-header .from { font-size:13px; }
.source-home-testimonials .msg-list .msg-content .text-title { color:#cc0000; margin-bottom:15px; }
.source-home-testimonials .msg-list .msg-content .text { font-size:13px; line-height:1.7; }
.source-partner-grid { display:flex; flex-wrap:wrap; justify-content:center; gap:0; margin:0; padding:0; font-size:0; text-align:center; }
.source-partner-grid li { display:inline-block; width:149px; height:60px; box-sizing:border-box; margin:0 22px 20px 0; padding:6px; overflow:hidden; border:1px solid #25538a; border-radius:6px; background:#fff; box-shadow:3px 4px 0 1px #25538a; }
.source-partner-grid li:nth-child(7n) { margin-right:0; }
.source-partner-grid a { display:block; width:100%; height:100%; }
.source-partner-grid img { display:block; width:100%; height:100%; object-fit:contain; }
.source-home-contact { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:36px 0 0; padding:24px 36px; background:#f39800; color:#fff; }
.source-home-contact strong,.source-home-contact span { display:block; }
.source-home-contact strong { font-size:22px; font-weight:500; }
.source-home-contact span { margin-top:8px; opacity:.9; }
.source-home-contact a { display:inline-block; padding:11px 28px; border:1px solid #fff; color:#fff; }
@media (max-width: 760px) {
  .source-home-testimonials.message-block { width:auto; max-width:none; margin-left:33px; margin-right:33px; }
  .source-home-testimonials .msg-list ul { display:flex; flex-wrap:nowrap; gap:14px; }
  .source-home-testimonials .msg-list li { flex:0 0 min(86vw, 360px); }
  .source-home-sci .index_sci_div,.source-home-contact { padding:14px 18px; }
  .source-info-grid,.source-testimonial-grid { grid-template-columns:1fr; }
  .source-home-contact { align-items:flex-start; flex-direction:column; }
}
.cooperation-partners-art { max-width: 1306px; margin: 0 auto; text-align: center; }
.cooperation-partners-art img { display: block; width: 100%; height: auto; }
