:root{--primary-color:#1C3D5A;--secondary-color:#00A8A0;--text-color:#4A4A4A;--background-color:#FFFFFF;--light-gray:#F0F1F3;--font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,'Liberation Sans',sans-serif;--font-size-base:16px;--transition-speed:0.2s;--logo-width-desktop:150px;--logo-width-mobile:100px;--nav-font-size:1.1rem;--nav-hover-bg:#00c5bb;--nav-hover-color:#FFFFFF}*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}img,picture,picture img{display:block;max-width:100%;height:auto}html,body{overflow-x:hidden}body{font-family:var(--font-family);font-size:var(--font-size-base);background:var(--background-color);color:var(--text-color);line-height:1.6;margin-top:150px}h1,h2,h3,h4,h5,h6{font-family:var(--font-family);font-weight:700;letter-spacing:.01em}h1{font-size:2.1rem}@media (max-width:768px){body{margin-top:0}}.header{position:fixed;top:0;width:100%;background:#fff;z-index:1000;box-shadow:0 2px 5px rgb(0 0 0 / .1)}.header__inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:10px 20px}.header__logo-container{display:flex;align-items:center}.header__logo{width:var(--logo-width-mobile);height:auto;transition:width var(--transition-speed)}@media (min-width:769px){.header__logo{width:var(--logo-width-desktop)}}.nav{position:relative}.nav__list{list-style:none;display:flex;gap:30px}.nav__link{will-change:transform;text-decoration:none;color:var(--primary-color);font-size:var(--nav-font-size);font-weight:500;padding:8px 12px;border-radius:8px;transition:background var(--transition-speed),color var(--transition-speed),transform var(--transition-speed);white-space:nowrap;text-align:center;position:relative}.nav__link::after{content:'';position:absolute;width:0%;height:2px;bottom:0;left:0;background-color:var(--secondary-color);transition:width var(--transition-speed)}.nav__link:hover::after,.nav__link:focus::after{width:100%}.nav__link:hover,.nav__link:focus{background:var(--nav-hover-bg);color:var(--nav-hover-color);transform:translateY(-2px);outline:none}.menu-toggle{display:none;background:#fff0;border:none;cursor:pointer;flex-direction:column;gap:5px;transition:transform var(--transition-speed)}.menu-toggle__bar{width:25px;height:3px;background:#011d42;border-radius:2px;transition:background var(--transition-speed)}.menu-toggle:hover,.menu-toggle:focus{transform:rotate(90deg)}@media (max-width:768px){.menu-toggle{display:flex;position:relative;z-index:1100}.nav{position:fixed;top:120px;right:20px;background:#fff;border:1px solid var(--secondary-color);border-radius:8px;width:200px;display:none;flex-direction:column;padding:10px;overflow-y:auto;max-height:50vh;transition:opacity var(--transition-speed),transform var(--transition-speed);opacity:0;transform:translateY(-10px);z-index:1100}.nav.open{display:flex;opacity:1;transform:translateY(0)}.nav__list{flex-direction:column;gap:15px}.nav__link{will-change:transform;font-size:1.2rem;padding:10px 0}}.hero-section{position:relative;height:100vh;padding:80px 20px 20px 20px;display:flex;justify-content:center;align-items:center;text-align:center;color:#fff;overflow:hidden}.hero-section__image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1;filter:brightness(.7)}.hero-content{position:relative;z-index:2;max-width:600px;padding:20px}.hero-content h1{font-size:2.1rem;margin-bottom:20px;text-shadow:1px 1px 3px rgb(0 0 0 / .3);margin-top:120px}.hero-content p{font-size:1rem;margin-bottom:20px}.cta-button{will-change:transform;background:var(--primary-color);color:#fff;padding:12px 24px;text-decoration:none;border-radius:25px;display:inline-block;transition:background var(--transition-speed),transform var(--transition-speed);cursor:pointer;font-size:1rem}.cta-button:hover,.cta-button:focus{background:var(--secondary-color);transform:scale(1.05);outline:none}@media (max-width:900px){.hero-section{height:60vh;padding:50px 8px 8px 8px}.hero-content h1{font-size:1.5rem}.hero-content p{font-size:.95rem}}.imagenes-descripciones-section{max-width:1200px;margin:40px auto;background:#fcfdfd;text-align:center}.section-content h2{font-size:2rem;color:var(--primary-color);margin-bottom:40px;text-align:center}.imagenes-container{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;padding:0;margin:0}.imagen-item{will-change:transform;flex:1 1 calc(33.333% - 30px);max-width:calc(33.333% - 30px);min-width:300px;background:var(--background-color);overflow:hidden;transition:transform 0.3s ease,box-shadow 0.3s ease;border:none;padding:0}.imagen-item:hover{transform:translateY(-5px);box-shadow:0 8px 15px rgb(0 0 0 / .15)}.imagen-container{width:100%;aspect-ratio:16/9;overflow:hidden;padding:0;margin:0;background:#fff0}.imagen-item p{padding:10px 15px;font-size:1rem;color:var(--primary-color);line-height:1.5;min-height:100px;display:flex;align-items:center;justify-content:center;text-align:center;background:#fff0;margin:0}.mision-vision-section{max-width:1200px;margin:40px auto;background:#fcfdfd;text-align:center}.mision-vision-container{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;padding:0;margin:0}.mision-vision-item{will-change:transform;flex:1 1 calc(33.333% - 30px);max-width:calc(33.333% - 30px);min-width:300px;background:var(--background-color);overflow:hidden;transition:transform 0.3s ease,box-shadow 0.3s ease;border:none;padding:0}.mision-vision-item:hover{transform:translateY(-5px);box-shadow:0 8px 15px rgb(0 0 0 / .15)}.mision-vision-item .imagen-container{width:100%;height:250px;overflow:hidden;padding:0;margin:0;background:#fff0}.mision-vision-item .imagen-container img{width:100%;height:100%;object-fit:cover;object-position:bottom;transform:scale(1.8);transition:transform 0.3s ease}.mision-vision-item h3{font-size:1.4rem;color:var(--primary-color);margin:15px 0 10px 0;text-align:center;border:none;border-bottom:2px solid var(--secondary-color)}.mision-vision-item p{font-size:1rem;color:var(--text-color);line-height:1.6;text-align:center;margin:0 15px 15px}.contact-form-section{position:relative;padding:60px 20px;max-width:1200px;margin:40px auto;border-radius:10px;text-align:center;background-color:#fff;overflow:hidden}.contact-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;overflow:hidden;border-radius:10px}.contact-background video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1}.contact-form-section .section-content{position:relative;z-index:2;padding:8rem 2rem 2rem 2rem}.contact-form-section .section-content h2{font-size:2.2rem;color:#40e0f5;margin-bottom:20px;text-shadow:1px 1px 3px rgb(0 0 0 / .5)}.contact-form-section .section-content p{font-size:1rem;color:#fff;line-height:1.8;max-width:800px;margin:0 auto 20px;text-shadow:1px 1px 2px rgb(0 0 0 / .4)}.contact-form-section .section-content .cta-button{will-change:transform;box-shadow:0 0 10px rgb(0 168 160 / .8),0 0 20px rgb(0 168 160 / .6);transition:transform 0.2s,box-shadow 0.3s}.contact-form-section .section-content .cta-button:hover,.contact-form-section .section-content .cta-button:focus{transform:scale(1.1);box-shadow:0 0 20px rgb(255 255 255 / .9),0 0 30px rgb(0 168 160 / .8);outline:none}#contacto a[href^="tel:"]{color:#16c5e4;text-decoration:none}@media (max-width:768px){.contact-form-section .section-content{padding:4rem 1rem 2rem 1rem}.contact-form-section .section-content h2{font-size:1.9rem;line-height:1.3}}.footer-modern{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;background-color:#1C3D5A;color:#CCC;margin-top:50px;font-family:sans-serif;border-top:1px solid #2c3f69;position:relative}.footer-text-left p{margin:0;font-size:1rem;line-height:1.5;color:inherit}.footer-text-left a{background-image:linear-gradient(to right,#ffffec,#70ff03);background-clip:text;-webkit-background-clip:text;color:#fff0;text-decoration:none;text-shadow:0 0 6px rgb(0 255 255 / .5);font-weight:400;font-size:1.07em}.footer-text-left a:hover{text-shadow:0 0 10px rgb(255 0 255 / .7)}.footer-icons-right{display:flex;gap:60px;align-items:center}.social-icon{will-change:transform;display:block;height:auto;transition:opacity 0.2s ease,transform 0.2s ease}.social-icon:hover{transform:scale(1.5);opacity:1}.icon-instagram,.icon-email,.icon-clientes{width:64px;height:64px;position:relative;top:0;transition:opacity 0.2s ease,transform 0.2s ease}.icon-clientes:hover{transform:scale(1.12);opacity:1}.schema-data{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0}@media (max-width:768px){.hero-section{min-height:330px;padding-bottom:.2em}.hero-section__content,.hero-content{padding-top:.6em;padding-bottom:.4em;padding-left:.5em;padding-right:.5em}.hero-section__content h1,.hero-content h1{font-size:1.09rem;line-height:1.15;margin-top:.2em;margin-bottom:1.1em;padding-left:.2em;padding-right:.2em;text-align:center;word-break:break-word;white-space:normal;hyphens:auto}}@media (max-width:768px){.footer-modern{flex-direction:column;align-items:center;text-align:center;gap:20px;padding:20px 15px}.footer-text-left{margin-bottom:10px}.footer-text-left p{font-size:.8rem;margin-bottom:0}.footer-text-left a{font-size:.85em;display:block}.footer-icons-right{gap:30px}.icon-instagram,.icon-email,.icon-clientes{width:48px;height:48px;top:0}}@media (min-width:769px) and (max-width:992px){.imagen-item,.mision-vision-item{will-change:transform;min-width:0}}@media (max-width:768px){.hero-section{min-height:100vh;padding:140px 20px 60px}.hero-section__content,.hero-content{padding:20px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.hero-section__content h1,.hero-content h1,h1{font-size:1.8rem;font-weight:700;line-height:1.4;margin:0 0 1em 0;text-align:center;word-break:normal;white-space:normal;color:#fff;text-shadow:2px 2px 4px rgb(0 0 0 / .5);display:block;opacity:1;position:relative;z-index:2}.imagen-item,.mision-vision-item{will-change:transform;flex:1 1 100%;max-width:100%;margin-bottom:20px}.imagen-container,.mision-vision-item .imagen-container{height:auto;aspect-ratio:16 / 9}.imagen-container img,.mision-vision-item .imagen-container img{width:100%;height:100%;object-fit:cover;object-position:center;transform:none}}@media (max-width:480px){.imagen-item p{font-size:1rem;min-height:auto;padding:15px}.mision-vision-item h3{font-size:1.2rem}.mision-vision-item p{font-size:.95rem}.mision-vision-item .imagen-container{height:auto;aspect-ratio:16 / 9}.mision-vision-item .imagen-container img{transform:none;object-fit:cover;object-position:center}}.servicio-detalle{max-height:0;overflow:hidden;transition:max-height 0.3s ease;padding:0}.servicio-item.open .servicio-detalle{max-height:500px;padding:10px}.servicio-trigger{cursor:pointer;position:relative;display:inline-block}.click-hint{font-size:.7rem;background-color:#cfe7f5;color:#ee2758;margin-left:.2rem}.arrow-icon{color:#184c91;margin-left:.4rem;font-weight:700;transition:transform 0.2s}.servicio-item.open .arrow-icon{transform:rotate(180deg)}#whatsapp{position:fixed;z-index:10000;background:none}@media (max-width:768px){#whatsapp{bottom:70px;right:1px;width:80px;top:unset}.whatsapp-icon{width:100%}}@media (min-width:769px){#whatsapp{top:100px;right:20px;width:130px;bottom:unset;left:unset;transition:transform 0.2s ease}#whatsapp:hover{transform:scale(1.2)}.whatsapp-icon{width:100%}}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#020405,#4f7ba5);z-index:9999;align-items:center;justify-content:center;overflow:hidden}.modal-content{width:85vw;height:90vh;max-width:1200px;margin:0 auto;background:#fff0;position:relative;border-radius:8px;padding:20px;overflow:hidden}.modal-body{display:flex;flex-direction:column;height:100%;align-items:center}* Asegurar que otros elementos del modal-body no ocupen demasiado espacio */ .modal-body h4,.modal-body p{margin:10px 0;flex:0 0 auto}@media (max-width:768px){.modal-content{width:100vw;height:100vh;max-width:100vw;max-height:100vh;padding:0;margin:0;border-radius:0}}.close-modal{position:fixed;top:10px;right:3px;z-index:3000;background:#fff0;border:none;cursor:pointer;font-size:1rem;color:#00d9ff}.close-modal{position:fixed;top:10px;right:3px;z-index:3000;background:#fff0;border:none;cursor:pointer;font-size:1rem;color:#00d9ff}.modal-content .cta-button{will-change:transform;margin-top:10px}.modal-tabs-toggle{display:flex;background:#fff0;border:none;cursor:pointer;flex-direction:column;gap:5px;transition:transform var(--transition-speed);position:absolute;top:30px;left:10px;z-index:1100}.modal-tabs-toggle:hover,.modal-tabs-toggle:focus{transform:rotate(90deg)}.modal-tabs-toggle__bar{width:20px;height:6px;background:#00d9ff;border-radius:2px;transition:background var(--transition-speed)}.modal .infografia-tabs{position:absolute;top:50px;left:0;right:0;z-index:2000;display:none;justify-content:center;flex-wrap:wrap;gap:5px;padding:0;background:#000507;box-shadow:0 2px 5px rgb(4 83 107 / .384)}.modal .infografia-tabs .tab-btn{padding:6px 10px;font-size:.9rem;border-radius:10px}.modal .infografia-tabs.open{display:flex}@media (min-width:769px){.modal-tabs-toggle{display:none !important}.infografia-tabs{position:static !important;display:flex !important;background:transparent !important;box-shadow:none !important;margin-bottom:20px !important}}.sub-infografia{display:none}.sub-infografia.active{display:block}.slider-container{display:flex;align-items:center;justify-content:center;gap:10px;height:100%}.slides{position:relative;width:100vw;height:90vh;overflow:hidden}.slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;pointer-events:none;transition:opacity var(--transition-speed) ease-in-out;background:#fff0;display:flex;align-items:center;justify-content:center}.slide.active{opacity:1;pointer-events:auto}.slide img{width:100%;height:100%;object-fit:contain;margin:0 auto;object-position:center}.infografia-tabs{margin-bottom:10px;display:flex;gap:10px;justify-content:center;flex-wrap:nowrap}.tab-btn{background:#fff0;border:none;padding:8px 16px;cursor:pointer;border-radius:0;font-family:'Poppins',sans-serif;font-size:var(--nav-font-size);color:#ffcd43;transition:background 0.3s ease,transform 0.3s ease,box-shadow 0.3s ease,color 0.3s ease}.tab-btn:hover,.tab-btn:focus{background:linear-gradient(45deg,var(--primary-color),#00bdf7);color:#e4dfe3;transform:scale(1.05);box-shadow:0 0 10px rgb(255 126 95 / .4);outline:none}.tab-btn.active{background:linear-gradient(45deg,var(--primary-color),#00bdf7);color:#fff;transform:scale(1.03);box-shadow:0 0 15px rgb(0 189 247 / .6)}.sub-infografia{display:none}.sub-infografia.active{display:block}.slider-container{display:flex;align-items:center;justify-content:center;gap:10px;height:100%}.slides{position:relative;width:100%;height:90vh;overflow:hidden}.slide{position:absolute;top:0;left:0;width:95%;height:90%;opacity:0;pointer-events:none;transition:opacity var(--transition-speed) ease-in-out;background:#fff0;display:flex;align-items:center;justify-content:center}.slide.active{opacity:1;pointer-events:auto}.slide img{width:100%;height:95%;object-fit:contain;margin:0 auto;transform:none;object-position:center}.prev-btn,.next-btn{background:var(--primary-color);color:#fff;border:none;padding:10px 15px;cursor:pointer;font-size:1.4rem;border-radius:5px;transition:background 0.2s;align-self:center}.prev-btn:hover,.next-btn:hover{background:var(--secondary-color)}@media (max-width:768px) and (min-height:800px){.prev-btn,.next-btn{top:60%}}@media (max-width:768px){.prev-btn,.next-btn{display:none !important}}@media (max-width:768px){.modal-content,.slider-container,.slides,.slide{width:100vw;height:100vh;margin:0;padding:0;display:flex;align-items:center;justify-content:center;background:#0e0000}.modal-tabs-toggle{position:absolute;top:10px;left:20px;z-index:3000}.close-modal{position:absolute;top:10px;right:10px;z-index:3000}.modal{overflow:hidden}}.imagen-container img{width:100%;height:100%;object-fit:cover;object-position:bottom;transform:scale(1.3);transform-origin:center top}@media (min-width:769px){.imagen-item,.mision-vision-item{will-change:transform;flex:1 1 calc(33.333% - 30px);max-width:calc(33.333% - 30px)}}@media (max-width:768px){.imagen-item,.mision-vision-item{will-change:transform;flex:1 1 100%;max-width:100%;margin-bottom:20px}}.preguntas-frecuentes{max-width:800px;margin:0 auto;padding:20px;font-family:'Roboto',sans-serif;background-color:#f1f0ed;border-radius:12px;border:1px solid #05344e}.preguntas-frecuentes h2{font-size:1.8rem;margin-bottom:20px;color:#1C3D5A;text-align:center}.faq-item{margin-bottom:15px;border-radius:5px;padding:10px;background-color:#aaecdc;transition:background-color 0.3s ease}.faq-item summary{font-weight:700;cursor:pointer;color:#1C3D5A;transition:color 0.3s ease}.faq-item summary:hover{color:#00A8A0}.faq-item p{margin-top:10px;line-height:1.6;color:#4A4A4A;transition:opacity 0.3s ease}.faq-item[open] p{opacity:1}.faq-item:not([open]) p{opacity:0;height:0;overflow:hidden}@media (max-width:768px){.preguntas-frecuentes{padding:15px}.faq-item summary{font-size:1.1rem}.faq-item p{font-size:.95rem}}body.page-privacy{background-color:#6083b1}.privacy-container{max-width:850px;margin:0 auto 60px;padding:30px 40px;background-color:#e6f5c3;border-radius:12px;box-shadow:0 10px 35px rgb(0 0 0 / .08);border-top:6px solid var(--secondary-color);line-height:1.75;transition:transform 0.3s ease,box-shadow 0.3s ease}.privacy-container:hover{transform:translateY(-5px);box-shadow:0 15px 45px rgb(0 0 0 / .12)}.privacy-container h1{color:var(--primary-color);font-size:2.5rem;margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid #e0e0e0;text-align:center}.privacy-container h2{color:var(--primary-color);font-size:1.8rem;margin-top:40px;margin-bottom:15px}.privacy-container p,.privacy-container li{color:var(--text-color);font-size:1.05rem;margin-bottom:15px}.privacy-container ul{list-style-type:disc;padding-left:25px;margin-bottom:20px}.privacy-container li{margin-bottom:10px}@media (max-width:768px){body.page-privacy main{padding-top:120px}.privacy-container{padding:25px 20px;margin:0 15px 40px}.privacy-container h1{font-size:1.7rem}.privacy-container h2{font-size:1.4rem}}section{scroll-margin-top:120px}@media (max-width:768px){section{scroll-margin-top:120px}}.modal,.sub-infografia{content-visibility:auto;contain-intrinsic-size:1000px 500px}