*{
    --bgdefault: #ffffff;
    --bgdark: #111111;
    --bgdarker: #0a0a0a;
    --textdefault: #222222;
    --textalternate: #9A3600;
    --grey: #686868;
    --lightgrey: #efefef;
    --lightergrey: #f5f5f5;
    --darkgrey: #353535;
    --shadowgrey: #cccccc;
    --orange: #CC4700;
    --darkorange: #9A3600;
    --brightorange:#e2640f;
    --alertback: #fcffd1;
    --blue: #004ECC;
    --indigo: #365899;
    --red: #DB4437;
    --green: #0F9D58;
    --yellow: #F4B400;

    --filterblue:invert(22%) sepia(71%) saturate(3066%) hue-rotate(210deg) brightness(85%) contrast(107%);
    --filtergreen:invert(41%) sepia(83%) saturate(419%) hue-rotate(98deg) brightness(100%) contrast(100%);
    --filteryellow:invert(55%) sepia(94%) saturate(908%) hue-rotate(10deg) brightness(107%) contrast(103%);
    --filterred:invert(28%) sepia(92%) saturate(4329%) hue-rotate(351deg) brightness(101%) contrast(72%);
    --filterorange:invert(45%) sepia(64%) saturate(7500%) hue-rotate(18deg) brightness(93%) contrast(103%);
    --filterbrightorange:invert(44%) sepia(71%) saturate(3486%) hue-rotate(5deg) brightness(98%) contrast(88%);

    box-sizing:border-box;
}

#wrapper header {
    background:var(--bgdefault);
    position: fixed;
    z-index: 9000;
    width: 100%;
    border-bottom: 1px solid var(--lightgrey);
    min-height: 105px;
}

#wrapper header .content {
    display: flex;
    align-content: center;
    justify-content: space-between;
    padding:1rem 3.5rem;
}

#wrapper header .content .logo a {
    display: inline-block;
    vertical-align: bottom;
}
#wrapper header .content .logo a img {
    vertical-align: bottom;
}

#wrapper header .content .navigation {
    display: flex;
    flex-direction: column;
}

#wrapper header .content .navigation form {
    display: inline-block;
    margin: 0;
    text-align: right;
}

#wrapper header .content .navigation form input[type=search] {
    font-family: 'Source Sans Pro',sans-serif;
    border: 1px solid var(--lightgrey);
    background-color: var(--lightergrey);
    color: var(--textdefault);
    height: 32px;
    width: 230px;
    vertical-align: top;
    margin: 0;
    border-bottom: 1px solid var(--lightgrey);
    padding:0 .5rem;
    font-size: 1.1rem;
}

#wrapper header .content .navigation form button {
    width: 32px;
    height: 32px;
    line-height: 32px;
    background-color: var(--darkgrey);
    color: var(--orange);
    text-align: center;
    display: inline-block;
    position: relative;
    cursor:pointer;
    border:none;
}

#wrapper header .content .navigation form button span {
    background-color: transparent;
    transform: rotate(45deg);
    position: absolute;
    left: 0.5rem;
    font-weight: 700;
    font-size: 1.3rem;
}

#wrapper header .content .navigation form button i.search {
    background-image: url(../img/svgicons/search.svg);
    width: 24px;
    height: 24px;
    filter:var(--filterbrightorange);
    margin: 3px 0 0;
}

#wrapper header .content .navigation nav {
    margin-top:1rem;
}

#wrapper header .content .navigation nav ul {
    list-style: none;
    display: flex;
    justify-content: flex-end;
    position: relative;
    margin: 0;
    padding: 0;
    gap: 1.4rem;
    row-gap: 0;
}

#wrapper header .content .navigation nav ul li {
    display: inline-block;
}

#wrapper header .content .navigation nav ul li.dropdown {
    position: relative;
    display: block;
}

