@media (min-width: 992px) {
    .pull-right-md {
        float: right;
    }
}

body,
button,
input,
select,
textarea {
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
}

body {
    color: #4A4A4A;
    -webkit-font-smoothing: antialiased;
}

@media (max-width: 991px) {
    body {
        font-size: 16px;
        padding-top: 70px;
    }
}

@media (min-width: 992px) {
    body {
        font-size: 18px;
        padding-top: 100px;
    }
}

@media (max-width: 767px) {
    .container {
        padding-left: 25px;
        padding-right: 25px;
    }
}

@media (min-width: 1200px) {
    .container {
        width: 1130px;
    }
}

a:active,
button:active,
.btn:active,
a:focus,
button:focus,
.btn:focus,
a:active:focus,
button:active:focus,
.btn:active:focus,
a.active:focus,
button.active:focus,
.btn.active:focus {
    outline: none;
}

a {
    color: #2183CC;
}

a:focus,
a:hover {
    color: #16598a;
    text-decoration: none;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    font-weight: bold;
}

.h1,
h1 {
    color: #393939;
    line-height: 1.15;
}

@media (max-width: 991px) {
    .h1,
  h1 {
        font-size: 32px;
        margin-bottom: 30px;
    }
}

@media (min-width: 992px) {
    .h1,
  h1 {
        font-size: 40px;
        margin-bottom: 60px;
    }
}

.h2,
h2 {
    color: #393939;
    letter-spacing: -0.2px;
}

@media (max-width: 991px) {
    .h2,
  h2 {
        font-size: 24px;
        line-height: 1.35;
        margin-bottom: 25px;
    }
}

@media (min-width: 992px) {
    .h2,
  h2 {
        font-size: 30px;
        line-height: 1.55;
        margin-bottom: 50px;
    }
}

.h3,
h3 {
    color: #393939;
    letter-spacing: -0.14px;
    line-height: 1.25;
    margin-bottom: 12px;
}

@media (max-width: 991px) {
    .h3,
  h3 {
        font-size: 20px;
    }
}

@media (min-width: 992px) {
    .h3,
  h3 {
        font-size: 24px;
    }
}

.h4,
h4 {
    color: #393939;
    font-size: 20px;
    line-height: 1;
}

.h5,
h5 {
    font-size: 18px;
}

.h6,
h6 {
    font-size: 14px;
}

p {
    line-height: 1.7;
}

@media (max-width: 991px) {
    p {
        margin-bottom: 20px;
    }
}

@media (min-width: 992px) {
    p {
        margin-bottom: 30px;
    }
}

.text-primary {
    color: #2183CC;
}

.jumbotron {
    background: #F9F9F9;
    color: #444444;
    line-height: 1.35;
    margin-bottom: 0;
    text-align: center;
}

.container .jumbotron {
    -moz-border-radius: 0;
    border-radius: 0;
}

@media (max-width: 991px) {
    .jumbotron {
        font-size: 18px;
        padding-bottom: 40px;
        padding-top: 40px;
    }

    .container .jumbotron {
        padding-left: 60px;
        padding-right: 60px;
    }
}

@media (min-width: 992px) {
    .jumbotron {
        font-size: 24px;
        padding-bottom: 81px;
        padding-top: 81px;
    }

    .container .jumbotron {
        padding-left: 120px;
        padding-right: 120px;
    }
}

.panel {
    border-color: #F3F3F3;
    -moz-border-radius: 10px;
    border-radius: 10px;
    -moz-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .panel-body {
        padding: 25px;
    }
}

@media (min-width: 768px) {
    .panel-body {
        padding: 31px 40px 37px;
    }
}

.flex {
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flex [class*=col-] {
    margin: 0 -0.25px;
}

.collapsing {
    -moz-transition: none;
    transition: none;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    white-space: nowrap;
}

.social {
    font-size: 0;
}

.social a {
    -moz-border-radius: 50%;
    border-radius: 50%;
    border: 1px solid #7A7A7A;
    display: inline-block;
    *zoom: 1;
    *display: inline;
    height: 52px;
    text-align: center;
    padding-bottom: 12px;
    padding-top: 12px;
    width: 52px;
}

.social a + a {
    margin-left: 30px;
}

.social .icon {
    fill: #9E9E9E;
    height: 26px;
    width: 26px;
}

#header {
    background: #2183CC;
    font-size: 14px;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 998;
}

