body{margin:0;padding:0;-webkit-user-select:none;user-select:none}.hero{height:90vh;background-image:url(/assets/bg_home-osc4XrVj.png);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;position:relative;text-align:center}.hero_overlay{position:absolute;width:100%;height:100%;background:linear-gradient(#000000a6,#0000008c)}.hero_content{position:relative;color:#fff;max-width:900px}.hero_content h1{font-size:4rem;margin-bottom:10px}.hero_content span{color:#f59e0b}.hero_content h2{font-weight:400;margin-bottom:30px}.hero_buttons{display:flex;gap:20px;justify-content:center}.btn_primary{background:#f59e0b;border:none;color:#fff;padding:14px 28px;font-weight:600;border-radius:6px;cursor:pointer;transition:.3s}.btn_primary:hover{background:#d97706;transform:translateY(-3px)}.btn_secondary{background:transparent;border:2px solid white;color:#fff;padding:12px 26px;border-radius:6px;cursor:pointer}.services{padding:100px 20px;text-align:center;background:#f9fafb}.services h2{font-size:2.5rem;margin-bottom:60px}.services_grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;max-width:1100px;margin:auto}.service_card{background:#fff;padding:40px;border-radius:10px;box-shadow:0 10px 25px #0000000d;transition:.3s}.service_card:hover{transform:translateY(-10px)}.service_card svg{font-size:3rem;color:#f59e0b;margin-bottom:20px}.stats{background:#1f2937;color:#fff;display:flex;justify-content:center;gap:80px;padding:80px 20px;text-align:center}.stat h3{font-size:3rem;color:#f59e0b}.cta{padding:100px 20px;text-align:center}.cta h2{font-size:2.5rem;margin-bottom:15px}.cta p{margin-bottom:30px;color:#555}@media (max-width:768px){.hero_content h1{font-size:2.5rem}.stats{flex-direction:column;gap:40px}.hero_buttons{flex-direction:column}}.navbar{width:100%;position:sticky;top:0;z-index:1000;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #e5e7eb;box-shadow:0 5px 15px #0000000d}.nav_container{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:12px 25px}.logo img{height:70px;cursor:pointer;transition:transform .3s}.logo img:hover{transform:scale(1.05)}.menu{display:flex;align-items:center;gap:24px;justify-content:flex-end;flex:1}.menu span{font-size:1rem;font-weight:500;color:#374151;cursor:pointer;position:relative;transition:color .25s}.menu span:after{content:"";position:absolute;left:0;bottom:-6px;width:0%;height:2px;background:#f59e0b;transition:width .3s}.menu span:hover:after{width:100%}.contact_btn,.login_btn,.register_btn{padding:10px 20px;border-radius:8px;font-weight:500;cursor:pointer;transition:background .25s,transform .25s;color:#fff;background:#f9a66d}.contact_btn:hover,.login_btn:hover,.register_btn:hover{background:#f2874a}.social{display:flex;gap:16px;font-size:1.1rem}.social svg{cursor:pointer;color:#374151;transition:transform .25s,color .25s}.social svg:hover{color:#f59e0b;transform:translateY(-3px)}.hamburger{width:32px;height:24px;display:none;flex-direction:column;justify-content:space-between;cursor:pointer;z-index:10000}.hamburger span{width:100%;height:3px;background:#1f2937;border-radius:2px;transition:transform .35s,opacity .25s,background .25s}.hamburger.active span:nth-child(1){transform:translateY(10px) rotate(45deg)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:translateY(-10px) rotate(-45deg)}.hamburger.active span{background:#f59e0b}.mobile_menu{position:fixed;top:0;right:-100%;width:260px;height:100vh;background:#1f2937;color:#fff;display:none;flex-direction:column;align-items:center;padding-top:100px;gap:24px;transition:right .35s ease}.mobile_menu.open{display:flex;right:0}.mobile_menu span{font-size:1.2rem;cursor:pointer;width:80%;text-align:center;padding:12px 0;border-radius:8px}.mobile_menu span:hover{opacity:.9;transform:scale(1.02)}.mobile_menu .contact_btn,.mobile_menu .login_btn,.mobile_menu .register_btn{background:#f9a66d}.mobile_social{display:flex;gap:25px;font-size:1.6rem;margin-top:20px}.mobile_social svg{cursor:pointer}@media (max-width: 900px){.menu{display:none}.hamburger{display:flex}}#footer{background:#0f172a;color:#fff;padding:60px 8%}.footer_container{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px}.footer_column h3{font-size:24px;margin-bottom:15px;color:#f59e0b}.footer_column h4{margin-bottom:15px}.footer_column ul{list-style:none;padding:0}.footer_column li{margin-bottom:10px;opacity:.8;cursor:pointer}.footer_column li:hover{opacity:1}.footer_socials{margin-top:15px;display:flex;gap:15px;font-size:1.3rem}.footer_socials svg{cursor:pointer;transition:.2s}.footer_socials svg:hover{color:#f59e0b}.footer_bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}.legal_links{display:flex;gap:20px}.legal_links span{cursor:pointer;opacity:.8}.legal_links span:hover{opacity:1}.cookie_banner{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#020617;color:#fff;padding:20px;display:flex;justify-content:space-between;align-items:center;z-index:9999;border-radius:8px;box-shadow:0 10px 25px #0000004d;gap:20px}.cookie_banner button{background:#2563eb;border:none;color:#fff;padding:10px 20px;border-radius:6px;cursor:pointer;transition:.3s}.cookie_banner button:hover{background:#1d4ed8}.scroll_top{position:fixed;bottom:90px;right:30px;background:#f59e0b;color:#fff;width:50px;height:50px;border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;box-shadow:0 5px 15px #0000004d;transition:.3s;z-index:1000}.scroll_top:hover{background:#d97706;transform:translateY(-3px)}.whatsapp_floating{position:fixed;bottom:20px;right:30px;background:#25d366;color:#fff;width:60px;height:60px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:28px;z-index:1000;box-shadow:0 5px 15px #0000004d;transition:.3s}.whatsapp_floating:hover{background:#128c7e;transform:translateY(-3px)}@media (max-width:768px){.footer_bottom{flex-direction:column;text-align:center;gap:10px}.whatsapp_floating{width:50px;height:50px;font-size:24px}.scroll_top{width:45px;height:45px}}.proyectos_hero{background:#f59e0b;color:#fff;text-align:center;padding:80px 20px}.proyectos_hero h1{font-size:3rem;margin-bottom:10px}.proyectos_hero p{font-size:1.2rem;opacity:.9}.proyectos_grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;max-width:1200px;margin:60px auto;padding:0 20px}.proyecto_card{position:relative;overflow:hidden;border-radius:10px;transform:translateY(50px);opacity:0;transition:all .6s ease-out;cursor:pointer}.proyecto_card.visible{transform:translateY(0);opacity:1}.proyecto_card img{width:100%;height:250px;object-fit:cover;display:block}.proyecto_card .overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0f172acc;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;transition:all .3s ease;text-align:center;padding:20px}.proyecto_card:hover .overlay{opacity:1}.proyecto_card .overlay h3{margin-bottom:10px;font-size:1.5rem;color:#f59e0b}.proyecto_card .overlay p{font-size:1rem;opacity:.9}@media (max-width:768px){.proyecto_card img{height:200px}}.modal_lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .4s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal_content{position:relative;background:#fff;padding:20px;border-radius:10px;max-width:800px;width:90%;text-align:center;animation:scaleIn .4s ease}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.modal_content img{width:100%;height:auto;border-radius:10px;margin-bottom:15px}.modal_content h2{margin-bottom:10px;color:#f59e0b}.modal_content p{opacity:.9;margin-bottom:15px}.close_modal{position:absolute;top:10px;right:10px;font-size:2rem;background:none;border:none;cursor:pointer;color:#333;transition:.3s}.close_modal:hover{color:#f59e0b}.modal_nav{display:flex;justify-content:space-between;margin-top:10px}.modal_nav button{background:#f59e0b;border:none;color:#fff;font-size:1.5rem;padding:10px 20px;border-radius:6px;cursor:pointer;transition:.3s}.modal_nav button:hover{background:#d97706}.contact_hero{background:#f59e0b;color:#fff;padding:80px 20px;text-align:center}.contact_hero h1{font-size:3rem;margin-bottom:10px}.contact_hero p{font-size:1.2rem;opacity:.9}.contact_form_section{display:grid;grid-template-columns:1fr 1fr;gap:50px;max-width:1000px;margin:60px auto;padding:0 20px}.contact_info{background:#1f2937;color:#fff;padding:40px;border-radius:10px}.contact_info h3{margin-bottom:20px;color:#f59e0b}.contact_form{display:flex;flex-direction:column;gap:15px}.contact_form input,.contact_form textarea{padding:15px;border-radius:6px;border:1px solid #ccc;font-size:1rem;width:100%;resize:none}.contact_buttons{display:flex;gap:15px;margin-top:10px}.btn_submit{background:#f59e0b;color:#fff;font-weight:600;border:none;padding:15px;border-radius:6px;cursor:pointer;transition:.3s}.btn_submit:hover{background:#d97706;transform:translateY(-2px)}.btn_whatsapp{display:flex;align-items:center;justify-content:center;background:#25d366;color:#fff;padding:15px;border-radius:6px;font-weight:600;text-decoration:none;transition:.3s}.btn_whatsapp:hover{background:#128c7e;transform:translateY(-2px)}.success_msg{color:green;margin-top:10px;font-weight:600}@media (max-width:768px){.contact_form_section{grid-template-columns:1fr;padding:0 15px;box-sizing:border-box}.contact_form input,.contact_form textarea{width:100%;box-sizing:border-box}}.fade_up,.fade_left,.fade_right,.fade_field{opacity:0;transform:translateY(30px);transition:all .6s ease-out}.fade_left{transform:translate(-50px)}.fade_right{transform:translate(50px)}.visible{opacity:1;transform:translate(0)}.fade_field{transition:all .6s ease-out}*{box-sizing:border-box;margin:0;padding:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto}.register-page{min-height:100vh;background:linear-gradient(135deg,#0f172a,#1e293b);display:flex;flex-direction:column}.register-wrapper{flex:1;display:flex;justify-content:center;align-items:center;padding:40px 20px}.register-card{background:#fff;width:100%;max-width:420px;padding:40px;border-radius:16px;box-shadow:0 20px 50px #0000004d;display:flex;flex-direction:column;gap:20px}.register-title{font-size:28px;font-weight:700;text-align:center;color:#111827}.register-subtitle{font-size:14px;text-align:center;color:#6b7280}.register-form{display:flex;flex-direction:column;gap:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.register-form input{width:100%;padding:12px 14px;border-radius:10px;border:1px solid #e5e7eb;font-size:14px;transition:all .2s}.register-form input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.register-form button{margin-top:10px;padding:12px;border:none;border-radius:10px;background:#3b82f6;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.register-form button:hover{background:#2563eb;transform:translateY(-1px)}.register-message{text-align:center;font-size:14px;color:#16a34a}@media (max-width:768px){.register-card{padding:30px}.register-title{font-size:24px}}@media (max-width:500px){.form-grid{grid-template-columns:1fr}.register-card{padding:25px 20px;border-radius:12px}}@media (min-width:1200px){.register-card{max-width:480px}}.login_wrapper{max-width:400px;margin:50px auto;background:#fff;padding:40px 30px;border-radius:10px;box-shadow:0 8px 20px #0000001a}.login_title{text-align:center;margin-bottom:25px;color:#374151}.login_form{display:flex;flex-direction:column;gap:20px}.login_form input{padding:12px 15px;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;transition:.25s}.login_form input:focus{border-color:#f59e0b;outline:none}.login_form button{background:#10b981;color:#fff;font-weight:600;padding:12px;border:none;border-radius:6px;cursor:pointer;transition:.25s}.login_form button:hover{background:#059669}.error_msg{color:#dc2626;font-size:.9rem;text-align:center}@media (max-width:500px){.login_wrapper{margin:30px 20px;padding:30px 20px}}.division_info{width:100%;font-size:1.1em;border-bottom:1px solid black;margin-bottom:5em}.division_info section{margin-bottom:1em}.division_info .info_section{display:flex;flex-direction:row;justify-content:center}.division_info section p{padding:0 1.6em 1.6em}
