:root{--font-body: "Manrope", "Segoe UI", system-ui, -apple-system, Arial, sans-serif;--font-heading: "Sora", "Manrope", "Segoe UI", system-ui, -apple-system, Arial, sans-serif;--brand-950: #06131d;--brand-900: #0a1f2f;--brand-800: #0f2d43;--brand-700: #163a55;--brand-600: #1f4c6e;--brand-500: #2a5f86;--brand-400: #3b74a0;--brand-300: #5b93b7;--primary: #1f4c6e;--primary-strong: #163a55;--accent: #2d7ab7;--accent-soft: #e1eef7;--bg: #f4f7fb;--surface: #ffffff;--surface-2: #eef3f7;--text: #0b1a26;--muted: #556574;--muted-2: #7d8a96;--border: #d5e0e8;--shadow-sm: 0 6px 18px rgba(6, 19, 29, .08);--shadow-md: 0 18px 40px rgba(6, 19, 29, .14);--radius-sm: 10px;--radius-md: 14px;--radius-lg: 20px;--container-max: 1200px;--header-mobile: 64px;--header-desktop: 96px;--whatsapp: #25d366}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-body);color:var(--text);background:radial-gradient(1000px 500px at 8% -10%,rgba(45,122,183,.18),transparent 60%),radial-gradient(900px 500px at 100% 0%,rgba(22,58,85,.18),transparent 55%),linear-gradient(180deg,#f7fafc,#eef3f7);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;line-height:1.6}img{max-width:100%;height:auto;display:block}button,input,textarea,select{font-family:inherit}a{color:var(--accent);text-decoration:none}a:hover{color:var(--primary)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(45,122,183,.25);outline-offset:3px}::selection{background:#2d7ab733}.container{max-width:var(--container-max);margin:0 auto;padding:0 1rem}section{padding:clamp(2rem,5vw,3.5rem) 0}.page-section,section.page-section{padding:clamp(2.5rem,5vw,3.75rem) 0;scroll-margin-top:var(--header-mobile)}@media (min-width: 1024px){.page-section,section.page-section{scroll-margin-top:var(--header-desktop)}}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.01em}.page-title{font-size:clamp(1.9rem,3.8vw,2.8rem);font-weight:700;margin:0 0 1rem;line-height:1.1;color:var(--brand-800)}.section-title{font-size:clamp(1.4rem,2.6vw,2rem);font-weight:600;margin:0 0 .75rem;line-height:1.2;color:var(--brand-800)}.page-lead,.section-subtitle{margin:0 0 1.5rem;font-size:1rem;line-height:1.6;color:var(--muted)}h1,h2,h3{margin:0 0 .75rem;color:var(--brand-800)}h2{font-size:clamp(1.4rem,2.4vw,1.9rem)}h3{font-size:clamp(1.05rem,2vw,1.3rem);font-weight:600}p,li,span,a,button{overflow-wrap:break-word;word-break:normal}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.75rem 1.1rem;border-radius:var(--radius-md);text-decoration:none;font-weight:600;font-size:.95rem;border:1px solid transparent;transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease,color .15s ease}.btn.primary,.btn.quote-cta{background:var(--primary);color:#fff;box-shadow:var(--shadow-sm)}.btn.primary:hover,.btn.quote-cta:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn.secondary{background:var(--surface);border-color:var(--border);color:var(--primary)}.btn.secondary:hover{border-color:#1f4c6e59}.btn.ghost,.btn.outline{background:transparent;color:var(--primary);border-color:#1f4c6e66}.btn.ghost:hover,.btn.outline:hover{background:#1f4c6e14}.btn.green,.btn.whatsapp{background:var(--whatsapp);color:#fff;box-shadow:0 10px 22px #25d36640}.btn.green:hover,.btn.whatsapp:hover{filter:brightness(.98)}.btn:disabled,.btn.primary:disabled{background:#c9d1d6;color:#5a6872;cursor:not-allowed;box-shadow:none;opacity:1}.card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid rgba(11,26,38,.06);box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .15s ease}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.form-styled{display:grid;gap:1rem}.form-styled label{display:grid;gap:.45rem;font-size:.9rem}.form-styled input,.form-styled textarea,.form-styled select{border:1px solid #cfd9e2;border-radius:.65rem;padding:.7rem .8rem;font:inherit;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.form-styled input:focus,.form-styled textarea:focus,.form-styled select:focus{border-color:var(--accent);box-shadow:0 0 0 4px #2d7ab71f;outline:none}.form-styled .actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:1rem}.center{display:flex;align-items:center;justify-content:center}.muted{color:var(--muted)}.narrow-text{max-width:none}@media (min-width: 1200px){.container{padding:0 2rem}}