.navbar {
    border: none;
    margin-bottom: 0;
}

@media (max-width: 991px) {
    .navbar {
        padding-bottom: 10px;
        padding-top: 10px;
    }
}

@media (min-width: 992px) {
    .navbar {
        padding-bottom: 25px;
        padding-top: 25px;
    }
}

.navbar-brand {
    padding: 13px 0 12px;
}

.navbar-brand > img {
    height: 25px;
    width: 159px;
}

.navbar-toggle {
    border: none;
    right: -15px;
    margin-bottom: 0;
    margin-right: 0;
    margin-top: 2px;
    padding: 15px;
    position: absolute;
    z-index: 999;
}

.navbar-toggle .icon-bar {
    -moz-transition: transform 0.2s ease, opacity 0.2s 0.2s, top 0.2s ease 0.15s, -moz-transform 0.2s ease;
    transition: transform 0.2s ease, opacity 0.2s 0.2s, top 0.2s ease 0.15s;
    transition: transform 0.2s ease, opacity 0.2s 0.2s, top 0.2s ease 0.15s, -moz-transform 0.2s ease;
    background: #fff;
    height: 3px;
    position: relative;
    top: 0;
    width: 24px;
}

.navbar-toggle .icon-bar + .icon-bar {
    margin-top: 4px;
}

.navbar-toggle:not(.collapsed) .icon-bar {
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    -moz-transition: top 0.2s ease, opacity 0.2s, transform 0.2s ease 0.15s, -moz-transform 0.2s ease 0.15s;
    transition: top 0.2s ease, opacity 0.2s, transform 0.2s ease 0.15s;
    transition: top 0.2s ease, opacity 0.2s, transform 0.2s ease 0.15s, -moz-transform 0.2s ease 0.15s;
}

.navbar-toggle:not(.collapsed) .icon-bar:first-child,
.navbar-toggle:not(.collapsed) .icon-bar:last-child {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100);
}

.navbar-toggle:not(.collapsed) .icon-bar:first-child {
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 7px;
}

.navbar-toggle:not(.collapsed) .icon-bar:last-child {
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: -7px;
}

.navbar-collapse {
    -moz-box-shadow: none;
    box-shadow: none;
    border-top: none;
}

#navbar .nav > li > a {
    color: #fff;
    font-weight: bold;
    text-transform: uppercase;
}

#navbar .nav > li > a.btn {
    border: none;
    -moz-box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3);
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3);
    font-size: inherit;
}

#navbar .nav > li > a:focus,
#navbar .nav > li > a:hover {
    background-color: transparent;
}

@media (max-width: 767px) {
    #navbar .nav > li > a.btn {
        margin: 10px 15px 0;
    }
}

@media (min-width: 768px) {
    #navbar .nav > li > a {
        padding: 15px 11px;
    }

    #navbar .nav > li > a.btn {
        margin-left: 20px;
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (max-width: 767px) {
    #navbar.in {
        background: #2183CC;
        bottom: 0;
        font-size: 14px;
        left: 0;
        position: fixed;
        top: 70px;
        width: 100%;
        z-index: 998;
    }
}

.btn {
    -moz-transition: all 0.25s ease;
    transition: all 0.25s ease;
    -moz-border-radius: 4px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: bold;
    padding: 14px 40px;
    text-transform: uppercase;
}

.btn[disabled]:focus,
.btn.disabled:focus,
.btn[disabled]:hover,
.btn.disabled:hover {
    background: #ccc;
    color: #000;
}

.btn-lg {
    -moz-border-radius: 4px;
    border-radius: 4px;
    font-size: 20px;
    line-height: 1.3;
    padding-top: 16px;
    padding-bottom: 16px;
}

.btn-default {
    background: #1E76B8;
    border-color: #1E76B8;
    color: #fff;
}

.btn-default:focus,
.btn-default:hover {
    background: #175a8c;
    border-color: #175a8c;
    color: #fff;
}

.btn-default:active:focus,
.btn-default.active:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.btn-default:active:hover,
.btn-default.active:hover {
    background: #103e60;
    border-color: #103e60;
    color: #fff;
}

