:root{--font-sans:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,sans-serif;--color-primary:#0798b4;--shadow:0 4px 20px rgba(15,23,42,.08);--color-primary-dark:#067d94;--color-slate-800:#1e293b;--color-slate-400:#94a3b8;--header-h:72px;--color-slate-700:#334155;--color-slate-100:#f1f5f9;--radius-lg:20px;--container:min(1120px,100% - 2rem);--color-slate-600:#475569;--color-slate-900:#0f172a;--color-success:#10b981;--shadow-lg:0 20px 50px rgba(15,23,42,.12);--color-slate-50:#f8fafc;--radius:12px;--color-slate-500:#64748b;--color-white:#fff}*,:after,:before{padding:0;box-sizing:border-box;margin:0}html{scroll-behavior:smooth}body{font-size:1rem;color:var(--color-slate-800);background-color:var(--color-white);-webkit-font-smoothing:antialiased;line-height:1.6;font-family:var(--font-sans)}img{height:auto;max-width:100%;display:block}a{text-decoration:none;color:var(--color-primary)}a:hover{text-decoration:underline;color:var(--color-primary-dark)}a:focus-visible{outline-offset:2px;outline:2px solid var(--color-primary)}.site-nav{position:sticky;top:0;box-shadow:var(--shadow);background:var(--color-white);z-index:100}.nav-inner{height:var(--header-h);padding:0 1rem;justify-content:space-between;max-width:var(--container);gap:1rem;margin:0 auto}.nav-inner,.nav-logo{align-items:center;display:flex}.nav-logo-img{height:44px;width:auto}.nav-toggle{height:44px;padding:0;justify-content:center;border:none;flex-direction:column;gap:5px;border-radius:var(--radius);background:transparent;cursor:pointer;width:44px;display:none}.nav-toggle:focus-visible,.nav-toggle:hover{background:var(--color-slate-100)}.nav-toggle-bar{height:2px;transition:transform .2s;border-radius:1px;background:var(--color-slate-700);width:22px;display:block}.nav-toggle[aria-expanded=true] .nav-toggle-bar:first-child{transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-menu{list-style:none;gap:.25rem;align-items:center;display:flex}.nav-menu a{padding:.5rem .75rem;font-weight:500;color:var(--color-slate-700);border-radius:var(--radius)}.nav-menu a:hover{color:var(--color-primary);background:var(--color-slate-100)}.nav-cta .btn,.nav-menu a:hover{text-decoration:none}.btn{padding:.75rem 1.5rem;justify-content:center;font-size:.9375rem;border:none;font-weight:600;transition:background .2s,transform .15s;gap:.5rem;align-items:center;border-radius:99px;cursor:pointer;font-family:var(--font-sans);display:inline-flex}.btn:focus-visible{outline-offset:2px;outline:2px solid var(--color-primary)}.btn-primary{color:var(--color-white);background:var(--color-primary)}.btn-primary:hover{text-decoration:none;color:var(--color-white);background:var(--color-primary-dark)}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.btn-outline{border:2px solid var(--color-primary);color:var(--color-primary);background:transparent}.btn-outline:hover{text-decoration:none;color:var(--color-white);background:var(--color-primary)}.main-content{min-height:calc(100vh - var(--header-h) - 280px)}.section{padding:4rem 0}.section-alt{background:var(--color-slate-100)}.container{padding:0 1rem;max-width:var(--container);margin:0 auto}.page-header{padding:3rem 0 2rem;text-align:center}.page-header h1{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:800;margin-bottom:.75rem;color:var(--color-slate-900);letter-spacing:-.02em}.page-header .lead{font-size:1.125rem;color:var(--color-slate-600);max-width:560px;margin:0 auto}.hero{overflow:hidden;padding:4rem 0 5rem;color:var(--color-white);position:relative;background:linear-gradient(135deg,var(--color-slate-900) 0,var(--color-slate-800) 100%)}.hero:before{height:60vw;pointer-events:none;right:-10%;content:"";position:absolute;top:-20%;background:radial-gradient(circle,rgba(14,165,233,.2),transparent 60%);width:60vw}.hero-inner{grid-template-columns:1fr;padding:0 1rem;position:relative;max-width:var(--container);gap:2.5rem;margin:0 auto;align-items:center;display:grid;z-index:1}@media (min-width:768px){.hero-inner{grid-template-columns:1.1fr .9fr}}.hero-content h1{font-size:clamp(2rem,4.5vw,3rem);font-weight:800;margin-bottom:1.25rem;letter-spacing:-.03em;line-height:1.15}.hero-content .highlight{color:var(--color-primary)}.hero-content p{font-size:1.125rem;margin-bottom:1.75rem;color:var(--color-slate-400);max-width:480px}.hero-buttons{flex-wrap:wrap;gap:1rem;display:flex}.hero-buttons .btn-primary{color:var(--color-slate-900);background:var(--color-white)}.hero-buttons .btn-primary:hover{color:var(--color-slate-900);background:var(--color-slate-100)}.hero-buttons .btn-outline{border-color:hsla(0,0%,100%,.5);color:var(--color-white)}.hero-buttons .btn-outline:hover{color:var(--color-white);background:hsla(0,0%,100%,.15)}.hero-stats{gap:2rem;margin-top:2rem;display:flex}.hero-stats span{font-size:.875rem;color:var(--color-slate-400)}.hero-stats strong{font-size:1.5rem;color:var(--color-white);margin-top:.25rem;display:block}.services-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.service-card{padding:1.75rem;border:1px solid rgba(15,23,42,.06);transition:box-shadow .2s,transform .2s;box-shadow:var(--shadow);border-radius:var(--radius-lg);background:var(--color-white)}.service-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.service-card .icon{height:48px;justify-content:center;margin-bottom:1rem;align-items:center;border-radius:var(--radius);background:rgba(14,165,233,.12);width:48px;display:flex}.service-card .icon svg{height:24px;width:24px;stroke:var(--color-primary)}.service-card h3{font-size:1.125rem;font-weight:700;margin-bottom:.5rem;color:var(--color-slate-900)}.service-card p{font-size:.9375rem;color:var(--color-slate-600);line-height:1.55}.cta-band{padding:2.5rem 0;color:var(--color-white);text-align:center;background:var(--color-primary)}.cta-band h2{font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.cta-band p{margin-bottom:1.25rem;opacity:.95}.cta-band .btn{color:var(--color-primary);background:var(--color-white)}.cta-band .btn:hover{text-decoration:none;color:var(--color-primary-dark);background:var(--color-slate-100)}.price-section{max-width:900px;margin:0 auto}.price-toolbar{flex-wrap:wrap;margin-bottom:1rem;gap:.75rem;align-items:center;display:flex}.price-category-chip{padding:.4rem .9rem;font-size:.8125rem;border:1px solid var(--color-slate-300);font-weight:600;color:var(--color-slate-600);transition:all .2s;border-radius:99px;background:var(--color-white);cursor:pointer}.price-category-chip.active,.price-category-chip:hover{border-color:var(--color-primary);color:var(--color-white);background:var(--color-primary)}.price-search{flex:1;padding:.5rem 1rem;font-size:.9375rem;border:1px solid var(--color-slate-300);min-width:200px;border-radius:var(--radius);font-family:var(--font-sans)}.price-search:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px rgba(14,165,233,.15)}.price-table-wrap{overflow-x:auto;border:1px solid rgba(15,23,42,.08);box-shadow:var(--shadow);border-radius:var(--radius-lg)}.price-table{font-size:.9375rem;border-collapse:collapse;width:100%}.price-table td,.price-table th{padding:.875rem 1rem;border-bottom:1px solid var(--color-slate-100);text-align:left}.price-table th{font-weight:600;color:var(--color-slate-700);background:var(--color-slate-100)}.price-table tr:last-child td{border-bottom:none}.price-table tbody tr:hover td{background:var(--color-slate-50)}.price-table .price-cell{font-weight:700;color:var(--color-success);white-space:nowrap}.price-empty{padding:3rem 1rem;color:var(--color-slate-500);text-align:center}.contact-grid{grid-template-columns:1fr;max-width:1000px;gap:2rem;margin:0 auto;display:grid}@media (min-width:768px){.contact-grid{grid-template-columns:1fr 1fr}}.contact-info{padding:1.75rem;border-radius:var(--radius-lg);background:var(--color-slate-100)}.contact-info h2{font-size:1.25rem;font-weight:700;margin-bottom:1rem;color:var(--color-slate-900)}.contact-info p{margin-bottom:.5rem;color:var(--color-slate-700)}.contact-info a{font-weight:500}.contact-form-wrap{padding:1.75rem;border:1px solid rgba(15,23,42,.06);box-shadow:var(--shadow);border-radius:var(--radius-lg);background:var(--color-white)}.contact-form-wrap h2{font-size:1.25rem;font-weight:700;margin-bottom:1rem;color:var(--color-slate-900)}.form-group{margin-bottom:1rem}.form-group label{font-size:.9375rem;font-weight:500;margin-bottom:.35rem;color:var(--color-slate-700);display:block}.form-group input,.form-group textarea{padding:.6rem .75rem;font-size:.9375rem;border:1px solid var(--color-slate-300);border-radius:var(--radius);width:100%;font-family:var(--font-sans)}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px rgba(14,165,233,.15)}.form-group textarea{min-height:120px;resize:vertical}.map-frame{overflow:hidden;border:1px solid var(--color-slate-200);border-radius:var(--radius-lg);margin-top:2rem}.map-frame iframe{height:320px;border:0;width:100%}.about-content{max-width:720px;margin:0 auto}.about-content h2{font-size:1.375rem;font-weight:700;margin-bottom:.75rem;color:var(--color-slate-900);margin-top:2rem}.about-content p{margin-bottom:1rem;color:var(--color-slate-600)}.about-content ul{color:var(--color-slate-600);margin:1rem 0 1rem 1.5rem}.about-content li{margin-bottom:.5rem}.site-footer{padding:3rem 0 1.5rem;color:var(--color-slate-400);background:var(--color-slate-900);margin-top:4rem}.footer-inner{padding:0 1rem;max-width:var(--container);margin:0 auto}.footer-grid{grid-template-columns:1fr;margin-bottom:2rem;gap:2rem;display:grid}@media (min-width:640px){.footer-grid{grid-template-columns:1.5fr 1fr 1fr}}.footer-brand img{height:40px;filter:brightness(0) invert(1);margin-bottom:.5rem;width:auto}.footer-tagline{font-size:.875rem;opacity:.9}.footer-about{font-size:.9375rem;color:rgba(148,163,184,.92);max-width:46ch;margin-top:.75rem}.footer-about strong{font-weight:700;color:var(--color-white)}.footer-badges{list-style:none;font-size:.9375rem;color:rgba(148,163,184,.92);gap:.35rem;margin-top:1rem;display:grid}.footer-badges li{gap:.5rem;align-items:center;display:flex}.footer-badges li:before{flex:0 0 10px;height:10px;content:"";box-shadow:0 0 0 1px rgba(7,152,180,.5);border-radius:999px;background:rgba(7,152,180,.35);width:10px}.footer-pills{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.footer-pill{padding:.35rem .6rem;font-size:.8125rem;border:1px solid hsla(0,0%,100%,.12);font-weight:600;color:var(--color-white);align-items:center;border-radius:999px;background:hsla(0,0%,100%,.08);display:inline-flex}.footer-heading{font-size:.875rem;font-weight:700;margin-bottom:.75rem;color:var(--color-white);text-transform:uppercase;letter-spacing:.05em}.footer-links ul{list-style:none}.footer-contact a,.footer-links a{color:var(--color-slate-400)}.footer-contact a:hover,.footer-links a:hover{text-decoration:none;color:var(--color-white)}.footer-contact p{font-size:.9375rem;margin-bottom:.35rem}.footer-bottom{padding-top:1.5rem;border-top:1px solid var(--color-slate-700);text-align:center}.footer-bottom p{font-size:.875rem;opacity:.8}.fab-whatsapp{height:56px;overflow:hidden;justify-content:center;right:1.25rem;position:fixed;bottom:1.75rem;align-items:center;box-shadow:0 18px 40px rgba(0,0,0,.35);border-radius:999px;background:#25d366;width:56px;display:inline-flex;z-index:90}.fab-whatsapp img{height:56px;width:56px;display:block}.fab-whatsapp:hover{transform:translateY(-1px)}@media (max-width:480px){.fab-whatsapp{right:1rem;bottom:1.25rem}.fab-whatsapp,.fab-whatsapp img{height:52px;width:52px}}@media (max-width:767px){.nav-toggle{display:flex}.nav-menu{transform:translateY(-100%);padding:1rem;right:0;transition:transform .25s,opacity .25s,visibility .25s;position:fixed;flex-direction:column;opacity:0;visibility:hidden;gap:0;top:var(--header-h);box-shadow:var(--shadow-lg);background:var(--color-white);left:0}.nav-menu.is-open{transform:translateY(0);opacity:1;visibility:visible}.nav-menu li{width:100%}.nav-menu a{padding:.75rem 1rem;display:block}.nav-cta{padding-top:.5rem;border-top:1px solid var(--color-slate-100);margin-top:.5rem}}.sr-only{height:1px;overflow:hidden;padding:0;border:0;clip:rect(0,0,0,0);position:absolute;margin:-1px;width:1px;white-space:nowrap}