/*
|
|
|-------------------------------------------------------------------------
| Theme Name: SUSESEG Lda
| Version: 1.0
| Description: A SUSESEG é uma Empresa de mediação de seguros ao nível de todas as seguradoras e serviços a Empresas.
| Author: André Pontes
| Author URL: http://www.apontes.pt
|--------------------------------------------------------------------------
| 
|
*/


:root{
    --color-primary:#BC0815;
    --color-second: #282828;
    --color-text-white:#ffffff;
    --bg-white:#ffffff;
    --color-gray: #8c9299;
}

*{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    margin:0;
    font-family: "Poppins", Helvetica, Arial, sans-serif;
    font-size: 15px;
    line-height: 25px;
    font-weight: 500;
    letter-spacing: 0px;
}

b, strong {
    font-weight: 700;
}

ol, ul {
    list-style: none;
}

p {
    margin: 0 0 15px;
}

a {
    text-decoration: none;
}

h1,h2,h3,h4,h5 {
    margin-bottom:15px;
}

h1 {
    font-size: 45px;
    line-height: 55px;
    font-weight: 600;
    letter-spacing: 0px;
}


h2 {
    font-size: 35px;
    line-height: 45px;
    font-weight: 600;
    letter-spacing: 0px;
}

h3 {
    font-size: 25px;
    line-height: 35px;
    font-weight: 300;
    letter-spacing: 0px;
    color: var(--color-gray)
}

h4 {
    font-size: 21px;
    line-height: 25px;
    font-weight: 600;
    letter-spacing: 0px;
    color: var(--color-text-white);
}

h5 {
    font-size: 17px;
    line-height: 27px;
    font-weight: 400;
    letter-spacing: 0px;
}

h6 {
    font-size: 15px;
    line-height: 25px;
    font-weight: 600;
    letter-spacing: 0px;
    color:var(--color-gray)
}

hr {
    display: block;
    border: none;
    outline: none;
    height: 1px;
    width: 100%;
    margin: 0 auto 15px;
    clear: both;
    background-color: rgba(0, 0, 0, .08);
    color: rgba(0, 0, 0, .08);
}

hr.no_line, .dark hr.no_line {
    background: none;
    color: transparent;
}

.scale-with-grid{
    max-width: 100%;
    height: auto;
}

.ap-theme-color{
 color:var(--color-primary)
}

#ap-content-wrap {
    margin-top:0px
}

/*
|-----------------------------------
|   HEADER
|-----------------------------------
|
*/

#Wrapper {
    width: 1240px;
    margin: 0px auto;
    overflow: hidden;
}

.layout-full-width #Wrapper {
    width: 100% !important;
    margin: 0 !important;
}

body:not(.template-slider) #Header_wrapper {
    background-repeat: no-repeat;
    background-position: top center;
}

#Header_wrapper {
    position: relative;
}

#Header {
    position: relative;
}

.top_bar_left {
    position: relative;
    float: left;
    width: 900px;
}

.logo {
    float: left;
    margin: 0 30px 0 20px;
}

#logo {
    display: block;
    height: 110px;
    line-height: 60px;
    padding: 20px 0;
}

#logo img {
    vertical-align: middle;
    max-height: 100%;
}

.menu>li:not(.mfn-megamenu-parent) {
    position: relative;
}

.menu>li {
    margin: 0;
    z-index: 203;
    display: block;
    float: left;
}

.menu>li>a {
    display: block;
    padding: 20px 0;
    line-height: 60px;
    position: relative;
    color:var(--color-gray)
}

#menu>ul>li>a {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0px;
}

.menu>li>a span {
    display: block;
    line-height: 60px;
    padding: 0 20px;
}

a.responsive-menu-toggle {
    display: none;
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -17px;
    width: 34px;
    height: 34px;
    text-align: center;
    border-radius: 3px;
    z-index: 200;
}

/*++++++col top-bar left++++++++++*/


a.responsive-menu-toggle {
    display: none;
}

