*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Roboto,sans-serif}h1{font-size:3em}h2{font-size:2.7em}h3{font-size:2em}p{font-size:1.25em}ul{list-style:none}li{font-size:1.25em}button{color:#fff;cursor:pointer;background-color:#1f4e79;border:none;border-radius:6px;padding:12px 24px;font-size:16px;font-weight:700;transition:all .3s}button:hover{background-color:#163a5c;transform:translateY(-2px);box-shadow:0 4px 10px #0000004d}.grecaptcha-badge{visibility:hidden!important}header{background-color:#f5f5f5;transition:transform .3s}header.show{transform:translateY(0)}header.hide{transform:translateY(-100%)}header .container{flex-direction:column;align-items:center;display:flex;box-shadow:0 4px 18px #0003}header .logo{cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;padding:15px 20px;text-decoration:none;display:flex}.logo-ma{color:#1f4e79;margin-bottom:0;padding-bottom:0;font-size:2.5rem;font-weight:900}.logo-text{color:#000;margin-top:0;padding-bottom:0;font-size:1rem;font-weight:700;line-height:1.1;display:none}header nav{text-align:center;flex-direction:column;padding-bottom:25px;display:flex}header a{color:#000;padding:5px 12px;font-weight:700;text-decoration:none}header a:hover{color:#372be2}@media (min-width:850px){header{z-index:1000;width:100%;position:sticky;top:0}header .container{flex-direction:row;justify-content:space-between}.logo-text{display:flex}header nav{flex-direction:row;padding-bottom:0;padding-right:20px}}#hero{text-align:center;background-image:url(/assets/imagen_textura.webp);background-position:50%;background-repeat:no-repeat;background-size:cover;flex-direction:column;justify-content:center;align-items:center;height:40vh;display:flex;box-shadow:0 4px 18px #0003}#hero h1{color:#fff;font-family:Roboto,sans-serif}@media (min-width:850px){#hero h1{font-size:5em}}.aboutus{color:#222;background:#e5e5e5;border-radius:16px;grid-template-columns:1fr 1fr;align-items:center;gap:2rem;max-width:1000px;margin:.5rem auto 3rem;padding:2rem;font-family:sans-serif;display:grid}.aboutus__media{min-height:400px;position:relative}.aboutus__img{object-fit:cover;border-radius:8px;width:60%;position:absolute;box-shadow:0 4px 12px #0000001a}.aboutus__img--b{top:-55%;right:5%;transform:rotate(2deg)}.aboutus__img--c{bottom:8%;left:7%;transform:rotate(3deg)}.aboutus__img--d{bottom:-35%;right:7%;transform:rotate(-2deg)}.aboutus__title{margin-bottom:.5rem;font-size:2rem;font-weight:700}.aboutus__subtitle{color:#1f4e79;margin-bottom:1rem;font-size:1.2rem;font-weight:500}.aboutus__p{margin-bottom:1rem;line-height:1.6}@media (max-width:768px){.aboutus{grid-template-columns:1fr}.aboutus__media{order:2;min-height:300px}.aboutus__img--c,.aboutus__img--d{display:none}.aboutus__img--b{top:0;right:0;transform:rotate(0)}}.contact-card{background:#fff;border-radius:12px;max-width:300px;padding:20px;font-family:Arial,sans-serif;box-shadow:0 4px 12px #0000001a}.contact-card h2{color:#333;margin-bottom:15px;font-size:1.5rem}.contact-card p{color:#555;margin:8px 0;font-size:1rem}.contact-form{background:#fff;border-radius:14px;min-width:420px;max-width:none;margin:0;padding:1.5rem;box-shadow:0 4px 18px #0000000f}.input{border:1px solid #ddd;border-radius:10px;width:100%;margin:.35rem 0 1rem;padding:.7rem .9rem;font-family:inherit;font-size:1rem}.input:focus{border-color:#666;outline:none;box-shadow:0 0 0 2px #0000000d}.btn:disabled{opacity:.6;cursor:not-allowed}.alert{border-radius:10px;margin-bottom:1rem;padding:.7rem 1rem;font-size:.95rem}.alert.success{color:#035c21;background:#e6ffed}.alert.error{color:#7a0011;background:#ffecec}.honeypot{display:none}.contact-container{align-items:flex-start;gap:2rem;display:flex}.contact-container>*{flex:1 1 0}.contact-container form.contact-card{min-width:420px;max-width:none;margin:0}@media (max-width:768px){.contact-container{flex-direction:column}.contact-container form.contact-card{min-width:auto}}.map-container{width:max;border:0;height:600px;margin:1rem auto}@media (min-width:850px){.map-container{margin:auto}}#services-preview{color:#fff;text-align:center;background-color:#1e1e1e;padding:80px 20px}.services-container h2{margin-bottom:40px;font-size:2.5rem}.carousel-wrapper{width:100%;position:relative;overflow:hidden}.carousel{touch-action:pan-y;width:100%;overflow:hidden}.carousel-inner{will-change:transform;transition:transform .8s ease-in-out}.card{background:#323232e6;border-radius:12px;flex-direction:column;align-items:center;padding:20px;display:flex;box-shadow:2px 2px 12px #0009}.card-image{background-position:50%;background-size:cover;border-radius:10px;width:100%;height:200px;margin-bottom:20px}.card h3{margin:10px 0}.card p{flex-grow:1;margin-bottom:20px;font-size:.95rem}@media (max-width:849px){.carousel-inner{gap:0;display:flex}.card{box-sizing:border-box;flex:0 0 100%;margin-right:20px}.card:last-child{margin-right:0}.nav-btn{display:none}}@media (min-width:850px){.carousel-inner{grid-auto-columns:calc(33.3333% - 13.3333px);grid-auto-flow:column;gap:20px;display:grid}.services-container h2{font-size:3rem}.card-image{height:250px}}@media (min-width:1200px){.card-image{height:300px}}.services{gap:32px;max-width:1200px;margin:0 auto;padding:20px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:grid}.service-card{background:#f5f6f8;border:1px solid #e6e8eb;border-radius:16px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 1px 2px #1018280a}.service-media{line-height:0;position:relative}.service-image{object-fit:cover;width:100%;height:260px;display:block}.service-title{color:#0b0f19;white-space:normal;overflow-wrap:anywhere;word-break:normal;-webkit-hyphens:auto;hyphens:auto;background:#f5f6f8e6;border-radius:10px;margin:0;padding:8px 12px;font-size:1.25rem;font-weight:700;line-height:1.25;position:absolute;bottom:12px;left:12px;right:12px}.service-title--pc{display:none}.service-body{flex-direction:column;gap:12px;padding:16px;display:flex}.service-text{color:#2b2f36;margin:0;font-size:.975rem;line-height:1.6}@media (min-width:900px){.service-card{flex-direction:row;align-items:stretch}.service-card:nth-child(2n){flex-direction:row-reverse}.service-image{object-fit:cover;width:50vw;height:100%;max-height:none}.service-media{flex:none}.service-title{background:0 0;margin:16px;padding:0;font-size:1.5rem;position:static;bottom:auto;right:auto}.service-title--pc{display:block}.service-body{flex:1;gap:16px;padding:24px}}.hero-slider{width:100%;height:100vh;position:relative;overflow:hidden}.slides{height:100%;transition:transform 1s ease-in-out;display:flex}.slide{background-position:50%;background-size:cover;justify-content:center;align-items:center;min-width:100%;height:100%;display:flex;position:relative}.slide-content{text-align:center;color:#fff;z-index:20;background:#0006;border-radius:10px;padding:2rem;animation:1s ease-in-out fadeInUp}.slide-content h1{margin-bottom:.5rem;font-size:3rem}.slide-content h2{margin-bottom:1rem;font-size:2rem}.slide-content p{margin-bottom:1.5rem;font-size:1.2rem}.nav-btn{color:#fff;cursor:pointer;z-index:10;background:#00000080;border:none;border-radius:50%;padding:.5rem 1rem;font-size:2rem;transition:background .3s;position:absolute;top:50%}.cta-btn{color:#fff;cursor:pointer;background-color:#1f4e79;border:2px solid #0000004d;border-radius:6px;padding:12px 24px;font-size:16px;font-weight:700;text-decoration:none;transition:all .3s;display:inline-block}.cta-btn:hover{background-color:#163a5c;transform:translateY(-2px);box-shadow:0 4px 10px #0000004d}.nav-btn:hover{background:#000000b3}.prev{left:20px}.next{right:20px}.indicators{justify-content:center;gap:10px;width:100%;display:flex;position:absolute;bottom:20px}.dot{background:#ffffff80;border-radius:50%;width:12px;height:12px;transition:background .3s}.dot.active{background:#fff}.hero-slider,.slide,.slides{touch-action:pan-y}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.nav-btn{display:none}}.site-footer *{box-sizing:border-box}:root{--footer-bg:#1f1f1f;--footer-text:#fff;--footer-accent:#1f4e79;--footer-muted:#ffffffb3;--divider:#ffffff14}.site-footer{color:var(--footer-text);background:var(--footer-bg);border-radius:16px 16px 0 0;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:2rem clamp(1rem,3vw,2rem);padding:2.25rem clamp(1rem,3vw,2rem);display:grid;position:relative}.footer__brand{max-width:34ch}.footer__logo{color:var(--footer-text);letter-spacing:.2px;align-items:center;gap:.6rem;font-weight:800;text-decoration:none;display:inline-flex}.footer__logo svg{fill:var(--footer-accent);color:var(--footer-bg);border-radius:10px;display:block}.footer__brand-name{font-size:1.05rem}.footer__tagline{color:var(--footer-muted);margin-top:.5rem;line-height:1.5}.footer__heading{margin-bottom:.75rem;font-size:1rem;font-weight:700}.footer__list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.footer__link{color:var(--footer-text);opacity:.9;text-decoration:none}.footer__link:hover,.footer__link:focus-visible{opacity:1;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:var(--footer-accent);text-decoration-color:var(--footer-accent)}.footer__contact{color:var(--footer-muted);gap:.5rem;font-style:normal;display:grid}.footer__contact a{color:var(--footer-text)}.footer__bottom{border-top:1px solid var(--divider);color:var(--footer-muted);grid-column:1/-1;margin-top:.75rem;padding-top:1rem}@media (max-width:980px){.site-footer{grid-template-columns:1fr 1fr}}@media (max-width:560px){.site-footer{grid-template-columns:1fr}.footer__bottom{margin-top:.25rem}}.legal-container{color:#222;max-width:960px;margin:0 auto;padding:2rem 1.25rem;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.65}.legal-block{background:#fafafa;border:1px solid #e9e9e9;border-left:4px solid #444;border-radius:10px;margin-bottom:1.75rem;padding:1.5rem}.legal-block h2{letter-spacing:.2px;margin:0 0 .75rem;font-size:1.4rem}.legal-block h3{margin:1.1rem 0 .4rem;font-size:1.05rem;font-weight:600}.legal-block p{text-align:justify;margin:.35rem 0}.legal-note{color:#666;margin-top:1rem;font-size:.9rem}.policies-container{color:#333;max-width:900px;margin:0 auto;padding:2rem;font-family:Arial,sans-serif;line-height:1.6}.policy{background-color:#f9f9f9;border-left:5px solid #444;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.policy h2{color:#222;margin-bottom:1rem;font-size:1.5rem}.policy p{text-align:justify;margin-bottom:1rem}.policy ul{margin-left:1.5rem;list-style-type:disc}.code{color:#555;font-size:.9rem;font-style:italic}
