/*//////////////////////////////////////////////////////
////    GERAL
//////////////////////////////////////////////////////*/

@font-face {
    font-family: 'Poppins';
    font-display: swap;
    src: url('../fonts/Poppins/Poppins-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    font-display: swap;
    src: url('../fonts/Poppins/Poppins-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    font-display: swap;
    src: url('../fonts/Poppins/Poppins-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

h1, h2{
    text-shadow: 0px 0px 1.5px;
}

b, a, h3, h4{
    text-shadow: 0px 0px 1px;
}

:root {
    --cor1: #FC0814;
}

html,
body {
    height: 100%;
    margin: 0;
    font-family: 'Poppins','Verdana','Sans Serif';
    scroll-behavior: smooth;
    cursor: default
}

body.no_scroll{
    overflow: hidden
}

a {
    text-decoration: none;
    color: #FC0814;
}

* {
    transition: .3s
}

/*//////////////////////////////////////////////////////
////    HEADER
//////////////////////////////////////////////////////*/

header {
    display: flex;
    align-items: center;
    /*! justify-content: center; */
    background: #3335;
    height: 100px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 90;
    width: 100%;
    height: 50px;
    outline: 1px solid #fffa;
    transition: 1s!important;
}

header > div{
    max-width: 1600px;
    margin: auto;
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    height: 100%;
    backdrop-filter: blur(2px);
}

header > div.mobile{
    display: none;
}

header:hover{
    backdrop-filter: blur(55px)
}

header img {
    width: 100px;
    box-shadow: 0 0 5px #000a;
    cursor: pointer;
    position: absolute;
    top: -1px;
    background: #0000;
    backdrop-filter: blur(5px);
    outline: 1px solid #fffa;
    outline-offset: -1px;
    transition: 1s!important;
    border-radius: 0 0 5px 5px
}

header img:hover{
    background: #f000;
    outline: 1px solid #fff5;
    outline-offset: -1px;
    backdrop-filter: blur(55px)
}

header .botoes{
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 0;
    right: 0;
}

header a {
    margin: 0 20px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .4s;
    color: #fff;
    position: relative;

}

header a:hover {
    scale: 1.0
}

header .botoes a:after{
    content: "";
    width: 5px;
    height: 2px;
    background: #f00;
    position: absolute;
    bottom: 0;
    left: 0;
    border-radius: 5px;
    width: 0%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: auto;
    transition: .3s

}

header .botoes a:hover:after{
    width: 100%;
}

/* header a:before {
width: 50%;
height: 4px;
background: var(--cor1);
position: absolute;
display: flex;
content: '';
top: 0;
border-radius: 0 0 5px 5px
} */

/* header a:after {
width: 50%;
height: 4px;
background: var(--cor1);
position: absolute;
display: flex;
content: '';
bottom: 0;
border-radius: 5px 5px 0 0
} */

header .icons{
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 0;
}

header .icons a{
    margin: 0 10px;
    /*! outline: 1px solid #fff; */
    border-radius: 55px;
    width: 55px;
    height: 25px;
    border: 1px solid #fff;
}

header .icons a .svg_{
    width: 15px;
    height: 15px;
    fill: #fff;
    display: flex;
}

header .icons a .svg_ svg{
    width: 100%;
    height: 100%;
}

header .icons a:hover{
    background: #fff;
    fill: #f00!important;
}

header .icons a:hover .svg_ {
    fill: red
}

header .toggle_menu{
    display: none;
}

@media only screen and (max-width: 600px) {
    header .desktop{
        display: none
    }

    header .mobile{
        display: flex!important;
        width: 100%;
        height: 80px;
        background: #f00f;
        position: fixed;
        left: 0;
        top: 0;
        z-index: 999999;
        box-shadow: 0 0 2px #f00
    }

    header .mobile img{
        height: 81px;
        width: auto;
        outline: 0;
        box-shadow: none!important;
        background: #fff;
        border-radius: 0;
    }

    header .mobile .ligacao{
        margin: auto;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        background: #fff;
        border-radius: 55px;
        padding: 10px 15px;
        margin-right: 80px;
        box-shadow: 0 0 1px #fff;
    }

    header .mobile .ligacao svg{
        margin-right: 5px;
        fill: #f00;
        text-shadow: 0 0 1px #f00;
        width: 15px;
        height: 15px;
        display: flex;
    }

    header .mobile .ligacao a{
        margin: 0;
        color: #f00;
        /*! text-shadow: 0 0 1px #f00 */
    }

    .menu_{
        width: 100%;
        height: 200%;
        position: fixed;
        left: 0;
        top: 0;
        background: #222;
        z-index: 150;
        flex-direction: column;
        opacity: 0;
        pointer-events: none;
        user-select: none;
        background: #fff;
    }

    .menu_ *{
        color: #f00;
    }

    .menu_ .botoes{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: end;
        margin-bottom: 50px;
        margin-top: 60px
    }

    .menu_ .botoes a{
        margin-top: 20px;
        font-size: 20px;
        color: #444;
        background: #f00f;
        color: #fff;
        padding: 5px 10px;
        border-radius: 10px
    }

    .menu_ .icons{
        display: flex;
        align-items: center;
        justify-content: space-around;
        margin-top: calc(50% - 50px)
    }

    .menu_ .icons a{
        outline: 1px solid #f00;
        padding: 10px 20px;
        border-radius: 55px;
    }

    .menu_ .icons a .svg_{
    }

    .menu_ .icons a .svg_ svg{
        width: 15px;
        height: 15px;
        fill: #f00;
        display: flex
    }

    .menu_.active{
        display: flex;
        opacity: 1;
        pointer-events: all;
        user-select: auto;
        z-index: 150
    }

    .menu_ .close_menu{
        background: #000;
        border: 0;
        width: 41px;
        height: 41px;
        border-radius: 7px;
        position: fixed;
        top: 20px;
        right: 15px;
        font-size: 20px;
        background: #fff;
        cursor: pointer;
        display: flex;
        right: 15px;
        top: 20px;
        background: #fff;
        border: 0;
        border-radius: 2vw;
        width: 12vw;
        height: 12vw;
        align-items: center;
        justify-content: center;
        font-size: 5vw;
        z-index: 99999;
        box-shadow: 0 0 5px #5005;
    }

    .menu_ .close_menu svg{
        fill: #f00;
        width: 15px;
        height: 15px;
        display: flex;
    }

    header .toggle_menu{
        display: flex;
        position: absolute;
        right: 15px;
        top: 15px;
        background: #fff;
        border: 0;
        border-radius: 2vw;
        width: 12vw;
        height: 12vw;
        align-items: center;
        justify-content: center;
        font-size: 5vw;
    }

    header .toggle_menu{
        display: flex;
        right: 15px;
        top: 20px;
        background: #fff;
        border: 0;
        border-radius: 2vw;
        width: 12vw;
        height: 12vw;
        align-items: center;
        justify-content: center;
        font-size: 5vw;
        z-index: 99999;
        box-shadow: 0 0 5px #5005
    }
    header .toggle_menu svg{
        fill: #f00;
        text-shadow: 0 0 1px #f00;
        width: 15px;
        height: 15px;
        display: flex
    }
}

@media only screen and (min-width: 600px) {
    .menu_{
        display: none
    }
}

/*//////////////////////////////////////////////////////
////    Banner1
//////////////////////////////////////////////////////*/

#banner1 {
    height: 650px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    background: url('../img/hero1.webp');
    height: 100%;
    background-position: top;
    background-size: cover
}

#banner1 img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    position: absolute;
}

#banner1 .text{

}

#banner1 .text{
    display: flex;
    flex-direction: row;
    width: 100%;
    overflow: hidden;
    flex-direction: column;
}