.header-classic #Top_bar:not(.is-sticky) .top_bar_right {
    top: 12px;
}

#Top_bar .top_bar_right, .header-plain #Top_bar .top_bar_right {
    height: 100px;
}

#Top_bar .top_bar_right {
    float: right;
    position: relative;
    padding: 0 10px 0 20px;
}

a.action_button {
    display: block;
    padding: 11px 20px;
    line-height: 21px;
    float: left;
    position: relative;
    box-sizing: border-box;
    border-radius: 5px;
    overflow: hidden;
    background-color: var(--color-primary);
    color: #fff;
}

 a.button.action_button {
    top: 13px;
    margin: 0 10px 0 0;
}

.rev_slider li.tp-revslider-slidesli {
    position: absolute !important;
}

.fullwidthbanner-container .fullwidthabanner {
    width: 100%;
    position: relative;
}
.rev_slider >ul, .rev_slider_wrapper >ul, .tp-revslider-mainul >li, .rev_slider >ul >li, .rev_slider >ul >li:before, .tp-revslider-mainul >li:before, .tp-simpleresponsive >ul, .tp-simpleresponsive >ul >li, .tp-simpleresponsive >ul >li:before, .tp-revslider-mainul >li, .tp-simpleresponsive >ul >li{
    list-style: none !important;
    position: absolute;
    margin: 0px !important;
    padding: 0px !important;
    overflow-x: visible;
    overflow-y: visible;
    list-style-type: none !important;
    background-image: none;
    background-position: 0px 0px;
    text-indent: 0em;
    top: 0px;
    left: 0px; 
}

.slotholder {
    transform: none !important;
}

.rev_slider .tp-caption, .rev_slider .caption {
    position: relative;
    visibility: hidden;
    white-space: nowrap;
    display: block;
}

.tp-caption {
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    position: absolute;
    -webkit-font-smoothing: antialiased !important;
}

.tp-revslider-mainul >li, .rev_slider >ul >li, .rev_slider >ul >li:before, .tp-revslider-mainul >li:before, .tp-simpleresponsive >ul >li, .tp-simpleresponsive >ul >li:before, .tp-revslider-mainul >li, .tp-simpleresponsive >ul >li {
    visibility: hidden;
}

body:not(.template-slider) #Header {
    min-height: 250px;
}

.minimalist-header-no #Header {
    min-height: 0!important;
}

.ap-wrap-servicos img {
    width: 40px;
    filter: opacity(0.5);
}

/******************************/
/**********  CONTENT  *********/
/****************************/

body:not(.template-slider) #ap-content {
    padding-top: 30px;
}

#ap-content {
    width: 100%;
    background-color: var(--bg-white);
}

.ap-sections_group{
    margin: 0;
    width: 100%!important;
    clear: both;
}

.section { 
    position: relative;
    background-attachment: scroll!important;
    height: auto!important;
}


.section_wrapper {
    width: 1200px;
    margin: 0 auto;
    position: relative;
}

.ap-wrap {
    width: 100%;
    float: left;
    position: relative;
    z-index: 1;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.mcb-wrap {
    float: left;
    position: relative;
    z-index: 1;
    -webkit-box-sizing: border-box;
    /* box-sizing: border-box; */
}

.shadow {
    box-shadow: 0px 0px 20px rgb(0 0 0 / 10%);
}

.ap-wrap-servicos {
    justify-content: space-between;
    align-items: center;
}

.ap-wrap-servicos > div:not(div:first-child) {
    text-align: center;
}

.ap-wrap-servicos > div:last-child {
    padding-top: 27px;
}

#quem-somos {
    padding: 60px;
}

.img-home{
    margin-top:-170px; 
    object-fit: cover;
    height: 334px;
    width: 100%;
    object-position: 0px -149px;
}

.ap-section-groups .section{
    padding-top:119px; 
    padding-bottom:180px; 
    background-color:#3c4653;
}

.todos-serviços i{
    font-size: 20px;
    color:var(--color-primary)
}

