/* Overrides finais do novo layout sobre a estrutura legada.
   Carregado depois de legacy-new-layout.css e de todo o tema antigo. */

/* Estrutura real do template legado: a lateral e um div.col-left direto em .home_page. */
.vemp-new-layout .home_page > .col-left,
.vemp-new-layout .home_page .col-left{
    display:none!important;
    position:static!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    width:0!important;
    min-width:0!important;
    max-width:0!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
    transform:none!important;
    visibility:hidden!important;
}

.vemp-new-layout main.main,
.vemp-new-layout .main > .container-fluid,
.vemp-new-layout .container-fluid > .home_page,
.vemp-new-layout .home_page{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding-left:0!important;
    padding-right:0!important;
    float:none!important;
    transform:none!important;
}

/* Anula todos os offsets/larguras que existiam para deixar espaco aos 200px da lateral. */
.vemp-new-layout .home_page > .col-center2,
.vemp-new-layout .home_page .col-center2,
.vemp-new-layout .home_page > .col-center,
.vemp-new-layout .home_page .col-center,
.vemp-new-layout .home_page > .col-right,
.vemp-new-layout .home_page .col-right{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    float:none!important;
    transform:none!important;
}

.vemp-new-layout .home_page:after,
.vemp-new-layout .home_page:before{display:none!important}

.vemp-new-layout .main_content,
.vemp-new-layout .main_content .content{
    margin-left:auto!important;
    margin-right:auto!important;
}