.btn-scroll {
    background: #fff;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -moz-box-shadow: 0 10px 12px -10px rgba(49, 73, 96, 0.4);
    box-shadow: 0 10px 12px -10px rgba(49, 73, 96, 0.4);
    color: #2183CC;
    height: 70px;
    padding: 0;
    width: 70px;
}

.btn-scroll .icon {
    height: 23px;
    vertical-align: middle;
    width: 18px;
}

.btn-scroll:focus,
.btn-scroll:hover {
    color: #2183CC;
}

.icon-external {
    height: 14px;
    margin-left: 5px;
    width: 14px;
    position: relative;
    top: 2px;
}

.icon-check {
    background: #22B75A;
    -moz-border-radius: 50%;
    border-radius: 50%;
    color: #fff;
    font-size: 0;
    height: 90px;
    line-height: 90px;
    width: 90px;
}

.icon-check .svg {
    height: 41px;
    vertical-align: middle;
    width: 54px;
}

::-webkit-input-placeholder {
    color: #9B9B9B;
}

::-moz-placeholder {
    color: #9B9B9B;
}

:-ms-input-placeholder {
    color: #9B9B9B;
}

:-moz-placeholder {
    color: #9B9B9B;
}

label {
    color: #393939;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.25;
}

@media (min-width: 768px) {
    .form .btn[type="submit"] {
        margin-top: 30px;
    }
}

.form-group {
    margin-bottom: 16px;
}

.form-control {
    border-color: #ddd;
    -moz-box-shadow: none;
    box-shadow: none;
    font-size: 16px;
    height: 55px;
    height: auto;
    line-height: 1.45;
    padding-bottom: 15px;
    padding-top: 15px;
}

.form-control:focus {
    -moz-box-shadow: none;
    box-shadow: none;
}

select.form-control:not(.selected) {
    color: #9B9B9B;
}

textarea.form-control {
    min-height: 120px;
    resize: vertical;
}

.control-select {
    background: #fff;
    -moz-border-radius: 4px;
    border-radius: 4px;
    position: relative;
    z-index: 0;
}

.control-select .form-control {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    padding-right: 34px;
    position: relative;
    z-index: 1;
}

.control-select .form-control::-ms-expand {
    display: none;
}

.control-select .arrow {
    fill: #2183CC;
    height: 8px;
    margin-top: -4px;
    position: absolute;
    right: 20px;
    top: 50%;
    width: 11px;
}

.form-control.error,
input[type=checkbox].error,
input[type=radio].error {
    border-color: #EC0101 !important;
}

.error-message {
    display: none;
}

.input-lg {
    font-size: 18px;
    height: 60px;
    padding-bottom: 19px;
    padding-top: 19px;
}

.checkbox input[type=checkbox],
.checkbox-inline input[type=checkbox],
.radio input[type=checkbox],
.radio-inline input[type=checkbox],
.checkbox input[type=radio],
.checkbox-inline input[type=radio],
.radio input[type=radio],
.radio-inline input[type=radio] {
    margin-left: -28px;
}

.checkbox-inline,
.radio-inline {
    padding-left: 28px;
}

.checkbox label,
.radio label {
    line-height: 1.5;
    padding-left: 28px;
}

input[type=checkbox],
input[type=radio] {
    -moz-transition: all 0.15s ease;
    transition: all 0.15s ease;
    -webkit-appearance: none;
    border: 1px solid #9E9E9E;
    -moz-box-shadow: inset 0 1px 3px 0 #9E9E9E;
    box-shadow: inset 0 1px 3px 0 #9E9E9E;
    cursor: pointer;
    height: 18px;
    margin-top: -9px;
    top: 50%;
    width: 18px;
}

input[type=checkbox]:checked,
input[type=radio]:checked {
    border-color: #0B88EE;
    -moz-box-shadow: inset 0 0 0 4px #0B88EE;
    box-shadow: inset 0 0 0 4px #0B88EE;
}

input[type=checkbox]:focus,
input[type=radio]:focus {
    outline: none;
}

input[type=radio] {
    -moz-border-radius: 50%;
    border-radius: 50%;
}

#form_contact {
    margin: 0 auto;
    max-width: 660px;
}

#form_contact .panel {
    overflow: hidden;
    position: relative;
}

#form_contact .form-message {
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #fff;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    left: 0;
    position: absolute;
    text-align: center;
    top: 0;
    width: 100%;
}

