:root{--azul:#0a3d8f;--azul-claro:#1a5cc8;--azul-hover:#0c2f6e;--naranja:#1e3a5f;--naranja-hover:#16304f;--gris-claro:#f4f7fc;--gris-medio:#e2e8f0;--gris-texto:#4a5568;--blanco:#ffffff;--negro:#1a202c;--verde-wa:#137035;--verde-wa-h:#0f6b30;--radius:8px;--shadow:0 4px 18px rgba(0,0,0,.10);--shadow-lg:0 8px 32px rgba(0,0,0,.16);--transition:.2s ease}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;font-size:17px;line-height:1.7;color:var(--negro);background:var(--blanco)}h1,h2,h3,h4{background:transparent;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;line-height:1.2;color:var(--azul)}h1{font-size:clamp(1.9rem,4vw,2.8rem);font-weight:700;margin-bottom:.5rem}h2{font-size:clamp(1.4rem,3vw,2rem);font-weight:600;margin:2rem 0 .8rem}h3{font-size:1.25rem;font-weight:600;margin:1.5rem 0 .5rem}p{margin-bottom:1rem;color:var(--gris-texto);background:transparent}a{color:var(--azul-claro);background:transparent;text-decoration:none;transition:color var(--transition)}a:hover{color:var(--naranja);background:transparent}.container{max-width:1160px;margin:0 auto;padding:0 20px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media(max-width:768px){.grid-2,.grid-3{grid-template-columns:1fr}}.topbar{background:#16304f;color:#ffffff;font-size:.88rem;padding:.4rem 0;text-align:center;border-bottom:1px solid rgba(255,255,255,.15)}.topbar a{color:#ffffff;background:transparent;text-decoration:underline}.topbar a:hover{color:#ffd580;background:transparent}.topbar strong{color:#ffffff;background:transparent}#menu-toggle{position:fixed;left:-9999px;top:-9999px;opacity:0;visibility:hidden;pointer-events:none}header{background:var(--blanco);color:var(--negro);box-shadow:0 2px 10px rgba(0,0,0,.10);position:sticky;top:0;z-index:900}.header-inner{display:flex;align-items:center;justify-content:space-between;padding:.9rem 0;gap:1rem}.logo{display:flex;align-items:center;gap:.6rem;text-decoration:none}.logo-icon{font-size:1.8rem}.logo-text{line-height:1.1}.logo-text strong{background:transparent;background:transparent;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;font-size:1.35rem;color:var(--azul);display:block}.logo-text span{font-size:.8rem;color:var(--gris-texto);background:transparent}nav ul{list-style:none;display:flex;gap:.25rem;flex-wrap:wrap}nav a{background:transparent;display:block;padding:.5rem .85rem;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;font-weight:600;font-size:.95rem;letter-spacing:.03em;color:var(--azul);border-radius:var(--radius);transition:background var(--transition),color var(--transition);white-space:nowrap}nav a:hover,nav a.active{background:var(--azul);color:var(--blanco)}.header-cta{display:flex;gap:.6rem;align-items:center;flex-shrink:0}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;border-radius:var(--radius);font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;font-weight:600;font-size:.95rem;letter-spacing:.03em;transition:background var(--transition),transform var(--transition);cursor:pointer;border:none}.btn:hover{transform:translateY(-1px)}.btn-phone{background:var(--naranja);color:var(--blanco)}.btn-phone:hover{background:var(--naranja-hover);color:var(--blanco)}.btn-outline{background:transparent;color:var(--azul);border:2px solid var(--azul)}.btn-outline:hover{background:var(--azul);color:var(--blanco)}.btn-wa-outline{background:transparent;color:var(--verde-wa);border:2px solid var(--verde-wa)}.btn-wa-outline:hover{background:var(--verde-wa);color:var(--blanco)}.btn-wa-outline svg{fill:var(--verde-wa);transition:fill var(--transition)}.btn-wa-outline:hover svg{fill:var(--blanco)}.hamburger{display:none;background:none;border:none;cursor:pointer;padding:.4rem}.hamburger span{display:block;width:24px;height:2px;background:var(--azul);color:transparent;margin:5px 0;transition:var(--transition)}@media(max-width:900px){.hamburger{display:block}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--blanco);color:var(--negro);box-shadow:var(--shadow-lg);padding:1rem;z-index:800}#menu-toggle{position:fixed;left:-9999px;top:-9999px;opacity:0;pointer-events:none;visibility:hidden}#menu-toggle:checked~.header-inner nav{display:block}#menu-toggle:checked~.header-inner .hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}#menu-toggle:checked~.header-inner .hamburger span:nth-child(2){opacity:0;transform:scaleX(0)}#menu-toggle:checked~.header-inner .hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}nav ul{flex-direction:column}nav a{padding:.7rem 1rem}.header-cta .btn-outline{display:none}}.hero{background:linear-gradient(135deg,var(--azul) 0%,var(--azul-claro) 55%,#2a7fff 100%);color:var(--blanco);padding:4.5rem 0 3.5rem;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.hero-inner{position:relative;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}@media(max-width:768px){.hero-inner{grid-template-columns:1fr}}.hero h1{background:transparent;color:var(--blanco);font-size:clamp(2rem,5vw,3.2rem)}.hero .lead{font-size:1.15rem;background:transparent;color:#ffffff;margin:.8rem 0 1.5rem;text-shadow:0 1px 3px rgba(0,0,0,.25)}.hero-badges{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.badge{background:rgba(0,0,0,.30);border:1px solid rgba(255,255,255,.5);color:#ffffff;padding:.3rem .8rem;border-radius:100px;font-size:.82rem;font-weight:600;backdrop-filter:blur(4px)}section{padding:3.5rem 0}.section-alt{background:var(--gris-claro);color:var(--negro)}.section-title{text-align:center;margin-bottom:2.5rem}.section-title h2{margin:0 0 .5rem}.section-title p{color:var(--gris-texto);background:transparent;max-width:580px;margin:0 auto}.service-card{background:var(--blanco);color:var(--negro);border-radius:12px;padding:1.8rem 1.5rem;box-shadow:var(--shadow);border-top:4px solid var(--azul-claro);transition:transform var(--transition),box-shadow var(--transition)}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.service-icon{font-size:2.4rem;margin-bottom:.8rem}.service-card h3{color:var(--azul);background:transparent;margin:0 0 .6rem}.zona-wrap{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}@media(max-width:768px){.zona-wrap{grid-template-columns:1fr}}.zona-list{columns:2;column-gap:1rem;list-style:none}.zona-list li{padding:.2rem 0;font-size:.92rem;color:var(--gris-texto);background:transparent}.zona-list li::before{content:'📍';margin-right:.35rem;font-size:.75rem}.faq-q .faq-q.open .faq-a{padding:1rem 1.2rem;background:#f8faff;border-top:1px solid var(--gris-medio)}.faq-a p{margin:0}.blog-card{background:var(--blanco);color:var(--negro);border-radius:12px;box-shadow:var(--shadow);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition);display:flex;flex-direction:column}.blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.blog-thumb{height:190px;background:var(--gris-medio);color:var(--gris-texto);display:flex;align-items:center;justify-content:center;font-size:3rem}.blog-body{padding:1.2rem;flex:1;display:flex;flex-direction:column}.blog-meta{font-size:.78rem;color:#6b7280;background:transparent;margin-bottom:.4rem}.blog-card h3{font-size:1.05rem;margin:0 0 .5rem;color:var(--azul);background:transparent}.blog-card p{font-size:.9rem;flex:1}.blog-card a.read-more{display:inline-block;margin-top:.8rem;color:var(--azul-claro);background:transparent;font-weight:600;font-size:.9rem}.cta-banner{background:linear-gradient(90deg,var(--azul) 0%,var(--azul-claro) 100%);color:var(--blanco);text-align:center;padding:3rem 1rem;border-radius:16px}.cta-banner h2{color:var(--blanco);background:transparent;margin-top:0}.cta-banner p{color:var(--blanco);background:transparent}.cta-banner .btn-group{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.2rem}.btn-white{background:var(--blanco);color:var(--azul);font-weight:700}
.btn-white svg{stroke:var(--azul);fill:none}.btn-white:hover{background:#e0e7ff;color:var(--azul-hover)}.btn-wa{background:var(--verde-wa);color:var(--blanco);font-weight:700}.btn-wa:hover{background:var(--verde-wa-h);color:var(--blanco)}@keyframes pulse{0%,100%{box-shadow:0 4px 16px rgba(0,0,0,.22)}50%{box-shadow:0 4px 28px rgba(0,0,0,.38)}}footer{background:var(--negro);color:#cbd5e0;padding:3rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem;margin-bottom:2rem}@media(max-width:768px){.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}footer h4{background:transparent;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:#e2e8f0;font-size:1rem;margin-bottom:.8rem}footer ul{list-style:none}footer ul li{margin-bottom:.35rem}footer ul a{color:#cbd5e0;background:transparent;font-size:.88rem}footer ul a:hover{color:#fdba74;background:transparent}footer p{font-size:.88rem;color:#cbd5e0;background:transparent}.footer-bottom{border-top:1px solid #2d3748;padding-top:1.2rem;text-align:center;font-size:.82rem}.footer-bottom p{color:#ffffff;background:transparent;font-size:.82rem}.breadcrumb{background:var(--gris-claro);padding:.6rem 0;font-size:.83rem;color:var(--gris-texto)}.breadcrumb a{color:var(--azul);background:transparent;text-decoration:underline}.breadcrumb span{margin:0 .35rem}
.blog-article h1{font-size:clamp(1.6rem,3vw,2.2rem)}.blog-article .meta{color:#6b7280;background:transparent;font-size:.85rem;margin:.4rem 0 1.5rem}.blog-article h2{font-size:1.4rem;margin:2rem 0 .6rem}.text-center{text-align:center}.mt-1{margin-top:1rem}.highlight{background:#fef3c7;border-left:4px solid #1e3a5f;padding:.8rem 1rem;border-radius:0 var(--radius) var(--radius) 0;margin:1rem 0;color:#1a202c}.highlight a{color:var(--azul);background:transparent;font-weight:700}.img-real{display:block;max-width:100%;height:auto}picture{display:block}.footer-h{background:transparent;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:#f1f5f9;font-size:1rem;font-weight:600;margin-bottom:.8rem;margin-top:0}.blog-article h2.article-headline{font-size:clamp(1.5rem,3vw,2.1rem);color:var(--azul);background:transparent;line-height:1.25;margin-bottom:.5rem;font-weight:700}
.article-page-header .article-headline{color:#ffffff;background:transparent;font-size:clamp(1.6rem,3.5vw,2.4rem);margin:0}.article-page-header{background:var(--azul);color:#ffffff;padding:2.5rem 0;text-align:center}.article-page-title{font-size:1rem;font-weight:600;color:#ffffff;background:transparent;margin:0;letter-spacing:.01em}
details{border:1px solid var(--gris-medio);border-radius:var(--radius);margin-bottom:.8rem;overflow:hidden}
summary{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.2rem;font-weight:600;font-size:1.05rem;color:var(--azul);background:var(--blanco);cursor:pointer;list-style:none;transition:background var(--transition),color var(--transition);user-select:none}
summary::-webkit-details-marker{display:none}
summary::after{content:'▼';font-size:.85rem;transition:transform .25s;flex-shrink:0}
details[open] summary{background:var(--azul);color:var(--blanco)}
details[open] summary::after{transform:rotate(180deg)}
summary:hover{background:var(--gris-claro);color:var(--azul)}
details[open] summary:hover{background:var(--azul-hover);color:#ffffff}
.cwi-wa 
.cwi-wa 

.big-num{font-size:2.5rem;font-weight:700;color:var(--azul);line-height:1}
.faq-item{border:1px solid var(--gris-medio);border-radius:var(--radius);margin-bottom:.8rem;overflow:hidden}
.faq-q{width:100%;text-align:left;background:var(--blanco);padding:1rem 1.2rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:1.05rem;color:var(--azul);border:none;transition:background var(--transition)}
.faq-q:hover{background:var(--gris-claro);color:var(--azul)}
.faq-q.open{background:var(--azul);color:var(--blanco)}
.faq-q .arrow{transition:transform .25s}
.faq-q.open .arrow{transform:rotate(180deg)}
.float-buttons{position:fixed;right:18px;bottom:24px;display:flex;flex-direction:column;gap:.7rem;z-index:999}
.float-btn{background:transparent;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,0,0,.22);text-decoration:none;color:var(--blanco);transition:transform .2s,box-shadow .2s;animation:pulse 2.5s infinite}
.float-btn:hover{transform:scale(1.12);box-shadow:0 6px 24px rgba(0,0,0,.3);color:var(--blanco);background:transparent}
.float-wa{background:var(--verde-wa);color:#ffffff;animation-delay:0s}
.float-wa svg{width:30px;height:30px;fill:#ffffff;flex-shrink:0}
.hero-card{background:var(--blanco);color:var(--negro);border-radius:12px;padding:1.8rem 1.6rem;min-width:220px;box-shadow:var(--shadow-lg);text-align:center}
.hero-card .big-num{font-size:2.5rem;color:var(--azul);background:transparent;line-height:1}
.hero-card p{color:var(--gris-texto);background:transparent;font-size:.9rem;margin:.3rem 0 0}
.hero-card a{display:block;margin-top:1rem;background:var(--naranja);color:var(--blanco);padding:.7rem;border-radius:var(--radius);font-weight:700;font-size:1.1rem}
.hero-card a:hover{background:var(--naranja-hover);color:var(--blanco)}
.img-placeholder{background:linear-gradient(135deg,#dbeafe,#eff6ff);border:2px dashed #93c5fd;border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.5rem;color:var(--azul);min-height:220px}
.ph-icon{font-size:2.5rem;margin-bottom:.5rem;opacity:.5}
.ph-title{font-weight:600;font-size:.95rem}
.ph-desc{font-size:.78rem;color:#3d5275;background:transparent;margin-top:.2rem}
.ph-size{font-size:.7rem;color:#3d5275;margin-top:.3rem;background:#e2e8f0;padding:.15rem .5rem;border-radius:100px}
.mb-0{margin-bottom:0}
.text-acento{color:var(--naranja);background:transparent}
.tabla-precio{width:100%;border-collapse:collapse;margin:1.5rem 0}
.tabla-precio th{background:var(--azul);color:#fff;padding:.7rem 1rem;text-align:left}
.tabla-precio td{padding:.6rem 1rem;border-bottom:1px solid var(--gris-medio);font-size:.9rem}
.tabla-precio tr:nth-child(even) td{background:var(--gris-claro);color:var(--negro)}
.contact-widget{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:999;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.contact-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.contact-item{display:flex;justify-content:flex-end;align-items:center}
.contact-link{display:inline-flex;align-items:center;border-radius:8px 0 0 8px;overflow:hidden;text-decoration:none;height:44px;box-shadow:0 2px 8px rgba(0,0,0,.18);transition:box-shadow .2s ease}
.contact-link:hover{box-shadow:0 4px 14px rgba(0,0,0,.28)}
.contact-icon{width:44px;height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-text{max-width:0;opacity:0;overflow:hidden;white-space:nowrap;font-size:.88rem;font-weight:600;line-height:44px;padding:0;transition:max-width .3s ease,opacity .3s ease,padding .3s ease}
.contact-link:hover .contact-text{max-width:150px;opacity:1;padding:0 14px 0 6px}
.cwi-wa{background:#137035;color:#ffffff}
.cwi-wa .contact-icon{background:#137035;color:#ffffff}
.cwi-wa .contact-text{color:#fff;background:#137035}
#contact-widget-toggle,#toggleWidget{position:absolute;opacity:0;width:0;height:0;pointer-events:none;margin:0;padding:0}
.cwi-tel{background:#1e3a5f;color:#ffffff}
.cwi-tel .contact-icon{background:#1e3a5f;color:#ffffff}
.cwi-tel .contact-icon svg{stroke:#ffffff !important;fill:none !important}
.cwi-tel .contact-text{color:#fff;background:#1e3a5f}
.btn svg{stroke:currentColor;fill:none;vertical-align:middle}
.page-hero{background:linear-gradient(135deg,var(--azul) 0%,var(--azul-claro) 55%,#2a7fff 100%);color:var(--blanco);padding:4rem 0 3rem;text-align:center;position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");pointer-events:none}
.page-hero .container{position:relative;z-index:1}
.page-hero h1{color:var(--blanco);background:transparent;font-size:clamp(2rem,4vw,3rem);font-weight:700;margin-bottom:.6rem}
.page-hero p{color:rgba(255,255,255,.92);background:transparent;font-size:1.1rem;max-width:640px;margin:.6rem auto 0;text-shadow:0 1px 3px rgba(0,0,0,.2)}
.page-hero .btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.8rem;border-radius:var(--radius);font-weight:700;font-size:1.05rem;text-decoration:none;cursor:pointer;background:#fbbf24;color:#1a202c;border:none;margin-top:1.5rem}
.page-hero .btn:hover{background:#f59e0b;color:#1a202c;transform:translateY(-1px)}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:9999;background:var(--azul);color:#fff;padding:.5rem 1rem;border-radius:0 0 var(--radius) var(--radius);font-weight:600;text-decoration:none}
.skip-link:focus{left:50%;transform:translateX(-50%);width:auto;height:auto;top:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}