#banner1 .text h1{
    font-size: 3vw;
    color: #fff;
    padding: 0vw 2vw;
    border-radius: 55px;
    background: #f00;
    box-shadow: 0 0 4px #f00;
    outline: 1px solid #fff7;
    outline-offset: 2px
}

#banner1 .text h2{
    font-size: 1.5vw;
    color: #fff;
    backdrop-filter: blur(2px);
    padding: .5vw 2vw;
    border-radius: 4px;
    background: #222;
    text-shadow: 1px 1px 0px #5004;
    box-shadow: 0px 0px 0px 1px #fff5;
    max-width: 50%;
    text-align: center;
    font-weight: 550;
    background: #fff !important;
    color: #f00;
    border-radius: 55px;
    outline: 1px solid #fffa;
    outline-offset: 2px;
    text-shadow: 0 0 1px #000;
    font-weight: 300;
    color: #444;
}

#banner1 .text h2 b{
    position: relative;
}

#banner1 .text h2 b:after{
    content: '';
    width: 100%;
    height: 2px;
    background: #f00;
    position: absolute;
    left: 0;
    bottom: 5px;
    box-shadow: 0 0 1px #f007;
    border-radius: 5px;
    background: linear-gradient(to right, #ffff 0%,#f00 10%, #f005 90%)
}