/* REGISTO: HTML original de showFormRegisto(), sem alterar PHP. */
.vemp-new-layout .form-registo{
    box-sizing:border-box!important;
    width:min(calc(100% - clamp(32px,4vw,80px)),1280px)!important;
    max-width:1280px!important;
    margin:38px auto 76px!important;
    padding:40px 42px 44px!important;
    color:var(--ve-ink)!important;
    background:#fff!important;
    border:1px solid var(--ve-line)!important;
    border-radius:24px!important;
    box-shadow:var(--ve-shadow)!important;
}
.vemp-new-layout .form-registo > .titulo_d{
    margin:0 0 32px!important;
    padding:0 0 22px!important;
    color:var(--ve-navy)!important;
    background:transparent!important;
    border:0!important;
    border-bottom:1px solid var(--ve-line)!important;
    font-size:clamp(30px,2.5vw,40px)!important;
    line-height:1.08!important;
    font-weight:900!important;
    letter-spacing:-1px!important;
    text-align:left!important;
    text-transform:none!important;
}
.vemp-new-layout .form-registo .subtitle{
    display:block!important;
    width:100%!important;
    margin:28px 0 16px!important;
    padding:0!important;
    color:var(--ve-navy)!important;
    font-size:18px!important;
    line-height:1.25!important;
    font-weight:850!important;
}
.vemp-new-layout .form-registo .row{
    margin-left:-9px!important;
    margin-right:-9px!important;
}
.vemp-new-layout .form-registo [class*="col-"]{
    padding-left:9px!important;
    padding-right:9px!important;
}
.vemp-new-layout .form-registo .form-group{margin-bottom:16px!important}
.vemp-new-layout .form-registo label{
    display:block!important;
    margin:0 0 7px!important;
    color:#475467!important;
    font-size:12px!important;
    line-height:1.35!important;
    font-weight:800!important;
}
.vemp-new-layout .form-registo .mandatory{color:#d92d20!important}
.vemp-new-layout .form-registo .form-control,
.vemp-new-layout .form-registo input[type="text"],
.vemp-new-layout .form-registo input[type="email"],
.vemp-new-layout .form-registo input[type="password"],
.vemp-new-layout .form-registo input[type="tel"],
.vemp-new-layout .form-registo input[type="number"],
.vemp-new-layout .form-registo select,
.vemp-new-layout .form-registo textarea{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:54px!important;
    height:54px!important;
    margin:0!important;
    padding:0 16px!important;
    color:var(--ve-ink)!important;
    background:#f8fafc!important;
    border:1px solid #dfe5ee!important;
    border-radius:14px!important;
    box-shadow:none!important;
    outline:0!important;
    font:600 14px/1.4 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
.vemp-new-layout .form-registo textarea{
    height:auto!important;
    min-height:120px!important;
    padding-top:14px!important;
}
.vemp-new-layout .form-registo .form-control:focus,
.vemp-new-layout .form-registo input:focus,
.vemp-new-layout .form-registo select:focus,
.vemp-new-layout .form-registo textarea:focus{
    background:#fff!important;
    border-color:var(--ve-blue)!important;
    box-shadow:0 0 0 4px rgba(23,104,232,.09)!important;
}
.vemp-new-layout .form-registo input[type="checkbox"]{
    width:16px!important;
    height:16px!important;
    min-height:0!important;
    margin:0 9px 0 0!important;
    padding:0!important;
    accent-color:var(--ve-blue)!important;
    vertical-align:-2px!important;
}
.vemp-new-layout .form-registo a{
    color:var(--ve-blue)!important;
    font-weight:800!important;
}
.vemp-new-layout .form-registo .button3,
.vemp-new-layout .form-registo input[type="submit"],
.vemp-new-layout .form-registo button[type="submit"]{
    width:100%!important;
    min-height:52px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-top:12px!important;
    padding:0 24px!important;
    color:#fff!important;
    background:var(--ve-blue)!important;
    border:1px solid var(--ve-blue)!important;
    border-radius:999px!important;
    box-shadow:0 12px 25px rgba(23,104,232,.20)!important;
    font-size:13px!important;
    line-height:1!important;
    font-weight:900!important;
    text-transform:uppercase!important;
}
.vemp-new-layout .form-registo .button3:hover,
.vemp-new-layout .form-registo input[type="submit"]:hover,
.vemp-new-layout .form-registo button[type="submit"]:hover{
    background:var(--ve-blue-dark)!important;
    border-color:var(--ve-blue-dark)!important;
}

/* Rodape novo: neutraliza regras globais antigas de footer. */
.vemp-new-layout .vemp-modern-footer{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    clear:both!important;
    display:block!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    min-height:78px!important;
    height:auto!important;
    margin:0!important;
    padding:28px 0!important;
    color:#8490a4!important;
    background:#fff!important;
    border:0!important;
    border-top:1px solid var(--ve-line)!important;
    font:12px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
    transform:none!important;
    overflow:visible!important;
}
.vemp-new-layout .vemp-modern-footer *{box-sizing:border-box!important}
.vemp-new-layout .vemp-modern-footer-in{
    width:min(calc(100% - clamp(32px,4vw,80px)),1560px)!important;
    max-width:1560px!important;
    margin:0 auto!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:24px!important;
}
.vemp-new-layout .vemp-modern-footer strong{
    color:var(--ve-navy)!important;
    font-weight:900!important;
}
.vemp-new-layout .vemp-modern-footer-links{
    display:flex!important;
    align-items:center!important;
    gap:18px!important;
    flex-wrap:wrap!important;
}
.vemp-new-layout .vemp-modern-footer-links a{
    color:var(--ve-muted)!important;
    font-weight:750!important;
    text-decoration:none!important;
}
.vemp-new-layout .vemp-modern-footer-links a:hover{color:var(--ve-blue)!important}
.vemp-new-layout .sticky-content-wrapper{display:none!important}

@media (max-width:767px){
    .vemp-new-layout .form-registo{
        width:calc(100% - 28px)!important;
        margin:24px auto 52px!important;
        padding:26px 20px 30px!important;
        border-radius:20px!important;
    }
    .vemp-new-layout .form-registo > .titulo_d{
        margin-bottom:25px!important;
        font-size:28px!important;
    }
    .vemp-new-layout .form-registo .row{
        margin-left:0!important;
        margin-right:0!important;
    }
    .vemp-new-layout .form-registo [class*="col-"]{
        width:100%!important;
        max-width:100%!important;
        padding-left:0!important;
        padding-right:0!important;
        float:none!important;
    }
    .vemp-new-layout .vemp-modern-footer-in{
        width:calc(100% - 28px)!important;
        align-items:flex-start!important;
        flex-direction:column!important;
    }
}
