﻿/* CSS Document */
:root {
    --light_blue: #00d8ff;
    --blue: #0042ff;
    --light_pink: #e24bff;
    --pink: #6720cd;
    --light_green: #b2d100;
    --green: #248000;
    --dark_blue: #182277;
    --gray: #556b82;
    --purple-gradient: linear-gradient(90deg,rgba(153, 42, 155, 1) 0%, rgba(67, 0, 184, 1) 100%);
    --light-blue-gradient: linear-gradient(90deg,rgba(4, 96, 189, 1) 0%, rgba(94, 209, 255, 1) 100%);
    --light-gray: #f6f6f6;
    --green-gradiant: linear-gradient(90deg,rgba(168, 191, 62, 1) 0%, rgba(67, 125, 39, 1) 48%);
}

.comparativo-title {
    gap: 15px;
    border-bottom: 1px solid var(--gray);
    padding-bottom: 15px;
    align-items: center;
    color: var(--dark_blue);
    font-size: 2.8rem !important;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-align: center;
}
.car-icon{
    font-size:2rem;
}

.grid-container{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap:30px;
    align-items:start;
}
.info-box{
    background: #f8fafc;
    border-radius:16px;
    overflow:hidden;
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.5);
}
.box-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding: 15px 25px;
    color: #ffffff;
}
.box-header h2 {
    font-size:1.1rem;
    font-weight:600;
    letter-spacing:0.5px;
}
.purple-bg {
    background: var(--purple-gradient) !important;
}

.blue-bg {
    background: var(--blue-gradient);
}