#banner1 .text h2{
    background-color: #222;
    background: repeating-linear-gradient( 45deg, #272727, #272727 5px, #222 5px, #222 25px );
    background: radial-gradient(circle, transparent 20%, #222 20%, #222 80%, transparent 80%, transparent), radial-gradient(circle, transparent 20%, #222 20%, #222 80%, transparent 80%, transparent) 25px 25px, linear-gradient(#272727 2px, transparent 2px) 0 -1px, linear-gradient(90deg, #272727 2px, #222 2px) -1px 0;
    background-size: 50px 50px, 50px 50px, 25px 25px, 25px 25px;
    /*     background: linear-gradient(to right, #171717,#333, #171717) */
}

@media only screen and (min-width: 600px) {
    #banner1 .text{
        align-items: center;
        justify-content: center;
        height: 20vw;
        margin-top: 5vw
    }
    #banner1 .text h1{
        margin: 0
    }
}

#banner1 h1{
    text-align: left;
    align-items: start !important;
    justify-content: start !important;
}

#banner1 h1.temp{
    opacity: 0;
    display: none
}

#banner1 .toggle_menu{
    display: none;
}

@media only screen and (max-width: 600px) {
    #banner1{
        margin-top: 80px;
        max-height: calc(100% - 80px);
        background: url('../img/hero1_mobile.webp');
        background-size: cover;
        background-position: center;
    }

    #banner1 .text{
        height: 100%
    }


    #banner1 h1.temp{
        display: flex;
    }

    #banner1 h1{
        font-size: 5.8vw !important;
        text-align: center;
        width: calc(100% - 40px);
        margin: auto;
        padding: 2vw 1vw!important;
        margin-bottom: 0!important;
    }

    #banner1 .text h2{
        font-size: 3.5vw!important;
        text-align: center;
        margin: auto;
        padding: 2vw 1vw!important;
        max-width: 100%;
        width: calc(100% - 40px);
        margin-top: 8vw;
    }

    #banner1 .text h2 b:after{
        bottom: 1px!important;
    }
}

/*//////////////////////////////////////////////////////
////    Sobre
//////////////////////////////////////////////////////*/

#sobre{
    padding: 60px 0;
    background: #fff;
    background: linear-gradient( to right, #fff, #f5f5f5)
}

#sobre > div{
    display: flex;
    flex-direction: row;
    max-width: 1100px;
    margin: auto;
}

#sobre > div .one{
    width: 50%;
    height: 500px;
    justify-content: center;
    display: flex;
    flex-direction: column;
}

#sobre > div .one .heading{
    color: #f00;
    margin-bottom: 0!important;
    font-size: 1vw;
    font-weight: 300;
    text-transform: uppercase
}

#sobre > div .one h2{
    color: #373737;
    margin-top: 0!important;
    font-size: 2vw;
    line-height: 2.5vw;
    margin-bottom: 1vw
}

#sobre > div .one .paragraph{
    color: #333;
    margin-top: 0
}

#sobre > div .one .action_button{
    /*! outline: 1px solid #333; */
    padding: 12px 25px;
    border-radius: 50px;
    background: #f00;
    color: #fff;
    /*! outline: 0; */
    font-weight: 500;
    margin-top: 30px;
    display: flex;
    width: max-content;
    /*! outline: 2px solid #f00; */
    /*! outline-offset:-2px; */
    box-shadow: 0 0 4px #f00;
}

#sobre > div .one .action_button:hover{

    background: #fff;
    color: #f00
}

#sobre > div .two{
    height: 500px;
    width: 70%
}

#sobre > div .two video{
    height: 100%;
    width: 100%!important;;

}

#sobre > div .two img{
    margin-left: 40px;
    animation: float 3s ease-in-out infinite;
    filter: drop-shadow(0 0 5px #f00f);
    height: 100%;
    width: auto;
}

@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

