@-ms-viewport{width:device-width}html{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-overflow-style:scrollbar}*,::after,::before{-webkit-box-sizing:inherit;box-sizing:inherit}.container{position:relative;margin-left:auto;margin-right:auto;padding-right:15px;padding-left:15px}@media (min-width:576px){.container{padding-right:15px;padding-left:15px}}@media (min-width:768px){.container{padding-right:15px;padding-left:15px}}@media (min-width:992px){.container{padding-right:15px;padding-left:15px}}@media (min-width:1200px){.container{padding-right:15px;padding-left:15px}}@media (min-width:576px){.container{width:540px;max-width:100%}}@media (min-width:768px){.container{width:720px;max-width:100%}}@media (min-width:992px){.container{width:960px;max-width:100%}}@media (min-width:1200px){.container{width:1140px;max-width:100%}}.container-fluid{position:relative;margin-left:auto;margin-right:auto;padding-right:15px;padding-left:15px}@media (min-width:576px){.container-fluid{padding-right:15px;padding-left:15px}}@media (min-width:768px){.container-fluid{padding-right:15px;padding-left:15px}}@media (min-width:992px){.container-fluid{padding-right:15px;padding-left:15px}}@media (min-width:1200px){.container-fluid{padding-right:15px;padding-left:15px}}.row{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}@media (min-width:576px){.row{margin-right:-15px;margin-left:-15px}}@media (min-width:768px){.row{margin-right:-15px;margin-left:-15px}}@media (min-width:992px){.row{margin-right:-15px;margin-left:-15px}}@media (min-width:1200px){.row{margin-right:-15px;margin-left:-15px}}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}@media (min-width:576px){.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9{padding-right:15px;padding-left:15px}}@media (min-width:768px){.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9{padding-right:15px;padding-left:15px}}@media (min-width:992px){.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9{padding-right:15px;padding-left:15px}}@media (min-width:1200px){.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9{padding-right:15px;padding-left:15px}}.col{-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-1{-webkit-box-flex:0;-webkit-flex:0 0 8.333333%;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-webkit-box-flex:0;-webkit-flex:0 0 16.666667%;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-webkit-box-flex:0;-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-webkit-box-flex:0;-webkit-flex:0 0 33.333333%;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-webkit-box-flex:0;-webkit-flex:0 0 41.666667%;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-webkit-box-flex:0;-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-webkit-box-flex:0;-webkit-flex:0 0 58.333333%;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-webkit-box-flex:0;-webkit-flex:0 0 66.666667%;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-webkit-box-flex:0;-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-webkit-box-flex:0;-webkit-flex:0 0 83.333333%;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-webkit-box-flex:0;-webkit-flex:0 0 91.666667%;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-webkit-box-flex:0;-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.pull-0{right:auto}.pull-1{right:8.333333%}.pull-2{right:16.666667%}.pull-3{right:25%}.pull-4{right:33.333333%}.pull-5{right:41.666667%}.pull-6{right:50%}.pull-7{right:58.333333%}.pull-8{right:66.666667%}.pull-9{right:75%}.pull-10{right:83.333333%}.pull-11{right:91.666667%}.pull-12{right:100%}.push-0{left:auto}.push-1{left:8.333333%}.push-2{left:16.666667%}.push-3{left:25%}.push-4{left:33.333333%}.push-5{left:41.666667%}.push-6{left:50%}.push-7{left:58.333333%}.push-8{left:66.666667%}.push-9{left:75%}.push-10{left:83.333333%}.push-11{left:91.666667%}.push-12{left:100%}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-sm-1{-webkit-box-flex:0;-webkit-flex:0 0 8.333333%;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-webkit-box-flex:0;-webkit-flex:0 0 16.666667%;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-webkit-box-flex:0;-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-webkit-box-flex:0;-webkit-flex:0 0 33.333333%;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-webkit-box-flex:0;-webkit-flex:0 0 41.666667%;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-webkit-box-flex:0;-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-webkit-box-flex:0;-webkit-flex:0 0 58.333333%;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-webkit-box-flex:0;-webkit-flex:0 0 66.666667%;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-webkit-box-flex:0;-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-webkit-box-flex:0;-webkit-flex:0 0 83.333333%;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-webkit-box-flex:0;-webkit-flex:0 0 91.666667%;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-webkit-box-flex:0;-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.pull-sm-0{right:auto}.pull-sm-1{right:8.333333%}.pull-sm-2{right:16.666667%}.pull-sm-3{right:25%}.pull-sm-4{right:33.333333%}.pull-sm-5{right:41.666667%}.pull-sm-6{right:50%}.pull-sm-7{right:58.333333%}.pull-sm-8{right:66.666667%}.pull-sm-9{right:75%}.pull-sm-10{right:83.333333%}.pull-sm-11{right:91.666667%}.pull-sm-12{right:100%}.push-sm-0{left:auto}.push-sm-1{left:8.333333%}.push-sm-2{left:16.666667%}.push-sm-3{left:25%}.push-sm-4{left:33.333333%}.push-sm-5{left:41.666667%}.push-sm-6{left:50%}.push-sm-7{left:58.333333%}.push-sm-8{left:66.666667%}.push-sm-9{left:75%}.push-sm-10{left:83.333333%}.push-sm-11{left:91.666667%}.push-sm-12{left:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-md-1{-webkit-box-flex:0;-webkit-flex:0 0 8.333333%;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-webkit-box-flex:0;-webkit-flex:0 0 16.666667%;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-webkit-box-flex:0;-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-webkit-box-flex:0;-webkit-flex:0 0 33.333333%;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-webkit-box-flex:0;-webkit-flex:0 0 41.666667%;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-webkit-box-flex:0;-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-webkit-box-flex:0;-webkit-flex:0 0 58.333333%;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-webkit-box-flex:0;-webkit-flex:0 0 66.666667%;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-webkit-box-flex:0;-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-webkit-box-flex:0;-webkit-flex:0 0 83.333333%;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-webkit-box-flex:0;-webkit-flex:0 0 91.666667%;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-webkit-box-flex:0;-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.pull-md-0{right:auto}.pull-md-1{right:8.333333%}.pull-md-2{right:16.666667%}.pull-md-3{right:25%}.pull-md-4{right:33.333333%}.pull-md-5{right:41.666667%}.pull-md-6{right:50%}.pull-md-7{right:58.333333%}.pull-md-8{right:66.666667%}.pull-md-9{right:75%}.pull-md-10{right:83.333333%}.pull-md-11{right:91.666667%}.pull-md-12{right:100%}.push-md-0{left:auto}.push-md-1{left:8.333333%}.push-md-2{left:16.666667%}.push-md-3{left:25%}.push-md-4{left:33.333333%}.push-md-5{left:41.666667%}.push-md-6{left:50%}.push-md-7{left:58.333333%}.push-md-8{left:66.666667%}.push-md-9{left:75%}.push-md-10{left:83.333333%}.push-md-11{left:91.666667%}.push-md-12{left:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-lg-1{-webkit-box-flex:0;-webkit-flex:0 0 8.333333%;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-webkit-box-flex:0;-webkit-flex:0 0 16.666667%;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-webkit-box-flex:0;-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-webkit-box-flex:0;-webkit-flex:0 0 33.333333%;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-webkit-box-flex:0;-webkit-flex:0 0 41.666667%;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-webkit-box-flex:0;-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-webkit-box-flex:0;-webkit-flex:0 0 58.333333%;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-webkit-box-flex:0;-webkit-flex:0 0 66.666667%;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-webkit-box-flex:0;-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-webkit-box-flex:0;-webkit-flex:0 0 83.333333%;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-webkit-box-flex:0;-webkit-flex:0 0 91.666667%;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-webkit-box-flex:0;-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.pull-lg-0{right:auto}.pull-lg-1{right:8.333333%}.pull-lg-2{right:16.666667%}.pull-lg-3{right:25%}.pull-lg-4{right:33.333333%}.pull-lg-5{right:41.666667%}.pull-lg-6{right:50%}.pull-lg-7{right:58.333333%}.pull-lg-8{right:66.666667%}.pull-lg-9{right:75%}.pull-lg-10{right:83.333333%}.pull-lg-11{right:91.666667%}.pull-lg-12{right:100%}.push-lg-0{left:auto}.push-lg-1{left:8.333333%}.push-lg-2{left:16.666667%}.push-lg-3{left:25%}.push-lg-4{left:33.333333%}.push-lg-5{left:41.666667%}.push-lg-6{left:50%}.push-lg-7{left:58.333333%}.push-lg-8{left:66.666667%}.push-lg-9{left:75%}.push-lg-10{left:83.333333%}.push-lg-11{left:91.666667%}.push-lg-12{left:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-xl-1{-webkit-box-flex:0;-webkit-flex:0 0 8.333333%;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-webkit-box-flex:0;-webkit-flex:0 0 16.666667%;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-webkit-box-flex:0;-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-webkit-box-flex:0;-webkit-flex:0 0 33.333333%;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-webkit-box-flex:0;-webkit-flex:0 0 41.666667%;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-webkit-box-flex:0;-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-webkit-box-flex:0;-webkit-flex:0 0 58.333333%;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-webkit-box-flex:0;-webkit-flex:0 0 66.666667%;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-webkit-box-flex:0;-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-webkit-box-flex:0;-webkit-flex:0 0 83.333333%;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-webkit-box-flex:0;-webkit-flex:0 0 91.666667%;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-webkit-box-flex:0;-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.pull-xl-0{right:auto}.pull-xl-1{right:8.333333%}.pull-xl-2{right:16.666667%}.pull-xl-3{right:25%}.pull-xl-4{right:33.333333%}.pull-xl-5{right:41.666667%}.pull-xl-6{right:50%}.pull-xl-7{right:58.333333%}.pull-xl-8{right:66.666667%}.pull-xl-9{right:75%}.pull-xl-10{right:83.333333%}.pull-xl-11{right:91.666667%}.pull-xl-12{right:100%}.push-xl-0{left:auto}.push-xl-1{left:8.333333%}.push-xl-2{left:16.666667%}.push-xl-3{left:25%}.push-xl-4{left:33.333333%}.push-xl-5{left:41.666667%}.push-xl-6{left:50%}.push-xl-7{left:58.333333%}.push-xl-8{left:66.666667%}.push-xl-9{left:75%}.push-xl-10{left:83.333333%}.push-xl-11{left:91.666667%}.push-xl-12{left:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}/*# sourceMappingURL=bootstrap-grid.min.css.map */

@font-face {
  font-family: 'source sans pro';
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url('../fonts/source-sans-3-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'source sans pro';
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url('../fonts/source-sans-3-italic.woff2') format('woff2');
}
@font-face {
  font-family: 'Bilbo Swash Caps';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/bilbo-swash-caps.woff2') format('woff2');
}

/* GLOBAL SITE CSS - ADD CSS TO AFFECT THE WHOLE SITE */

body {
	font-family: "source sans pro" !important;
	font-style: normal;
	font-weight: 300;
	margin: 0px;
	line-height: 1.5;
}

.article_no_header {
    position: relative;
	line-height: 1.5;
	font-family: 'source sans pro';
	font-size: 1em;
	color: rgb(102, 102, 102);
	text-align: left;
}

.testimonial_slider {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	font-family: "source sans pro";
	font-style: italic;
	font-weight: 300;
	font-size: 1.25em;
	color: gray;
}
.testimonial_slider::before {
	content: 'Client Testimonials';
	text-align: left;
	width: 100%;
	padding-left: 20px;
}
.testimonial {
	box-sizing: border-box;
	font-size: 1rem;
}
.quote {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-family: 'source sans pro';	
	font-style: normal;
	font-weight: 200;
	color: gray;	
	text-align: center;	
}
.quote_background {
	background: url('../images/marble.webp');
	width: 100%;
}
.inline_link {
	color: #90b2b2!important;
	text-decoration: underline;
	cursor: pointer;
}
.inline_link:hover { 
    background-color: rgb(220,220,220);
}
h3:hover
{
	background-color: rgb(228, 226, 226) !important;
	border-color: rgb(0, 0, 0) !important;
	transition: .5s ease;	  
}
.main_heading
{
	font-family: 'source sans pro';
	font-weight: 300;
	color: gray;
	background-color: transparent;
	text-align: center;
	margin: 0px;
}
.heading
{
	font-family: 'source sans pro';
	font-weight: 300;
	color: rgb(102, 102, 102);
	text-align:center;
}
.image
{
	border-style:solid !important;
	border-width:1px !important;
	border-color:rgb(209, 205, 205) !important;
	-webkit-box-shadow:inset -1px -1px 0px hsla(0, 0%, 0%, 0.1), inset 1px 1px 0px hsla(0, 0%, 100%, 0.3), 2px 2px 2px 0px hsla(0, 0%, 0%, 0.35) !important;
	box-shadow:inset -1px -1px 0px hsla(0, 0%, 0%, 0.1), inset 1px 1px 0px hsla(0, 0%, 100%, 0.3), 2px 2px 2px 0px hsla(0, 0%, 0%, 0.35) !important;
	-moz-box-shadow:inset -1px -1px 0px hsla(0, 0%, 0%, 0.1), inset 1px 1px 0px hsla(0, 0%, 100%, 0.3), 2px 2px 2px 0px hsla(0, 0%, 0%, 0.35) !important;
}
.flex-container 
{
	display: flex;	
    flex-wrap: wrap;
    align-items: center;
    justify-content: center; 
}
.flex_container_space 
{
	display: flex;	
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-around;
   
}

@media only screen and (max-width: 767px) {


html {
	font-size: 18px;
}
.parallax {
	height: 80px;
}
.row_pad {
	padding-top: 30px;
	padding-bottom: 30px;
}
.pad {
	padding-left: 5%;
	padding-right: 5%;
}
.pad_extra {
	padding-left: 10%;
	padding-right: 10%;
}
.main {
	margin-left: 5%;
	margin-right: 5%;
	position: relative;
}

.article {
    border-style: none;
    position: relative;
    background-color: transparent;
	line-height: 1.4;
	font-family:'source sans pro';
	color: rgb(102, 102, 102);
	text-align: left;
}
.main_heading
{
	font-size: 28px;
}
.heading
{
	font-size: 22px;
	padding-top:10px;
	padding-bottom:10px;
	width: 100%;
	background-color: rgb(228, 226, 226);
}
.testimonial {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	color: #918181;
	padding-right: 15px;
	padding-left: 15px;
	padding-bottom: 30px;
	padding-top: 30px;
	margin: 10px;
	margin-top: 20px;
	height: 200px;
	text-align: center;
	background-color: rgba(255,255,255,0.8);
	box-shadow: rgba(0,0,0,0.25) 0 3px 11px 0;	
}
.quote > div:nth-of-type(1) {
	font-family: 'Bilbo swash caps';	
	font-size: 28px;
	align-self: flex-start;
}
.quote > div:nth-of-type(2) {
	font-size: 20px;
	font-style: italic;
}
.quote > div:nth-of-type(3) {
	font-size: 16px;
	font-style: italic;
}
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
/* TABLET CSS - ADD CSS TO AFFECT ALL TABLET PAGES */

html {
	font-size: 18px;
}
.parallax {
	display: block;
	height: 145px;
}
.row_pad {
	padding-top: 40px;
	padding-bottom: 40px;
}
.pad {
	padding-left: 5.5%;
	padding-right: 5.5%;
}
.pad_extra {
	padding-left: 11%;
	padding-right: 11%;
}
.main {
	margin-left: 5.5%;
	margin-right: 5.5%;
	position: relative;
}

.article {
    position: relative;
    border-style:solid;
	border-width:1px;
	border-color:rgb(209, 205, 205);
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 30px;
	margin: 0px;
	max-width: 800px;
	background-color: rgb(238,238,238);
	line-height: 1.4;
	font-family:'source sans pro';
	color: rgb(102, 102, 102);
	text-align: left;
	
}
.main_heading
{
	font-size: 28px;
}
.heading
{
	font-size: 22px;
	border-style: dashed;
	border-width: 1px;
	border-color: rgb(228, 226, 226);
	background-color: rgb(249, 249, 249);
	display: inline !important;
	
    position: absolute !important;
	z-index : 10;
	padding-top:2px;
	padding-left:20px;
	padding-right:20px;
	padding-bottom:2px;
	top: -35px;
	left: 20px;

}
.testimonial {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	color: #918181;
	padding-right: 20px;
	padding-left: 20px;
	padding-bottom: 30px;
	padding-top: 30px;
	margin: 10px;
	margin-top: 20px;
	min-width: 250px;
	height: 200px;
	text-align: center;
	background-color: rgba(255,255,255,0.8);
	box-shadow: rgba(0,0,0,0.25) 0 3px 11px 0;	
}
.quote > div:nth-of-type(1) {
	font-family: 'Bilbo swash caps';	
	font-size: 30px;
	align-self: flex-start;
}
.quote > div:nth-of-type(2) {
	font-size: 22px;
	font-style: italic;
}
.quote > div:nth-of-type(3) {
	font-size: 18px;
	font-style: italic;
}
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
/* Bespoke CSS here */

html {
	font-size: 20px;
}
.parallax {
	display: block;
	height: 145px;
}
.row_pad {
	padding-top: 30px;
	padding-bottom: 30px;
}

.main {
	margin-left: 6.5%;
	margin-right: 6.5%;
	position: relative;
}
.pad {
	padding-left: 6.5%;
	padding-right: 6.5%;
}
.pad_extra {
	padding-left: 13%;
	padding-right: 13%;
}

.article {
    position: relative;
    border-style:solid;
	border-width:1px;
	border-color:rgb(209, 205, 205);
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 30px;
	margin: 0px;
	max-width: 800px;
	background-color: rgb(238,238,238);
	line-height: 1.5;
	font-family:'source sans pro';
	color: rgb(102, 102, 102);
	text-align: left;
	
}
.main_heading
{
	font-size: 32px;
}
.heading
{
	font-size: 24px;
	border-style: dashed;
	border-width: 1px;
	border-color: rgb(228, 226, 226);
	background-color: rgb(249, 249, 249);
	display: inline !important;
	
    position: absolute;
	z-index : 10;
	padding-top:2px;
	padding-left:20px;
	padding-right:20px;
	padding-bottom:2px;
	margin-right: 20px;
    top: -40px;
	left: 20px;
}
.testimonial {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	color: #918181;
	padding-right: 20px;
	padding-left: 20px;
	padding-bottom: 40px;
	padding-top: 40px;
	margin: 10px;
	margin-top: 30px;
	min-width: 300px;
	height: 200px;
	text-align: center;
	background-color: rgba(255,255,255,0.8);
	box-shadow: rgba(0,0,0,0.25) 0 3px 11px 0;
	font-size: 0.9rem !important;	
}
.quote > div:nth-of-type(1) {
	font-family: 'Bilbo swash caps';	
	font-size: 32px;
	align-self: flex-start;
}
.quote > div:nth-of-type(2) {
	font-size: 26px;
	font-style: italic;
}
.quote > div:nth-of-type(3) {
	font-size: 20px;
	font-style: italic;
}
}

@media only screen and (min-width: 1300px) {
	.pad {
		padding-left: calc(50% - 575px);
		padding-right: calc(50% - 575px);
	}
	.pad_extra {
		padding-left: calc(50% - 450px);
		padding-right: calc(50% - 450px);
	}
	.main {
		margin-left: calc(50% - 575px);
		margin-right: calc(50% - 575px);
		position: relative;
	}
}

@media only screen and (min-width: 1200px) and (max-width: 1300px) {
	.main {
		margin-left: 100px;
		margin-right: 100px;
		position: relative;
	}
	.pad {
		padding-left: 7.7%;
		padding-right: 7.7%;
	}
	.pad_extra {
		padding-left: 15.4%;
		padding-right: 15.4%;
	}
}

@media only screen and (min-width: 1200px) {
/* Bespoke CSS here */

html {
	font-size: 20px;
}
.parallax {
	display: block;
	height: 145px;
}
.row_pad {
	padding-top: 30px;
	padding-bottom: 30px;
}

.article {
    position: relative;
    border-style:solid;
	border-width:1px;
	border-color:rgb(209, 205, 205);
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 30px;
	margin: 0px;
	max-width: 800px;
	background-color: rgb(238,238,238);
	line-height: 1.5;
	font-family:'source sans pro';
	color: rgb(102, 102, 102);
	text-align: left;
	
}
.main_heading
{
	font-size: 36px;
}
.heading
{
	font-size: 24px;
	border-style: dashed;
	border-width: 1px;
	border-color: rgb(228, 226, 226);
	background-color: rgb(249, 249, 249);
	text-align:center;
	display: inline !important;

	position: absolute;
	z-index : 10;
	padding-top:2px;
	padding-left:20px;
	padding-right:20px;
	padding-bottom:2px;
	margin-right: 20px;
    top: -40px;
	left: 20px;
}
.testimonial {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	color: #918181;
	padding-right: 18px;
	padding-left: 18px;
	padding-bottom: 20px;
	padding-top: 40px;
	margin: 10px;
	margin-top: 30px;
	min-width: 300px;
	height: 200px;
	text-align: center;
	background-color: rgba(255,255,255,0.8);
	box-shadow: rgba(0,0,0,0.25) 0 3px 11px 0;	
}
.quote > div:nth-of-type(1) {
	font-family: 'Bilbo swash caps';	
	font-size: 36px;
	align-self: flex-start;
}
.quote > div:nth-of-type(2) {
	font-size: 28px;
	font-style: italic;
}
.quote > div:nth-of-type(3) {
	font-size: 20px;
	font-style: italic;
}
}



@media screen and (max-width: 349px) {
	.strapline {
		font-size: 20px;
		line-height: 80px;
		width: 230px;
	}
}
@media screen and (min-width: 350px) and (max-width: 767px) {
	.name, .qualifactions, .business, .strapline {
		font-size: 22px;
	}
	.strapline {
		line-height: 80px;
		width: 260px;
	}
}
@media screen and (min-width: 768px) and (max-width: 819px) {
	.name, .qualifactions, .business, .strapline {
		font-size: 22px;
	}
}

@media screen and (min-width: 820px) and (max-width: 991px) {
	.name, .qualifactions, .business, .strapline {
		font-size: 24px;
	}
}
@media screen and (min-width: 992px) {
	.name, .qualifactions, .business, .strapline {
		font-size: 26px;
	}
}
@media screen and (max-width: 767px) {
	.business_header_large {
		display: none;
	}
}
@media screen and (min-width: 768px) {
	.business_header_large {
		display: block;
	}
}

.business_details {
	margin: auto;
}
.transparent_background {
	margin-top: 20px;
	width: 100%;
	background: rgba(230,230,230,0.5);
}
.name {
	color: rgb(102, 102, 102);
	font-family: 'source sans pro';
	font-style: normal;
	font-weight: 300;
	text-align: center;
}
.qualifactions {
	color: rgb(102, 102, 102);
	font-family: 'source sans pro';
	font-style: normal;
	font-weight: 300;
	text-align: center;
}
.business {
	color: rgb(102, 102, 102);
	font-family: 'source sans pro';
	font-style: normal;
	font-weight: 200;
	text-align: center;
	text-transform: uppercase;
}
.strapline {
	color: white;
	font-family: 'source sans pro';
	font-style: italic;
	font-weight: 400;
	text-align: center;
	margin: 0px;
}
.top_div {
	padding-top: 0px;
}


/* Nav Bar Overrides*/
.nav_bar {	
	--nav_background: rgba(52, 52, 52, 0.3);
	--nav_background_mobile: #90b2b2;
	--font: source sans pro;
	--font_size: 18px;
	--font_colour: rgb(255, 255, 255);
	--hover_colour: rgb(255, 255, 255);
	--hover_background: #e7e7e8; 
	--mobile_font_size: 18px;  
	--mobile_font_colour: #90b2b2; 
	--mobile_hover_colour: gray;	
}




.nav_bar {
  background-color: rgba(52, 52, 52, 0.1);
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
  font-family: var(--font);
  font-size: var(--font_size, 16px);
  font-weight: 300;
}

.logo {
  display: inline-block;
  height: 45px;
  margin: 1em 0;
  width: 45px;
}

nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: var(--nav_justify, center);
  align-items: stretch;
  padding: 0px;
  margin: 0px;
  list-style-type: none;
  flex-grow: 1; 
  z-index: 10; 	
}

nav ul a {
  color: var(--font_colour , #E84545);
  height: 100%;
  text-transform: uppercase;
  text-decoration: none;
  transition: all .5s ease;
  
}

nav ul a:hover {
	background-color: rgba(220,220,220,0.5);
}
nav ul li.selected > a {
  text-decoration: underline !important;
}

nav li {
  display: inline-block;
  padding-left:20px;
  padding-right:20px;
}

nav #menu-toggle {
  display: none;
}
nav .label-toggle {
	margin-top: 0px;
  	display: none;
}
nav .strapline {
	display: none;
}
nav .wrapper {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .nav_bar {
    background-color: var(--nav_background_mobile, #53354A);
    padding-top: 0px;
    font-weight: 400;
  }
  nav ul {
    background-color: #e6e6e6;
    display: none;
    height: 0px;
    list-style-type: none;
    opacity: 0;
    text-align: center;
    transition: all 1s ease;
    width: 100%;
    flex-shrink: 0;
    box-sizing: border-box;
  }
  
  nav li {
    display: block;
    font-size: var(--mobile_font_size, 1em);
    padding: 0.5em 0;
  }
  nav ul li.selected  {
    background-color: var(--hover_background, gray);
  }
  nav li:last-child {
    border-bottom: none;
  }
  
  nav ul a {
  	color: var(--mobile_font_colour , #903749); 
  }

  nav #menu-toggle:checked ~ ul {
    opacity: 1;
    height: 100%;
    display: block;
    
  }
  nav .label-toggle {
    background: linear-gradient(to bottom, white 0%, white 20%, transparent 20%, transparent 40%, white 40%, white 60%, transparent 60%, transparent 80%, white 80%, white 100%);
    cursor: pointer;
    display: block;
    height: 1em;
    width: 1em;
  }
  
  nav .strapline {
  	display: block;
  }
  
  nav .wrapper {
  	height: 100%;
  }

}



.inline_link.ico {
	color: #717b8a!important;
}
.inline_link.ico:hover { 
    background-color: rgba(220,220,220, 0.5);
}
.inline_link.footer:hover { 
    background-color: rgb(90,90,90);
}
.black_background {
	background-color:rgb(51, 51, 51) !important;
	width: 100%;
}
.green_background {
	background-color: #90b2b2;
	width: 100%;
}

.control {
	display: block;
	width: 100%;
	height: 34px;
	padding: 6px 12px;
	margin-bottom: 10px;
	font-size: 1em;
	border: none;
	background-color: rgba(255, 255, 255, 0.1);
	color: rgb(247, 247, 247);
}
.message_control {
	display: block;
	width: 100%;
	height: 100px;
	resize: none;
	padding: 6px 12px;
	border: none;
	background-color: rgba(255, 255, 255, 0.1);
	font-size: 1em;
	color: rgb(247, 247, 247);	
}
label {
	margin-top: 10px;
	font-family: "source sans pro";
	font-style: normal;
	font-weight: 300;
	font-size: 20px;
	color: rgb(247, 247, 247);
}
.footer_title {
	font-family: "source sans pro";
	font-style: normal;
	font-weight: 300;
	color: rgb(247, 247, 247);
	text-align: center;
}
.email_label {
	font-family: "source sans pro";
	font-style: normal;
	font-weight: 300;
	color: rgb(247, 247, 247);
	text-align: center;
	margin: 40px;
}
@media screen and (min-width: 1200px) {
	.email_form {
		flex-grow: 1;	
		width: 900px;
	}
	.footer_title {
		font-size: 32px;
	}
	.email_label {
		font-size: 32px;
		margin: 40px;
		margin-bottom: 40px;
	}
}
@media screen and (min-width: 768px) and (max-width: 1200px){
	.email_form {
		flex-grow: 1;
		width: 75%;
	}
	.footer_title {
		font-size: 30px;
	}
	.email_label {
		font-size: 30px;
		margin-top: 30px;
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 768px){
	.email_form {
		flex-grow: 1;
		width: 85%;
	}
	.footer_title {
		font-size: 28px;
	}
	.email_label {
		font-size: 28px;
		margin: 40px;
		margin-bottom: 20px;
	}
}

.credit, .privacy_statement, .message_response {
	text-align: center;
	color:rgb(247, 247, 247) !important;
	font-size: 17px !important;
	font-weight:300 !important;
}

.message_response {
	display: none;
	font-size: 20px;
	margin-top: 30px;
}

.phone_button {
	position: relative;
	border-radius:30px;
	width: 250px;
	height: 60px;
	margin-top: 40px;
	margin-bottom: 40px;
    background-color: rgb(52, 52, 52);
    display: inline-block;
}	
.phone_button:hover {
	background-color: rgb(39, 38, 38) !important;
}
.phone_button::after {
	position: absolute;
	color: rgb(255, 255, 255);
	font-family: "source sans pro" !important;
	font-style: normal !important;
	font-size: 24px !important;
	font-weight:300 !important;
	line-height: 1em;
	top: 18px;
	left: 80px;
	content: attr(data-phone-no);
	display: block; 
}
.phone_button::before {
	position: absolute;
	left: 30px;
	top: 0px;
	color: rgb(255, 255, 255);
	font-family: 'FontAwesome';
	content: "\f095";
	font-size: 42px;
	}
.phone_button:hover::before {
	animation: shake 0.82s;
	transform: rotateZ(0deg);
}

.email_button {
	position: relative;
	border-radius:30px;
	border: none;
	width: 250px;
	height: 60px;
	margin-top: 40px;
    background-color: rgb(52, 52, 52);
    display: inline-block;
}	
.email_button:hover {
	background-color: rgb(39, 38, 38) !important;
}
.email_button::after {
	position: absolute;
	color: rgb(255, 255, 255);
	font-family: "source sans pro" !important;
	font-style: normal !important;
	font-size: 24px !important;
	font-weight:300 !important;
	line-height: 1em;
	top: 18px;
	left: 100px;
	content: 'Send Email';
	display: block; 
}
.email_button::before {
	position: absolute;
	left: 30px;
	top: 7px;
	color: rgb(255, 255, 255);
	font-family: 'FontAwesome';
	content: "\f003";
	font-size: 42px;
	display: block;
}
.email_button:hover::before {
	animation: disappear 0.8s;
	transform: matrix(1, 0, 0, 1, 0, 0);
}

	
@keyframes disappear {
  10% {
  	transform: matrix(0.9, 0, 0.2, 0.9, 10, -10);
  }

  20% {
  	transform: matrix(0.8, 0, 0.3, 0.8, 15, -15);
  }

  30% {
  	transform: matrix(0.7, 0, 0.4, 0.7, 20, -20);
  }
  
  40% {
  	transform: matrix(0.6, 0, 0.5, 0.6, 25, -25);
  }
  
  50% {
  	transform: matrix(0.5, 0, 0.6, 0.5, 30, -30);
  }

  60% {
  	transform: matrix(0.4, 0, 0.7, 0.4, 35, -35);
  }
  
  70% {
  	transform: matrix(0.3, 0, 0.8, 0.3, 38, -38);
  }

  80% {
  	transform: matrix(0.2, 0, 0.9, 0.2, 40, -40);
  }
  
  90% {
  	transform: matrix(0.1, 0, 1, 0.1, 42, -42);
  }
    
  
  
}

@keyframes shake {
  10%, 90% {
    transform: rotateZ(10deg);
  }
  
  20%, 80% {
    transform: rotateZ(0deg);
  }

  30%, 50%, 70% {
    transform: rotateZ(-10deg);
  }

  40%, 60% {
    transform: rotateZ(0deg);
  }
}


.flex_container_vertical 
{
	display: -webkit-flex;
    display: flex;	
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
   
}



.hover_overlay {
	font-weight: 300;
	position: relative;
	display: block;			/* block stops misbehaviour of the <a> tag, if used as a clickable overlay */
}
.hover_overlay > img {
	display: block;
	object-fit:cover;
}

@media not all and (any-hover) {

	.hover_overlay {
		font-size: 16px;
	}
	.hover_overlay > .overlay {   
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		height: 100%;
		width: 100%;
		opacity: 1;
		display: flex;
		align-items: flex-start;
		justify-content: center;
	}
	.hover_overlay.round > .overlay {	
	  	display: none;
	}
	.hover_overlay > .overlay > div {	
	
		border-style: none;
		border-width: 1px;
		border-color: white;
		color: white;
		
		padding-top:10px;
		padding-bottom:10px;
		padding-left:20px;
		padding-right:20px;
		width: 100%;
		   
		text-align: center;
		background:rgba(0, 0, 0, 0.6);
	}
}

@media (any-hover) {

	.hover_overlay {
		font-size: 18px;
	}
	.hover_overlay > .overlay {
		position: absolute;
		overflow: hidden;
		
		background:rgba(0, 0, 0, 0.6);
		transition: .5s ease;		
	}	
	
	.hover_overlay.fade > .overlay {
		top: 0;
		left: 0;
		opacity: 0;	
		width: 100%;
		height: 100%;
	} 
	.hover_overlay.slide_right > .overlay {
		top: 0;
		left: 0;
		width: 0;
		height: 100%;
	} 
	.hover_overlay.slide_left > .overlay {
		top: 0;
		right: 0;
		width: 0;
		height: 100%;
	}
	.hover_overlay.slide_down > .overlay {
		top: 0;
		left: 0;
		height: 0;
		width: 100%;
	} 
	.hover_overlay.slide_up > .overlay {
		bottom: 0;
		left: 0;
		height: 0;
		width: 100%;
	}
	
	.hover_overlay > .overlay > div {	
		position: absolute;
		overflow: hidden;
		top: 50%;
		left: 50%;
		margin-right: -50%;
		transform: translate(-50%, -50%);
		 	
		color: white;
	    font-size: 1em;
	    text-align: center;
	    padding-left: 20px;
	    padding-right: 20px;
	}
	
	.hover_overlay.round > .overlay {	
	  	border-radius : 50% !important;
	}
	
	.hover_overlay.fade:hover > .overlay {
		opacity: 1;	
	}
	.hover_overlay.slide_right:hover > .overlay {
		width: 100%;	
	}
	.hover_overlay.slide_left:hover > .overlay {
		width: 100%;	
	}
	.hover_overlay.slide_up:hover > .overlay {
		height: 100%;	
	}
	.hover_overlay.slide_down:hover > .overlay {
		height: 100%;	
	}
	
}
