a.button.large{
  line-height: 20px;
}

a.button.large::after{
  width: 26px;
  height: 26px;
  margin: -3px -3px -3px 5px;
}

div.banner{
  max-width: 100%;
  margin: 0 auto 30px auto;
}

div.banner div.video{
  border-radius: 0;
}

div.banner div.video blockquote{
  top: 20px;
  padding: 0 8%;
  font-size: 20px;
  line-height: 20px;
}

div.banner div.video blockquote::before,
div.banner div.video blockquote::after{
  width: 18px;
  height: 18px;
}

div.banner div.video blockquote::before{
  margin: 0 1px 0 -19px;
}

div.banner div.video blockquote::after{
  top: 10px;
}

div.columns2{
  display: block;
}

div.columns2 > div:last-child{
  margin-top: 22px;
}

div.columns4{
  grid-template-columns: 47% 47%;
  grid-column-gap: 6%;
  grid-row-gap: 22px;
}

div.accordion div.item div.caption{
  background-position: right 2px center;
}

div.accordion div.item div.caption h2{
  padding-right: 20px;
}

div.accordion div.item div.content{
  padding: 0 10px 0 0;
}

div.accordion div.item.open div.content{
  padding: 0 10px 30px 0;
}

div.links{
  margin: 22px 0 33px 0;
}

div.links:first-child{
  margin-top: -6px;
}

div.links a{
  display: block;
  width: 100%;
  max-width: none;
  margin: 6px 0;
}

div.links a span.text{
  min-height: 0;
}

div.blocks{
  margin: 22px 0 33px 0;
}

div.blocks:first-child{
  margin-top: -6px;
}

div.blocks div.block{
  display: block;
  width: 100%;
  max-width: none;
  min-height: 0;
  margin: 6px 0;
}

table.publications td{
  font-size: 12px;
  line-height: 16px;
}

table.publications td:nth-child(n + 2){
  padding-left: 10px;
}

table.publications td:nth-child(n + 3){
  display: none;
}

div.employees div.employee{
  float: none;
  width: 100%;
  font-size: 14px;
  line-height: 20px;
}

div.employees div.employee img{
  width: 200px;
  height: 200px;
  border-width: 8px;
  border-radius: 16px;
}

aside.connectingthedots{
  grid-template-columns: 140px 140px;
  grid-column-gap: 80px;
  width: 360px;
  margin: 0 auto 40px auto;
}

aside.connectingthedots.in{
  grid-column-gap: 0;
  width: 280px;
}

aside.connectingthedots div.left{
  font-size: 16px;
  line-height: 20px;
}

aside.connectingthedots div.left.en{
  padding: 0 10px 1px 10px;
  font-size: 14px;
  line-height: 17px;
}

div.separator{
  margin: 0 auto 30px auto;
}

header.wrap{
  padding: 15px 0;
  max-width: 100%;
}

header a.logo{
  margin-left: 5%;
}

header a.logo img{
  height: 50px;
  margin-left: -3px;
}

header div.menu{
  display: block;
}

header div.nav{
  clear: both;
  height: 0;
  padding: 0 5%;
  overflow: hidden;
  transition: height 0.5s;
  interpolate-size: allow-keywords;
}

header div.nav.open{
  height: auto;
}

header nav{
  float: none;
  margin: 0 0 0 -10px;
}

header nav.lang{
  float: none;
  margin: 10px 0 0 -10px;
}

header nav li{
  float: none;
}

header nav.lang li{
  display: inline-block;
}

header nav a,
header nav.lang a{
  display: block;
  padding: 8px 14px;
}

header nav div.toggle{
  display: none;
}

header nav div.child{
  display: block;
  position: static;
  background-color: transparent;
  border-radius: 0;
  min-width: 0;
  padding-left: 25px;
}

article{
  margin-bottom: 40px;
}

footer{
  display: block;
  margin-bottom: 40px;
}

footer div.left img.anniversary{
  margin: 0 0 10px 5%;
}

footer div.left img.logo{
  height: 50px;
  margin-left: -3px;
}

footer div.left p{
  width: 100%;
}

footer div.right{
  margin-top: 40px;
}

footer input[type=text],
footer input[type=email],
footer input[type=tel],
footer textarea{
  width: 100%;
}