@media only screen and (max-width: 600px) {
    #sobre{
        padding-bottom: 0!important;
    }
    #sobre > div{
        flex-direction: column;
        max-width: calc(100% - 40px);
    }
    #sobre .one, #sobre .two{
        width: 100%!important;
        height: 100%!important;
    }
    #sobre .two{
        padding: 30px 0
    }
    #sobre .two img{
        max-width: 100%;
        margin-left: 0!important;
        height: auto!important;;
        width:100%!important;;
        display: flex;

        object-fit: contain
    }
    #sobre .heading{
        font-size: 4vw!important;
        text-align: center;
        padding-bottom: 15px!important;
    }
    #sobre h2{
        font-size: 8vw!important;
        line-height: 9vw!important;
        text-align: center;
        margin-bottom: 20px!important;
    }
    #sobre .paragraph{
        text-align: center;
    }
    #sobre .action_button{
        width: calc(100% - 50px)!important;
        align-items: center;
        justify-content: center;
    }
}

/*//////////////////////////////////////////////////////
////    Section
//////////////////////////////////////////////////////*/

.section {
    padding: 0 calc(100% - 1400px);
    display: flex;
    flex-direction: column;
    padding-bottom: 15px
}

.section h1 {
    color: var(--cor1);
    position: relative;
    width: max-content;
}

.section h1:before {
    content: '';
    width: 100%;
    height: 1px;
    background: red;
    position: absolute;
    bottom: 0;
    left: 20px;
    border-radius: 55px;
    background: linear-gradient(to right, var(--cor1), #0001)
}

.section h1:after {
    content: '';
    width: 100%;
    height: 2px;
    background: red;
    position: absolute;
    bottom: -5px;
    left: 00px;
    border-radius: 55px;
    background: linear-gradient(to right, var(--cor1), #0001)
}

.section img {
    width: 500px;
    border-radius: 5px;
}

.section p {
    color: #555;
}

.section:nth-child(odd) {
    background: #efefef;
}

/*//////////////////////////////////////////////////////
////    Whats
//////////////////////////////////////////////////////*/

#whats {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 95;
    animation: float 3s ease-in-out infinite;
}

#whats .svg_whatsapp{
    width: 40px;
    height: 40px;
    background: #25D366;
    padding: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 55px;
    fill: #fff!important;
    /*     text-shadow: -4px 4px 0px #fff; */
    box-shadow: 0 0 5px #0f0a;
    pointer-events: none;
}

#whats .svg_whatsapp svg{

}

#whats:hover {
    scale: 1.1;
    filter: saturate(1.5)
}

@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}


/*//////////////////////////////////////////////////////
////    
//////////////////////////////////////////////////////*/

#galeria_templates{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

#galeria_templates img{
    width: 350px;
    position: absolute;
}

#galeria_templates > div{
    display: flex;
    position: relative;
    width: 350px;
    height: 450px;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

#galeria_templates a{
    position: relative;
    background: #fff5;
    border: 1px solid var(--cor1);
    border-radius: 55px;
    padding: 20px;
    font-size: 20px;
    margin: 15px 0;
    opacity: 0;
    backdrop-filter:blur(20px)
}

#galeria_templates > div:hover a{
    opacity: .75
}

#galeria_templates > div a:hover{
    backdrop-filter: blur(20px);
    scale: 1.05;
    opacity: 1;
}

#galeria_templates > div:hover img{
    opacity: .5
}


/*//////////////////////////////////////////////////////
////    Faça uma Orçamento
//////////////////////////////////////////////////////*/