.box-content {
    padding: 25px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    background-color: var(--light-gray) !important;
}
.box-content p {
    font-size:0.95rem;
    color:var(--dark_blue);
    line-height: 1.4;

}
.box-content p strong {
    color:var(--dark_blue);
    font-weight:600;
    margin-right:5px;
}
.section-info{
    margin: 20px 0 20px 0 !important ;    
}
.section-info h2{
    font-size:14pt;
    color:var(--dark_blue);
    font-weight:700;
    margin: 0 0 4px 0;

}
.section-info p{
    font-size:11pt;
    font-weight:300;
    color:var(--dark_blue);    
    margin:0;
}
.planes-header{
    color:#ffffff;
    text-align:center;
    border-radius:4px;
    padding:5px;
    margin-bottom:20px;
    letter-spacing:0.5px;
}
.planes-header h2 {
    font-weight: 700;
    font-size: 18pt !important;
}
.planes-sura{
    display:table;
    width:100%;
    table-layout:fixed;
    border-collapse:separate;
    border-spacing:12px 0;
    margin:20px -12px 0 -12px !important;    
}
.planes-rows{
    display:table;
    width:66.66%;
    margin:0 auto 15px auto !important;
    table-layout:fixed;
    border-collapse:separate;
    border-spacing: 12px 0;
}
.plan-column{
    display:table-cell;
    vertical-align:top;
}
.plan-card{
    background:#ffffff;
    border-radius:6px;
    border:1px solid #dbe2eb;
    overflow:hidden;
}
.plan-header {
    display: table;
    width: 100%;
    background: #dbdbdd !important;
    padding: 10px 0;
    border-bottom: 1px solid #dbe2eb;
    height: 50px;
}
.plan-tittle-cell {
    display: table-cell;
    vertical-align: middle;
    text-align: start;
}
.plan-company{
    font-size:9pt !important;
    font-weight:500;
    color:var(--dark_blue);
    display:block;
    text-align:start;
}
.plan-name{
    font-size:11pt !important;
    font-weight:800;
    color: var(--dark_blue);
    text-align:start;
}
.plan-logo-cell{
    display:table-cell;
    vertical-align: bottom;
    text-align:right;
    width:100px;
}
.logo-sura {
    height: 30px !important;
}
.logo-allianz {
    height: 25px !important;
}
.logo-hdi {
    height:25px !important;
}
.plan-body {
    padding: 5px;
}
.plan-body table{
    width:100%;
}
.plan-body table thead {
    background: var(--light-blue-gradient);
    color: white;
    text-align: center;
    padding: 5px;
}
.plan-body table thead tr th {    
    padding:5px;
}
.plan-body table tbody tr {
    border-bottom: 5px solid white;    
}
.plan-body table tbody tr td:nth-child(1) {
    background: #eeeeee !important;
    color: var(--dark_blue);
    font-weight: 700;
    padding: 10px;
    text-align:center;
}
.plan-body table tbody tr td:nth-child(2) {
    background: #f6f6f6 !important;
    color: var(--dark_blue);
    font-weight: 400;
    padding: 10px;
    text-align:center;
}
.plan-footer {
    padding: 15px;
    text-align: left;
}
.price-label{
    font-size:9pt !important;
    color:var(--gray);
    margin:3px;
}
.price-annual{
    font-size:16pt !important;
    font-weight:700;
    color:var(--dark_blue);
    margin-bottom:2px;
}
.price-monthly{
    font-size:9px !important;
    color:#4a5568;
}
.plan-botones-pie {
    padding: 15px;
    display: flex;
    justify-content: center;
}
.insurance-container{
    max-width:100%;
    width:100%;
    background-color:#ffffff;    
    border-radius:12px;
    box-shadow: 0 4px 6px  -1px rgba(0,0,0.0.05), 0 2px 4px -1px rgba(0,0,0,0.03);
}
.insurance-header {
    padding: 20px 0px 0px 0px !important;
}
.OcultarElemento{
    display:none;
}
.insurance-badge {
    display: inline-block;
    background: var(--purple-gradient) !important; 
    color: white;
    font-weight: 700;
    font-size: 1.05rem !important;
    padding: 6px 16px;
    border-radius: 4px;
    margin-bottom: 15px !important;
    letter-spacing: 0.5px;
    text-transform:uppercase;
}
.insurance-header h1{
    font-size:1.4rem;
    color:var(--dark_blue);
    font-weight:400;
    margin-bottom:6px;
}
.insurance-header p {
    font-size: 1.1rem;
    color: var(--dark_blue);
    padding-bottom: 25px;
}
.table-responsive {
    width: 100%;
    overflow-x: auto;
    border-radius: 16px;
}
.insurance-table{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    text-align:center;
}
.insurance-table th {    
    color:white;
    padding:10px 10px;
    font-weight: 600 ;
    vertical-align:middle;
}
.insurance-table thead {
    background: var(--light-blue-gradient);
    color: white;
    font-size: 11pt !important;
    font-weight: 800;
    border-bottom-right-radius: 16px !important;
    border-bottom-left-radius: 16px !important;
}
.insurance-table th:first-child {
        
    border-top-left-radius: 16px;
    text-align: left;
    padding-left: 25px;
}
.insurance-table th:last-child{
    border-top-right-radius: 16px;
    
}
.insurance-table tbody tr{
    padding:15px;
}
.th-main {
    font-size: 1.1rem;
        font-weight: 600;
}
.brand{
    font-size:0.75rem;
    text-transform:uppercase;
    opacity:0.9;
    letter-spacing:0.5px;
    margin-bottom:4px;
}
.insurance-footer-info{
    margin-top:40px !important;
    display:flex;
    flex-direction:column;
    gap:35px;
}
.glosary-box {
    background-color: #f1f7f9 !important;    
    border-radius:16px;    
    position:relative;
    max-width: 500px;
}
.glosary-badge {
    background: var(--green-gradiant) !important;
    color: white;
    font-weight: 700;
    font-size: 1.3rem;
    padding: 6px 24px;
    border-bottom-right-radius: 16px;
    display: inline-block;
    margin-bottom: 15px;
}
.glosary-list {
    padding: 2rem;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.glosary-list li {
    font-size: 0.95rem;
    color: var(--dark_blue);
    border-bottom: none !important;
}
.glosary-list li::before{
    content: "*";
    color:var(--dark_blue);
    font-weight:700;
    display:inline-block;
    width:15px;
}
.notes-box {
    color:#1e3a47;    
}
.notes-box h2{
    font-size:1.3rem;
    color:var(--dark_blue);    
    margin-bottom:15px;
    font-weight:600;
}
.notes-list {
    list-style: none;
    display: flex;
    color: var(--dark_blue);
    flex-direction: column;
    gap: 12px;
}
.notes-list li {
    font-weight:300;
    font-size: 0.95rem;
    line-height: 1.5;
    position: relative;
    padding-left: 15px;
    border-bottom: none !important;
}
.notes-list li::before {
    content:"*";
    position:absolute;
    left:0;
    color:var(--gray);
}
.cta-box {
    text-align:center;
    margin-top:15px;
    margin-bottom:10px;
}
.cta-box h3{
    color:#0098ca;
    font-size:1.3rem;
    font-weight:600;
    margin-bottom:20px;
    max-width:600px;
    margin-left:auto;
    margin-right:auto;
    line-height:1.4;
}
.brand-slogan {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    font-size:1.2rem !important;
    color:#1e3a47;
    font-weight:600;
    letter-spacing:0.5px;
    border-top:1px solid black;
    border-bottom:1px solid black;
}
.brand-slogan p{
    font-weight:100 !important;
    border-top:2px solid black !important;
    border-bottom:2px solid black !important;
}
.shield-icon {
    background: var(--purple-gradient) !important;
    color: white;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
    font-weight: 700;
}
.cursive-text{
    font-family:Georgia, serif;
    font-style:italic;
    color:#4f46e5;
    font-size:1.8rem !important;
    font-weight:400;
    margin-left:4px;
}
.feature-title {
    padding: 10px;
    background: #eeeeee !important;
    border-bottom: white solid 1px !important;
}
.celda {
    background: #f6f6f6 !important;
}
.light-blue-gb {
    background: var(--light-blue-gradient) !important;
}

.left_nav #tabs .tab_sel li:before {
    background-color: var(--dark_blue) !important;
}

