/* --- INICIO DEL CSS NO CRÍTICO --- */

/* Contenido combinado de:
/* fonts.css, style-cards.css, style-blog.css, style-choice.css, 
/* style-contacto.css, style-footer.css, style-glass.css 
/* y el resto de style-base.css */

/* fonts.css */
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

/* Resto de style-base.css y todos los demás archivos */
button,.btn{font-family:inherit;padding:.75rem 1.5rem;font-weight:600;border:none;border-radius:var(--radius-pill);cursor:pointer;transition:background .3s ease;text-align:center;display:inline-block}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-primary:hover{background-color:#00307a}.btn-secondary{background-color:var(--color-secondary);color:#000}.btn-secondary:hover{background-color:#e6b800}.btn-whatsapp{background-color:var(--color-accent);color:var(--color-white)}.btn-whatsapp:hover{background-color:#1ebc59}.btn-lg{padding:1rem 2.5rem;font-size:1.1rem}.section-title{text-align:center;font-size:1.75rem;color:var(--color-primary);margin-top:3rem;margin-bottom:2rem}.benefits-section{padding:3rem 1rem;background-color:var(--color-bg)}.benefits-container{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;max-width:1200px;margin:0 auto;align-items:stretch}.benefit-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.5rem;flex:1 1 300px;max-width:350px}.benefit-icon{width:60px;height:60px;margin-bottom:1rem}.benefit-item h3{font-size:1.25rem;color:var(--color-primary);margin-bottom:.5rem}.testimonial-section{padding:2rem 1rem;background-color:#fff}.explanation-section{padding:3rem 1rem;background-color:var(--color-white,#fff);text-align:center}.explanation-text{max-width:800px;margin:0 auto;font-size:1.1rem;line-height:1.7;color:#333}.comparison-section{padding:3rem 1rem;background-color:var(--color-bg)}.comparison-table{max-width:900px;margin:2rem auto 0 auto;border:1px solid #ddd;border-radius:var(--radius-md);overflow:hidden;background-color:var(--color-white,#fff);box-shadow:var(--shadow-light)}.table-header,.table-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem;padding:1rem;align-items:center}.table-row{border-top:1px solid #eee}.table-header{background-color:var(--color-bg);font-weight:700;color:var(--color-primary);font-size:.9rem;text-transform:uppercase;text-align:center}.table-row div:first-child{font-weight:600;text-align:left}.table-row .highlight{font-weight:700;color:#0056b3;font-size:1.1rem}@media (max-width:600px){.table-header{display:none}.table-row{grid-template-columns:1fr;gap:.5rem;padding-bottom:1.5rem;border-bottom:2px solid #ddd}.table-row div::before{content:attr(data-label);font-weight:700;display:block;margin-bottom:.25rem;color:var(--color-primary);font-size:.8rem;text-transform:uppercase;text-align:left}.table-row div:nth-child(1)::before{content:'Beneficio'}.table-row div:nth-child(2)::before{content:'Plan Global'}.table-row div:nth-child(3)::before{content:'Plan Exclusive'}}.vida-table-section{padding:3rem 1rem}.vida-table-wrapper{overflow-x:auto;box-shadow:var(--shadow-light);border-radius:var(--radius-md);margin-top:2rem}.vida-table{width:100%;border-collapse:collapse;background-color:var(--color-white,#fff);text-align:right;font-size:.9rem;white-space:nowrap}.vida-table td,.vida-table th{padding:.75rem 1rem;border:1px solid #e0e0e0;vertical-align:middle}.vida-table th{background-color:var(--color-primary);color:var(--color-white,#fff);font-weight:600;text-align:center}.vida-table td:first-child,.vida-table th:first-child{text-align:left;font-weight:600;width:25%;white-space:normal}.vida-table tbody tr:nth-child(even){background-color:var(--color-bg)}.vida-table .highlight-col{font-weight:700;color:var(--color-primary);background-color:rgba(255,193,7,.1)}.btn-table{background-color:var(--color-secondary);color:#000;border:none;border-radius:var(--radius-pill);padding:.4rem 1rem;font-weight:600;cursor:pointer;font-size:.85rem;transition:background-color .3s ease}.btn-table:hover{background-color:#e0a800}.faq-section{max-width:800px;margin:3rem auto}.faq-section details{background:var(--color-white,#fff);border:1px solid #e0e0e0;border-radius:var(--radius-md);margin-bottom:1rem;box-shadow:var(--shadow-light);transition:all .3s ease}.faq-section details[open]{border-color:var(--color-primary)}.faq-section summary{padding:1.5rem;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--color-primary)}.faq-section summary::after{content:'▶';font-size:.8rem;transform:rotate(0deg);transition:transform .3s ease;color:var(--color-secondary)}.faq-section details[open] summary::after{transform:rotate(90deg)}.faq-section .faq-content{padding:0 1.5rem 1.5rem 1.5rem;border-top:1px solid #e0e0e0;color:#333}.faq-section .faq-btn{margin-top:1rem}.vida-plans-section{padding:3rem 1rem}.plans-container{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;max-width:1200px;margin:2rem auto 0 auto;align-items:stretch}.plan-card{background:var(--color-white,#fff);border:1px solid #e0e0e0;border-radius:var(--radius-lg);box-shadow:var(--shadow-light);display:flex;flex-direction:column;transition:box-shadow .3s ease,border-color .3s ease;flex:1 1 280px;max-width:320px}.plan-card:hover{border-color:var(--color-primary);box-shadow:0 8px 16px rgba(0,0,0,.1)}.plan-main-info{padding:1.5rem;text-align:center}.plan-card h3{font-size:1.5rem;color:var(--color-primary);margin-bottom:.5rem;min-height:0}.plan-price{font-size:1.75rem;font-weight:700;margin-bottom:1.5rem}.plan-price .plan-period{font-size:1rem;font-weight:400;color:#666}.plan-key-benefit{background-color:var(--color-bg);padding:1rem;border-radius:var(--radius-md);margin-bottom:1.5rem}.plan-key-benefit span{display:block;font-size:.9rem;font-weight:600}.plan-key-benefit strong{display:block;font-size:1.25rem;color:var(--color-primary)}.btn-toggle-details{background:0 0;border:none;color:var(--color-primary);font-weight:600;cursor:pointer;text-decoration:underline}.btn-toggle-details::after{content:' ▼';display:inline-block;transition:transform .3s ease}.plan-details{max-height:0;overflow:hidden;transition:max-height .5s ease-out,padding .5s ease-out;padding:0 1.5rem}.plan-details.open{max-height:500px;padding-bottom:1.5rem;border-top:1px solid #e0e0e0}.plan-details.open+.plan-cta{border-top:none}.btn-toggle-details.open::after{transform:rotate(180deg)}.plan-details ul{list-style:none;padding:0;font-size:.9rem}.plan-details li{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #f0f0f0}.plan-details li:last-child{border-bottom:none}.plan-cta{padding:1.5rem;border-top:1px solid #e0e0e0;margin-top:auto}.plan-cta .btn-secondary{width:100%}.content-section{max-width:1200px;margin-left:auto;margin-right:auto;padding:3rem 1rem;text-align:center}.alliance-section{padding:3rem 1rem;background-color:var(--color-bg)}.alliance-container{display:grid;grid-template-columns:1fr;gap:2rem;max-width:900px;margin:0 auto;align-items:center}.alliance-partner{text-align:center}.alliance-partner img{max-height:50px;margin:0 auto 1rem auto}@media (min-width:768px){.alliance-container{grid-template-columns:1fr 1fr}}.coverage-section{padding:3rem 1rem;background-color:var(--color-white,#fff)}.coverage-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;max-width:1200px;margin:0 auto}.coverage-item{display:flex;align-items:flex-start;gap:1rem;flex:1 1 350px;max-width:450px}.coverage-icon{width:40px;height:40px;flex-shrink:0;margin-top:5px}.coverage-item h4{font-size:1.1rem;margin-bottom:.25rem;color:var(--color-primary)}.coverage-item p{font-size:.95rem;line-height:1.6}.cta-bridge-section{text-align:center;padding:2rem 1rem}.cta-bridge-section p{margin-bottom:1.5rem}.table-wrapper{width:100%;overflow-x:auto;margin:2rem 0;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.05)}.table-wrapper table{width:100%;border-collapse:collapse;white-space:nowrap}.table-wrapper td,.table-wrapper th{padding:.75rem 1rem;text-align:center;border-bottom:1px solid #e0e0e0}.table-wrapper thead{background-color:var(--color-primary);color:var(--color-white)}.table-wrapper tbody tr:nth-child(even){background-color:#f8f9fa}.table-wrapper tbody tr:hover{background-color:#f1f3f5}
.cards-container{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;padding:1rem}.card{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-light);transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;text-align:center;flex:0 1 320px}.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-glass)}.card h3{min-height:56px;display:flex;align-items:center;justify-content:center;padding:0 1rem;margin-top:1rem}.card .card-text{padding:1rem 1.5rem 1.5rem 1.5rem;flex-grow:1}.card .btns,.card .card-buttons{margin-top:auto;padding:1rem 1.5rem 2rem 1.5rem}.card .btns{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:1.5rem}.card .btns a,.card .btns button{padding:.75rem 1rem;border-radius:var(--radius-pill);font-weight:600;text-align:center;width:100%;max-width:220px}.card.promo-card{padding:0;border:2px solid var(--color-secondary);position:relative;overflow:hidden}.promo-card img{width:100%;height:auto;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.promo-card .card-tag{position:absolute;top:10px;right:-30px;background-color:var(--color-secondary);color:#000;padding:5px 30px;font-weight:700;font-size:.9rem;transform:rotate(45deg);box-shadow:0 2px 4px rgba(0,0,0,.1);white-space:nowrap}.card .card-icon{width:50px;height:50px;object-fit:contain;margin:1.5rem auto 0 auto}.card .benefit-list{list-style:none;padding:0;text-align:left;width:100%}.card .benefit-list li{margin-bottom:.5rem}.salud-corpo-planes .cards-container{justify-content:center}.salud-corpo-planes .card{flex-basis:400px}.testimonial-box{background-color:#fff;margin:2rem auto;padding:2rem 2rem 1.5rem 2.5rem;border-left:4px solid var(--color-secondary);max-width:960px;font-family:var(--font-main);box-shadow:var(--shadow-light);display:block}.testimonial-box blockquote{font-style:italic;color:#333;font-size:1.1rem;line-height:1.6;margin:0 0 1rem 0}.testimonial-box cite{display:block;text-align:right;color:var(--color-primary);font-weight:600;font-style:normal}.card.card--text-left .card-text{text-align:left}.card .benefit-list{list-style:disc;padding-left:1.5rem;margin-top:1rem}.beneficios-list{max-width:450px;margin:2rem auto;list-style:none;padding:0;text-align:left}.beneficios-list li{font-size:1.1rem;font-weight:600;padding:.5rem 0}.img-centered{display:block;margin-left:auto;margin-right:auto}.mitos-realidad .card{padding:2rem}.section-cta-container{text-align:center;width:100%;margin-top:2.5rem;margin-bottom:1rem}.page-construcciones .cards-section .card{padding-bottom:2.5rem}.page-porqueelegirnos .card--text-left h3{justify-content:flex-start;padding-left:1.5rem;padding-right:1.5rem;min-height:auto}.page-porqueelegirnos .card--text-left .card-text{padding-top:.75rem;padding-bottom:1rem}.page-porqueelegirnos .card--text-left .card-text p{margin-bottom:1.5rem;line-height:1.6}
.content{max-width:860px;margin:2.5rem auto;padding:0 1rem}.article{background:var(--color-white,#fff);border-radius:var(--radius-lg,12px);box-shadow:0 4px 10px rgba(0,0,0,.06);padding:2rem;margin-bottom:2rem;position:relative;transition:box-shadow .3s ease,transform .2s ease}.article:hover{box-shadow:0 6px 18px rgba(0,0,0,.1);transform:translateY(-2px)}.article h2{font-size:1.5rem;color:var(--color-primary,#001a4d);margin-bottom:1rem;position:relative;padding-left:1.5rem}.article h2::before{content:url(/img/icon-titulo-seccion.png);position:absolute;left:0;top:50%;transform:translateY(-50%);width:28px}.article p,.article ul{font-size:1rem;line-height:1.65;color:var(--color-text,#333)}.article ul{list-style:none;padding-left:0;margin-top:.5rem}.article ul li{position:relative;padding-left:1.5rem;margin-bottom:.6rem}.article ul li::before{content:'✔️';position:absolute;left:0;top:0;color:#001a4d;font-size:1rem;transform:translateY(1px)}.consumer-rights{background:#fffbea;border-left:6px solid var(--color-secondary,#ffc107);border-radius:var(--radius-lg);padding:2rem;margin-bottom:2.5rem;text-align:center;box-shadow:0 2px 6px rgba(0,0,0,.05)}.consumer-rights h2{font-size:1.4rem;color:var(--color-primary,#001a4d);margin-bottom:.75rem;position:relative}.consumer-rights h2::after{content:'⚖️';margin-left:.5rem}.consumer-rights p{font-size:1rem;color:#4a4a4a;margin-bottom:1rem}.qr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.5rem;justify-items:center;margin-top:1.5rem}.qr-grid img{width:150px;border:2px solid var(--color-primary);border-radius:8px;transition:transform .2s ease}.qr-grid img:hover{transform:scale(1.05)}.qr-grid p{margin-top:.5rem;font-weight:600;color:var(--color-primary);font-size:.95rem}@media (max-width:768px){.article{padding:1.5rem}.article h2{font-size:1.25rem}.consumer-rights h2{font-size:1.2rem}}.enlace-descarga{font-weight:600;display:inline-block;margin-top:5px;color:#0a3d62;text-decoration:underline;transition:color .3s}.enlace-descarga:hover{color:#007aff}.enlace-util{color:#0056b3;font-weight:600;text-decoration:underline}.enlace-util:hover{color:#003b80;text-decoration:none}.related-resources{margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(0,0,0,.05)}.related-links-container{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1.5rem}.related-link-card{background-color:var(--color-bg);color:var(--color-primary);padding:.75rem 1.5rem;border-radius:var(--radius-pill);font-weight:600;text-decoration:none;transition:background-color .3s ease,transform .2s ease;box-shadow:var(--shadow-light)}.related-link-card:hover{background-color:var(--color-secondary);color:#000;transform:translateY(-2px)}.article h2:not(:first-child){margin-top:2.5rem}.heading-con-icono{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.heading-con-icono img{width:28px;height:auto;flex-shrink:0}.heading-con-icono h2{margin-bottom:0}.autor-presentacion-blog{text-align:center;padding:1rem 0}.autor-foto-blog{display:block;margin-left:auto;margin-right:auto;width:100px;height:100px;border-radius:50%;object-fit:cover;border:4px solid var(--color-primary);box-shadow:0 4px 8px rgba(0,0,0,.1);margin-bottom:1rem}.autor-nombre-blog{font-size:1.1rem;font-weight:500;color:var(--color-primary);margin:0 0 .5rem 0}.autor-compromiso-blog{font-size:1.1rem;font-style:italic;color:#555;line-height:1.4;max-width:450px;margin:.5rem auto 0 auto}
.choice{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-wrap:wrap;gap:1.5rem;padding:3rem 1rem;margin-top:2rem;text-align:center}.choice-card{background-color:var(--color-secondary);color:#000;border-radius:var(--radius-pill);padding:1.25rem 2rem;font-weight:600;font-size:1rem;box-shadow:var(--shadow-light);text-align:center;cursor:pointer;text-decoration:none;transition:background-color .3s ease,transform .2s ease;min-width:240px;max-width:320px;display:flex;justify-content:center;align-items:center}.choice-card:hover{background-color:#e6b800;transform:translateY(-3px)}@media (min-width:769px){.choice{flex-direction:row}}
.contact-section{padding:3rem 1rem;background-color:var(--color-bg);text-align:center}.contact-section h2{font-size:1.75rem;margin-bottom:2rem;color:var(--color-text)}.contact-title{color:var(--color-white);margin-bottom:2rem;text-align:center}.formulario{width:100%;max-width:600px;margin:0 auto;background-color:var(--color-primary);padding:2rem;border:2px solid var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-light)}@media (max-width:768px){.formulario{padding:1.5rem;max-width:90%}}@media (max-width:480px){.formulario{padding:1rem}}.formulario input,.formulario textarea{width:100%;padding:.75rem;margin-bottom:1rem;border:2px solid var(--color-white);border-radius:var(--radius-sm);font-size:1rem;font-family:var(--font-main);background-color:var(--color-white);color:var(--color-text,#000)}.formulario input:focus,.formulario textarea:focus{outline:0;border-color:var(--color-secondary)}.formulario textarea{resize:none}.btn-email{background-color:var(--color-secondary);color:var(--color-primary);border-radius:var(--radius-pill);margin-bottom:1rem;padding:.75rem 1.5rem;width:100%;font-weight:600;border:none;cursor:pointer;transition:background .3s ease}.btn-email:hover{background-color:#e6b800}#form-status{margin-top:1rem;color:var(--color-primary);background-color:var(--color-white);padding:.5rem 1rem;border-radius:var(--radius-sm);display:none}
.footer-content{display:flex;justify-content:space-around;flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(0,0,0,.1);max-width:1200px;margin-left:auto;margin-right:auto}.footer-legal,.footer-links{flex:1 1 300px}.footer-legal{font-size:.85rem;color:#666}.footer-legal p{margin:.25rem 0}.footer-links{display:flex;flex-direction:column;align-items:center;gap:.5rem}.footer-links a{color:var(--color-primary);font-weight:600;text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-copyright p{margin:0;font-size:.8rem}@media (max-width:768px){.footer-content{flex-direction:column;align-items:center}}.footer-social{display:flex;justify-content:center;gap:1rem;margin-top:1rem}.footer-social a{display:inline-block;transition:transform .2s ease}.footer-social a:hover{transform:scale(1.15)}.footer-social img{width:36px;height:36px}@media (max-width:768px){.footer-legal p:not(:last-child){font-size:.6rem;line-height:1,5}}.prescrip-footer{padding:2rem 1rem;background-color:var(--color-bg);text-align:center}.prescrip-footer .footer-exclusive-notice{margin-bottom:1.5rem}.prescrip-footer .footer-exclusive-notice p:first-child{font-weight:700;color:var(--color-primary)}.prescrip-footer .footer-legal-notice{margin-top:1.5rem;font-size:.8rem;color:#777}
.glass{background:rgba(255,255,255,.2);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-lg);box-shadow:0 8px 24px rgba(0,0,0,.1);padding:2rem;color:var(--color-text)}.glass-dark{background:rgba(0,26,77,.25);color:#fff}.glass-clean{background:rgba(255,255,255,.1);backdrop-filter:blur(8px);border-radius:var(--radius-md)}.centered{display:flex;flex-direction:column;justify-content:center;align-items:center}.fade-in{animation:fadeIn .6s ease-in-out}@keyframes fadeIn{from{opacity:0}to{opacity:1}}

/* --- FIN DEL CSS NO CRÍTICO --- */
/* --- CORRECCIÓN PARA BOTONES DE FORMULARIO --- */
.formulario .btn-email,
.formulario .btn-whatsapp {
  display: block;
  width: 100%;
  box-sizing: border-box; /* Asegura que el padding no altere el ancho */
}

.formulario .btn-email {
  margin-bottom: 1rem;
}
/* --- CORRECCIONES RESPONSIVAS FINALES --- */

/* 1. Ajusta el tamaño del título principal en pantallas muy pequeñas */
@media (max-width: 380px) {
  .hero h1 {
    font-size: 1.8rem; /* Reduce un poco más la fuente en móviles angostos */
  }
}

/* 2. Asegura la alineación de los íconos de check en las tarjetas */
.card h3 {
  display: flex;
  align-items: center; /* Centra verticalmente el ícono con el texto */
  justify-content: center;
  gap: 0.5rem; /* Añade un pequeño espacio entre el ícono y el texto */
}
/* --- AJUSTE ESTRUCTURAL FINAL PARA ALINEACIÓN --- */
.main-container {
  max-width: 1200px; /* El mismo ancho máximo del header y footer */
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;  /* Espaciado lateral para móviles */
  padding-right: 1rem; /* Espaciado lateral para móviles */
}