#form_contact .form-message .icon-check {
    margin-bottom: 30px;
}

#form_contact .form-message p {
    line-height: 1.35;
    margin-bottom: 40px;
}

@media (max-width: 991px) {
    #form_contact .btn {
        width: 100%;
    }
}

.banner-title {
    color: inherit;
    font-weight: bold;
    letter-spacing: -0.5px;
    line-height: 1;
    margin-bottom: 21px;
}

@media (max-width: 991px) {
    .banner-title {
        font-size: 36px;
    }
}

@media (min-width: 992px) {
    .banner-title {
        font-size: 62px;
    }
}

.banner-brands {
    margin: 39px -17px 0;
}

.banner-brands > a {
    opacity: 0.6;
    filter: alpha(opacity=60);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
    filter: alpha(opacity=60);
    display: inline-block;
    *zoom: 1;
    *display: inline;
    margin: 0 17px 15px;
}

@media (max-width: 767px) {
    .banner-brands {
        text-align: center;
    }
}

@media (min-width: 768px) {
    .banner-img {
        position: relative;
        z-index: 1;
    }
}

.banner-home {
    background: #2183CC;
    color: #fff;
    overflow: hidden;
    padding-top: 28px;
    position: relative;
}

.banner-home p {
    line-height: 1.4;
}

.banner-home .btn-scroll {
    bottom: 7px;
    position: absolute;
    z-index: 1;
}

.banner-home .banner-bg {
    bottom: 0;
    height: 122px;
    left: 0;
    position: absolute;
    right: 0;
    width: 100%;
}

@media (max-width: 767px) {
    .banner-home {
        padding-bottom: 122px;
    }
}

@media (min-width: 768px) {
    .banner-home {
        height: 562px;
    }

    .banner-home .banner-title {
        margin-top: 22px;
    }
}

@media (min-width: 992px) {
    .banner-home {
        font-size: 20px;
    }
}

@media (min-width: 1200px) {
    .banner-home .banner-img {
        left: -76px;
    }
}

.banner-portal {
    color: #fff;
    position: relative;
    z-index: 0;
}

.banner-portal .h4,
.banner-portal a {
    color: inherit;
}

.banner-portal .h4 {
    margin-bottom: 3px;
}

.banner-portal a .icon-external {
    color: rgba(255, 255, 255, 0.6);
}

.banner-portal hr {
    border-top-width: 2px;
    border-top-color: rgba(244, 246, 248, 0.4);
}

.banner-portal .banner-img {
    -moz-border-radius: 6px;
    border-radius: 6px;
    -moz-box-shadow: 0 20px 90px 0 rgba(151, 166, 175, 0.4);
    box-shadow: 0 20px 90px 0 rgba(151, 166, 175, 0.4);
    display: inline-block;
    *zoom: 1;
    *display: inline;
    vertical-align: top;
    overflow: hidden;
}

@media (max-width: 767px) {
    .banner-portal {
        padding-bottom: 30px;
        padding-top: 30px;
    }

    .banner-portal .portal-bg {
        height: 91%;
    }

    .banner-portal .banner-img {
        margin-top: 30px;
    }

    .banner-portal .banner-img > img {
        height: auto;
        width: 100%;
    }
}

@media (min-width: 768px) {
    .banner-portal {
        overflow: hidden;
        padding-bottom: 65px;
        padding-top: 65px;
    }

    .banner-portal .banner-title {
        margin-top: 25px;
    }

    .banner-portal .portal-bg {
        width: 80%;
    }
}

@media (min-width: 992px) {
    .banner-portal {
        font-size: 16px;
    }

    .banner-portal p {
        font-size: 20px;
        line-height: 1.4;
    }

    .banner-portal hr {
        margin-bottom: 50px;
        margin-top: 50px;
    }
}

@media (min-width: 1200px) {
    .banner-portal .banner-img {
        left: -83px;
    }
}

.banner-about {
    background: #2183CC;
    color: #fff;
    overflow: hidden;
    padding-top: 54px;
    position: relative;
}

.banner-about .banner-title {
    font-weight: 900;
}

.banner-about p {
    line-height: 1.4;
}

