﻿/*  TEXT STYLES */

.custom-h1 {
    font-size: 38px;
    line-height: 60px;
    font-weight: 700;
}

.custom-h1 a {
    font-weight: 800;
    word-break: break-word;
    color: #fc692f;
}

.custom-h1.primary-color {
    color: #03296a;
}

.custom-h1.white-color {
    color: #ffffff;
}

.custom-h2 {
    font-size: 32px;
    line-height: 38px;
    letter-spacing: 0.5px;
    font-weight: 400;
}

.custom-h2 a {
    font-weight: 800;
    word-break: break-word;
    color: #fc692f;
}


.custom-h2-title {
    font-size: 32px;
    line-height: 38px;
    letter-spacing: 0.5px;
    font-weight: 600;
    color: #03296a;
}

.custom-h2.primary-color {
    color: #03296a;
}

.custom-h2.white-color {
    color: #ffffff;
}

.custom-h2.red-color {
    color: #ff4949;
}
.custom-h2.invisible {
    display: none;
}

@media only screen and (max-width: 991px) {

    .custom-h2-title {
        color: #03296a;
        font-size: 24px;
        font-weight: 600;
        line-height: 36px;
    }
}


.custom-h3 {
    font-size: 24px;
    line-height: 36px;
    font-weight: 700;
}

.custom-h3 a {
    font-weight: 800;
    word-break: break-word;
    color: #fc692f;
}

.custom-h3.primary-color {
    color: #fc692f;
}

.custom-h3.secondary-color {
    color: #5062aa;
}

.custom-h3.white-color {
    color: #ffffff;
}

.custom-h3.alternative-color {
    color: #03296a;
}

@media only screen and (max-width: 575px) {
    .custom-h3.alternative-color {
        font-weight: 600;
    }
}

.custom-h4 {
    font-size: 16px;
    text-transform: uppercase;
    line-height: 25px;
    letter-spacing: 2px;
    font-weight: 800;
    margin-bottom: 0;
}

.custom-h4 a {
    font-weight: 800;
    word-break: break-word;
    color: #fc692f;
}

.custom-h4.primary-color {
    color: #fc692f;
}

.custom-h4.secondary-color {
    color: #000000;
}

.custom-h4.white-color {
    color: #ffffff;
}

.custom-h4.gray-color {
    color: #636466;
}

.custom-h4.active-color.none {
    color: #5062aa;
    text-transform: none;
}

.custom-h5 {
    font-size: 20px;
    line-height: 28px;
    margin-bottom: 0px;
}

.custom-h5.primary-color {
    color: #000000;
}

.custom-h5.primary-color.big {
    line-height: 30px;
}

.custom-h5.secondary-color {
    color: #5062aa;
    font-weight: 600;
}

.custom-h5.white-color {
    color: #ffffff;
}

    .custom-h5 a {
        font-weight: 800;
        word-break: break-word;
        color: #fc692f;
    }

.custom-h6 {
    font-size: 14px;
    letter-spacing: 2px;
    line-height: 20px;
    text-transform: uppercase;
    margin-bottom: 0px;
}

.custom-h6 a {
    font-weight: 800;
    word-break: break-word;
    color: #fc692f;
}

.custom-h6.primary-color {
    color: #636466;
    font-weight: 600;
}

.custom-h6.white-color {
    color: #ffffff;
}

.custom-h6.right {
    float: right;
    line-height: 28px;
}


.rte ul {
    list-style-image: none;
    list-style:none;
    padding-left: 40px;
}

.rte p a {
    color: #fc692f;
}

    .rte ul li::before {
        content: "\2022";
        color: #fc692f;
        font-weight: bold;
        display: inline-block;
        width: 1em;
        margin-left: -1em;
    }

.custom-p,
.rte-custom-p p {
    font-size: 20px;
    line-height: 30px;
    display: inline-block;
    font-weight: 400;
    word-break: break-word;
}

    .custom-p ul,
    .rte-custom-p ul {
        list-style-image: none;
        list-style: none;
        padding-left: 40px;
        font-size: 20px;
        line-height: 30px;
    }

        .custom-p ul a,
        .rte-custom-p ul a {
            font-weight: 800;
            word-break: break-word;
            color: #fc692f;
        }

    .custom-p ul li::before, .rte-custom-pe ul li::before {
        content: "\2022";
        color: #fc692f;
        font-weight: bold;
        display: inline-block;
        width: 1em;
        margin-left: -1em;
    }

.custom-p a {
    font-weight: 800;
    word-break: break-word;
    color: #fc692f;
}

.custom-p a:hover {
    color: #fc692f;
}

.custom-p.block {
    display: block;
}

.custom-p.big {
    font-size: 24px;
    line-height: 36px;
}

.custom-p.sm {
    font-size: 16px;
    line-height: 25px;
}

.custom-p.xs {
    font-size: 14px;
    line-height: 18px;
}

