.expertise__background,
.expertise__content,
.expertise__content .container,
.expertise__content h2,
.expertise__list__icon:after,
.expertise__list__icon:before,
.expertise__list__icon div,
.expertise__list h2,
.expertise__list ol,
.expertise__list p,
.process__list__item:after,
.process__list__item:before,
.process__list span:after,
.process__text li {
 transition-duration:.4s;
 transition-timing-function:cubic-bezier(.25,.74,.22,.99)
}
.expertise__content ol li:before {
 font-size:1.2rem;
 line-height:1.33333em
}
.expertise__content ol li {
 font-size:1.6rem;
 line-height:1.57143em;
 font-weight:300
}
@media screen and (min-width:668px) and (min-height:416px) {
 .expertise__content ol li {
  font-size:1.6rem;
  line-height:1.75em
 }
}
@media screen and (min-width:1400px) {
 .expertise__content ol li:before {
  font-size:1.4rem;
  line-height:1.57143em
 }
 .expertise__content ol li {
  font-size:2rem;
  line-height:1.75em
 }
}
.container--capabilities {
 max-width:none
}
@media screen and (min-width:668px) and (min-height:416px) {
 .container--capabilities {
  padding-left:16.66667%;
  padding-right:16.66667%
 }
}
@media screen and (min-width:668px) and (min-height:416px) {
 .expertise {
  height:100vh;
  min-height:0
 }
}
@media screen and (min-width:668px) and (min-height:416px) {
 .expertise__main-text {
  max-width:540px;
  margin-left:auto;
  margin-right:auto
 }
 .is-ie .expertise__main-text {
  width:540px
 }
}
.expertise__content {
 transition-property:opacity;
 will-change:opacity
}
.expertise__content .container {
 height:100%;
 -webkit-box-pack:justify;
 -ms-flex-pack:justify;
 justify-content:space-between;
 transition-property:padding
}
.expertise__content h2 {
 position:relative;
 margin-top:0;
 transition-property:color,font-size;
 font-weight: 600;
}
.expertise__content ol {
 counter-reset:list;
 position:relative;
 left:-20px
}
.expertise__content ol li {
 position:relative;
 /*! counter-increment:list; */
 padding:12px 0 0 0px;
 text-align:left;
 font-weight: 600;
 list-style: disclosure-closed;
}
.expertise__content ol li:before {
 /*! content:counter(list); */
 /*! position:absolute; */
 /*! bottom:.37em; */
 /*! left:3px; */
 /*! opacity:.5; */
 /*! font-weight: 600; */
 /*! list-style: circle; */
}
.expertise__content.ui-dark ol {
 color:#fff
}
@media screen and (max-width:479px) and (orientation:portrait) {
 .expertise__content .container {
  padding-left:30px;
  padding-righT:30px
 }
}
@media screen and (max-width:979px) and (max-height:415px) and (orientation:landscape) {
 .expertise__content .container {
  padding-left:110px;
  padding-righT:110px
 }
}
@media (max-width:668px),screen and (max-width:979px) and (max-height:415px) and (orientation:landscape) {
 .expertise__content .container {
  display:block;
  min-height:0;
  height:auto;
  padding-top:29px;
  padding-bottom:27px
 }
  .expertise__list__icon::after, .expertise__list__icon::before, .expertise__list__icon div {
   
    border: 1px solid #fff;
   
}
 .expertise__content .expertise__background {
  /*! opacity:0 */
 }
 .expertise__content+.expertise__content {
  border-top:1px solid rgba(25,26,27,.08)
 }
 .expertise__content h2 {
  color:#f9f9f9 !important;
  font-size:1.6rem;
  line-height:27px;
  height:27px;
  margin:0
 }
 .expertise__content ol {
  display:none
 }
 .expertise__content ol li {
  font-size:1.6rem;
  padding-top:7px
 }
 .expertise__content ol li:first-child {
  padding-top:30px
 }
 .expertise__content.is-active .container {
  padding-top:41px;
  padding-bottom:41px
 }
 .expertise__content.is-active .expertise__background {
  opacity:1
 }
 .expertise__content.is-active h2 {
  font-size:2.4rem
 }
 .expertise__content.is-active.ui-dark h2 {
  color:#fff
 }
 .expertise__content.is-active ol {
  display:block
 }
}
@media screen and (min-width:668px) and (min-height:416px) {
 .expertise__content {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  text-align:center;
  pointer-events:none;
  opacity:0
 }
 .expertise__content.is-active {
  opacity:1
 }
 .expertise__content ol {
  -webkit-column-count:2;
  column-count:2;
  -webkit-column-gap:0;
  column-gap:0;
  width:66.66667vw
 }
 .expertise__content ol li:before {
  bottom:0;
  top:20px
 }
}
@media screen and (min-width:980px) {
 .expertise__content ol {
  width:50vw
 }
}
@media screen and (min-width:1200px) {
 .expertise__content ol {
  width:45.333vw;
 }
}
.expertise__background {
 position:absolute;
 left:0;
 top:0;
 width:100%;
 height:100%;
 pointer-events:none;
 transition-property:opacity
}
.expertise__list {
 display:-webkit-box;
 display:-ms-flexbox;
 display:flex;
 min-height:100vh
}
.is-ie .expertise__list {
 height:100vh
}
.expertise__list h2,
.expertise__list ol,
.expertise__list p {
 transition-property:color,opacity
}
.expertise__list li {
 border-left:1px solid rgba(25,26,27,.08);
 position:relative;
 -webkit-box-flex:1;
 -ms-flex:1 0 auto;
 flex:1 0 auto;
 text-align:center;
 display:-webkit-box;
 display:-ms-flexbox;
 display:flex;
 -webkit-box-orient:vertical;
 -webkit-box-direction:normal;
 -ms-flex-direction:column;
 flex-direction:column;
 -webkit-box-pack:center;
 -ms-flex-pack:center;
 justify-content:center;
 -webkit-box-align:center;
 -ms-flex-align:center;
 align-items:center;
 width:16.66667%
}
.expertise__list li:first-child {
 border-left:0
}
.expertise__list h2 {
 height:75px;
 margin-top:10px;
 transition-delay:.35s
}
.expertise__list a {
 position:absolute;
 left:50%;
 top:50%;
 margin:-115px 0 0 -50px;
 width:100px;
 height:140px
}
.expertise__list.has-active h2 {
 opacity:0;
 transition-delay:0s
}
.expertise__list.has-active li {
 border-color:hsla(0,0%,100%,.08)
}
.expertise__list__icon {
 width:56px;
 height:56px;
 position:relative
}
.expertise__list__icon:after,
.expertise__list__icon:before,
.expertise__list__icon div {
 content:"";
 position:absolute;
 left:0;
 top:0;
 border:1px solid #ed1c24;
 border-radius:56px;
 transition-property:left,top,width,height,background-color,border-color,-webkit-transform;
 transition-property:transform,left,top,width,height,background-color,border-color;
 transition-property:transform,left,top,width,height,background-color,border-color,-webkit-transform
}
.expertise__list__icon:before {
 width:40px;
 height:40px;
 opacity:.16;
 left:8px;
 top:8px
}
.expertise__list__icon:after {
 width:24px;
 height:24px;
 opacity:.48;
 left:16px;
 top:16px
}
.expertise__list__icon div {
 background:transparent;
 width:10px;
 height:10px;
 left:23px;
 top:23px
}
.is-active .expertise__list__icon:after,
.is-active .expertise__list__icon:before,
.is-active .expertise__list__icon div {
 -webkit-animation:scalepulse 1.3s infinite;
 animation:scalepulse 1.3s infinite;
 -webkit-animation-timing-function:ease;
 animation-timing-function:ease;
 -webkit-animation-fill-mode:both;
 animation-fill-mode:both
}
.is-active .expertise__list__icon:before {
 -webkit-animation-delay:.3s;
 animation-delay:.3s;
 width:56px;
 height:56px;
 left:0;
 top:0
}
.is-active .expertise__list__icon:after {
 -webkit-animation-delay:.15s;
 animation-delay:.15s;
 width:40px;
 height:40px;
 left:8px;
 top:8px
}
.is-active .expertise__list__icon div {
 width:24px;
 height:24px;
 left:16px;
 top:16px;
 background-color:#fff
}
@media screen and (max-width:479px) and (orientation:portrait) {
 .expertise__list__icon {
  right:30px
 }
}
@media screen and (max-width:979px) and (max-height:415px) and (orientation:landscape) {
 .expertise__list__icon {
  right:110px
 }
}
@media (max-width:668px),screen and (max-width:979px) and (max-height:415px) and (orientation:landscape) {
 .expertise__list__icon {
  position:absolute;
  top:17px;
  cursor: pointer;
 }
 .is-active .expertise__list__icon {
  top:28px
 }
 .is-active .expertise__list__icon:after,
 .is-active .expertise__list__icon:before,
 .is-active .expertise__list__icon div {
  border-color:#fff
 }
}
@media screen and (min-width:668px) and (min-height:416px) {
 .has-active .expertise__list__icon:after,
 .has-active .expertise__list__icon:before,
 .has-active .expertise__list__icon div {
  border-color:#fff
 }
}
@-webkit-keyframes scalepulse {
 20% {
  -webkit-transform:scale(1.15);
  transform:scale(1.15);
  -webkit-animation-timing-function:ease;
  animation-timing-function:ease
 }
 50% {
  -webkit-transform:scale(1);
  transform:scale(1);
  -webkit-animation-timing-function:ease;
  animation-timing-function:ease
 }
}
@keyframes scalepulse {
 20% {
  -webkit-transform:scale(1.15);
  transform:scale(1.15);
  -webkit-animation-timing-function:ease;
  animation-timing-function:ease
 }
 50% {
  -webkit-transform:scale(1);
  transform:scale(1);
  -webkit-animation-timing-function:ease;
  animation-timing-function:ease
 }
}
.process {
 text-align:center
}
@media screen and (min-width:668px) and (min-height:416px) {
 .process h2 {
  margin-bottom:4rem
 }
 .process h2:last-child {
  margin-bottom:0
 }
}
.process__text {
 max-width:540px;
 margin-left:auto;
 margin-right:auto;
 position:relative
}
.process__text li {
 position:absolute;
 left:0;
 right:0;
 top:0;
 transition-property:opacity;
 opacity:0
}
.process__text li:first-child {
 position:relative
}
.process__text li.is-active {
 opacity:1
}
.process__list {
 max-width:700px;
 margin-top:60px;
 padding-bottom:120px;
 margin-left:auto;
 margin-right:auto
}
.process__list__item {
 position:relative;
 padding-top:100%;
 margin-top:100%;
 cursor:pointer
}
.process__list__item:before {
 content:"";
 position:absolute;
 top:-5px;
 left:-5px;
 right:-5px;
 bottom:-5px;
 border:1px solid #fff;
 border-radius:100%;
 opacity:.12;
 transition-property:left,right,top,bottom,border-color,opacity
}
.process__list__item:after {
 content:"";
 position:absolute;
 left:50%;
 top:50%;
 -webkit-transform:translate(-50%,-50%) scale(.29412);
 transform:translate(-50%,-50%) scale(.29412);
 width:17px;
 height:17px;
 border:1px solid #fff;
 border-radius:17px;
 background:#fff;
 transition-property:background-color,-webkit-transform;
 transition-property:transform,background-color;
 transition-property:transform,background-color,-webkit-transform
}
.process__list span {
 position:absolute;
 left:-10px;
 right:-10px;
 bottom:50%;
 padding-bottom:94%;
 color:#fff;
 text-align:center
}
.process__list span:after,
.process__list span:before {
 content:"";
 position:absolute;
 bottom:0;
 top:37px;
 left:50%;
 border-left:1px solid #fff;
 opacity:.12
}
.process__list span:after {
 -webkit-transform-origin:0 100%;
 transform-origin:0 100%;
 -webkit-transform:scaleY(0);
 transform:scaleY(0);
 opacity:1;
 transition-property:-webkit-transform;
 transition-property:transform;
 transition-property:transform,-webkit-transform
}
.process__list li:nth-child(2n) span {
 bottom:auto;
 top:50%;
 padding-top:94%;
 padding-bottom:0
}
.process__list li:nth-child(2n) span:after,
.process__list li:nth-child(2n) span:before {
 top:0;
 bottom:37px
}
.process__list li:nth-child(2n) span:after {
 -webkit-transform-origin:0 0;
 transform-origin:0 0
}
.is-active .process__list__item:before {
 left:-10px;
 right:-10px;
 bottom:-10px;
 top:-10px;
 opacity:1
}
.is-active .process__list__item:after {
 background-color:#191a1b;
 -webkit-transform:translate(-50%,-50%) scale(1);
 transform:translate(-50%,-50%) scale(1)
}
.is-active .process__list__item span:after {
 -webkit-transform:scale(1);
 transform:scale(1)
}
@media screen and (max-width:979px) and (max-height:415px) and (orientation:landscape) {
 .process__list {
  margin-top:20px
 }
}
@media screen and (min-width:668px) and (min-height:416px) {
 .process__list__item:before {
  top:-10px;
  left:-10px;
  right:-10px;
  bottom:-10px
 }
 .is-active .process__list__item:before {
  left:-20px;
  right:-20px;
  bottom:-20px;
  top:-20px
 }
}
