/* 
	Css Responsive Framework. 
	Created by André Inocenti and Thiago Oliveira (Schizo; Tosco;)

	Usage:
*/

@charset "utf-8";
:root {
    /* sizes */
    --max-width: 100%;
    /* colors */
    --text-dark-color: #4e4e4e;
    --text-color: #4e4e4e;
    --text-light-color: #727272;
    --text-lighter-color: #999999;
    --border-color: #ddd;
    --action: #bd141b;
    --action_gradient: #ed1c24;
    --action_darker: #96070a;
    --action_gradient_dark: #bd141b;
    --link: #0065b3;
    --link_gradient: #00a6de;
    --link_darker: #005699;
    --link_gradient_darker: #0092c4;
    --warning: #b60606;
    --warning_gradient: #f35959;
    --warning_darker: #9c0505;
    --warning_gradient_darker: #d95050;
    --highlight: #6ab586;
    --highlight_gradient: #7acf99;
    --highlight_darker: #5c9c73;
    --highlight_gradient_darker: #4d8260;
    /* font sizes */
    --font-huge: 2rem;
    --font-bigger: 1.2rem;
    --font-big: 1.1rem;
    --font-normal: 1rem;
    --font-small: 0.9rem;
    --font-smaller: 0.8rem;
}

* {
    /* font-family: Arial, sans-serif; */
    box-sizing: border-box;
}

html,
body {
    font-family: Tahoma, Geneva, sans-serif;
    font-style: normal;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
    background: #fff;
    color: #333;
    padding: 0;
    margin: 0;
}

body {
    color: var(--text-color);
}

p {
    margin: 0 0 20px 0;
}

/* Content Wrapper for maximum content size */

.content-wrapper {
    max-width: var(--max-width);
    margin: 0 auto;
}

/* TITLES */

.title {
    display: block;
    font-weight: 500;
    font-size: 1.2rem;
    margin-bottom: 1rem;
}

.subtitle {
    display: block;
    font-weight: 500;
    font-size: 1.1rem;
    margin-bottom: 1rem;
}

.subtitle span {
    font-weight: 300;
}

/* Links */

.content-wrapper a,
.link {
    color: var(--link);
    text-decoration: none;
}

.content-wrapper a:hover,
.link:hover {
    text-decoration: underline;
}

.content-wrapper a.no-hover,
.link.no-hover {
    text-decoration: none;
}

/* FONTS */

.light {
    font-weight: 300;
}

.normal {
    font-weight: 400;
}

.bold {
    font-weight: bold;
}

.f-dark {
    color: var(--text-dark-color);
}

.f-dark svg.ico * {
    fill: var(--text-dark-color);
}

.f-light {
    color: var(--text-light-color);
}

.f-light svg.ico * {
    fill: var(--text-light-color);
}

.f-regular {
    color: var(--text-color);
}

.f-regular svg.ico * {
    fill: var(--text-color);
}

.f-lighter {
    color: var(--text-lighter-color);
}

.f-lighter svg.ico * {
    fill: var(--text-lighter-color);
}

.text-center,
.center {
    text-align: center !important;
    justify-content: center;
}

.text-right {
    text-align: right;
}

.text-left {
    text-align: left !important;
}

.font-huge {
    font-size: var(--font-huge);
}

.font-bigger {
    font-size: var(--font-bigger);
}

.font-big {
    font-size: var(--font-big);
}

.font-normal {
    font-size: var(--font-normal);
}

.font-small {
    font-size: var(--font-small);
}

.font-smaller {
    font-size: var(--font-smaller);
}

/* BUTTONS  */

/*
btn-action - para botões que são a ação primaria
btn-highlight - botão de destaque ou de ação que não é a ação principal
btn-link - para links
btn-info - botão informativo / que abrem mensagens
btn-danger - ações que precisam de atenção. ex: delete
 */

button {
    background: transparent;
    cursor: pointer;
}