.banner-about .banner-bg {
    bottom: 0;
    height: 122px;
    left: 0;
    position: absolute;
    right: 0;
    width: 100%;
}

@media (max-width: 1199px) {
    .banner-about .banner-img {
        height: auto;
        max-width: 100%;
    }
}

@media (max-width: 1199px) and (min-width: 992px) {
    .banner-about .banner-title {
        font-size: 46px;
    }
}

@media (max-width: 991px) {
    .banner-about {
        margin-bottom: 30px;
    }
}

@media (max-width: 767px) {
    .banner-about {
        padding-bottom: 122px;
    }
}

@media (min-width: 768px) {
    .banner-about {
        height: 450px;
    }
}

@media (min-width: 992px) {
    .banner-about {
        font-size: 20px;
        height: 525px;
        margin-bottom: 77px;
    }

    .banner-about .banner-title {
        margin-bottom: 33px;
    }
}

@media (min-width: 1200px) {
    .banner-about {
        height: 613px;
    }
}

@media (max-width: 767px) {
    #main {
        padding-bottom: 45px;
        padding-top: 35px;
    }
}

@media (min-width: 768px) {
    #main {
        padding-bottom: 90px;
        padding-top: 70px;
    }
}

.our-numbers {
    padding-bottom: 85px;
    padding-top: 52px;
}

.our-numbers h2 {
    margin-bottom: 0;
}

.our-numbers ul {
    list-style: none;
    margin-bottom: 0;
    padding-left: 0;
    color: #393939;
    margin-top: 7px;
}

.our-numbers li {
    font-size: 20px;
    line-height: 1;
    white-space: nowrap;
}

.our-numbers .number {
    color: #2183CC;
    display: block;
    font-size: 36px;
    font-weight: bold;
    line-height: 1.05;
    margin-bottom: 10px;
}

@media (max-width: 1199px) {
    .our-numbers {
        text-align: center;
    }

    .our-numbers ul {
        margin: 42px auto 0;
    }

    .our-numbers li + li {
        margin-top: 25px;
    }
}

@media (min-width: 768px) {
    .our-numbers ul {
        display: table;
    }

    .our-numbers li {
        display: table-cell;
    }

    .our-numbers li + li {
        padding-left: 48px;
    }
}

@media (min-width: 992px) {
    .our-numbers ul {
        border-bottom: 2px solid #F4F6F8;
        padding-bottom: 42px;
    }
}

@media (min-width: 1200px) {
    .our-numbers ul {
        margin-left: -7px;
    }
}

.our-skills {
    background: #F9F9F9;
    color: #393939;
    font-size: 18px;
    padding-top: 71px;
}

.our-skills p {
    line-height: 1.35;
}

.our-skills .icon {
    border: 3px solid #C6CACB;
    -moz-border-radius: 50%;
    border-radius: 50%;
    color: #2183CC;
    font-size: 0;
    text-align: center;
}

.our-skills .svg {
    vertical-align: middle;
}

.our-skills .svg-mds {
    position: relative;
}

@media (max-width: 767px) {
    .our-skills {
        padding-bottom: 50px;
    }

    .our-skills .row > div + div {
        margin-top: 35px;
    }

    .our-skills .icon {
        display: inline-block;
        *zoom: 1;
        *display: inline;
        height: 50px;
        line-height: 44px;
        margin-right: 9px;
        width: 50px;
        vertical-align: middle;
    }

    .our-skills .svg {
        height: 26px;
        width: 28px;
    }

    .our-skills .svg-mds {
        left: -1px;
        top: -1px;
    }
}

@media (min-width: 768px) {
    .our-skills {
        padding-bottom: 75px;
    }

    .our-skills .icon {
        display: block;
        height: 70px;
        line-height: 64px;
        margin-bottom: 30px;
        width: 70px;
    }

    .our-skills .svg {
        height: 36px;
        width: 41px;
    }

    .our-skills .svg-mds {
        left: -2px;
        top: -2px;
    }
}