.faca_um_orcamento{
    background: linear-gradient( to right, #f5f5f5, #eee);
}

.faca_um_orcamento > div{
    max-width: 1100px;
    margin: auto;
    padding-top:40px;
    padding-bottom:60px;
    display: flex;
    flex-direction: column;
}

.faca_um_orcamento h2{
    color: #FC0814;
    font-size: 35px;
    margin-top: 0;
}

.faca_um_orcamento span{
    font-size: 17px;
}

.faca_um_orcamento a{
    background: #FC0814;
    color: #fff;
    border-radius: 40px;
    width: max-content;
    padding: 10px 30px;
    margin-top: 25px;
    box-shadow: 0 0 4px #f00;
    display: flex;
    align-items: center;
    justify-content: center;
}

.faca_um_orcamento a:hover{
    scale: 1.1
}

.faca_um_orcamento svg{
    width: 15px;
    height: 15px;
    fill: #fff;
    margin-left: 5px;
    display: flex;
}

@media only screen and (max-width: 600px) {
    .faca_um_orcamento > div{
        width: calc(100% - 20px);
        text-align: center;
        height: max-content;
        padding-bottom: 60px
    }
    .faca_um_orcamento h2{
        margin-top: 0;
    }
    .faca_um_orcamento a{
        width: calc(100% - 80px);
        margin-left: auto;
        margin-right: auto
    }
}


/*//////////////////////////////////////////////////////
////    Footer
//////////////////////////////////////////////////////*/

footer{
    background: #FC0814;
    cursor: default
}

footer > div{
    max-width: 1100px;
    margin: auto;
    display: flex;
    color: #f5f5f5;
    padding: 40px 0;
}

footer .block{
    display: flex;
    flex-direction: column;
    position: relative;
    margin: 0 5px;
    padding: 0 15px
}

footer .block:after{
    content:'';
    position: absolute;
    height: 100%;
    width: 3px;
    background: #fff2;
    right: 0;
    border-radius: 5px;
}

footer .block:last-of-type:after{
    display: none
}

footer .block img{
    width: 100px;
    background: #f5f5f5;
    border-radius: 2px;
    transition: 1s
}

footer .block img:hover{
    scale: 1.1
}

footer .block a{
    background: #fff;
}

footer .sobre{
    max-width: 300px;
}

footer .sobre b{
    margin-bottom: 15px;
    position: relative;

}

footer .sobre b:after{
    content: '';
    background: #fff0;
    width: 5px;
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    right: 15px;
    top: 0px;
    height: 19px;
    width: 170px;
    border-radius: 10px
}

footer .sobre span{
    font-size: 14px;
    margin-left: 10px
}

footer .sobre img{
    /*! filter: hue-rotate(20deg) */
}

footer .sobre > div{
    display: flex;
}

footer .contato .item{
    display: flex;
    flex-direction: column;
    align-items: center;

}

footer .contato b{
    margin-bottom: 15px;
    text-align: center;
}

footer .contato a{
    border-radius: 5px;
    margin-bottom: 10px;
    margin-top: 2.5px;
    padding: 5px 10px;
    font-size: 14px;
    /*     outline: 2px solid #fff;
    outline-offset: -2px; */
}

footer .contato a:hover{
    /*     background: transparent; */
    /*     color: #fff; */
    scale: 1.1
}

footer .atendimento{
    max-width: 400px
}

footer .atendimento a{
    background: #5550;
    color: #fff!important;
    text-decoration: underline;
    margin-top: 15px!important;
    display: flex;
}

footer .atendimento b{
    margin-bottom: 15px;
}

footer .atendimento span{
    font-size: 14px
}

footer .bottom{
    background: #000;
    padding: 0;
    max-width: 100%;
    background: #fff;
}

footer .bottom span{
    text-align: center;
    width: 100%;
    max-width: 1100px;
    margin: auto;
    color: #FC0814aa;
    padding: 15px 0;
}

@media only screen and (max-width: 600px) {
    footer > div{
        display: flex;
        flex-direction: column;
    }

    footer .block{
        display: flex;
        flex-direction: column;
        position: relative;
        margin: 5px 0px;
        padding:  15px 15px;
    }

    footer .block:after{
        content:'';
        position: absolute;
        height: 3px;
        width: 100%;
        background: #fff2;
        right: 0;
        border-radius: 5px;
        bottom: 0;
    }

}

/*//////////////////////////////////////////////////////
////    Sites Responsivos
//////////////////////////////////////////////////////*/

.site_responsivo{
    background: linear-gradient( to right, #f5f5f5,  #eee);
}

.site_responsivo>div{
    max-width: 1100px;
    margin: auto;
    padding-top: 40px;
    padding-bottom: 60px;
}

.site_responsivo>div h2{
    color: #FC0814;
    font-size: 35px;
    margin-top: 0
}

.site_responsivo .items{
    display: flex;
}

.site_responsivo .item{
    position: relative;
    max-width: 300px;
    margin: 2px;
    max-height: 300px;
    margin: auto;
}

.site_responsivo .item img{
    border-radius: 2px;
    height: 100%;
    object-fit: cover;
    width: 100%;

}

.site_responsivo .item span{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(#fff7, #000a);
    color: #222;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 18px;
    border-radius: 2px;
    transition:.3s!important;
    opacity: .4;
    z-index: 10

}

/* .site_responsivo .item span:after{
position: absolute;
content: "";
width: 150px;
height: 10px;
background: red;
border-radius: 0;
border-radius: 0 555px;
margin-top: 0px;
opacity: .0;
transition: .3s!important;
width: 140px;
height: 40px;
z-index: 5
} */

.site_responsivo .item:hover{
    scale: 1.02
}

.site_responsivo .item:hover span{
    opacity: .7;
    color: #fff;
    background: radial-gradient(#f00f, #f00f);
}

/* .site_responsivo .item:hover span:after{
opacity: 1;
width: 90%;
height: 50px;

} */

@media only screen and (max-width: 600px) {
    .site_responsivo > div{
        width: calc(100% - 20px)
    }
    .site_responsivo > div .items{
        display: grid;
        grid-template: auto / auto auto   
    }
    .site_responsivo h2{
        text-align: center;
    }
}

/*//////////////////////////////////////////////////////
////    Planos
//////////////////////////////////////////////////////*/

#planos{
    background: #f5f5f5;
    background: linear-gradient( to right, #fff, #f5f5f5);
    padding-top: 40px;
    padding-bottom: 60px
}
#planos > div{
    max-width: 1100px;
    margin: auto;
}

#planos h2 {
    color: #f00;
    text-align: center;
    margin-bottom: 50px;
    font-size: 35px;
    margin-top: 0
}

#planos .listagem{
    display: flex;
    align-items: center;
    justify-content: center;
}

#planos .item{
    background: #fff;
    outline: 1px solid #f005;
    border-radius: 20px;
    padding: 10px 15px;
    position: relative;
    margin: 0 40px;
    transition: .6s!important;
    box-shadow: 0 0 20px #5000;
    width: 33%
}