.btn {
    display: inline-block;
    height: 40px;
    line-height: 40px;
    position: relative;
    padding: 0 14px;
    border: 0;
    border-radius: 4px;
    text-align: center;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 0.85rem;
    letter-spacing: 0.1px;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.btn.small {
    height: 22px;
    line-height: 22px;
    text-transform: none;
    font-weight: 400;
}

.btn.small .desc {
    letter-spacing: 1px;
    font-size: 0.9rem;
}

.btn.big {
    height: 34px;
    line-height: 34px;
}

.btn.big .desc {
    letter-spacing: 1px;
    font-size: 0.85rem;
}

.btn > .text {
    font-size: 0.85rem;
}

.btn-default {
    background: #ededed;
    background: -moz-linear-gradient(left, #ededed 0%, #d9d9d9 100%);
    background: -webkit-linear-gradient(left, #ededed 0%, #d9d9d9 100%);
    background: linear-gradient(to right, #ededed 0%, #d9d9d9 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#ededed', endColorstr='#d9d9d9', GradientType=1);
}

.btn-default:hover {
    background: #d9d9d9;
    background: -moz-linear-gradient(left, #d9d9d9 0%, #ccc 100%);
    background: -webkit-linear-gradient(left, #d9d9d9 0%, #ccc 100%);
    background: linear-gradient(to right, #d9d9d9 0%, #bfbfbf 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#d9d9d9', endColorstr='#ccc', GradientType=1);
}

.btn-default-o {
    border: 1px solid var(--text-lighter-color);
    color: var(--text-lighter-color);
    background: transparent;
}

.btn-default-o:hover {
    border-color: var(--text-light-color);
    color: var(--text-light-color);
}

.btn-action {
    color: #fff;
    background: var(--action);
    background: linear-gradient(
        to right,
        var(--action_gradient) 0%,
        var(--action) 100%
    );
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr=var(--action_gradient), endColorstr=var(--action), GradientType=1);
}

.btn-action:hover,
.btn-action-o:hover,
.btn-action-o.active {
    color: #fff;
    background: var(--action_darker);
    background: linear-gradient(
        to right,
        var(--action_gradient_dark) 0%,
        var(--action_darker) 100%
    );
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr=var(--action_gradient_dark), endColorstr=var(--action_darker), GradientType=1);
}

.btn-action-o,
.btn-action-o.active:hover {
    border: 2px solid var(--action);
    color: var(--action);
    background: transparent;
}

.btn-info {
    color: #4f4f4f;
    background: #a9b3c7;
    background: -moz-linear-gradient(left, #e4e9f2 0%, #ccd8f0 100%);
    background: -webkit-linear-gradient(left, #e4e9f2 0%, #ccd8f0 100%);
    background: linear-gradient(to right, #e4e9f2 0%, #d7dff0 100%);
    cursor: pointer;
}

.btn-info:hover,
.btn-info-o:hover {
    color: #fff;
    background: #a9b3c7;
    background: -moz-linear-gradient(left, #dde2eb 0%, #bfcae0 100%);
    background: -webkit-linear-gradient(left, #dde2eb 0%, #bfcae0 100%);
    background: linear-gradient(to right, #dde2eb 0%, #bfcae0 100%);
    cursor: pointer;
}

.btn-info-o {
    border: 2px solid #d7dff0;
    color: #c1c8d6;
    background: transparent;
}

.btn-link {
    color: #fff;
    background: var(--link);
    background: linear-gradient(
        to right,
        var(--link_gradient) 0%,
        var(--link) 100%
    );
    cursor: pointer;
}

.btn-link:hover,
.btn-link-o:hover {
    background: var(--link_darker);
    color: #fff;
    background: linear-gradient(
        to right,
        var(--link_gradient_darker) 0%,
        var(--link_darker) 100%
    );
}

.btn-link-o,
.btn-link-o {
    border: 2px solid var(--link);
    color: var(--link);
    background: transparent;
}

.btn-danger {
    color: #fff !important;
    background: var(--warning);
    background: linear-gradient(
        to right,
        var(--warning_gradient) 0%,
        var(--warning) 100%
    );
}

.btn-danger:hover {
    color: #fff !important;
    background: var(--warning_darker);
    background: linear-gradient(
        to right,
        var(--warning_gradient_darker) 0%,
        var(--warning_darker) 100%
    );
}

.btn-danger-o,
.btn-danger-o {
    border: 2px solid var(--warning);
    color: var(--warning);
}

.btn-highlight {
    color: #fff !important;
    background: var(--highlight);
    background: linear-gradient(
        to right,
        var(--highlight_gradient) 0%,
        var(--highlight) 100%
    );
    cursor: pointer;
}

.btn-highlight:hover,
.btn-highlight-o:hover {
    color: #fff;
    background: var(--highlight_darker);
    background: linear-gradient(
        to right,
        var(--highlight_gradient_darker) 0%,
        var(--highlight_darker) 100%
    );
}

.btn-highlight-o {
    border: 2px solid var(--highlight_gradient_darker);
    color: var(--highlight_gradient_darker);
}

/* Table */

.table {
    width: 100%;
    display: table;
    border-collapse: collapse;
    border-spacing: 0;
}

.table,
.table th,
.tabletd {
    border: none;
}

.table thead {
    color: rgba(0, 0, 0, 0.6);
}

.table tr {
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

.table td,
.table th {
    padding: 15px 10px;
    text-align: left;
    vertical-align: middle;
    border-radius: 2px;
}

/* Table striped */

.table.striped > tbody > tr > td {
    border-radius: 0;
}

.table.striped > tbody > tr:nth-child(odd) {
    background-color: rgba(242, 242, 242, 0.5);
}

.table.striped tr {
    border-bottom: none;
}

/* SVG - Feather Ico and SVG Icos */

.feather,
svg.ico,
.svg,
.svg.medium {
    width: 20px;
    height: 20px;
}

.feather.mini,
svg.ico.mini,
.svg.mini,
.svg.small {
    width: 17px;
    height: 17px;
}

.feather.big,
svg.ico.big,
.svg.big {
    width: 25px;
    height: 25px;
}

.svg svg {
    display: block;
}

.svg.white * {
    fill: #fff;
}

.svg * {
    width: 100%;
    height: 100%;
    fill: currentcolor;
}

.link.ico,
.link.ico * {
    fill: #727272;
}

.link.ico:hover,
.link.ico:hover * {
    fill: var(--text-color);
}

/*SUBMENUs*/

.with-sub-menu {
    position: relative;
}

.sub-menu {
    position: absolute;
    display: none;
    background-color: #fff;
    min-width: 200px;
    box-shadow: 0 0px 3px rgba(0, 0, 0, 0.3);
    top: 30px;
    z-index: 100;
    right: 0;
    padding: 5px 0;
    border: 1px solid #d7d7d7;
    border-radius: 3px;
}

.sub-menu.active {
    display: block;
}

.sub-menu > li,
.sub-menu > .item,
.sub-menu a,
.sub-menu .link {
    display: block;
    width: 100%;
    height: 30px;
    line-height: 30px;
    padding: 0 20px;
    margin: 0;
    text-align: left;
    text-decoration: none;
    color: var(--text-color);
    white-space: nowrap;
}

.sub-menu a .fa,
.sub-menu .link .fa {
    margin-right: 5px;
}

.sub-menu a:hover,
.sub-menu .item:hover,
.sub-menu .link:hover {
    background-color: #d7d7d7;
}

/* fix css to submenu inside .btn */

.btn .sub-menu {
    top: 30px;
}

.btn .sub-menu > li,
.sub-menu > .item {
    text-transform: none;
    font-weight: normal;
}

/* IMAGES */

picture .menu-options {
    top: 5px;
    right: 5px;
}

picture .menu-options .options-action {
    width: 26px;
    height: 20px;
    line-height: 20px;
}

picture.portrait,
picture.landscape,
picture.wide,
picture.square {
    display: flex;
    background: #333;
    align-items: center;
    justify-content: center;
    position: relative;
}

picture.full {
    align-items: flex-start;
}

picture.portrait:before,
picture.landscape:before,
picture.wide:before,
picture.square:before {
    float: left;
    content: "";
    width: 0;
    height: 0;
}

picture.landscape:before {
    padding-top: 66.66%;
}

/* proporção: 3:2 */

picture.portrait:before {
    padding-top: 150%;
}

/* proporção: 2:3 */

picture.wide:before {
    padding-top: 50%;
}

/* proporção: 2:1 */

picture.square:before {
    padding-top: 100%;
}

/* proporção: 1:1 */

picture.portrait:after,
picture.landscape:after,
picture.wide:after,
picture.square:after {
    content: "";
    display: table;
    clear: both;
}

picture.thumb,
picture.thumb img {
    max-width: 75px;
}

picture.small,
picture.small img {
    max-width: 165px;
}

picture.medium,
picture.medium img {
    max-width: 380px;
}

picture.large,
picture.large img {
    max-width: 700px;
}

/* IMAGES LIST */

.images-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 -10px;
}

.images-list .img {
    margin: 0 10px 20px;
    border-radius: 6px;
}

.images-list img {
    border-radius: 6px;
}

.images-list .img:hover {
    opacity: 0.8;
    cursor: pointer;
}

/* JS - Flash Message */

.js_message {
    width: 100%;
    padding: 10px;
    text-align: center;
    cursor: pointer;
    border-radius: 6px;
    border: 1px solid #555;
    z-index: 1;
    position: relative;
    margin: 10px 0;
    opacity: 0;
    transition: opacity 0.3s ease-in-out, background 0.2s ease-in-out;
}

.js_message.active {
    opacity: 1;
}

.js_message.error {
    background: #ffecec;
    color: #555;
    border-color: #bc0000;
}

.js_message.error:hover {
    background: #bc0000;
    color: #fff;
}

.js_message.success {
    background: #e9ffd9;
    color: #555;
    border-color: #d1fab6;
}

.js_message.success:hover {
    background: #d1fab6;
}

.js_message.notice {
    background: #e3f7fc;
    color: #555;
    border-color: #8ed9f6;
}

.js_message.notice:hover {
    background: #8ed9f6;
}

.js_message.alert {
    background: #fff8c4;
    color: #555;
    border-color: #f7deae;
}

.js_message.alert:hover {
    background: #f7deae;
}

/* Spacer */

.spacer {
    margin: 0 -10px;
}

.spacer > .item {
    margin: 0 10px 20px;
}

/* Margins / Paddings */

.m-auto {
    margin: 0 auto;
}

.no-margin {
    margin: 0;
}

.m-t-0 {
    margin-top: 0px !important;
}

.m-t-5 {
    margin-top: 5px !important;
}

.m-t-10 {
    margin-top: 10px !important;
}

.m-t-15 {
    margin-top: 15px !important;
}

.m-t-20 {
    margin-top: 20px !important;
}

.m-t-30 {
    margin-top: 30px !important;
}

.m-t-40 {
    margin-top: 40px !important;
}

.m-t-50 {
    margin-top: 50px !important;
}

.m-b-0 {
    margin-bottom: 0px !important;
}

.m-b-5 {
    margin-bottom: 5px !important;
}

.m-b-10 {
    margin-bottom: 10px !important;
}

.m-b-15 {
    margin-bottom: 15px !important;
}

.m-b-20 {
    margin-bottom: 20px !important;
}

.m-b-30 {
    margin-bottom: 30px !important;
}

.m-b-40 {
    margin-bottom: 40px !important;
}

.m-b-50 {
    margin-bottom: 50px !important;
}

.m-l-0 {
    margin-left: 0px !important;
}

.m-l-5 {
    margin-left: 5px !important;
}

.m-l-10 {
    margin-left: 10px !important;
}

.m-l-15 {
    margin-left: 15px !important;
}

.m-l-20 {
    margin-left: 20px !important;
}

.m-l-30 {
    margin-left: 30px !important;
}

.m-l-40 {
    margin-left: 40px !important;
}

.m-l-50 {
    margin-left: 50px !important;
}

.m-r-0 {
    margin-right: 0px !important;
}

.m-r-5 {
    margin-right: 5px !important;
}

.m-r-10 {
    margin-right: 10px !important;
}

.m-r-15 {
    margin-right: 15px !important;
}

.m-r-20 {
    margin-right: 20px !important;
}

.m-r-30 {
    margin-right: 30px !important;
}

.m-r-40 {
    margin-right: 40px !important;
}

.m-r-50 {
    margin-right: 50px !important;
}

.no-padding {
    padding: 0 !important;
}

.p-t-0 {
    padding-top: 0px !important;
}

.p-t-5 {
    padding-top: 5px !important;
}

.p-t-10 {
    padding-top: 10px !important;
}

.p-t-15 {
    padding-top: 15px !important;
}

.p-t-20 {
    padding-top: 20px !important;
}

.p-t-30 {
    padding-top: 30px !important;
}

.p-t-40 {
    padding-top: 40px !important;
}

.p-t-50 {
    padding-top: 50px !important;
}

.p-b-0 {
    padding-bottom: 0px !important;
}

.p-b-5 {
    padding-bottom: 5px !important;
}

.p-b-10 {
    padding-bottom: 10px !important;
}

.p-b-15 {
    padding-bottom: 15px !important;
}

.p-b-20 {
    padding-bottom: 20px !important;
}

.p-b-30 {
    padding-bottom: 30px !important;
}

.p-b-40 {
    padding-bottom: 40px !important;
}

.p-b-50 {
    padding-bottom: 50px !important;
}

.p-l-0 {
    padding-left: 0px !important;
}

.p-l-5 {
    padding-left: 5px !important;
}

.p-l-10 {
    padding-left: 10px !important;
}

.p-l-15 {
    padding-left: 15px !important;
}

.p-l-20 {
    padding-left: 20px !important;
}

.p-l-30 {
    padding-left: 30px !important;
}

.p-l-40 {
    padding-left: 40px !important;
}

.p-l-50 {
    padding-left: 50px !important;
}

.p-r-0 {
    padding-right: 0px !important;
}

.p-r-5 {
    padding-right: 5px !important;
}

.p-r-10 {
    padding-right: 10px !important;
}

.p-r-15 {
    padding-right: 15px !important;
}

.p-r-20 {
    padding-right: 20px !important;
}

.p-r-30 {
    padding-right: 30px !important;
}

.p-r-40 {
    padding-right: 40px !important;
}

.p-r-50 {
    padding-right: 50px !important;
}

.p0 {
    padding: 0px !important;
}

.p10 {
    padding: 10px !important;
}

.p15 {
    padding: 15px !important;
}

.p20 {
    padding: 20px !important;
}

.p30 {
    padding: 30px !important;
}

.p40 {
    padding: 40px !important;
}

.p50 {
    padding: 50px !important;
}

/* Borders */

.border-t {
    border-top: 1px solid var(--border-color);
}

.border-b {
    border-bottom: 1px solid var(--border-color);
}

.border-l {
    border-left: 1px solid var(--border-color);
}

.border-r {
    border-right: 1px solid var(--border-color);
}

/* Lists */

.marker ul,
.marker,
.list-noMarker {
    margin-bottom: 1em;
}

.marker li {
    list-style: disc;
    margin-left: 15px;
    margin-bottom: 0.3em;
}

/* LOADING */

.wrap-loading {
    width: 100%;
    max-width: 800px;
}

.loading {
    display: block;
    width: 100%;
    min-height: 100px;
    background: url(/img/loading.svg) no-repeat center center;
}

.loading.white {
    background: url(/img/loading-white.svg) no-repeat center center;
}

.loading.small {
    background-size: 40px;
    min-height: 35px;
}

.loading.mini {
    background-size: 30px;
    min-height: 25px;
}

.loading.has-text {
    color: transparent !important;
}

.loading.svg svg {
    display: none;
}

.loading.fa {
    display: block;
    color: transparent;
}

/* PAGINATION */

.pagination {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.pagination li {
    list-style: none;
}

.pagination a {
    display: block;
    padding: 5px;
}

.paginator p {
    text-align: right;
}

/* IFRAME */

.wrap-iframe {
    width: 100%;
    background: url(/img/loading.gif) no-repeat center center;
}

.wrap-iframe.loaded {
    background: unset;
}

.wrap-iframe iframe {
    background: transparent;
    opacity: 0;
    transition: opacity 0.3s ease-in-out, height 0.2s ease-in-out;
}

.wrap-iframe.loaded iframe {
    background: #fff;
    opacity: 1;
}

.wrap-iframe.loaded iframe.transparent {
    background: transparent;
}

.iframe-inpage {
    width: 100%;
    overflow: hidden;
    min-height: 350px;
}

.iframe-modal {
    width: 1000px;
    height: 500px;
}

/* GERAL */

address {
    font-style: normal;
}

.no-shadowbox,
.no-shadowbox * {
    box-shadow: none !important;
}

.color-white {
    color: #fff;
}

.pointer {
    cursor: pointer;
}

.show {
    opacity: 1;
    transition: opacity 400ms ease-in-out;
}

.hide {
    opacity: 0;
    transition: opacity 400ms ease-in-out;
}

.hidden {
    display: none !important;
}

.opacity0 {
    opacity: 0 !important;
}

.inline {
    display: inline;
}

.inblock,
.inline-block {
    display: inline-block;
}

.disabled {
    opacity: 0.5;
}

.noselect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.radius {
    border-radius: 6px;
}

.stroke {
    text-shadow: 2px 0 0 rgba(0, 0, 0, 0.7), -2px 0 0 rgba(0, 0, 0, 0.7),
        0 2px 0 rgba(0, 0, 0, 0.7), 0 -2px 0 rgba(0, 0, 0, 0.7),
        1px 1px rgba(0, 0, 0, 0.7), -1px -1px 0 rgba(0, 0, 0, 0.7),
        1px -1px 0 rgba(0, 0, 0, 0.7), -1px 1px 0 rgba(0, 0, 0, 0.7),
        0px 0px 8px rgba(0, 0, 0, 1);
    -webkit-text-shadow: 2px 0 0 rgba(0, 0, 0, 0.7), -2px 0 0 rgba(0, 0, 0, 0.7),
        0 2px 0 rgba(0, 0, 0, 0.7), 0 -2px 0 rgba(0, 0, 0, 0.7),
        1px 1px rgba(0, 0, 0, 0.7), -1px -1px 0 rgba(0, 0, 0, 0.7),
        1px -1px 0 rgba(0, 0, 0, 0.7), -1px 1px 0 rgba(0, 0, 0, 0.7),
        0px 0px 8px rgba(0, 0, 0, 1);
    -moz-text-shadow: 2px 0 0 rgba(0, 0, 0, 0.7), -2px 0 0 rgba(0, 0, 0, 0.7),
        0 2px 0 rgba(0, 0, 0, 0.7), 0 -2px 0 rgba(0, 0, 0, 0.7),
        1px 1px rgba(0, 0, 0, 0.7), -1px -1px 0 rgba(0, 0, 0, 0.7),
        1px -1px 0 rgba(0, 0, 0, 0.7), -1px 1px 0 rgba(0, 0, 0, 0.7),
        0px 0px 8px rgba(0, 0, 0, 1);
}

.action-text {
    display: block;
    text-align: center;
    font-weight: 500;
}

.transparent {
    background: transparent;
}

.no-breakline {
    white-space: nowrap;
}

.w100 {
    width: 100%;
}

.h100 {
    height: 100%;
    position: relative;
}

.clear {
    clear: both;
}
.block {
    display: block;
}

.bg-red {
    background-color: red;
}