.our-brands .brand {
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    height: 230px;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media (max-width: 767px) {
    .our-brands {
        margin-top: -20px;
    }

    .our-brands .brand {
        margin-top: 20px;
    }
}

@media (min-width: 768px) {
    .our-brands {
        margin-top: -30px;
    }

    .our-brands .brand {
        margin-top: 30px;
    }
}

@media (min-width: 992px) {
    .our-brands {
        margin-top: -40px;
    }

    .our-brands .brand {
        margin-left: 5px;
        margin-top: 40px;
        margin-right: 5px;
    }
}

.brand-melhores-publicacoes {
    background: #5E03D2;
}

.brand-datahand {
    background: #227AE9;
}

.brand-brazilian-times {
    background: #464647;
}

.brand-cursor {
    background: #060607;
}

.brand-treissi-amorim {
    background: #EC95AA;
}

.brand-revista-w3 {
    background: #D7333B;
}

.portal-mask {
    display: block;
    height: 0;
    padding-top: 5.45%;
    position: relative;
    width: 100%;
}

.portal-mask svg {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.portal-details {
    color: #393939;
}

.portal-details h2 {
    line-height: 1.35;
}

.portal-details hr {
    border-top-color: #E8E8E8;
}

.portal-details p {
    line-height: 1.4;
}

.portal-details a {
    line-height: 1.25;
}

@media (max-width: 767px) {
    .portal-details {
        margin-top: 25px;
    }

    .portal-details .h4 {
        margin-bottom: 5px;
    }

    .portal-details hr {
        margin-bottom: 25px;
        margin-top: 25px;
    }
}

@media (min-width: 768px) {
    .portal-details .h4 {
        margin-bottom: 0;
    }

    .portal-details hr {
        margin-bottom: 40px;
        margin-top: 40px;
    }
}

@media (min-width: 992px) {
    .portal-details {
        font-size: 20px;
    }

    .portal-details a {
        font-size: 16px;
    }
}

.portal-bg {
    bottom: 0;
    left: 0;
    position: absolute;
    top: 0;
    z-index: -1;
}

@media (max-width: 767px) {
    .portal-bg {
        right: 0;
        width: 100%;
    }
}

@media (min-width: 768px) {
    .portal-bg {
        height: 100%;
    }
}

.our-portals {
    color: #393939;
    position: relative;
    z-index: 0;
}

.our-portals .img {
    -moz-border-radius: 6px;
    border-radius: 6px;
    -moz-box-shadow: 0 20px 90px 0 rgba(151, 166, 175, 0.4);
    box-shadow: 0 20px 90px 0 rgba(151, 166, 175, 0.4);
    display: inline-block;
    *zoom: 1;
    *display: inline;
    vertical-align: top;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.our-portals .portal {
    position: relative;
}

.our-portals .portal a {
    color: inherit;
}

@media (max-width: 1199px) {
    .our-portals .img > img {
        height: auto;
        width: 100%;
    }
}

@media (max-width: 991px) {
    .our-portals .portal {
        padding-bottom: 35px;
        padding-top: 35px;
    }
}

@media (max-width: 767px) {
    .our-portals .portal-bg {
        height: 260px;
    }
}

@media (min-width: 768px) {
    .our-portals {
        padding-bottom: 100px;
    }

    .our-portals .portal-details hr {
        position: relative;
        width: 200%;
    }

    .our-portals .portal .row {
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -moz-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .our-portals .portal + .portal {
        margin-top: 50px;
    }

    .our-portals .portal:nth-child(even) .img {
        float: right;
    }

    .our-portals .portal:nth-child(even) .portal-bg {
        left: auto;
        right: 0;
    }

    .our-portals .portal:nth-child(even) .portal-details {
        padding-right: 10px;
    }

    .our-portals .portal:nth-child(even) .col-sm-7 {
        left: 41.66666667%;
    }

    .our-portals .portal:nth-child(even) .col-sm-5 {
        right: 58.33333333%;
    }

    .our-portals .portal:nth-child(odd) .portal-details {
        padding-left: 10px;
    }

    .our-portals .portal:nth-child(odd) .portal-details hr {
        left: -100%;
    }

    .our-portals .portal-bg {
        width: 40%;
    }
}

@media (min-width: 992px) {
    .our-portals .portal {
        padding-bottom: 65px;
        padding-top: 65px;
    }

    .our-portals .portal + .portal {
        margin-top: 100px;
    }

    .our-portals .portal:nth-child(even) .portal-details {
        padding-right: 47px;
    }

    .our-portals .portal:nth-child(odd) .portal-details {
        padding-left: 47px;
    }
}

@media (min-width: 1200px) {
    .our-portals .container {
        width: 1230px;
    }
}

.portal-melhores-publicacoes .icon-external {
    color: #600ACF;
}

.portal-melhores-publicacoes .portal-bg {
    fill: #5D01D3;
}

.portal-datahand .icon-external {
    color: #1E79ED;
}

.portal-datahand .portal-bg {
    fill: #1E79ED;
}

.portal-brazilian-times .icon-external {
    color: #393939;
}

.portal-brazilian-times .portal-bg {
    fill: #444444;
}

.portal-cursor .icon-external {
    color: #000000;
}

.portal-cursor .portal-bg {
    fill: #000000;
}

.portal-treissi-amorim .icon-external {
    color: #EE96AB;
}

.portal-treissi-amorim .portal-bg {
    fill: #F195AB;
}

.portal-revista-w3 .icon-external {
    color: #D33B43;
}

.portal-revista-w3 .portal-bg {
    fill: #D93139;
}

@media (max-width: 767px) {
    .portal-content {
        padding-bottom: 30px;
        padding-top: 30px;
    }
}

@media (min-width: 768px) {
    .portal-content {
        padding-bottom: 56px;
        padding-top: 60px;
    }
}

.contact-us {
    background: #2183CC;
    color: #fff;
}

.contact-us .h2 {
    color: inherit;
}

.contact-us p {
    margin-left: 43px;
    margin-right: 43px;
}

.contact-us .btn {
    background: #fff;
    border-color: #fff;
    color: #1E76B8;
    font-size: 12px;
    line-height: 1.7;
    padding-left: 36px;
    padding-right: 36px;
}

.contact-us .btn-shadow {
    -moz-box-shadow: 0 20px 20px 0 rgba(85, 105, 125, 0.3);
    box-shadow: 0 20px 20px 0 rgba(85, 105, 125, 0.3);
}

@media (max-width: 991px) {
    .contact-us {
        padding-bottom: 40px;
        padding-top: 40px;
        text-align: center;
    }
}

@media (min-width: 992px) {
    .contact-us {
        font-size: 20px;
        padding-bottom: 80px;
        padding-top: 80px;
    }

    .contact-us > .container {
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -moz-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -moz-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .contact-us .h2,
  .contact-us p {
        margin-bottom: 0;
    }

    .contact-us .h2 {
        white-space: nowrap;
    }

    .contact-us .btn-shadow {
        margin-left: 18px;
    }
}

.about-numbers h2 {
    margin-bottom: 27px;
}

.about-numbers .row {
    margin-left: 0;
    margin-right: 0;
}

.about-numbers .row > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
}

.about-numbers h3 {
    color: inherit;
    letter-spacing: -0.78px;
    line-height: 0.55;
}

.about-numbers .number {
    color: #fff;
    font-size: 20px;
    min-height: 210px;
    padding: 47px 25px 40px;
    position: relative;
    z-index: 0;
}

.about-numbers .number-bg {
    object-fit: cover;
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    width: 100%;
    z-index: -1;
}

@media (max-width: 991px) {
    .about-numbers {
        margin-bottom: 60px;
    }

    .about-numbers h3 {
        font-size: 46px;
    }
}

@media (min-width: 992px) {
    .about-numbers {
        margin-bottom: 96px;
    }

    .about-numbers h3 {
        font-size: 80px;
    }

    .about-numbers .number-md {
        height: 260px;
    }

    .about-numbers .pull-right-md .number {
        height: 470px;
    }
}

.about-values .opening {
    font-size: 16px;
    line-height: 1.25;
    margin-bottom: 0;
}

.about-values .values {
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -10px;
    margin-right: -10px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.about-values .value {
    background: #2183CC;
    -moz-border-radius: 6px;
    border-radius: 6px;
    color: #fff;
    font-size: 16px;
    margin: 0 10px 20px;
    padding: 27px 15px 23px;
    text-align: center;
    line-height: 1.5;
}

.about-values h3 {
    color: #FFFFFF;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1.1;
    margin-bottom: 33px;
    text-align: center;
    text-transform: uppercase;
}

@media (max-width: 1199px) {
    .about-values .value {
        width: -moz-calc(33.334% - 20px);
        width: calc(33.334% - 20px);
    }
}

@media (max-width: 991px) {
    .about-values {
        margin-bottom: 40px;
    }

    .about-values .header {
        margin-bottom: 25px;
    }
}

@media (max-width: 575px) {
    .about-values .value {
        width: 100%;
    }
}

@media (min-width: 992px) {
    .about-values {
        margin-bottom: 80px;
    }

    .about-values .header {
        -moz-box-align: end;
        -ms-flex-align: end;
        align-items: end;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        margin-bottom: 43px;
    }

    .about-values h2 {
        -moz-box-flex: 1;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
        margin-bottom: 0;
        padding-top: 2px;
    }

    .about-values .opening {
        max-width: 568px;
    }
}

@media (min-width: 1200px) {
    .about-values .value {
        width: -moz-calc(20% - 20px);
        width: calc(20% - 20px);
    }
}

@media (max-width: 991px) {
    .our-technologies {
        margin-bottom: 40px;
    }
}

@media (max-width: 575px) {
    .our-technologies img {
        height: auto;
        margin-bottom: 30px;
        max-width: 100%;
    }
}

@media (min-width: 992px) {
    .our-technologies {
        margin-bottom: 74px;
    }

    .our-technologies h2 {
        margin-bottom: 15px;
    }

    .our-technologies p {
        font-size: 20px;
        line-height: 1.4;
    }
}

.leaderships .leader {
    background: #F9F9F9;
    padding: 27px 28px;
}

.leaderships .leader strong {
    text-transform: uppercase;
}

.leaderships .leader + .leader {
    margin-top: 11px;
}

@media (max-width: 991px) {
    .leaderships {
        margin-bottom: 60px;
    }
}

@media (min-width: 992px) {
    .leaderships {
        margin-bottom: 120px;
    }

    .leaderships h2 {
        margin-bottom: 39px;
    }
}

.about-devices {
    overflow: hidden;
    position: relative;
}

.about-devices > img {
    -moz-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease;
    max-height: 497px;
    left: 0;
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position: absolute;
    top: 0;
}

.about-devices .primary {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    position: relative;
}

.about-devices .fading {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

#footer {
    background: #F9F9F9;
    font-size: 14px;
    line-height: 2.15;
    padding-top: 54px;
}

#footer .logo {
    display: block;
}

#footer ul {
    list-style: none;
    margin-bottom: 0;
    padding-left: 0;
}

#footer li a {
    display: block;
}

#footer h6 {
    color: #393939;
    text-transform: uppercase;
}

@media (max-width: 1199px) {
    #footer {
        padding-bottom: 54px;
    }
}