/******************************/
/**********  QSOMOS  *********/
/****************************/
.section[data-parallax="3d"] {
    overflow: hidden;
    filter: brightness(0.9);
}
.ap-parallax {
    position: absolute;
    mix-blend-mode: soft-light;
    left: 0;
    top: 0;
    max-width: none!important;
}

.ap-text-banner {
    text-align: center;
}

.img-section img {
    margin-top:-170px; 
    object-fit: cover;
    height: 621px;
    width: 100%;
}

/******************************/
/********   SERVIÇOS   *******/
/****************************/

.ap-text-banner-left {
    text-align: left;
}

#servicos {
    margin:60px 0
}

.servicos {
    justify-content: center;
    text-align:center;
    gap:13px
}
.title-servicos {
    display: flex;
    align-items: center;
    text-align: left;
    font-size: 31px;
}

.border {
    border: 2px solid #f1f4f9;
    padding: 47px;
    border-radius: 5px;
    overflow: hidden;
}

.border img {
    width: 50px;
}

.border h3 {
    font-size:20px;
    line-height: 1.3;
}


.column-service {
    padding:60px 50px 40px; 
    background-color:#fff;
    margin-top:-74px;
    z-index: 999;
}

.protecao-suseseg {
    margin-top: 20px;
}

/******************************/
/********   SEGUROS  *********/
/****************************/

.title-seguros {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    text-align: left;
    font-size: 31px;
    padding: 15px;
    color: var(--bg-white);
    background-color: var(--color-primary);
    border-radius: 10px 0px 0px 0px;
}

.title-seguros h3 {
    margin-top: 20px;
    color: var(--bg-white);
    font-size: 28px;
}

/******************************/
/*******   CONTACTOS   *******/
/****************************/

.contacts-map {
    background-color: var(--color-primary);
    height: 500px;
    overflow: hidden;
}

.contacts-from {
    padding:30px!important;
    text-align: left;
}

i.icon-mail {
    font-size:17px;
}

.big {
    font-size: 16px;
    line-height: 28px;
    font-weight: 400;
    letter-spacing: 0px;
}

p.big {
    display: flex;
    align-items: center;
}

.btn-go {
    background-color: var(--color-second);
    padding:7px 38px;
    color:var(--bg-white);
    font-size: 14px;
    margin-top:15px;
    border-radius: 50px;
}    

/******************************/
/**********  FOOTER  *********/
/****************************/
#ap-footer {
    color: #9da4ac;
    background-color:#303945;; 
}

.ap-widget-footer {
    padding:100px 0;
}

.ap-widget-footer ul {
    list-style-type: none;
}

.ap-widget-footer ul li a {
    color: #9da4ac;
}

.ap-widget-social i {
    color:var(--color-gray);
    font-size:30px;
}

.ap-widget-contacts h6,
.ap-widget-contacts h5 {
    color:var(--color-text-white)
}

.ap-widget-contacts a {
    color:var(--color-gray)
}

.ap-copy-footer {
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.ap-copyright {
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/**********************MENU MOBILE******************************/
#Side_slide {
    display: block;
    position: fixed;
    background-color: #191919;
    border-color: #191919;
    top: 0px;
    right: -250px;
    width: 250px;
    height: 100%;
    overflow: auto;
    border-bottom-width: 60px;
    border-bottom-style: solid;
    z-index: 9003;
}
#Side_slide .close-wrapper {
    height: 60px;
}
#Side_slide .close-wrapper a.close {
    height: 34px;
    width: 34px;
    display: block;
    float: right;
    margin: 13px 13px 0 0;
}
#Side_slide .close-wrapper a.close i {
    font-size: 22px;
    line-height: 34px;
    color: var(--color-text-white);
}
a.action_button {
    display: block;
    padding: 11px 20px;
    line-height: 21px;
    float: left;
    position: relative;
    box-sizing: border-box;
    border-radius: 5px;
    overflow: hidden;
}
#body_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 120%;
    background: rgba(0, 0, 0, .6);
    z-index: 9002;
    display: none;
}
.extras {
    display: none;
}