#wrapper header .content .navigation nav ul li.dropdown > a,#wrapper header .content .navigation nav ul li.dropdown > span {
    font-size: 1.1rem;
    text-decoration: none;
    z-index: 1000;
    text-transform: uppercase;
    color: var(--bgdark);
    
}
#wrapper header .content .navigation nav ul li.dropdown > span {
    cursor: default;
}
#wrapper header .content .navigation nav ul li.dropdown > a i,#wrapper header .content .navigation nav ul li.dropdown > span i {
    margin-left:.4rem;
}

#wrapper header .content .navigation nav ul li.dropdown > a:hover,#wrapper header .content .navigation nav ul li.dropdown > span:hover {
    background-color: none;
    background-image: none;
    background-repeat: repeat-x;
    filter: none;
    text-decoration: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    color: var(--darkorange);
    outline: 0;
}

#wrapper header .content .navigation nav ul li.dropdown:hover ul.dropdown-menu {
    display: flex;
}

#wrapper header .content .navigation nav ul li .dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 2000;
    display: none;
    min-width: max-content;
    padding: 0;
    list-style: none;
    background: var(--darkgrey);
    transition:250ms;
    flex-direction: column;
    align-items: flex-start;
}

#wrapper header .content .navigation nav ul li.drop-contato .dropdown-menu {
    right: 0;
    left: initial;
}

#wrapper header .content .navigation nav ul li .dropdown-menu li {
    width:100%;
}

#wrapper header .content .navigation nav ul li .dropdown-menu li a,
#wrapper header .content .navigation nav ul li .dropdown-menu li span {
    display: flex;
    color: var(--bgdefault);
    text-decoration: none;
    text-transform: uppercase;
    padding: .5rem .8rem;
    font-size: 1.1rem;
    justify-content: space-between;
    align-items: center;
}

#wrapper header .content .navigation nav ul li .dropdown-menu li a:hover,
#wrapper header .content .navigation nav ul li .dropdown-menu li span:hover  {
    background-color: var(--orange);
    color: var(--bgdefault);
}

#wrapper header .content .navigation nav ul li .dropdown-menu li a i,
#wrapper header .content .navigation nav ul li .dropdown-menu li span i {
    filter: invert(100%);
}

#wrapper header .content .navigation nav ul li.dropdown.listsolucao ul.dropdown-menu li.dropdown + li.dropdown {
    margin:0;
}

#wrapper header .content .navigation nav ul li.dropdown.listsolucao ul li.dropdown ul.dropdown-menu {
    display:none;
}

#wrapper header .content .navigation nav ul li.dropdown.listsolucao ul li.dropdown:hover ul.dropdown-menu {
    display:flex;
    left: 100%;
    top: 0;
}

#wrapper nav #mobilemenu {
    display: none;
    cursor: pointer;
    overflow: hidden;
}

#wrapper nav #mobilemenu i.mobile-menu {
    background-image: url(../img/svgicons/menu.svg);
    width: 48px;
    height: 48px;
    filter:var(--filterorange);
    transform: scale(1.6);
    margin: 50% 13px;
}

#admin-shortcut {
    position: fixed;
    top: 0;
    z-index: 99999;
    left: 0;
    width: 100%;
    text-align: center;
    padding: 0;
    margin: 0;
}
#admin-shortcut a,
#admin-shortcut a:visited {
    margin: 0;
    display: inline-flex;
    padding: 0.5rem 1rem;
    background: var(--darkgrey);
    border-radius: 0 0 0.5rem 0.5rem;
    color: var(--yellow);
    text-decoration: none;
    text-transform: uppercase;
    transition: 250ms;
    align-items: center;
    gap: 0.3rem;
}
#admin-shortcut a:hover,
#admin-shortcut a:active {
    background: var(--shadowgrey);
    color: var(--textdefault);
}
#admin-shortcut a i {
    background-image: url(../img/svgicons/user-tie.svg);
    filter:var(--filteryellow);
}
#admin-shortcut a:hover i,
#admin-shortcut a:active i {
    filter:invert(0);
}
#admin-shortcut a span { font-size: 1rem;}