.custom-p.primary-color,
.rte-custom-p.primary-color p {
    color: #000000;
}

.custom-p.gray-color {
    color: #636466;
}

    .custom-p.blue-color {
        color: #5062aa;
    }

.custom-p.footer-color {
    color: #03296a;
}

.custom-p.secondary-color {
    color: #636466 !important;
}

.custom-p.secondary-color:hover {
    color: #5062aa !important;
}

.custom-p.white-color,
.rte-custom-p.white-color p {
    color: #ffffff;
}

.custom-p.white-color.center-day {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 3px;
}

.custom-p.white-color.center-month {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 3px;
    height: 15px;
    font-size: 10px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.custom-p.w-icon {
    padding-left: 42px;
    line-height: 32px;
}

.a-link {
    font-size: 20px;
    font-weight: 800;
    line-height: 30px;
    display: inline-block;
    position: relative;
    word-break: break-word;
}

.a-link.not-link{
    cursor: default;
}

.a-link.active-color {
    color: #5062aa;
}

.a-link.inline {
    display: inline;
}

.a-link.big {
    font-size: 24px;
    line-height: 36px;
}

.a-link.sm {
    font-size: 16px;
    line-height: 25px;
}

.a-link.primary-color {
    color: #fc692f;
}

.a-link.white-color {
    color: #ffffff;
}

.a-link.black-color {
    color: #000000;
}

.a-link.gray-color {
    color: #636466;
}

.a-link.w-icon {
    padding-left: 42px;
    line-height: 32px;
}

.a-link.w-icon.big {
    padding-left: 64px;
    line-height: 50px;
}

.a-link.w-2icon {
    padding-left: 66px;
    line-height: 32px;
    font-weight: 400;
}

.a-link.w-2icon .custom-icon {
    left: 24px;
}

@media only screen and (max-width: 991px) {

    .custom-h1 {
        font-size: 32px;
        line-height: 38px;
    }

    .custom-h2 {
        font-size: 24px;
        line-height: 36px;
    }

    .custom-h3 {
        font-size: 20px;
        line-height: 30px;
    }

    .custom-h5 {
        font-size: 16px;
        line-height: 25px;
    }


    .custom-p,
    .rte-custom-p p {
        font-size: 16px;
        line-height: 25px;
    }

    .custom-p.big {
        font-size: 20px;
        line-height: 30px;
    }

    .a-link {
        font-size: 16px;
    }
}

@media only screen and (max-width: 768px) {

    .custom-h2-sub {
        color: #000000;
        font-size: 20px;
        font-weight: 400;
        line-height: 31px;
    }
}

@media only screen and (max-width: 425px) {

    .custom-h1 {
        font-size: 24px;
        font-weight: 700;
        line-height: 36px;
    }

    .custom-h2-title {
        color: #03296a;
        font-size: 24px;
        font-weight: 600;
        line-height: 36px;
    }

    .custom-h2 {
        font-size: 24px;
        font-weight: 600;
        letter-spacing: 0.5px;
        line-height: 36px;
    }

    .custom-h2-sub {
        color: #000000;
        font-size: 20px;
        font-weight: 400;
        line-height: 31px;
    }

    .custom-h3 {
        font-size: 20px;
        font-weight: 400;
        line-height: 31px;
    }

    .custom-h3.secondary-color {
        color: #5062aa;
        font-size: 20px;
        font-weight: 700;
        line-height: 31px;
    }

    .custom-h4 {
        font-size: 16px;
        font-weight: 700;
        letter-spacing: 2px;
        line-height: 25px;
        text-transform: uppercase;
    }

    .custom-h4.active-color.none {
        color: #5062aa;
        text-transform: none;
    }

    .custom-h5 {
        font-size: 16px;
        font-weight: 600;
        line-height: 25px;
        margin-bottom: 0px;
    }

    .custom-h5.primary-color {
        color: #000000;
    }

    .custom-h5.primary-color.big {
        line-height: 30px;
    }

    .custom-h5.secondary-color {
        color: #5062aa;
        font-weight: 600;
    }

    .custom-h5.white-color {
        color: #ffffff;
    }

    .custom-h6 {
        font-size: 14px;
        letter-spacing: 2px;
        line-height: 20px;
        text-transform: uppercase;
        margin-bottom: 0px;
    }

    .custom-h6.primary-color {
        color: #636466;
        font-weight: 600;
    }

    .custom-h6.white-color {
        color: #ffffff;
    }

    .custom-h6.right {
        float: right;
        line-height: 28px;
    }

    .background {
        padding-top: 34px;
        padding-bottom: 34px;
    }


    .custom-p,
    .rte-custom-p p {
        display: inline-block;
        color: #000000;
        font-size: 16px;
        font-weight: 400;
        line-height: 25px;
    }

    .custom-p.block {
        display: block;
    }

    .custom-p.big {
        font-size: 24px;
        line-height: 36px;
    }

    .custom-p.sm {
        font-size: 16px;
        line-height: 25px;
    }

    .custom-p.xs {
        font-size: 14px;
        line-height: 25px;
    }

    .custom-p.w-icon {
        padding-left: 42px;
        line-height: 32px;
    }
}

/* SPACERS */

.mt-96 {
    margin-top: 96px;
}

.mt-56 {
    margin-top: 56px;
}

.mb-56 {
    margin-bottom: 56px;
}

@media only screen and (max-width: 991px) {
    .mb-56 {
        margin-bottom: 40px;
    }
}

.mb-96 {
    margin-bottom: 96px;
}

@media only screen and (max-width: 991px) {
    .mb-96 {
        margin-bottom: 0px;
    }
}

.mt-40 {
    margin-top: 46px;
}

.mt-32 {
    margin-top: 32px;
}

.mt-24,
.rte-p-mt-24 p {
    margin-top: 24px;
}

.ml-24 {
    margin-left: 24px;
}

.mt-16 {
    margin-top: 16px;
}

.mt-8 {
    margin-top: 8px;
}

.pt-96 {
    padding-top: 96px;
}

.pt-56 {
    padding-top: 56px;
}

.pt-40 {
    padding-top: 46px;
}

.pt-32 {
    padding-top: 32px;
}

.pt-24 {
    padding-top: 24px;
}

.pt-16 {
    padding-top: 16px;
}

.pt-8 {
    padding-top: 8px;
}

.no-pl{
    padding-left:0 !important;
}

@media only screen and (max-width: 991px) {

    .mt-96 {
        margin-top: 56px;
    }

    .mt-56 {
        margin-top: 40px;
    }

    .mt-40 {
        margin-top: 32px;
    }

    .mt-32 {
        margin-top: 24px;
    }

    .mt-24,
    .rte-p-mt-24 p {
        margin-top: 16px;
    }

    .ml-24 {
        margin-left: 16px;
    }


    .mt-16 {
        margin-top: 8px;
    }

    .mt-8 {
        margin-top: 4px;
    }

    .pt-96 {
        padding-top: 56px;
    }

    .pt-56 {
        padding-top: 40px;
    }

    .pt-40 {
        padding-top: 32px;
    }

    .pt-32 {
        padding-top: 24px;
    }

    .pt-24 {
        padding-top: 16px;
    }

    .pt-16 {
        padding-top: 8px;
    }

    .pt-8 {
        padding-top: 4px;
    }

    .m-mobile-reset {
        margin-top: 0;
    }
}



/* HR'S */

hr.special-line {
    margin-top: 56px;
    margin-bottom: 56px;
    border: none;
    border-top: 2px solid #f6f8ff;
}


@media only screen and (max-width: 991px) {
    hr.special-line {
        margin-top: 40px;
        margin-bottom: 40px;
    }
}


/* DEFAULT BUTTONS */

.custom-btn-primary {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-radius: 27px;
    border: 1px solid #fc692f;
    padding: 15px 35px;
    color: #ffffff;
    max-height: 48px;
    line-height: 20px;
    display: inline-block;
    background-color: #fc692f;
    margin-bottom: 20px;
    margin-right: 24px;
    cursor: pointer;
}

.custom-btn-primary:hover:enabled {
    color: #ff4949 ;
    background-color: #ffffff;
}

.custom-btn-primary.not-solo {
    margin-right: 24px;
}

.custom-btn-primary.white {
    background-color: #ffffff;
    color: #5062aa !important;
    border: 1px solid #ffffff;
}

.custom-btn-secondary {
    font-size: 14px;
    color: #fc692f !important;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-radius: 27px;
    padding: 15px 32px;
    max-height: 48px;
    line-height: 20px;
    display: inline-block;
    border: 1px solid #fc692f;
    cursor: pointer;
}

    .custom-btn-secondary.not-solo {
        margin-left: 24px;
    }

    .custom-btn-secondary:hover {
        color: #ffffff !important;
        background-color: #fc692f;
    }

.custom-btn-secondary.white {
    background-color: transparent;
    border: 1px solid #ffffff ;
    color: #ffffff !important;
}

.custom-btn-without-border {
    color: #fc692f !important;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    display: inline-block;

}
    .custom-btn-without-border.white {
        color: #ffffff !important;
    }
@media only screen and (max-width: 991px) {

    .custom-btn-primary {
        margin-right: 0;
    }

    .custom-btn-primary,
    .custom-btn-secondary {
        text-align: center;
        display: block;
    }

        .custom-btn-primary.not-solo, .custom-btn-secondary.not-solo {
            margin-right: 0px;
            margin-left: 0px;
        }

    .custom-btn-primary {
        font-size: 14px;
        font-weight: 600;
        letter-spacing: 1px;
        text-transform: uppercase;
        border-radius: 27px;
        border: 1px solid #fc692f;
        padding: 15px 35px;
        color: #ffffff;
        max-height: 48px;
        line-height: 20px;
        display: inline-block;
        background-color: #fc692f;
        margin-bottom: 20px;
        margin-right: 24px;
        cursor: pointer;
    }

    .custom-btn-secondary {
        font-size: 14px;
        color: #fc692f;
        font-weight: 600;
        letter-spacing: 1px;
        text-transform: uppercase;
        border-radius: 27px;
        max-height: 48px;
        line-height: 20px;
        display: inline-block;
        border: 1px solid #fc692f;
        cursor: pointer;
    }
}

@media only screen and (max-width: 575px) {

    .custom-btn-primary {
        font-size: 14px;
        font-weight: 600;
        letter-spacing: 1px;
        text-transform: uppercase;
        border-radius: 27px;
        border: 1px solid #fc692f;
        padding: 15px 0px;
        color: #ffffff;
        max-height: 48px;
        line-height: 20px;
        display: inline-block;
        background-color: #fc692f;
        margin-bottom: 20px;
        margin-right: 0px;
        cursor: pointer;
        width: 100%;
    }

    .custom-btn-secondary {
        font-size: 14px;
        color: #fc692f;
        font-weight: 600;
        letter-spacing: 1px;
        text-transform: uppercase;
        border-radius: 27px;
        padding: 15px 0px;
        max-height: 48px;
        line-height: 20px;
        display: inline-block;
        border: 1px solid #fc692f;
        cursor: pointer;
        width: 100%;
    }
}

.custom-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: inline-flex;
    text-align: center;
    top: 0;
    cursor: pointer;
    position: absolute;
    left: 0;
}

