*{box-sizing:border-box}
body.rco-page{
  margin:0;
  background:#f4f6f5;
  color:#17221d;
  font:14px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif
}
.rco-main{
  width:min(1180px,calc(100% - 28px));
  margin:0 auto;
  padding:24px 0 50px
}
.rco-hero,.rco-card{
  background:#fff;
  border:1px solid #e2e9e5;
  border-radius:24px
}
.rco-hero{
  padding:clamp(24px,5vw,48px);
  background:radial-gradient(circle at 92% 8%,rgba(18,139,95,.11),transparent 34%),#fff
}
.rco-kicker,.rco-section-head span{
  display:block;
  color:#618071;
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em
}
.rco-hero h1{
  margin:8px 0 10px;
  max-width:850px;
  font-size:clamp(32px,5vw,56px);
  line-height:1.03;
  letter-spacing:-.045em
}
.rco-hero>p{
  max-width:760px;
  margin:0;
  color:#617169;
  font-size:16px
}
.rco-kpis{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:22px
}
.rco-kpis>div{
  min-width:145px;
  padding:13px 15px;
  background:#f4f8f6;
  border-radius:15px
}
.rco-kpis span{
  display:block;
  color:#74827b;
  font-size:11px
}
.rco-kpis strong{
  display:block;
  margin-top:2px;
  font-size:23px
}
.rco-card{
  margin-top:12px;
  padding:22px
}
.rco-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px
}
.rco-section-head h2{
  margin:2px 0 0;
  font-size:21px
}
.rco-section-head a,.rco-back a{
  color:#21664a;
  font-weight:750;
  text-decoration:none
}
.rco-operator-grid,.rco-train-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:16px
}
.rco-operator-grid>a,.rco-train-grid>a{
  display:block;
  padding:15px;
  color:inherit;
  text-decoration:none;
  background:#f5f8f6;
  border-radius:16px;
  transition:background .15s ease,transform .15s ease
}
.rco-operator-grid>a:hover,.rco-train-grid>a:hover{
  background:#edf5f1;
  transform:translateY(-1px)
}
.rco-operator-grid strong,.rco-operator-grid span,.rco-operator-grid small,
.rco-train-grid strong,.rco-train-grid span,.rco-train-grid small{
  display:block
}
.rco-operator-grid span,.rco-train-grid span{
  margin-top:4px;
  color:#596b62
}
.rco-operator-grid small,.rco-train-grid small{
  margin-top:4px;
  color:#7a877f
}
.rco-route-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin-top:16px
}
.rco-route-grid>div,.rco-data-list>div{
  padding:13px 14px;
  background:#f6f8f7;
  border-radius:14px
}
.rco-route-grid strong,.rco-route-grid span,
.rco-data-list strong,.rco-data-list span{
  display:block
}
.rco-route-grid span,.rco-data-list span{
  margin-top:3px;
  color:#718078;
  font-size:12px
}
.rco-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:16px
}
.rco-tags span{
  padding:6px 9px;
  background:#eef5f1;
  border-radius:999px;
  color:#365c4b;
  font-size:12px
}
.rco-card h3{
  margin:20px 0 8px
}
.rco-data-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px
}
.rco-muted{
  color:#6f7e76
}
.rco-back{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:20px 5px
}
.rc-train-operator-entity{
  margin:0 0 10px;
  padding:0 2px
}
.rc-train-operator-entity a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 11px;
  border-radius:999px;
  background:#edf5f1;
  color:#245f48;
  font-weight:750;
  text-decoration:none
}
@media(max-width:820px){
  .rco-operator-grid,.rco-train-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}
@media(max-width:560px){
  .rco-main{
    width:min(100% - 18px,1180px);
    padding-top:12px
  }
  .rco-hero{
    padding:22px 16px;
    border-radius:20px
  }
  .rco-card{
    padding:16px;
    border-radius:19px
  }
  .rco-operator-grid,.rco-train-grid,.rco-route-grid,.rco-data-list{
    grid-template-columns:1fr
  }
  .rco-section-head{
    align-items:flex-start;
    flex-direction:column
  }
}