#planos .item:hover{
    transform: translateY(-5px);
    scale: 1.05;
    box-shadow: 0 0 20px #5005;
    outline-color: #f00;
}

#planos .popular:hover{
    scale: 1.2!important;;
}

#planos .item .mais_popular{
    position: absolute;
    top: -15px;
    left: 0;
    right: 0;
    background: #edd;
    width: max-content;
    margin: auto;
    padding: 5px 15px;
    border-radius: 55px;
    color: #f00a;
}

#planos .item h3{
    font-size: 20px;
    text-align: center;
    color: #f00;
    margin-bottom: 0
}

#planos .item p{
    text-align: center;
    margin: 0;
    font-size: 12px;
    color: #999;
    margin-bottom: 15px
}

#planos .item .desconto{
    text-align: center;
    margin-top: 23px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;

}

#planos .item .desconto span{
    font-size: 13px;
    color: #999;
}

#planos .preci_ span.brl{
    font-size: 11px;
}

#planos .preci_ span.vlr{
    font-size: 16px;
}

#planos .preci_a{
    text-decoration: underline;
    text-decoration-line:  line-through;
    color: #aaa;
}

#planos .item .preci_b span{
    text-decoration: none;
    color: #444;
}

#planos .item .preci_b span.vlr{
    color: #fff;
    background: #4a4;
    border-radius: 55px;
    padding: 0px 10px;
}

#planos .item .desconto b{
    background: #edd;
    color: #f00;
    padding: 5px 10px;
    border-radius: 55px;
    margin-top: 5px
}

#planos .item .valor{
    text-align: center;
    margin-top: 10px;
    margin-bottom: 10px
}

#planos .item .valor b{
    font-size: 42px;
    color: #333;    
}

#planos .item .valor span{
    color: #555
}

#planos .item  div.msg_b p{
    color: #766!important;
}

#planos .item .escolher{
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    margin-top: 20px;
    background: #f00;
    color: #fff;
    border-radius: 10px;
    padding: 10px 0;
    box-shadow: 0 0 4px #f00;
}

#planos .item > span{
    color: #ccc;
    font-size: 12px;
    text-align: center;
    width: 100%;
    display: flex;
    margin: auto;
    align-items: center;
    justify-content: center;
}

#planos .item:after{
    content: '';
    position: absolute;
    bottom: -4px;
    left: 0;
    right: 0;
    margin: auto;
    width: 150px;
    height: 4px;
    background: #f00;
    border-radius: 0 0 5px 5px;
}

#planos .popular{
    scale: 1.15;
    outline: 1px solid #f00
}

#planos .popular .desconto b{
    /*     outline: 1px solid red; */
    background: #f00;
    color: #fff;
}

#planos .popular .valor b{
    font-size: 50px
}

@media only screen and (max-width: 600px) {
    #planos .listagem{
        flex-direction: column;
    }
    #planos .item{
        margin-bottom: 60px;
        width: calc(100% - 55px)
    }

    #planos .item:last-child{
        margin-bottom: 0
    }
    #planos .popular{ 
        scale: 1;
    }
    #planos .item:hover{
        scale: 1.05!important;
    }
}