.custom-icon>img {
    display: block;
    margin: auto;
    /*max-height:14px;*/
}

.custom-icon.big {
    width: 48px;
    height: 48px;
}

.custom-icon i {
    color: #ffffff;
    font-size: 14px;
    margin-top: 8px;
    display: block;
    margin: auto;
}

.custom-icon.big i {
    font-size: 18px;
    margin-top: 15px;
}

.custom-icon.orange-color {
    background-color: #fc692f;
}

.custom-icon.white-color {
    background-color: #ffffff;
}

.custom-icon.white-opc-color {
    background-color: rgba(255, 255, 255, 0.3);
}

.custom-icon.secondary-color {
    background-color: #5062aa;
}

.custom-icon.gray-color {
    background-color: #636466;
}

.custom-icon.gray-color:hover {
    background-color: #5062aa;
}



/* TABLES */

.table td,
.table th {
    border-top: none;
    min-width: 215px;
}

.custom-table {
    width: 100%;
}

tr:nth-child(odd) {
    background-color: #f6f8ff;
}

.custom-table tr:first-of-type {
    background-color: #5062aa;
}

.custom-table tr:first-of-type th {
    color: #ffffff;
    font-size: 20px;
    font-weight: 500;
    padding: 10px 0px 8px;
}

.custom-table tr:first-of-type th:first-of-type {
    padding: 10px 16px 8px;
}

