:root{--azul:#003366;--azul-claro:#0d6efd;--gris-bg:#f6f8fb;--txt:#333;--radius:8px;--sombra:0 2px 8px rgba(0,0,0,.08)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'Montserrat',sans-serif;background:var(--gris-bg);color:var(--txt);line-height:1.6}a{text-decoration:none;color:inherit}.container{max-width:1200px;margin:auto;padding:0 1rem}.section-header{text-align:center;margin:4rem 0 2rem;font-size:2rem;color:var(--azul)}.section-intro{max-width:800px;margin:0 auto 2rem;text-align:center;font-size:1.1rem;color:#555}nav{background:#fff;position:fixed;top:0;left:0;width:100%;z-index:1000;box-shadow:var(--sombra)}nav .container{display:flex;justify-content:space-between;align-items:center;padding:1rem}nav a{margin-left:1.2rem;font-weight:500}nav .btn-primary{background:var(--azul-claro);color:#fff;padding:.5rem 1rem;border-radius:4px}nav .btn-primary:hover{background:#0956d0}.hero{position:relative;display:flex;align-items:center;min-height:90vh;padding:4rem 1rem;text-align:center;color:#fff}.hero h1{font-size:2.8rem;margin-bottom:1rem;line-height:1.2}.hero p{font-size:1.25rem;margin-bottom:2rem}.btn-primary-lg{background:var(--azul-claro);color:#fff;padding:.9rem 2rem;border-radius:4px;font-size:1.05rem}.btn-primary-lg:hover{background:#0956d0}.btn-primary-sm{display:inline-block;background:var(--azul-claro);color:#fff;padding:.45rem 1rem;border-radius:4px;font-size:.85rem}.btn-primary-sm:hover{background:#0956d0}.services-grid,.case-grid,.team-grid{display:grid;gap:2rem}.services-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.case-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.team-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));justify-content:center}.services-card,.case-card,.team-member{background:#fff;border-radius:var(--radius);padding:1.7rem;box-shadow:var(--sombra);transition:.3s transform}.services-card:hover,.case-card:hover{transform:translateY(-6px)}.services-card i{font-size:2.2rem;color:var(--azul-claro);margin-bottom:.8rem}.services-card ul{list-style:disc inside;margin:.5rem 0 1rem;color:#555}.case-card img{width:100%;height:200px;object-fit:cover;border-radius:var(--radius) var(--radius) 0 0;margin:-1.7rem -1.7rem 1rem}.case-body p{margin:.4rem 0;color:#555}.team-member{text-align:center;padding-top:2rem}.team-member i{font-size:2.5rem;color:var(--azul-claro);margin-bottom:1rem}.team-member h5{color:var(--azul);margin-bottom:.4rem}.srv-full{grid-template-columns:1fr}.srv-full-card{display:flex;flex-wrap:wrap;gap:1.5rem;padding:2rem;background:#fff;border-radius:var(--radius);box-shadow:var(--sombra)}.srv-full-left{flex:0 0 260px;display:flex;flex-direction:column;gap:.7rem}.srv-full-left i{font-size:2.3rem;color:var(--azul-claro)}.srv-full-left h3{color:var(--azul);font-size:1.2rem}.tagline{font-weight:600;color:#555}.srv-full-right{flex:1;min-width:260px}.srv-full-right ul{list-style:disc inside;margin:.8rem 0 1.2rem;color:#555}.srv-full-card:hover{transform:translateY(-6px);transition:.3s transform}@media(max-width:768px){.srv-full-card{flex-direction:column}.srv-full-left{flex:none}}.contact-section{background:#fff;border-radius:var(--radius);padding:2rem;box-shadow:var(--sombra);max-width:600px;margin:auto}.contact-section input,.contact-section textarea{width:100%;padding:.75rem;margin-bottom:1rem;border:1px solid #ccc;border-radius:4px}.contact-section button{background:var(--azul);color:#fff;border:none;padding:.75rem;border-radius:4px;width:100%;font-size:1rem}.contact-section button:hover{background:#00264d}footer{background:var(--azul);color:#fff;padding:3rem 1rem;font-size:.9rem;margin-top:4rem}.footer-grid{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between}footer a{color:#bfe0ff}footer a:hover{text-decoration:underline}.fade{opacity:0;transform:translateY(25px);transition:.8s all}.fade.visible{opacity:1;transform:translateY(0)}@media(max-width:768px){.hero h1{font-size:2rem}.hero p{font-size:1.05rem}nav .container{flex-direction:column;align-items:flex-start;gap:.5rem}.footer-grid{flex-direction:column;gap:1.5rem}}.hero-eyebrow{display:inline-block;background:rgb(255 255 255 / .15);padding:.3rem .8rem;border-radius:4px;font-size:.85rem;letter-spacing:.5px;margin-bottom:1.2rem;font-weight:600}.hero-stats{list-style:none;margin:2rem auto 0;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;font-size:.95rem}.hero-stats li{opacity:.9}.scroll-cue{position:absolute;left:50%;bottom:3.0rem;transform:translateX(-50%);font-size:1.4rem;color:#fff;opacity:.7;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,100%{transform:translate(-50%,0)}40%{transform:translate(-50%,6px)}60%{transform:translate(-50%,4px)}}.hero .fade{opacity:0;transform:translateY(20px);animation:fadeInUp .9s forwards}.hero .fade:nth-child(1){animation-delay:.2s}.hero .fade:nth-child(2){animation-delay:.4s}.hero .fade:nth-child(3){animation-delay:.6s}.hero .fade:nth-child(4){animation-delay:.8s}.hero .fade:nth-child(5){animation-delay:1s}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.hero-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1rem}.btn-secondary-lg{background:#fff0;border:2px solid var(--azul-claro);color:#fff;padding:.9rem 2rem;border-radius:4px;font-size:1.05rem}.btn-secondary-lg:hover{background:var(--azul-claro);color:#fff}.hero-stats li{display:flex;align-items:center;gap:.4rem}.hero-stats li i{color:var(--azul-claro)}.scroll-cue{font-size:2rem;opacity:.85}.services-cta{display:flex;justify-content:flex-end;margin:3rem 0 2rem}.srv-cue{position:absolute;left:50%;bottom:1.5rem;transform:translateX(-50%);font-size:2rem;color:var(--azul-claro);opacity:.85;animation:bounce 2s infinite}#servicios{position:relative;padding-bottom:4rem}.benefits{list-style:none;margin:.8rem 0 1.2rem;padding:0;color:#555}.benefits li{position:relative;padding-left:1.6rem;margin-bottom:.45rem}.benefits li::before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0;top:0;color:var(--azul-claro)}.team-list{list-style:none;margin:.8rem 0 0;padding:0;color:#555}.team-list li{position:relative;padding-left:1.4rem;margin-bottom:.4rem}.team-list li::before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0;top:0;color:var(--azul-claro)}.contact-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1000px;margin:auto}.contact-info{background:#fff;padding:2rem;border-radius:var(--radius);box-shadow:var(--sombra)}.contact-info h3,.contact-info h4{color:var(--azul);margin:1rem 0 .5rem;font-size:1.1rem;display:flex;align-items:center;gap:.4rem}.contact-info ul{list-style:none;margin:1rem 0;padding:0;color:#555}.contact-info li{display:flex;align-items:center;gap:.4rem;margin-bottom:.4rem}.contact-info a{color:var(--azul-claro)}.contact-info a:hover{text-decoration:underline}.contact-section button.btn-primary-lg{width:100%;margin-top:.5rem}@media(max-width:768px){.contact-wrapper{grid-template-columns:1fr}}.g-recaptcha{margin:1rem 0}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:2rem}.footer-grid h5{margin-bottom:.6rem;color:#fff;font-size:1rem}footer a{color:#bfe0ff;font-size:.95rem}footer a:hover{text-decoration:underline}.foot-brand small{display:block;margin-top:.6rem;color:#ccc;font-size:.8rem}.cookie-banner{position:fixed;bottom:0;left:0;width:100%;background:#036;color:#fff;padding:1rem .8rem;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;z-index:2000;transform:translateY(100%);transition:.4s}.cookie-banner.show{transform:translateY(0)}.cookie-banner p{margin:0;font-size:.9rem;max-width:600px;text-align:center}.cookie-banner a{color:#bfe0ff;text-decoration:underline}.btn-secondary-sm{background:#fff0;border:1px solid #fff;color:#fff;padding:.4rem .9rem;border-radius:4px;font-size:.85rem}.btn-secondary-sm:hover{background:#fff;color:#036}.case-icon{width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;background:var(--azul-claro);color:#fff;border-radius:50%;font-size:1.25rem}.case-header{display:flex;align-items:center;gap:.8rem;margin-bottom:.6rem}.case-header h4{margin:0;color:var(--azul);font-size:1.15rem}.case-card{background:#fff;border-radius:var(--radius);padding:1.6rem;box-shadow:var(--sombra)}.case-card p{margin:.3rem 0;color:#555}.nav-toggle{display:none;background:none;border:none;color:#036;font-size:1.5rem}@media(max-width:768px){nav .container>div{display:none;flex-direction:column;gap:1rem;margin-top:.5rem}nav .container.open>div{display:flex}.nav-toggle{display:block;margin-left:auto}}body { padding-top: 64px; }