.left_nav #tabs .tab_sel li.active {
    background-color: var(--dark_blue) !important;
}

.ideal-heading h2 {
    color: var(--dark_blue) !important;
}

.btn_feisa {
    cursor: pointer;
    font-family: 'HelveticaNowText' !important;
    color: #fff;
    width: 151px;
    /* height: 56px !important; */
    padding: 13px;
    border: none;
    background-color: var(--dark_blue) !important;
    float: right;
    font-size: 16px !important;
    font-weight: 300;
    text-align: center;
}

.ideal-form .ideal-error {
    background-color: var(--green) !important;
}

.btnConsulta {
    cursor: pointer;
    font-family: 'HelveticaNowText' !important;
    color: #fff;
    width: 151px;
    height: 50px !important;
    padding: 13px;
    border: none;
    background-color: var(--dark_blue) !important;
    float: left;
    margin-left: 30px !important;
    font-size: 16px !important;
    font-weight: 300;
    text-align: center;
}

    .btnConsulta :hover {
        color: white !important;
    }

.btn_l {
    background-color: var(--dark_blue) !important;
}

.headCardPlanes {
    height: 55px;
}

.headImgAllianz {
    background: url(../../../images/logos/Allianz.png) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

.cardBodyBackground {
    background-color: #f2f2f2 !important;
    text-align: center;
    font-size: smaller !important;
    padding: 5px !important;
}

.textCardHead {
    color: #626363 !important;
}

.textBoldCardHead {
    color: #2d4e71 !important;
    font-size: medium !important;
}

.comparativo-container {
    display: grid;
    gap: 15px;
    grid-template-columns: repeat(1,1fr);
}

.plan-card {
    flex: 0 0 50%;
    scroll-snap-align: center;
    background: white;
    border-radius: 12px;
    border: 1px solid #e1e4e8 !important;
    flex-direction: column;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
    margin-bottom: 20px !important;
}

.logo-aseguradora {
    max-height: 40px;
    margin-bottom: 10px;
}

.valor-plan, .valor-plan-footer {
    color: #0033a0;
    font-weight: bold;
    margin: 5px 0;
}

.acordeon-grupo h2 {
    text-align: center;
    background-color: var(--green) !important;
    color: white !important;
    font-weight: bold;
    padding: 10px;
}

.fila {
    border-top: 1px dashed var(--dark_blue) !important;
}

    .fila td {
        padding: 5px;
    }

.smallest {
    font-size: .65em;
}

.btnPie {
    float: none !important;
}


.btn-footer-plan {
    padding: 5px;
}
.plan-name-header-card {
    color: var(--light_green);
    font-weight: bold;
    padding: 5px;
}
.modal-table-td {
    width: 40%;
}

.imgYes {
    width: 50px;
    margin-left: auto !important;
    margin-right: auto !important;
}
.modal-body table tr {
    border-bottom: 1px gray dashed;
}

.modal-body table tr td {
    border-right: 1px gray dashed;
}

.title-head-cobertura {
    text-align: center;
    background-color: darkgreen !important;
    color: white !important;
    font-size: large !important;
    font-weight: bold;
}

@media (min-width:992px) {
    .plan-card {
        flex: 1;
        min-width: 300px;
        max-width: 300px;
    }
}
@media (min-width:600px) {
    .comparativo-container {
        grid-template-columns: repeat(2,1fr);
    }
}

@media(min-width:1024px) {
    .comparativo-container {
        grid-template-columns: repeat(3,1fr);
    }
}