.custom-table td {
    color: #000000;
    font-size: 16px;
    font-weight: 300;
    padding: 12px 0px 8px;
}

.custom-table td:first-of-type {
    padding: 12px 16px 8px;
}


/* ACCORDION */
.accordion .collapse-title {
    background-color: #5062aa;
    padding: 12px 67px 9px 16px;
    width: 100%;
    display: block;
    position: relative;
    color: #ffffff !important;
}

    .accordion .collapse-title i {
        color: #ffffff;
        transition: 0.5s;
        position: absolute;
        right: 21px;
        top: 50%;
        transform: rotate(-180deg) translateY(10px);
        height: 18px;
        font-size: 16px;
        font-weight: 700;
    }

    .accordion .collapse-title.collapsed i {
        transform: translateY(-50%);
        color: #5062aa;
    }

    .accordion .collapse-title.collapsed {
        background-color: #f6f8ff;
        color: #000000 !important;
    }

.accordion .collapse-title:hover {
    color: #ffffff;
}

.accordion .collapse,
.accordion .cardBody {
    padding: 0px 16px 0;
}

.accordion,
.documento {
    opacity: 0;
    visibility: hidden;
    display: none;
}

.accordion.active,
.documento.active {
    opacity: 1;
    visibility: visible;
    display: block;
}


/* DROPDOWNS */

.custom-dropdown {
    display: inline-block;
}

.custom-dropdown a.label {
    padding-bottom: 5px;
    border-bottom: 4px solid #5062aa;
}

.custom-dropdown a.label i {
    transition: 0.3s;
    color: #5062aa;
    font-size: 16px;
}

.custom-dropdown.show a.label i {
    transform: rotate(-180deg);
}

.custom-dropdown .dropdown-menu {
    box-shadow: 0 2px 16px rgba(0, 0, 0, 0.15);
    background-color: #f6f8ff;
    padding: 8px 16px 10px;
    border: none;
}