@media screen and (max-width: 835px) {
    #wrapper header .content {
        padding: 1rem 1.5rem;
    }
    #wrapper #news .content,
    #wrapper #servicos .content {
        padding: 0 1.5rem 4rem;
    }
    #wrapper footer .content {
        padding: 0 1.5rem;
    }
}

@media screen and (min-width: 769px) {
    #wrapper header .content .logo a img {
        max-width:170px;
    }
    #wrapper header .content .navigation nav ul.sitemenu {
        list-style: none;
        display: flex !important;
        justify-content: flex-end !important;
        flex-direction: row !important;
        position: relative;
        margin: 0;
        padding: 0;
    }
    #wrapper header { height:initial !important; position: fixed !important;}
    #wrapper #webdoor { padding-top: 110px; }
    html, body { overflow:initial !important;}
    #wrapper nav button { display: none !important; }
    #wrapper nav i.caret-down {
        background-image: url(../img/svgicons/caret-down.svg) !important;
        width: 12px !important;
        height: 14px !important;
    }

    #wrapper header .content .navigation nav ul.sitemenu span {
        display: inline-block !important;
    }
    #wrapper header .content .navigation nav ul.sitemenu .onlymobile {
        display: block !important;
    }
    #wrapper header .content .navigation nav ul li .dropdown-menu li {
        display: block !important;
    }
}

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

    #wrapper header { height:initial; position: relative;}

    #wrapper nav #mobilemenu {
        display: block;
        height: 48px;
        width: 48px;
        line-height: 48px;
        background: transparent;
        border: transparent;
    }

    #wrapper header .content {
        display: flex;
        flex-direction: column;
        text-align: center;
        padding: 1rem;
    }

    #wrapper header .content .navigation {
        display: flex;
        flex-direction: row-reverse;
        text-align: center;
        justify-content: space-between;
        padding:1rem 0 0;
    }

    #wrapper header .content .navigation form {
        display: inline-block;
        margin: 0;
        text-align: right;
        height: 48px;
    }

    #wrapper header .content .navigation form input[type=search] {
        height: 48px;
    }

    #wrapper header .content .navigation form button {
        width: 48px;
        height: 48px;
        line-height: 48px;
    }

    #wrapper header .content .navigation form button span {
        left: 0.85rem;
        font-weight: 700;
        font-size: 1.5rem;
    }

    #wrapper header .content .navigation form button i.search {
        transform: scale(1.3);
        margin: 12px 6px 0;
    }

    #wrapper header .content .navigation nav {
        text-align:right;
        height: 48px;
        margin: 0;
    }

    #wrapper header .content .navigation nav .sitemenu {
        flex-direction: column;
        background: #fff;
        display: none;
        justify-content: start;
        align-items: center;
        width: 100%;
        position: absolute;
        left: 0;
        right: 0;
        margin: 0;
        padding: 0;
        margin: 1rem 0;
        border-top: 1px solid var(--lightgrey);
    }
    #wrapper header .content .navigation nav .sitemenu a {
        text-decoration: none;
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown {
        display: flex;
        flex-direction: row;
        width: 100%;
        justify-content: space-between;
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown.cases {
        flex-direction: column;
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown.cases i {display: none;}
    #wrapper header .content .navigation nav .sitemenu li.dropdown.cases ul.dropdown-menu {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        width:100%;
        background: var(--bgdefault);
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown.cases ul.dropdown-menu li {
        width: 100%;
    }

    #wrapper header .content .navigation nav .sitemenu li.dropdown > span,
    #wrapper header .content .navigation nav .sitemenu li.dropdown a {
        display: flex;
        flex-direction: row;
        padding: 1rem .3rem;
        font-size: 1.15rem;
        text-transform: uppercase;
        color: var(--bgdark);
        align-items: center;
        width: 100%;
        justify-content: center;
        gap: .6rem;
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown > span:hover,
    #wrapper header .content .navigation nav .sitemenu li.dropdown > span:active,
    #wrapper header .content .navigation nav .sitemenu li.dropdown a:hover,
    #wrapper header .content .navigation nav .sitemenu li.dropdown a:active {
        background-color: var(--orange);
        color: var(--bgdefault);
        cursor: pointer;
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown > span:hover i,
    #wrapper header .content .navigation nav .sitemenu li.dropdown > span:active i {
        filter: invert(1);
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown > span i {
        filter: invert(0);
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown div.onlymobile {
        display: none;
        flex-direction: row;
        justify-content: space-between;
        gap: 0;
        padding: 0;
        width: 100%;
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown div.onlymobile ul {
        list-style: none;
        display: flex;
        flex-direction: column;
        width: 100%;
        padding: 0;
        margin: 0;
        background: transparent;
        top: auto;
        position: relative;
    }
    #wrapper header .content .navigation nav ul li.dropdown.listsolucao ul li.dropdown ul.dropdown-menu {
        display: flex;
    }
    #wrapper header .content .navigation nav ul li.dropdown.listsolucao ul li.dropdown:hover ul.dropdown-menu {
        left:0;
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown div.onlymobile button {
        height: 100%;
        width: 48px;
        border: none;
        background: var(--lightgrey);
        cursor: pointer;
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown div.onlymobile button:hover,
    #wrapper header .content .navigation nav .sitemenu li.dropdown div.onlymobile button:active {
        background: var(--orange);
    }
    #wrapper header .content .navigation nav .sitemenu li.dropdown div.onlymobile button:hover i,
    #wrapper header .content .navigation nav .sitemenu li.dropdown div.onlymobile button:active i {
        filter: invert(1);
    }

    #wrapper nav .sitemenu i.caret-down {
        background-image: url(../img/svgicons/caret-right.svg);
        width: 14px !important;
        height: 14px !important;
    }

    #wrapper header .content .navigation nav .sitemenu li.dropdown.blog {
        margin-top: 3.5rem;
    }
}

