/* ======================================== APU MÉXICO - OPTIMIZED COLOR PALETTE ======================================== PRIMARY COLORS (Navy Brand): - Navy Dark: #0E2337 - Navy Primary: #1e3a5f - Navy Light: #2c5282 ACCENT COLORS (Orange Action): - Orange Primary: #FF8600 - Orange Hover: #FF6B35 - Orange Light: #FFB800 NEUTRAL COLORS: - White: #ffffff - Neutral 50: #f8f9fa - Neutral 100: #e9ecef - Neutral 600: #495057 - Neutral 700: #6c757d ======================================== */ /* ======================================== GLOBAL STYLES ======================================== */ :root { --color-navy-dark: #0E2337; --color-navy-primary: #1e3a5f; --color-navy-light: #2c5282; --color-orange-primary: #FF8600; --color-orange-hover: #FF6B35; --color-orange-light: #FFB800; --color-neutral-50: #f8f9fa; --color-neutral-100: #e9ecef; --color-neutral-600: #495057; --color-neutral-700: #6c757d; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Poppins', sans-serif; color: var(--color-neutral-600); background-color: var(--color-neutral-50); line-height: 1.6; } /* ======================================== TOP NOTIFICATION BAR ======================================== */ .top-notification-bar { background-color: var(--color-navy-dark); color: #ffffff; padding: 0.5rem 0; font-size: 0.9rem; text-align: center; } .top-notification-bar strong { color: var(--color-orange-primary); } .top-notification-bar i { color: var(--color-orange-primary); } .top-notification-bar a { color: #ffffff; transition: color 0.3s ease; } .top-notification-bar a:hover { color: var(--color-orange-primary); } /* NAVBAR y BOTÓN LET'S TALK: CSS movido a assets/css/style.css */ /* ======================================== HERO SECTION ======================================== */ .hero-title { background: linear-gradient(135deg, var(--color-navy-primary) 0%, var(--color-navy-light) 100%); box-shadow: 0 4px 16px rgba(30, 58, 95, 0.25); padding: 3rem 0; } .hero-title h1 { color: #ffffff !important; font-weight: 700; line-height: 1.4; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2); margin-bottom: 0; } .category-badge { background: rgba(255, 255, 255, 0.15); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.2); color: rgba(255, 255, 255, 0.95); padding: 0.375rem 0.875rem; border-radius: 20px; font-size: 0.813rem; font-weight: 500; text-decoration: none; display: inline-block; transition: all 0.3s ease; } .category-badge:hover { background: rgba(255, 133, 0, 0.2); border-color: rgba(255, 133, 0, 0.4); color: #ffffff; } .category-badge i { color: var(--color-orange-light); } /* ======================================== FEATURED IMAGE ======================================== */ .featured-image-container { border-radius: 12px; overflow: hidden; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1); margin: 2rem 0; } .featured-image-container img { width: 100%; height: auto; display: block; } /* ======================================== POST CONTENT ======================================== */ .post-content { background: #ffffff; padding: 2rem; border-radius: 12px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); } .post-content h2 { color: var(--color-navy-primary); font-weight: 700; margin-top: 2.5rem; margin-bottom: 1.25rem; padding-bottom: 0.75rem; border-bottom: 3px solid var(--color-orange-primary); } .post-content h3 { color: var(--color-navy-light); font-weight: 600; margin-top: 2rem; margin-bottom: 1rem; } .post-content p { color: var(--color-neutral-600); line-height: 1.8; margin-bottom: 1.25rem; } .post-content ul, .post-content ol { margin-bottom: 1.5rem; padding-left: 2rem; } .post-content li { margin-bottom: 0.5rem; color: var(--color-neutral-600); } .post-content strong { color: var(--color-navy-primary); font-weight: 600; } .post-content a { color: var(--color-orange-primary); text-decoration: underline; transition: color 0.3s ease; } .post-content a:hover { color: var(--color-orange-hover); } /* ======================================== PRICING TABLES (APU) ======================================== */ .analisis { margin: 2rem 0; overflow-x: auto; } .analisis table { width: 100%; border-collapse: collapse; background: #ffffff; box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08); border-radius: 8px; overflow: hidden; border: none; border-spacing: 0; } .analisis table td, .analisis table tbody, .analisis table tr { border: none !important; } .analisis table td:nth-child(1) { width: 150px; } .analisis table td:nth-child(2) { width: auto; min-width: 300px; } .analisis table td:nth-child(3) { width: 80px; } .analisis table td:nth-child(4) { width: 110px; } .analisis table td:nth-child(5) { width: 120px; } .analisis table td:nth-child(6) { width: 120px; } .analisis table thead tr th { background: linear-gradient(135deg, var(--color-navy-primary) 0%, var(--color-navy-light) 100%); color: #ffffff; font-weight: 600; text-align: center !important; padding: 1rem; border: none !important; } .analisis table tbody td { padding: 0.75rem 1rem; border: none !important; color: var(--color-neutral-600); } .analisis table tbody tr:nth-child(even):not(.section-header):not(.subtotal-row):not(.total-row) { background-color: var(--color-neutral-50); } .analisis table tbody tr:nth-child(odd):not(.section-header):not(.subtotal-row):not(.total-row) { background-color: #ffffff; } .analisis table td:nth-child(1), .analisis table td:nth-child(2) { text-align: left; } .analisis table td:nth-child(3), .analisis table td.c3 { text-align: center !important; color: var(--color-neutral-700); } .analisis table td:nth-child(4), .analisis table td.c4, .analisis table td:nth-child(5), .analisis table td.c5, .analisis table td:nth-child(6), .analisis table td.c6 { text-align: right !important; font-family: 'Courier New', monospace; font-weight: 500; color: var(--color-navy-primary); } .analisis table tr.section-header { background-color: var(--color-neutral-100) !important; } .analisis table tr.section-header td { font-weight: 600; color: var(--color-navy-primary); padding: 0.75rem 1rem; border: none !important; } .analisis table tr.subtotal-row { background-color: rgba(255, 133, 0, 0.1) !important; } .analisis table tr.subtotal-row td { font-weight: 700; color: var(--color-orange-primary); padding: 0.875rem 1rem; border: none !important; } .analisis table tr.subtotal-row td.c6 { font-size: 1.05rem; color: var(--color-orange-primary); } .analisis table tr.total-row { background: linear-gradient(135deg, var(--color-navy-primary) 0%, var(--color-navy-light) 100%) !important; } .analisis table tr.total-row td { color: #ffffff !important; font-weight: 700; font-size: 1.1rem; padding: 1.125rem 1rem !important; border: none !important; } .analisis table tr.total-row td.c6 { font-size: 1.25rem; letter-spacing: 0.5px; color: #ffffff !important; } /* ======================================== GENERIC TABLES - 10 DIFFERENT STYLES ======================================== */ /* Base styles for all generic tables */ .post-content table:not(.analisis table) { width: 100%; border-collapse: collapse; margin: 2rem auto; font-size: 0.95rem; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); border-radius: 8px; overflow: hidden; } /* Header styles - VERY OBVIOUS */ .post-content table:not(.analisis table) thead tr:first-child th, .post-content table:not(.analisis table) tbody tr:first-child td, .post-content table:not(.analisis table) tr:first-child td { font-weight: 700; text-align: center; padding: 1.25rem 1rem; font-size: 1.05rem; letter-spacing: 0.5px; } /* Body cells */ .post-content table:not(.analisis table) tbody tr:not(:first-child) td { padding: 0.875rem 1rem; border: 1px solid var(--color-neutral-100); text-align: left; } /* STYLE 1: Navy Header with Orange Accent */ .post-content table:not(.analisis table):nth-of-type(2) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(2) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(2) tr:first-child td { background: linear-gradient(135deg, var(--color-navy-primary) 0%, var(--color-navy-light) 100%); color: #ffffff !important; border: none !important; box-shadow: 0 2px 8px rgba(30, 58, 95, 0.3); } .post-content table:not(.analisis table):nth-of-type(2) tbody tr:nth-child(even) { background-color: var(--color-neutral-50); } .post-content table:not(.analisis table):nth-of-type(2) tbody tr:hover { background-color: rgba(255, 133, 0, 0.05); } /* STYLE 2: Orange Header with Light Background */ .post-content table:not(.analisis table):nth-of-type(3) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(3) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(3) tr:first-child td { background: var(--color-orange-primary); color: #ffffff !important; border: none !important; box-shadow: 0 2px 8px rgba(255, 133, 0, 0.3); } .post-content table:not(.analisis table):nth-of-type(3) tbody tr:nth-child(odd) { background-color: rgba(255, 133, 0, 0.05); } .post-content table:not(.analisis table):nth-of-type(3) tbody tr:hover { background-color: rgba(255, 133, 0, 0.1); } /* STYLE 3: Minimal with Left Orange Border */ .post-content table:not(.analisis table):nth-of-type(4) { border-left: 5px solid var(--color-orange-primary); } .post-content table:not(.analisis table):nth-of-type(4) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(4) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(4) tr:first-child td { background: var(--color-navy-primary); color: #ffffff !important; border: none !important; border-bottom: 3px solid var(--color-orange-primary) !important; } .post-content table:not(.analisis table):nth-of-type(4) tbody tr:hover { background-color: var(--color-neutral-50); } /* STYLE 4: Dark Navy with Striped Rows */ .post-content table:not(.analisis table):nth-of-type(5) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(5) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(5) tr:first-child td { background: var(--color-navy-dark); color: #ffffff !important; border: none !important; box-shadow: 0 2px 8px rgba(14, 35, 55, 0.4); } .post-content table:not(.analisis table):nth-of-type(5) tbody tr:nth-child(even) { background-color: rgba(30, 58, 95, 0.05); } .post-content table:not(.analisis table):nth-of-type(5) tbody tr:hover { background-color: rgba(30, 58, 95, 0.1); } /* STYLE 5: Orange Gradient Header */ .post-content table:not(.analisis table):nth-of-type(6) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(6) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(6) tr:first-child td { background: linear-gradient(135deg, var(--color-orange-primary) 0%, var(--color-orange-light) 100%); color: #ffffff !important; border: none !important; box-shadow: 0 2px 8px rgba(255, 133, 0, 0.35); } .post-content table:not(.analisis table):nth-of-type(6) tbody tr { background-color: #ffffff; } .post-content table:not(.analisis table):nth-of-type(6) tbody tr:hover { background-color: rgba(255, 133, 0, 0.08); } /* STYLE 6: Bordered with Navy Accents */ .post-content table:not(.analisis table):nth-of-type(7) { border: 3px solid var(--color-navy-primary); } .post-content table:not(.analisis table):nth-of-type(7) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(7) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(7) tr:first-child td { background: var(--color-navy-primary); color: #ffffff !important; border: none !important; border-bottom: 4px solid var(--color-orange-primary) !important; } .post-content table:not(.analisis table):nth-of-type(7) tbody tr:nth-child(odd) { background-color: rgba(30, 58, 95, 0.03); } /* STYLE 7: Light Orange Background */ .post-content table:not(.analisis table):nth-of-type(8) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(8) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(8) tr:first-child td { background: var(--color-orange-primary); color: #ffffff !important; border: none !important; border-bottom: 3px solid var(--color-navy-primary) !important; } .post-content table:not(.analisis table):nth-of-type(8) tbody tr:nth-child(even) { background-color: rgba(255, 133, 0, 0.03); } .post-content table:not(.analisis table):nth-of-type(8) tbody tr:hover { background-color: rgba(255, 133, 0, 0.08); } /* STYLE 8: Modern Flat with Top Border */ .post-content table:not(.analisis table):nth-of-type(9) { border-top: 6px solid var(--color-orange-primary); } .post-content table:not(.analisis table):nth-of-type(9) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(9) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(9) tr:first-child td { background: var(--color-navy-light); color: #ffffff !important; border: none !important; box-shadow: 0 2px 6px rgba(44, 82, 130, 0.3); } .post-content table:not(.analisis table):nth-of-type(9) tbody tr { background-color: #ffffff; } .post-content table:not(.analisis table):nth-of-type(9) tbody tr:hover { background-color: var(--color-neutral-50); } /* STYLE 9: Compact with Subtle Colors */ .post-content table:not(.analisis table):nth-of-type(10) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(10) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(10) tr:first-child td { background: var(--color-navy-dark); color: #ffffff !important; border: none !important; border-left: 5px solid var(--color-orange-primary) !important; } .post-content table:not(.analisis table):nth-of-type(10) tbody tr:nth-child(odd) { background-color: var(--color-neutral-50); } .post-content table:not(.analisis table):nth-of-type(10) tbody tr:hover { background-color: rgba(255, 133, 0, 0.05); } /* STYLE 10: Bold Orange Border */ .post-content table:not(.analisis table):nth-of-type(11) { border: 4px solid var(--color-orange-primary); } .post-content table:not(.analisis table):nth-of-type(11) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(11) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(11) tr:first-child td { background: linear-gradient(135deg, var(--color-orange-hover) 0%, var(--color-orange-primary) 100%); color: #ffffff !important; border: none !important; box-shadow: 0 2px 8px rgba(255, 107, 53, 0.4); } .post-content table:not(.analisis table):nth-of-type(11) tbody tr:nth-child(even) { background-color: rgba(255, 133, 0, 0.05); } .post-content table:not(.analisis table):nth-of-type(11) tbody tr:hover { background-color: rgba(255, 133, 0, 0.12); } /* STYLE 11+: Cycle back to Style 1 (repeat pattern) */ .post-content table:not(.analisis table):nth-of-type(n+12) thead tr:first-child th, .post-content table:not(.analisis table):nth-of-type(n+12) tbody tr:first-child td, .post-content table:not(.analisis table):nth-of-type(n+12) tr:first-child td { background: linear-gradient(135deg, var(--color-navy-primary) 0%, var(--color-navy-light) 100%); color: #ffffff !important; border: none !important; box-shadow: 0 2px 8px rgba(30, 58, 95, 0.3); } .post-content table:not(.analisis table):nth-of-type(n+12) tbody tr:nth-child(even) { background-color: var(--color-neutral-50); } /* ======================================== TABLE OF CONTENTS (TOC) ======================================== */ .sidebar-sticky { position: sticky; top: 85px; display: flex; flex-direction: column; } .toc-container { margin-bottom: 13px; background: #ffffff; border: 1px solid var(--color-neutral-100); border-radius: 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); padding: 12px 16px; max-height: calc(100vh - 71px - 10px - 250px - 15px - 15px); display: flex; flex-direction: column; } .toc-container h4 { color: var(--color-navy-primary); padding-bottom: 8px; border-bottom: 2px solid var(--color-neutral-100); margin-bottom: 0.75rem; font-weight: 600; text-align: left; font-size: 1rem; font-style: normal; } .toc-list { overflow-y: auto; padding-right: 0.5rem; list-style: none; flex: 1; min-height: 0; } .toc-container li { margin-bottom: 0.15rem; } .toc-container a { display: block; padding: 0.3rem 0.85rem; color: var(--color-neutral-600); text-decoration: none; border-left: 3px solid transparent; transition: all 0.3s ease; border-radius: 4px; font-size: 0.9rem; line-height: 1.3; } .toc-container a:hover { background: var(--color-neutral-50); border-left-color: var(--color-navy-primary); color: var(--color-navy-primary); } .toc-container a.active { background: var(--color-neutral-50); border-left-color: var(--color-navy-primary); color: var(--color-navy-primary); font-weight: 600; } .toc-list::-webkit-scrollbar { width: 6px; } .toc-list::-webkit-scrollbar-track { background: var(--color-neutral-50); border-radius: 3px; } .toc-list::-webkit-scrollbar-thumb { background: var(--color-neutral-600); border-radius: 3px; } .toc-list::-webkit-scrollbar-thumb:hover { background: var(--color-neutral-700); } /* ======================================== CTA BOX (SIDEBAR) ======================================== */ .cta-box-sidebar { background: var(--color-orange-primary); border-radius: 8px; padding: 24px; text-align: center; margin-top: 0; margin-bottom: 15px; height: 250px; display: flex; flex-direction: column; justify-content: center; box-shadow: 0 4px 12px rgba(255, 133, 0, 0.2); } .cta-box-title { color: #ffffff; font-weight: 700; font-size: 1.25rem; margin-bottom: 1rem; } .cta-box-text { color: rgba(255, 255, 255, 0.95); font-size: 0.9rem; margin-bottom: 1rem; } .btn-cta-box { background-color: #ffffff; color: var(--color-orange-primary); font-weight: 700; border: none; padding: 0.75rem 1.5rem; border-radius: 8px; transition: all 0.3s ease; font-size: 1rem; } .btn-cta-box:hover { background-color: var(--color-navy-primary); color: #ffffff; } /* ======================================== SHARE BUTTONS ======================================== */ .share-buttons .btn { transition: all 0.3s ease; border-width: 2px; } .share-buttons .btn:hover { box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); } /* ======================================== VIDEO IFRAME STYLING ======================================== */ .video-wrapper { position: relative; margin: 2rem auto; max-width: 850px; border-radius: 12px; overflow: hidden; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12); background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%); padding: 8px; } .video-wrapper iframe { display: block; width: 100%; height: 478px; border: none; border-radius: 8px; } /* ======================================== CTA SECTIONS ======================================== */ .cta-section { background: linear-gradient(135deg, var(--color-orange-primary) 0%, var(--color-orange-light) 100%); box-shadow: 0 8px 24px rgba(255, 133, 0, 0.3); border-radius: 12px; padding: 2rem; } .cta-section h3 { color: #ffffff !important; } .cta-section p { color: rgba(255, 255, 255, 0.95) !important; } .cta-button { background-color: var(--color-orange-primary); color: #ffffff; font-weight: 600; padding: 0.75rem 2rem; border: none; border-radius: 8px; transition: all 0.3s ease; text-decoration: none; display: inline-block; } .cta-button:hover { background-color: var(--color-orange-hover); color: #ffffff; } /* ======================================== RELATED POSTS ======================================== */ .related-posts { margin: 3rem 0; } .related-posts h2 { color: var(--color-navy-primary); font-weight: 700; margin-bottom: 2rem; } .related-posts .card { cursor: pointer; background: #ffffff !important; border: 1px solid var(--color-neutral-100) !important; border-left: 4px solid var(--color-neutral-600) !important; transition: all 0.3s ease; height: 100%; } .related-posts .card:hover { background: var(--color-neutral-50) !important; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important; border-left-color: var(--color-orange-primary) !important; } .related-posts .card-body { padding: 1.5rem !important; } .related-posts .card-title { color: var(--color-navy-primary) !important; font-weight: 600; font-size: 0.95rem; line-height: 1.4; } .related-posts a { text-decoration: none; } .related-posts a:hover .card-title { color: var(--color-orange-primary) !important; } /* ======================================== PAGINATION ======================================== */ .pagination .page-link { color: var(--color-neutral-600); border: 1px solid var(--color-neutral-100); padding: 0.5rem 1rem; margin: 0 0.25rem; border-radius: 4px; font-weight: 500; transition: all 0.3s ease; } .pagination .page-link:hover { background-color: rgba(255, 133, 0, 0.1); border-color: var(--color-orange-primary); color: var(--color-orange-primary); } .pagination .page-item.active .page-link { background-color: var(--color-orange-primary); border-color: var(--color-orange-primary); color: #ffffff; } /* ======================================== CONTACT FORM ======================================== */ .form-control { border: 2px solid var(--color-neutral-100); border-radius: 6px; padding: 0.625rem 1rem; transition: all 0.3s ease; } .form-control:focus { border-color: var(--color-orange-primary); outline: none; } .btn-contact-submit { background-color: var(--color-orange-primary); color: #ffffff; font-weight: 600; padding: 0.75rem 2rem; border: none; border-radius: 6px; transition: all 0.3s ease; } .btn-contact-submit:hover { background-color: var(--color-orange-hover); color: #ffffff; } .btn-submit-form { background-color: var(--color-orange-primary); color: #ffffff; font-weight: 600; padding: 0.75rem; border: none; border-radius: 6px; transition: all 0.3s ease; } .btn-submit-form:hover { background-color: var(--color-orange-hover); color: #ffffff; } /* ======================================== FOOTER ======================================== */ footer { background-color: var(--color-navy-dark); color: rgba(255, 255, 255, 0.8); padding: 3rem 0; } footer h5 { color: #ffffff; font-weight: 600; margin-bottom: 1rem; } footer a { color: rgba(255, 255, 255, 0.8); text-decoration: none; transition: color 0.3s ease; } footer a:hover { color: var(--color-orange-primary); } footer .btn-primary { background-color: var(--color-orange-primary); border-color: var(--color-orange-primary); } footer .btn-primary:hover { background-color: var(--color-orange-hover); border-color: var(--color-orange-hover); } .contact-info i { color: var(--color-orange-primary); } /* ======================================== RESPONSIVE DESIGN ======================================== */ @media (max-width: 991px) { .hero-title { padding: 2rem 0; } .hero-title h1 { font-size: 1.75rem; } .post-content { padding: 1.5rem; } .toc-container { position: relative; top: 0; margin-bottom: 2rem; } .toc-list { max-height: 300px; } .sidebar-sticky { position: relative !important; } } @media (max-width: 768px) { .analisis { font-size: 0.85rem; } .analisis table td { padding: 0.5rem !important; } .analisis table tr.total-row td { font-size: 1rem !important; } .btn-lets-talk { width: 100%; margin-top: 1rem; } .post-content h2 { font-size: 1.5rem; } .post-content h3 { font-size: 1.25rem; } .cta-section { padding: 1.5rem; } .cta-button { width: 100%; margin-top: 1rem; } } /* ======================================== UTILITIES ======================================== */ .text-navy { color: var(--color-navy-primary) !important; } .text-orange { color: var(--color-orange-primary) !important; } .bg-navy { background-color: var(--color-navy-primary) !important; } .bg-orange { background-color: var(--color-orange-primary) !important; } .border-orange { border-color: var(--color-orange-primary) !important; } .border-navy { border-color: var(--color-navy-primary) !important; }