.custom-dropdown .dropdown-menu a:hover {
    color: #5062aa;
}

.custom-input-dropdown a.label,
.custom-input-dropdown select {
    background-color: rgba(80, 98, 170, 0.07);
    color: #000000;
    border: none;
    padding: 17px 24px 12px;
    display: block;
    width: 100%;
    min-height: 53px;
}

.custom-input-dropdown a.label strong {
    font-weight: inherit;
}

.custom-input-dropdown a.label i,
.custom-input-dropdown select+i {
    transition: 0.3s;
    float: right;
    font-size: 24px;
    color: #5062aa;
}

.custom-input-dropdown.show a.label i {
    transform: rotate(-180deg);
}

.custom-input-dropdown .dropdown-menu {
    box-shadow: 0 2px 16px rgba(0, 0, 0, 0.15);
    background-color: #f6f8ff;
    padding: 8px 16px 10px;
    right: 0;
}

/* BACKGROUNDS */

.background {
    padding-top: 56px;
    padding-bottom: 56px;
}

.background.no-p {
    padding-top: 0px;
    padding-bottom: 0px;
}

.background.no-pt {
    padding-top: 0px;
}

.background.no-pb {
    padding-top: 0px;
}

.background.primary-color {
    background-color: #f6f8ff;
}

.background.secondary-color {
    background-color: #5062aa;
}

.background.red-color {
    background-color: rgba(255, 73, 73, 0.9);
}

@media only screen and (max-width: 991px) {
    .background {
        padding-top: 40px;
        padding-bottom: 40px;
    }
}

/* IMAGES */

.cardImage {
    width: 100%;
    height: 100%;
    max-height: 198px;
    object-fit: cover;
}

.newsletter-img {
    width: 100%;
    min-height: 360px;
    object-fit: cover;
}

.lead-image {
    max-height: 520px;
    object-fit: cover;
    width: 100%;
}

.lead-image.mask {
}

.lead-image.round-mask {
}

.lead-image.mh-379 {
    max-height: 379px;
    object-fit: contain;
}

.lead-image.mh-334 {
    max-height: 334px;
    object-fit: contain;
}

.lead-image.mh-405 {
    max-height: 405px;
    object-fit: cover;
}

.lead-image.mh-334 {
    max-height: 334px;
    object-fit: cover;
}

.lead-image.banner {
    max-height: 438px;
    object-fit: contain;
}

.lead-image.pequena {
    min-height: 190px;
    max-width: 190px;
}

.lead-image.normal {
    max-height: 198px;
}

.lead-image.grande {
    max-height: 270px;
    max-width: 270px;
    margin: 0 auto;
}

.lead-image.gigante {
    max-height: 340px;
    max-width: 445px;
}

.lead-image.acordo {
    max-height: 95px;
    max-width: 190px;
}

@media only screen and (max-width: 991px) {
    .cardImage {
        height: 120px;
    }

    .newsletter-img{
        min-height:310px;
    }

    .lead-image.normal {
        max-height: 121px;
    }

    .lead-image.gigante {
        max-height: 259px;
    }

    .lead-image.pequena {
        min-height: 120px;
        max-width: 120px;
    }
}

@media only screen and (max-width: 475px) {
    .cardImage {
        height: 100%;
    }

    .newsletter-img {
        min-height: 222px;
    }

}

@media only screen and (max-width: 425px) {

    .lead-image.normal {
        max-height: 195px;
    }

    .lead-image.acordo {
        max-height: 76px;
        max-width: 189px;
    }
}

/* INPUTS */

.input-search {
    position: relative;
    background-color: #f6f8ff;
    color: #000000;
    border: none;
    padding: 17px 24px 12px;
}

.input-search img {
    position: absolute;
    right: 24px;
    top: 18px;
}

.input-search input {
    width: 95%;
    background-color: transparent;
    border: none;
    outline: none;
    font-weight: 700;
}



.custom-text-input {
    background-color: transparent;
    outline: none;
    background-color: rgba(80, 98, 170, 0.07);
    color: #000000;
    border: none;
    padding: 17px 24px 12px;
}



.custom-text-area {
    min-height: 168px;
    background-color: rgba(80, 98, 170, 0.07);
    border: none;
    padding: 16px 24px;
    outline: none;
}