@media (max-width: 991px) {
    #footer ul {
        margin-bottom: 30px;
    }
}

@media (max-width: 767px) {
    #footer {
        text-align: center;
    }

    #footer li {
        display: inline-block;
        *zoom: 1;
        *display: inline;
    }

    #footer li a {
        padding-left: 7px;
        padding-right: 7px;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    #footer .copyright {
        float: left;
    }

    #footer .logo-triares {
        float: right;
    }
}

@media (min-width: 768px) {
    #footer h6 {
        margin-bottom: 15px;
    }
}

@media (min-width: 992px) {
    #footer h6 {
        margin-bottom: 22px;
        margin-top: 9px;
    }
}

@media (min-width: 1200px) {
    #footer {
        padding-bottom: 69px;
    }
}

.copyright {
    color: #AAAAAA;
    font-size: 12px;
}

@media (max-width: 991px) {
    .copyright {
        margin-bottom: 0;
        margin-top: 15px;
    }
}

@media (max-width: 767px) {
    .copyright {
        margin-bottom: 15px;
    }
}

@media (min-width: 992px) {
    .copyright {
        margin-bottom: 16px;
        margin-top: 106px;
    }
}

.footer-contact {
    color: #9B9B9B;
    font-size: 14px;
}

.footer-contact a {
    color: inherit;
}

@media (max-width: 767px) {
    .footer-contact a {
        display: block;
        padding: 5px;
    }

    .footer-contact address {
        margin-bottom: 35px;
        margin-top: 10px;
    }
}

@media (min-width: 768px) {
    .footer-contact address {
        margin-bottom: 0;
        margin-top: 35px;
    }
}

.lolo {
    -moz-transition: 0.35s ease filter;
    transition: 0.35s ease filter;
}