@media (max-width: 370px) {
    #wrapper header .content .navigation form input[type=search] {
        width: 50vw;
    }
}

/* contato cta */
#contato-cta {
    position: fixed;
    bottom: 1rem;
    right: .5rem;
    z-index: 9001;
}
#contato-cta a,
#contato-cta a:visited {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
}
#contato-cta a .avatar {
    overflow: hidden;
    height: 60px;
    position: relative;
}
#contato-cta a .avatar span {
    background: #3fff00;
    position: absolute;
    width: 1rem;
    height: 1rem;
    border-radius: 100rem;
    bottom: 0rem;
    right: 0rem;
    border:1px solid #fff;
}
#contato-cta a .avatar img {
    padding: 0;
    margin: 0;
    width: 100%;
    border-radius: 100rem;
}
#contato-cta a .cta-box {
    display: flex;
    align-items: center;
}
#contato-cta a .cta-box .arrow {
    color: var(--orange);
    margin: -1px;
    position: absolute;
    width: 2rem;
    margin-right: 2rem;
    transition: 250ms;
}
#contato-cta a .cta-box p {
    background: var(--orange);
    padding: 1rem;
    border-radius: 0.5rem;
    font-weight: bold;
    font-size: 1.1rem;
    color: #fff;
    margin: 0 0 0 .5rem;
    transition: 250ms;
}
#contato-cta a:hover .cta-box .arrow,
#contato-cta a:active .cta-box .arrow {
    color: var(--darkgrey);
}
#contato-cta a:hover .cta-box p,
#contato-cta a:active .cta-box p {
    background: var(--darkgrey);
}

#contato-cta a:hover,
#contato-cta a:active {
    animation: shake 1000ms;
    animation-iteration-count: 1;
}

@keyframes shake {
    10%, 90% {
        transform: translate3d(-1px, 0, 0);
    }

    20%, 80% {
        transform: translate3d(2px, 0, 0);
    }

    30%, 50%, 70% {
        transform: translate3d(-4px, 0, 0);
    }

    40%, 60% {
        transform: translate3d(4px, 0, 0);
    }
}

@media (max-width: 400px) {
    #contato-cta {
        display: none;
    }
}