.custom-input-file input {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.custom-input-file label {
    display: inline-block;
}

.custom-input-file label {
    cursor: pointer;
}

.input-validation-error {
    border: 1px solid #fc302f;
}

.custom-input-dropdown .input-validation-error ~ .label {
    border: 1px solid #fc302f;
}

.custom-checkbox .input-validation-error ~ .checkmark {
    border: 1px solid #fc302f;
}

/* checkbox */
.custom-checkbox {
    display: inline;
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    font-size: 20px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.custom-checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.custom-checkbox .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 24px;
    width: 24px;
    background-color: rgba(80, 98, 170, 0.07);
}

.custom-checkbox input:checked~.checkmark {
    border: 1px solid #5062aa;
}

.custom-checkbox .checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

.custom-checkbox input:checked~.checkmark:after {
    display: block;
}

.custom-checkbox .checkmark:after {
    top: 5px;
    left: 5px;
    width: 13px;
    height: 13px;
    background-color: #5062aa;
}


/* NR AZUL  */

.nr-azul {
    padding: 16px 24px;
    border: 1px solid #5062aa;
    border-radius: 4px;
    background-color: rgba(80, 98, 170, 0.8);
}

@media only screen and (max-width: 575px) {
    .nr-azul {
        padding: 13px 24px;
    }
}

.nr-azul p:first-child {
    color: #f6f8ff;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.nr-azul .icones {
    margin-top: 5px;
}

.nr-azul .icones h2 {
    line-height: 48px;
    padding-left: 64px;
}

.nr-azul .icones span {
    background-color: #03296a;
    width: 48px;
    height: 48px;
    /*display: inline-block;*/
    padding: 14px;
    position: relative;
    border-radius: 50%;
    float: left;
}

.nr-azul .icones span img {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.nr-azul.dark-bg {
    background-color: rgba(3, 41, 106, 0.8)
}

/* MODALS */

.modal {
    display: none;
    transition: 0.3s;
    position: fixed;
    top: 71px;
    width: 100%;
    height: 0;
}

    .modal.errorModal {
        background-color: #fc302f;
    }

    .modal.successModal {
        background-color: #00ac8c;
    }

    .modal .inner {
        top: 50%;
        transform: translateY(-50%);
        position: relative;
        padding-left:65px;
    }
        .modal .inner i {
            position: absolute;
            left: 0;
            color: #f6f8ff;
            font-size: 25px;
        }

    .modal.active {
        transition: 0.3s;
        display: block;
        height: 100px;
    }

@media only screen and (max-width: 575px) {
    .modal .inner {
        top: 50%;
        transform: translateY(-50%);
        position: relative;
        padding-left: 30px;
    }
    .modal {
        top: 62px;
    }
}


/* END MODALS */


/* POSIÇÕES */

.align-middle {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

.bottom-0 {
    position: absolute;
    bottom: 0;
}

.top-0 {
    position: absolute;
    top: 0;
}

.left-0 {
    position: absolute;
    left: 0;
}

/* Text align */

.textleft-to-center {
    text-align: left;
}

@media only screen and (max-width: 575px) {
    .textleft-to-center {
        text-align: center;
    }
}


html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Nunito Sans';
    padding-top: 71px;
}

a{

}

a,
a:hover {
    color: unset;
    text-decoration: none;
    cursor: pointer;
    outline: none;
}

p,
h2 {
    margin-bottom: 0;
}

ul {
    list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
    padding-left: 0;
}

.btns-float {
    position: fixed;
    top: 10%;
    right: 0;
    z-index: 99;
}

.btns-float a {
    display: block;
    width: 48px;
    height: 48px;
    border-radius: 100px 0 0 100px;
    position: relative;
    cursor: pointer;
}

.btns-float a:first-of-type {
    background-color: #03296a;
}

.btns-float a:nth-of-type(2) {
    background-color: #fc692f;
}

.btns-float a:last-of-type {
    background-color: #5062aa;
}


.btns-float a:not(:first-child) {
    margin-top: 16px;
}

.btns-float a img {
    top: 50%;
    position: absolute;
    transform: translateY(-50%) translateX(-50%);
    left: 50%;
}


@media only screen and (max-width: 991px) {
    .btns-float {
        display: none;
    }
}

/* NAVBAR HEADER */

header {
    position: fixed;
    z-index: 99;
    top: 0;
    background: white;
    width: 90%;
    left: 50%;
    transform: translateX(-50%);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 0px 10px rgba(0, 0, 0, 0.1);
}


header label {
    border: 1px solid #5062aa;
    border-radius: 50%;
    width: 40px;
    height: 40px;
}

@media only screen and (max-width: 767px) {
    header label {
        width: 32px;
        height: 32px;
        margin-right: 0;
    }
}

header:hover {
    /*box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);*/
}

.visuallyHidden {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
}

.hamburger {
    margin: 0 auto;
    width: 20px;
    height: 14px;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    text-align: center;
}

.hamburger .bar {
    padding: 0;
    width: 20px;
    height: 2px;
    background-color: #5062aa;
    display: block;
    border-radius: 4px;
    transition: all 0.4s ease-in-out;
    position: absolute;
}

.bar1 {
    top: 0;
}

.bar2,
.bar3 {
    top: 6px;
}

.bar3 {
    right: 0;
}

.bar4 {
    bottom: 0;
}

.hamburger3 .bar1 {
    transform-origin: 15%;
}

.hamburger3 .bar4 {
    transform-origin: 10%;
}

/*.checkbox3:checked+label>.hamburger {
    max-width: 16px;
}*/

.checkbox3:checked+label>.hamburger3>.bar1 {
    transform: rotate(45deg) scale(0.9) translate(2px, -1px);
    height: 2px;
    width: 22px;
}

.checkbox3:checked+label>.hamburger3>.bar3 {
    transform: rotate(45deg);
    height: 2px;
    background-color: transparent;
}

.checkbox3:checked+label>.hamburger3>.bar2 {
    transform: rotate(-45deg);
    height: 2px;
    background-color: transparent;
}

.checkbox3:checked+label>.hamburger3>.bar4 {
    transform: rotate(-45deg) scale(0.9) translate(2px, 1px);
    height: 2px;
    width: 22px;
}

header img.logo {
    padding-top: 8px;
    padding-bottom: 7px;
    height: 71px;
    margin-right: 20px;
}

header .navbar {
    padding: 0;
}

header .navbar-nav {
    height: 100%;
}

header .navbar-collapse {
    height: 71px;
}

header ul li a.menu-title {
    color: #000000;
    font-size: 14px;
    font-weight: 500;
    top: 50%;
    transform: translateY(-50%);
    position: relative;
    display: block;
}

header ul li.nav-item {
    padding: 0 20px;
    cursor: pointer;
}

header ul li.nav-item:hover:not(:last-of-type) {
    background-color: #f6f8ff;
}

header ul li.nav-item:last-of-type {
    padding-right: 0;
}

header ul li.nav-item:hover:not(:last-of-type) a.menu-title {
    color: #5062aa;
    /*font-weight: 900;*/
}

header ul li.nav-item>.sub-menu {
    background-color: #f6f8ff;
    padding: 24px 32px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
    height: auto;
    position: absolute;
    left: -15px;
    right: 0;
    top: 71px;
    z-index: 10;
    font-size: 16px;
    cursor: default;
    display: none;
}

header ul li.nav-item.position-relative>.sub-menu {
    left:0;
    min-width:400px;
}

header ul li.nav-item.position-relative>.sub-menu div[class^="col-12"]:nth-of-type(n+2) {
    margin-top:24px;

}

header ul li.nav-item:hover>.sub-menu {
    display: block;
}

header ul li.nav-item>.sub-menu ul li.title {
    color: #000000;
    font-weight: 700;
}

header ul li.nav-item>.sub-menu ul li:not(.title) {
    margin-top: 23px;
    cursor: pointer;
}

header ul li.nav-item>.sub-menu ul li:not(.title):nth-of-type(n+3) {
    margin-top: 15px;
}


header ul li a i {
    font-size: 20px;
}

header .btn {
    border-radius: 27px;
    border: 2px solid #fc692f;
    color: #fc692f !important;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    width: 140px;
    top: 50%;
    transform: translateY(-50%);
    position: relative;
    display: block;
}

header .search-div {
    display: none;
    background-color: #f6f8ff;
    height: 70px;
    position: absolute;
    right: 0;
    left: 0;
    top: 71px;
    padding: 24px 16px;
    box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
    z-index: 5;
}

header .search-div input {
    background-color: transparent;
    border: none;
    outline: none;
    width: 100%;
}

@media only screen and (max-width: 575px) {
    header .search-div input {
        padding-right: 15px;
    }
}

    header ul li.nav-item.search:hover > .search-div {
        display: block;
    }

    @media only screen and (max-width: 991px) {

        header img {
            height: 48px;
        }

        header .btn {
            position: relative;
        }

        header ul li.nav-item {
            margin-left: 0px;
        }
    }

    @media only screen and (max-width: 575px) {

        .hamburger,
        .hamburger .bar {
            width: 16px;
        }

        .checkbox3:checked + label > .hamburger {
            max-width: 16px;
        }

        .checkbox3:checked + label > .hamburger3 > .bar1 {
            transform: rotate(45deg) scale(0.9) translate(1px, 1px);
        }

        .checkbox3:checked + label > .hamburger3 > .bar4 {
            transform: rotate(-45deg) scale(0.9) translate(0, 0);
        }

        header img.logo {
            height: auto;
            max-width: 45px;
        }
    }

    /* HEADER END       */



    .default-content .content p {
        margin-top: 23px;
        color: #000000;
        font-size: 20px;
    }




    .e-exposicao {
        width: 100%;
        min-height: 190px;
        max-width: 190px;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        margin: auto;
        border-radius: 100%;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    @media only screen and (max-width: 991px) {
        .default-content .content p {
            font-size: 16px;
            line-height: 25px;
        }

        .e-exposicao {
            min-height: 120px;
            max-width: 120px;
        }
    }

    /* DEFAULT CONTENT HOMEPAGE END       */

    .contactos + p {
        margin-top: 26px;
    }

    .contactos p, .contactos span, .contactos a {
        position: relative;
        padding-left: 30px;
    }

        .contactos p p, .contactos span p, .contactos a p {
            padding-left: 0px;
        }

        .contactos p img, .contactos span img, .contactos a img {
            position: absolute;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
        }

    .fale-connosco .map-wrapper {
    }

    @media only screen and (max-width: 767px) {
        .fale-connosco .map-wrapper {
            height: 300px;
        }
    }

    .fale-connosco .custom-h2-title {
        margin-bottom: 32px;
    }

    .delegacao {
        opacity: 0;
        visibility: hidden;
        display: none;
        transition: 0.3s;
    }

        .delegacao.active {
            opacity: 1;
            visibility: visible;
            display: flex;
            transition: 0.3s;
        }

    /*  CONTACTOS END   */


    footer {
        border: 1px solid #979797;
        background-color: #5062aa;
        padding: 48px 0px;
    }

        footer img.socios {
            width: 83%;
        }

    @media only screen and (min-width: 992px) {
        footer .politicas a:not(:first-child) {
            margin-left: 12px;
        }
    }

    @media only screen and (max-width: 991px) {
        footer .politicas > a {
            display: block;
        }

        footer .politicas a:not(:first-child) {
            margin-top: 6px;
        }
    }

    footer .right::after {
        opacity: 0;
    }

    footer .icones {
        display: inline-flex;
        align-items: center;
    }

        footer .icones span {
            background-color: #ffffff;
            width: 48px;
            height: 48px;
            display: inline-flex;
            padding: 0;
            position: relative;
            border-radius: 50%;
            text-align: center;
        }

            footer .icones span > img {
                display: block;
                margin: auto;
            }

        footer .icones img.app {
            margin-left: 16px;
        }

    footer .social-wrapper {
        font-size: 0;
        z-index: 10;
        margin-top: 80px;
    }

    @media only screen and (min-width: 1200px) {
        footer .social-wrapper {
            width: 80%;
        }
    }

    @media only screen and (min-width: 992px) and (max-width: 1199px) {
        footer .social-wrapper {
            width: 80%;
        }
    }

    @media only screen and (max-width: 991px) {
        footer .social-wrapper {
            padding-bottom: 8px;
        }
    }

    @media only screen and (max-width: 767px) {
        footer .social-wrapper {
            margin-top: 40px;
        }
    }

    footer .social-wrapper .a-link.w-icon {
        display: inline-flex;
        width: 48px;
        height: 48px;
        padding-left: calc(48px + 25px);
    }

    footer .c-footer {
        max-width: calc(100% / 12 * 10);
    }

    .btn-hide-mobile {
        display: none;
    }



    @media only screen and (max-width: 991px) {

        footer {
            padding: 40px 0px 66px;
        }

            footer .footer-background {
                position: absolute;
                right: 15px;
                width: calc(200% - 30px);
                top: 0;
                text-align: center;
                opacity: 0.25;
            }

            footer .icones {
                margin-top: 6px;
            }

                footer .icones.fb {
                    margin-top: 39px;
                }


            footer .right a {
                font-size: 16px;
            }

            footer .right p {
                margin-top: 22px;
            }

                footer .right p:not(:first-of-type) {
                    margin-top: 18px;
                }

            footer .icones img.app {
                margin-left: 8px;
            }
    }

    @media only screen and (max-width: 767px) {
        footer {
            overflow: hidden;
            padding-bottom: 40px;
        }

            footer .footer-background {
                width: 100%;
                top: -100%;
                right: 0;
            }

                footer .footer-background > img {
                    max-width: none;
                    width: 576px;
                    left: 50%;
                    position: absolute;
                    transform: translateX(-50%);
                }

            footer .icones a:first-of-type > img {
                margin-left: 16px;
            }

        .btn-hide-mobile {
            display: block;
        }

        .btn-hide {
            display: none;
        }
    }

    @media only screen and (max-width: 425px) {
        footer .social-wrapper .a-link.w-icon {
            display: inline-flex;
            width: 48px;
            height: 48px;
            padding-left: calc(48px + 20px);
        }
    }

    @media only screen and (max-width: 320px) {
        footer .icones img.app {
            margin-left: 8px;
            max-width: 110px
        }
    }

    /* FOOTER END       */


    .col-order-new {
        display: flex !important;
        width: auto !important;
    }

    /*form validatio*/
    .field-validation-error {
        font-size: 12px;
        color: #fc302f !important;
    }

    /*Maps*/
    .snqtb-map {
        width: 100%;
        height: 100%;
    }


    .g-recaptcha {
        margin-top: 36px;
    }


    /* cookieBar */

    .cookieBar {
        background-color: #5062aa;
        padding: 1px 0px 24px;
        position: fixed;
        bottom: 0;
        z-index: 9999;
        width: 100%;
        opacity: 1;
        transition: 0.5s;
    }

        .cookieBar.none {
            display: none;
            opacity: 0;
        }


        .cookieBar i {
            position: absolute;
            top: 16px;
            right: 15px;
            cursor: pointer;
            color: #ffffff;
        }