@media only screen and (max-width: 1239px) {
    .top_bar_left {
        width: 729px;
    }

    a.responsive-menu-toggle {
        display: block;
    }
    .mobile-header-mini #Top_bar .top_bar_left {
        float: left;
        position: relative;
    }
    #Top_bar a.responsive-menu-toggle i {
        font-size: 25px;
        line-height: 35px;
        color: var(--color-primary);
    }
}

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

    body:not(.template-slider):not(.header-simple) #Header {
        min-height: 350px;
        background-position: center 202px;
    }

    .mobile-header-mini #Top_bar .top_bar_left {
        float: left;
        position: absolute;
    }

    #Top_bar .top_bar_left {
        margin-top: 0px;
         width: 100%;
    }

    a.responsive-menu-toggle {
        top: 40px!important;
        left: auto;
        right: 47px;
        margin-top: -5px;
    }

    .mobile-header-mini #Top_bar a.button.action_button {
        display: none;
    }

    .btn-slide-qsomos{
            padding: 15px 20px!important;
            font-size: 15px!important;
    }

    .icon-right-circled {
        font-size: 17px!important;
    }

    .btn-slide{
        display: none!important;
    }

    .ap-section-groups {
        margin: 0;
        width: 100%!important;
        clear: both;
    }

    .section_wrapper {
        width: calc(100% - 67px)!important;
        max-width: 480px !important;
    }

    .mcb-wrap {
        margin: 0;
        width: 100%!important;
        clear: both;
    }

    ul#menu-main-menu {
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }

    .menu>li>a {
        padding: 0px 0;
    }

    #Top_bar .top_bar_right {
        position: initial;
    }

    .protecao-suseseg {
        margin-top: 30px;
    }

    .ap-wrap-servicos {
        flex-direction: column;
        gap: 22px;
        align-items: center;
    }

    .ap-wrap-servicos img {
        width: 40px;
        filter: opacity(0.5);
    }

    .ap-wrap-servicos h3 {
        text-align: center;
    }

    body:not(.template-slider) #ap-content {
        padding-top: 83px;
    }

    #quem-somos {
        padding: 60px 0;
    }

    .column-service {
        margin-top: -285px;
        z-index: 999;
    }

    .img-home{
        margin-top:23px; 
        object-position: 0px -10px;
    }

    .ap-widget-footer {
        text-align: center;
         padding: 30px 0;
    }

    .ap-widget-footer h4 {
        margin-top: 33px;
    }

    .ap-widget-contacts .image_wrapper  {
        margin-top: 33px;
    }

    .ap-widget-contacts h4  {
        margin-top: 0px;
    }

    /************QUEM SOMOS********************/
    .ap-section-groups .section{
        padding-top:40px; 
        padding-bottom:40px;
    }

    .img-section img {
        margin-top: -100px;
        object-fit: contain;
        height: 370px;
        margin-bottom: 20px;
    }
    .ap-text-banner h1 {
        font-size: 32px;
    }

    .ap-text-banner h5 {
        font-size: 15px;
        line-height: 1.5;
    }

    .contacts-map {
        height: 1000px;
        visibility: visible;
    }

    .title-seguros {
        background-color:var(--bg-white);
    }

    .title-seguros h3 {
        color: var(--color-second);
    }

}


@media only screen and (min-width: 1240px) {
    .section_wrapper, .container {
        max-width: 1220px;
    }
    #menu {
        display: block !important;
    }
    .menuo-right #Top_bar .menu_wrapper {
        float: right;
    }
}

@media only screen and (min-width: 960px) and (max-width: 1239px) {
    .section_wrapper {
        max-width: 940px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
    .top_bar_left {
        width: 501px;
    }

    .section_wrapper {
        max-width: 708px;
    }
}

@media only screen and (max-width: 767px) {
    .section_wrapper {
        width: calc(100% - 67px)!important;
    }
}

