/* Limpiezas A. Tena · estilos comunes (generado 2026-10-21) */

    /* ==== FUENTES AUTOALOJADAS (sin Google Fonts: RGPD + rendimiento) ==== */
    @font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 200 800; font-display: swap; src: url(/assets/fonts/plus-jakarta-sans-var-latin.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
    @font-face { font-family: 'Inter'; font-style: normal; font-weight: 100 900; font-display: swap; src: url(/assets/fonts/inter-var-latin.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }

    /* ==== ENLACES DE TARJETA Y PIE (mismo aspecto, ahora enlazables) ==== */
    .card-link { color: inherit; }
    .card-link::after { content: ""; position: absolute; inset: 0; z-index: 2; border-radius: inherit; }
    .service-card:has(.card-link) { cursor: pointer; }
    .card-link:focus-visible { outline: none; }
    .service-card:has(.card-link:focus-visible) { outline: 3px solid var(--accent); outline-offset: 2px; }
    .footer h3 { font-weight: 700; color: var(--white); margin-bottom: 1rem; font-size: 1rem; }
    .footer-legal button { background: none; border: 0; color: inherit; font: inherit; cursor: pointer; padding: 0; }
    .footer-legal button:hover { color: var(--accent-light); }

/* Iconos: Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com
   Licencia CC BY 4.0 (iconos). Renderizados como máscara SVG autoalojada. */
.fa-solid,.fa-brands{display:inline-block;height:1em;width:var(--fa-w,1em);vertical-align:-.125em;background-color:currentColor;-webkit-mask:var(--fa-i) center/contain no-repeat;mask:var(--fa-i) center/contain no-repeat;font-style:normal;line-height:1;flex-shrink:0}
.fa-phone-volume{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M280 0C408.1 0 512 103.9 512 232c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-101.6-82.4-184-184-184c-13.3 0-24-10.7-24-24s10.7-24 24-24zm8 192a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm-32-72c0-13.3 10.7-24 24-24c75.1 0 136 60.9 136 136c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-48.6-39.4-88-88-88c-13.3 0-24-10.7-24-24zM117.5 1.4c19.4-5.3 39.7 4.6 47.4 23.2l40 96c6.8 16.3 2.1 35.2-11.6 46.3L144 207.3c33.3 70.4 90.3 127.4 160.7 160.7L345 318.7c11.2-13.7 30-18.4 46.3-11.6l96 40c18.6 7.7 28.5 28 23.2 47.4l-24 88C481.8 499.9 466 512 448 512C200.6 512 0 311.4 0 64C0 46 12.1 30.2 29.5 25.4l88-24z'/%3E%3C/svg%3E")}
.fa-bars{--fa-w:0.8750em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z'/%3E%3C/svg%3E")}
.fa-xmark{--fa-w:0.7500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z'/%3E%3C/svg%3E")}
.fa-arrow-right{--fa-w:0.8750em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/%3E%3C/svg%3E")}
.fa-check{--fa-w:0.8750em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E")}
.fa-award{--fa-w:0.7500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M173.8 5.5c11-7.3 25.4-7.3 36.4 0L228 17.2c6 3.9 13 5.8 20.1 5.4l21.3-1.3c13.2-.8 25.6 6.4 31.5 18.2l9.6 19.1c3.2 6.4 8.4 11.5 14.7 14.7L344.5 83c11.8 5.9 19 18.3 18.2 31.5l-1.3 21.3c-.4 7.1 1.5 14.2 5.4 20.1l11.8 17.8c7.3 11 7.3 25.4 0 36.4L366.8 228c-3.9 6-5.8 13-5.4 20.1l1.3 21.3c.8 13.2-6.4 25.6-18.2 31.5l-19.1 9.6c-6.4 3.2-11.5 8.4-14.7 14.7L301 344.5c-5.9 11.8-18.3 19-31.5 18.2l-21.3-1.3c-7.1-.4-14.2 1.5-20.1 5.4l-17.8 11.8c-11 7.3-25.4 7.3-36.4 0L156 366.8c-6-3.9-13-5.8-20.1-5.4l-21.3 1.3c-13.2 .8-25.6-6.4-31.5-18.2l-9.6-19.1c-3.2-6.4-8.4-11.5-14.7-14.7L39.5 301c-11.8-5.9-19-18.3-18.2-31.5l1.3-21.3c.4-7.1-1.5-14.2-5.4-20.1L5.5 210.2c-7.3-11-7.3-25.4 0-36.4L17.2 156c3.9-6 5.8-13 5.4-20.1l-1.3-21.3c-.8-13.2 6.4-25.6 18.2-31.5l19.1-9.6C65 70.2 70.2 65 73.4 58.6L83 39.5c5.9-11.8 18.3-19 31.5-18.2l21.3 1.3c7.1 .4 14.2-1.5 20.1-5.4L173.8 5.5zM272 192a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zM1.3 441.8L44.4 339.3c.2 .1 .3 .2 .4 .4l9.6 19.1c11.7 23.2 36 37.3 62 35.8l21.3-1.3c.2 0 .5 0 .7 .2l17.8 11.8c5.1 3.3 10.5 5.9 16.1 7.7l-37.6 89.3c-2.3 5.5-7.4 9.2-13.3 9.7s-11.6-2.2-14.8-7.2L74.4 455.5l-56.1 8.3c-5.7 .8-11.4-1.5-15-6s-4.3-10.7-2.1-16zm248 60.4L211.7 413c5.6-1.8 11-4.3 16.1-7.7l17.8-11.8c.2-.1 .4-.2 .7-.2l21.3 1.3c26 1.5 50.3-12.6 62-35.8l9.6-19.1c.1-.2 .2-.3 .4-.4l43.2 102.5c2.2 5.3 1.4 11.4-2.1 16s-9.3 6.9-15 6l-56.1-8.3-32.2 49.2c-3.2 5-8.9 7.7-14.8 7.2s-11-4.3-13.3-9.7z'/%3E%3C/svg%3E")}
.fa-building{--fa-w:0.7500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h96c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM80 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V112zM272 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16z'/%3E%3C/svg%3E")}
.fa-broom{--fa-w:1.1250em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M566.6 54.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192-34.7-34.7c-4.2-4.2-10-6.6-16-6.6c-12.5 0-22.6 10.1-22.6 22.6v29.1L364.3 320h29.1c12.5 0 22.6-10.1 22.6-22.6c0-6-2.4-11.8-6.6-16l-34.7-34.7 192-192zM341.1 353.4L222.6 234.9c-42.7-3.7-85.2 11.7-115.8 42.3l-8 8C76.5 307.5 64 337.7 64 369.2c0 6.8 7.1 11.2 13.2 8.2l51.1-25.5c5-2.5 9.5 4.1 5.4 7.9L7.3 473.4C2.7 477.6 0 483.6 0 489.9C0 502.1 9.9 512 22.1 512l173.3 0c38.8 0 75.9-15.4 103.4-42.8c30.6-30.6 45.9-73.1 42.3-115.8z'/%3E%3C/svg%3E")}
.fa-spray-can-sparkles{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M96 32v96H224V32c0-17.7-14.3-32-32-32H128C110.3 0 96 14.3 96 32zm0 128c-53 0-96 43-96 96V464c0 26.5 21.5 48 48 48H272c26.5 0 48-21.5 48-48V256c0-53-43-96-96-96H96zm64 96a80 80 0 1 1 0 160 80 80 0 1 1 0-160zM384 48c0-1.4-1-3-2.2-3.6L352 32 339.6 2.2C339 1 337.4 0 336 0s-3 1-3.6 2.2L320 32 290.2 44.4C289 45 288 46.6 288 48c0 1.4 1 3 2.2 3.6L320 64l12.4 29.8C333 95 334.6 96 336 96s3-1 3.6-2.2L352 64l29.8-12.4C383 51 384 49.4 384 48zm76.4 45.8C461 95 462.6 96 464 96s3-1 3.6-2.2L480 64l29.8-12.4C511 51 512 49.4 512 48c0-1.4-1-3-2.2-3.6L480 32 467.6 2.2C467 1 465.4 0 464 0s-3 1-3.6 2.2L448 32 418.2 44.4C417 45 416 46.6 416 48c0 1.4 1 3 2.2 3.6L448 64l12.4 29.8zm7.2 100.4c-.6-1.2-2.2-2.2-3.6-2.2s-3 1-3.6 2.2L448 224l-29.8 12.4c-1.2 .6-2.2 2.2-2.2 3.6c0 1.4 1 3 2.2 3.6L448 256l12.4 29.8c.6 1.2 2.2 2.2 3.6 2.2s3-1 3.6-2.2L480 256l29.8-12.4c1.2-.6 2.2-2.2 2.2-3.6c0-1.4-1-3-2.2-3.6L480 224l-12.4-29.8zM448 144c0-1.4-1-3-2.2-3.6L416 128 403.6 98.2C403 97 401.4 96 400 96s-3 1-3.6 2.2L384 128l-29.8 12.4c-1.2 .6-2.2 2.2-2.2 3.6c0 1.4 1 3 2.2 3.6L384 160l12.4 29.8c.6 1.2 2.2 2.2 3.6 2.2s3-1 3.6-2.2L416 160l29.8-12.4c1.2-.6 2.2-2.2 2.2-3.6z'/%3E%3C/svg%3E")}
.fa-warehouse{--fa-w:1.2500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M0 488V171.3c0-26.2 15.9-49.7 40.2-59.4L308.1 4.8c7.6-3.1 16.1-3.1 23.8 0L599.8 111.9c24.3 9.7 40.2 33.3 40.2 59.4V488c0 13.3-10.7 24-24 24H568c-13.3 0-24-10.7-24-24V224c0-17.7-14.3-32-32-32H128c-17.7 0-32 14.3-32 32V488c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24zm488 24l-336 0c-13.3 0-24-10.7-24-24V432H512l0 56c0 13.3-10.7 24-24 24zM128 400V336H512v64H128zm0-96V224H512l0 80H128z'/%3E%3C/svg%3E")}
.fa-helmet-safety,.fa-hard-hat{--fa-w:1.1250em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M256 32c-17.7 0-32 14.3-32 32v2.3 99.6c0 5.6-4.5 10.1-10.1 10.1c-3.6 0-7-1.9-8.8-5.1L157.1 87C83 123.5 32 199.8 32 288v64H544l0-66.4c-.9-87.2-51.7-162.4-125.1-198.6l-48 83.9c-1.8 3.2-5.2 5.1-8.8 5.1c-5.6 0-10.1-4.5-10.1-10.1V66.3 64c0-17.7-14.3-32-32-32H256zM16.6 384C7.4 384 0 391.4 0 400.6c0 4.7 2 9.2 5.8 11.9C27.5 428.4 111.8 480 288 480s260.5-51.6 282.2-67.5c3.8-2.8 5.8-7.2 5.8-11.9c0-9.2-7.4-16.6-16.6-16.6H16.6z'/%3E%3C/svg%3E")}
.fa-store{--fa-w:1.1250em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M547.6 103.8L490.3 13.1C485.2 5 476.1 0 466.4 0H109.6C99.9 0 90.8 5 85.7 13.1L28.3 103.8c-29.6 46.8-3.4 111.9 51.9 119.4c4 .5 8.1 .8 12.1 .8c26.1 0 49.3-11.4 65.2-29c15.9 17.6 39.1 29 65.2 29c26.1 0 49.3-11.4 65.2-29c15.9 17.6 39.1 29 65.2 29c26.2 0 49.3-11.4 65.2-29c16 17.6 39.1 29 65.2 29c4.1 0 8.1-.3 12.1-.8c55.5-7.4 81.8-72.5 52.1-119.4zM499.7 254.9l-.1 0c-5.3 .7-10.7 1.1-16.2 1.1c-12.4 0-24.3-1.9-35.4-5.3V384H128V250.6c-11.2 3.5-23.2 5.4-35.6 5.4c-5.5 0-11-.4-16.3-1.1l-.1 0c-4.1-.6-8.1-1.3-12-2.3V384v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V384 252.6c-4 1-8 1.8-12.3 2.3z'/%3E%3C/svg%3E")}
.fa-trophy{--fa-w:1.1250em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M400 0H176c-26.5 0-48.1 21.8-47.1 48.2c.2 5.3 .4 10.6 .7 15.8H24C10.7 64 0 74.7 0 88c0 92.6 33.5 157 78.5 200.7c44.3 43.1 98.3 64.8 138.1 75.8c23.4 6.5 39.4 26 39.4 45.6c0 20.9-17 37.9-37.9 37.9H192c-17.7 0-32 14.3-32 32s14.3 32 32 32H384c17.7 0 32-14.3 32-32s-14.3-32-32-32H357.9C337 448 320 431 320 410.1c0-19.6 15.9-39.2 39.4-45.6c39.9-11 93.9-32.7 138.2-75.8C542.5 245 576 180.6 576 88c0-13.3-10.7-24-24-24H446.4c.3-5.2 .5-10.4 .7-15.8C448.1 21.8 426.5 0 400 0zM48.9 112h84.4c9.1 90.1 29.2 150.3 51.9 190.6c-24.9-11-50.8-26.5-73.2-48.3c-32-31.1-58-76-63-142.3zM464.1 254.3c-22.4 21.8-48.3 37.3-73.2 48.3c22.7-40.3 42.8-100.5 51.9-190.6h84.4c-5.1 66.3-31.1 111.2-63 142.3z'/%3E%3C/svg%3E")}
.fa-user-shield{--fa-w:1.2500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c1.8 0 3.5-.2 5.3-.5c-76.3-55.1-99.8-141-103.1-200.2c-16.1-4.8-33.1-7.3-50.7-7.3H178.3zm308.8-78.3l-120 48C358 277.4 352 286.2 352 296c0 63.3 25.9 168.8 134.8 214.2c5.9 2.5 12.6 2.5 18.5 0C614.1 464.8 640 359.3 640 296c0-9.8-6-18.6-15.1-22.3l-120-48c-5.7-2.3-12.1-2.3-17.8 0zM591.4 312c-3.9 50.7-27.2 116.7-95.4 149.7V273.8L591.4 312z'/%3E%3C/svg%3E")}
.fa-gem{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M116.7 33.8c4.5-6.1 11.7-9.8 19.3-9.8H376c7.6 0 14.8 3.6 19.3 9.8l112 152c6.8 9.2 6.1 21.9-1.5 30.4l-232 256c-4.5 5-11 7.9-17.8 7.9s-13.2-2.9-17.8-7.9l-232-256c-7.7-8.5-8.3-21.2-1.5-30.4l112-152zm38.5 39.8c-3.3 2.5-4.2 7-2.1 10.5l57.4 95.6L63.3 192c-4.1 .3-7.3 3.8-7.3 8s3.2 7.6 7.3 8l192 16c.4 0 .9 0 1.3 0l192-16c4.1-.3 7.3-3.8 7.3-8s-3.2-7.6-7.3-8L301.5 179.8l57.4-95.6c2.1-3.5 1.2-8.1-2.1-10.5s-7.9-2-10.7 1L256 172.2 165.9 74.6c-2.8-3-7.4-3.4-10.7-1z'/%3E%3C/svg%3E")}
.fa-file-invoice{--fa-w:0.7500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM80 64h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16s7.2-16 16-16zm16 96H288c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V256c0-17.7 14.3-32 32-32zm0 32v64H288V256H96zM240 416h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H240c-8.8 0-16-7.2-16-16s7.2-16 16-16z'/%3E%3C/svg%3E")}
.fa-star{--fa-w:1.1250em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z'/%3E%3C/svg%3E")}
.fa-envelope{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z'/%3E%3C/svg%3E")}
.fa-location-dot{--fa-w:0.7500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z'/%3E%3C/svg%3E")}
.fa-circle-check{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z'/%3E%3C/svg%3E")}
.fa-circle-exclamation{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z'/%3E%3C/svg%3E")}
.fa-paper-plane{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480V396.4c0-4 1.5-7.8 4.2-10.7L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z'/%3E%3C/svg%3E")}
.fa-phone{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z'/%3E%3C/svg%3E")}
.fa-chevron-right{--fa-w:0.6250em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z'/%3E%3C/svg%3E")}
.fa-chevron-down{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z'/%3E%3C/svg%3E")}
.fa-clock{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z'/%3E%3C/svg%3E")}
.fa-shield-halved{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 0c4.6 0 9.2 1 13.4 2.9L457.7 82.8c22 9.3 38.4 31 38.3 57.2c-.5 99.2-41.3 280.7-213.6 363.2c-16.7 8-36.1 8-52.8 0C57.3 420.7 16.5 239.2 16 140c-.1-26.2 16.3-47.9 38.3-57.2L242.7 2.9C246.8 1 251.4 0 256 0zm0 66.8V444.8C394 378 431.1 230.1 432 141.4L256 66.8l0 0z'/%3E%3C/svg%3E")}
.fa-list-check{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M152.1 38.2c9.9 8.9 10.7 24 1.8 33.9l-72 80c-4.4 4.9-10.6 7.8-17.2 7.9s-12.9-2.4-17.6-7L7 113C-2.3 103.6-2.3 88.4 7 79s24.6-9.4 33.9 0l22.1 22.1 55.1-61.2c8.9-9.9 24-10.7 33.9-1.8zm0 160c9.9 8.9 10.7 24 1.8 33.9l-72 80c-4.4 4.9-10.6 7.8-17.2 7.9s-12.9-2.4-17.6-7L7 273c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l22.1 22.1 55.1-61.2c8.9-9.9 24-10.7 33.9-1.8zM224 96c0-17.7 14.3-32 32-32H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32zm0 160c0-17.7 14.3-32 32-32H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32zM160 416c0-17.7 14.3-32 32-32H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H192c-17.7 0-32-14.3-32-32zM48 368a48 48 0 1 1 0 96 48 48 0 1 1 0-96z'/%3E%3C/svg%3E")}
.fa-people-group{--fa-w:1.2500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M72 88a56 56 0 1 1 112 0A56 56 0 1 1 72 88zM64 245.7C54 256.9 48 271.8 48 288s6 31.1 16 42.3V245.7zm144.4-49.3C178.7 222.7 160 261.2 160 304c0 34.3 12 65.8 32 90.5V416c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V389.2C26.2 371.2 0 332.7 0 288c0-61.9 50.1-112 112-112h32c24 0 46.2 7.5 64.4 20.3zM448 416V394.5c20-24.7 32-56.2 32-90.5c0-42.8-18.7-81.3-48.4-107.7C449.8 183.5 472 176 496 176h32c61.9 0 112 50.1 112 112c0 44.7-26.2 83.2-64 101.2V416c0 17.7-14.3 32-32 32H480c-17.7 0-32-14.3-32-32zm8-328a56 56 0 1 1 112 0A56 56 0 1 1 456 88zM576 245.7v84.7c10-11.3 16-26.1 16-42.3s-6-31.1-16-42.3zM320 32a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM240 304c0 16.2 6 31 16 42.3V261.7c-10 11.3-16 26.1-16 42.3zm144-42.3v84.7c10-11.3 16-26.1 16-42.3s-6-31.1-16-42.3zM448 304c0 44.7-26.2 83.2-64 101.2V448c0 17.7-14.3 32-32 32H288c-17.7 0-32-14.3-32-32V405.2c-37.8-18-64-56.5-64-101.2c0-61.9 50.1-112 112-112h32c61.9 0 112 50.1 112 112z'/%3E%3C/svg%3E")}
.fa-calendar-check{--fa-w:0.8750em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M128 0c17.7 0 32 14.3 32 32V64H288V32c0-17.7 14.3-32 32-32s32 14.3 32 32V64h48c26.5 0 48 21.5 48 48v48H0V112C0 85.5 21.5 64 48 64H96V32c0-17.7 14.3-32 32-32zM0 192H448V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V192zM329 305c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-95 95-47-47c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l64 64c9.4 9.4 24.6 9.4 33.9 0L329 305z'/%3E%3C/svg%3E")}
.fa-industry{--fa-w:1.1250em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M64 32C46.3 32 32 46.3 32 64V304v48 80c0 26.5 21.5 48 48 48H496c26.5 0 48-21.5 48-48V304 152.2c0-18.2-19.4-29.7-35.4-21.1L352 215.4V152.2c0-18.2-19.4-29.7-35.4-21.1L160 215.4V64c0-17.7-14.3-32-32-32H64z'/%3E%3C/svg%3E")}
.fa-map-location-dot{--fa-w:1.1250em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M408 120c0 54.6-73.1 151.9-105.2 192c-7.7 9.6-22 9.6-29.6 0C241.1 271.9 168 174.6 168 120C168 53.7 221.7 0 288 0s120 53.7 120 120zm8 80.4c3.5-6.9 6.7-13.8 9.6-20.6c.5-1.2 1-2.5 1.5-3.7l116-46.4C558.9 123.4 576 135 576 152V422.8c0 9.8-6 18.6-15.1 22.3L416 503V200.4zM137.6 138.3c2.4 14.1 7.2 28.3 12.8 41.5c2.9 6.8 6.1 13.7 9.6 20.6V451.8L32.9 502.7C17.1 509 0 497.4 0 480.4V209.6c0-9.8 6-18.6 15.1-22.3l122.6-49zM327.8 332c13.9-17.4 35.7-45.7 56.2-77V504.3L192 449.4V255c20.5 31.3 42.3 59.6 56.2 77c20.5 25.6 59.1 25.6 79.6 0zM288 152a40 40 0 1 0 0-80 40 40 0 1 0 0 80z'/%3E%3C/svg%3E")}
.fa-leaf{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M272 96c-78.6 0-145.1 51.5-167.7 122.5c33.6-17 71.5-26.5 111.7-26.5h88c8.8 0 16 7.2 16 16s-7.2 16-16 16H288 216s0 0 0 0c-16.6 0-32.7 1.9-48.3 5.4c-25.9 5.9-49.9 16.4-71.4 30.7c0 0 0 0 0 0C38.3 298.8 0 364.9 0 440v16c0 13.3 10.7 24 24 24s24-10.7 24-24V440c0-48.7 20.7-92.5 53.8-123.2C121.6 392.3 190.3 448 272 448l1 0c132.1-.7 239-130.9 239-291.4c0-42.6-7.5-83.1-21.1-119.6c-2.6-6.9-12.7-6.6-16.2-.1C455.9 72.1 418.7 96 376 96L272 96z'/%3E%3C/svg%3E")}
.fa-building-user{--fa-w:1.2500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h89.9c-6.3-10.2-9.9-22.2-9.9-35.1c0-46.9 25.8-87.8 64-109.2V271.8 48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM80 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V112zM272 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zM576 272a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zM352 477.1c0 19.3 15.6 34.9 34.9 34.9H605.1c19.3 0 34.9-15.6 34.9-34.9c0-51.4-41.7-93.1-93.1-93.1H445.1c-51.4 0-93.1 41.7-93.1 93.1z'/%3E%3C/svg%3E")}
.fa-car{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M135.2 117.4L109.1 192H402.9l-26.1-74.6C372.3 104.6 360.2 96 346.6 96H165.4c-13.6 0-25.7 8.6-30.2 21.4zM39.6 196.8L74.8 96.3C88.3 57.8 124.6 32 165.4 32H346.6c40.8 0 77.1 25.8 90.6 64.3l35.2 100.5c23.2 9.6 39.6 32.5 39.6 59.2V400v48c0 17.7-14.3 32-32 32H448c-17.7 0-32-14.3-32-32V400H96v48c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32V400 256c0-26.7 16.4-49.6 39.6-59.2zM128 288a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm288 32a32 32 0 1 0 0-64 32 32 0 1 0 0 64z'/%3E%3C/svg%3E")}
.fa-people-roof{--fa-w:1.2500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M335.5 4l288 160c15.4 8.6 21 28.1 12.4 43.5s-28.1 21-43.5 12.4L320 68.6 47.5 220c-15.4 8.6-34.9 3-43.5-12.4s-3-34.9 12.4-43.5L304.5 4c9.7-5.4 21.4-5.4 31.1 0zM320 160a40 40 0 1 1 0 80 40 40 0 1 1 0-80zM144 256a40 40 0 1 1 0 80 40 40 0 1 1 0-80zm312 40a40 40 0 1 1 80 0 40 40 0 1 1 -80 0zM226.9 491.4L200 441.5V480c0 17.7-14.3 32-32 32H120c-17.7 0-32-14.3-32-32V441.5L61.1 491.4c-6.3 11.7-20.8 16-32.5 9.8s-16-20.8-9.8-32.5l37.9-70.3c15.3-28.5 45.1-46.3 77.5-46.3h19.5c16.3 0 31.9 4.5 45.4 12.6l33.6-62.3c15.3-28.5 45.1-46.3 77.5-46.3h19.5c32.4 0 62.1 17.8 77.5 46.3l33.6 62.3c13.5-8.1 29.1-12.6 45.4-12.6h19.5c32.4 0 62.1 17.8 77.5 46.3l37.9 70.3c6.3 11.7 1.9 26.2-9.8 32.5s-26.2 1.9-32.5-9.8L552 441.5V480c0 17.7-14.3 32-32 32H472c-17.7 0-32-14.3-32-32V441.5l-26.9 49.9c-6.3 11.7-20.8 16-32.5 9.8s-16-20.8-9.8-32.5l36.3-67.5c-1.7-1.7-3.2-3.6-4.3-5.8L376 345.5V400c0 17.7-14.3 32-32 32H296c-17.7 0-32-14.3-32-32V345.5l-26.9 49.9c-1.2 2.2-2.6 4.1-4.3 5.8l36.3 67.5c6.3 11.7 1.9 26.2-9.8 32.5s-26.2 1.9-32.5-9.8z'/%3E%3C/svg%3E")}
.fa-hand-sparkles{--fa-w:1.2500em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M320 0c17.7 0 32 14.3 32 32V240c0 8.8 7.2 16 16 16s16-7.2 16-16V64c0-17.7 14.3-32 32-32s32 14.3 32 32V240c0 8.8 7.2 16 16 16s16-7.2 16-16V128c0-17.7 14.3-32 32-32s32 14.3 32 32V323.1c-11.9 4.8-21.3 14.9-25 27.8l-8.9 31.2L478.9 391C460.6 396.3 448 413 448 432c0 18.9 12.5 35.6 30.6 40.9C448.4 497.4 409.9 512 368 512H348.8c-59.6 0-116.9-22.9-160-64L76.4 341c-16-15.2-16.6-40.6-1.4-56.6s40.6-16.6 56.6-1.4l60.5 57.6c0-1.5-.1-3.1-.1-4.6V64c0-17.7 14.3-32 32-32s32 14.3 32 32V240c0 8.8 7.2 16 16 16s16-7.2 16-16V32c0-17.7 14.3-32 32-32zm-7.3 326.6c-1.1-3.9-4.7-6.6-8.7-6.6s-7.6 2.7-8.7 6.6L288 352l-25.4 7.3c-3.9 1.1-6.6 4.7-6.6 8.7s2.7 7.6 6.6 8.7L288 384l7.3 25.4c1.1 3.9 4.7 6.6 8.7 6.6s7.6-2.7 8.7-6.6L320 384l25.4-7.3c3.9-1.1 6.6-4.7 6.6-8.7s-2.7-7.6-6.6-8.7L320 352l-7.3-25.4zM104 120l48.3 13.8c4.6 1.3 7.7 5.5 7.7 10.2s-3.1 8.9-7.7 10.2L104 168 90.2 216.3c-1.3 4.6-5.5 7.7-10.2 7.7s-8.9-3.1-10.2-7.7L56 168 7.7 154.2C3.1 152.9 0 148.7 0 144s3.1-8.9 7.7-10.2L56 120 69.8 71.7C71.1 67.1 75.3 64 80 64s8.9 3.1 10.2 7.7L104 120zM584 408l48.3 13.8c4.6 1.3 7.7 5.5 7.7 10.2s-3.1 8.9-7.7 10.2L584 456l-13.8 48.3c-1.3 4.6-5.5 7.7-10.2 7.7s-8.9-3.1-10.2-7.7L536 456l-48.3-13.8c-4.6-1.3-7.7-5.5-7.7-10.2s3.1-8.9 7.7-10.2L536 408l13.8-48.3c1.3-4.6 5.5-7.7 10.2-7.7s8.9 3.1 10.2 7.7L584 408z'/%3E%3C/svg%3E")}
.fa-route{--fa-w:1.0000em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M512 96c0 50.2-59.1 125.1-84.6 155c-3.8 4.4-9.4 6.1-14.5 5H320c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c53 0 96 43 96 96s-43 96-96 96H139.6c8.7-9.9 19.3-22.6 30-36.8c6.3-8.4 12.8-17.6 19-27.2H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-53 0-96-43-96-96s43-96 96-96h39.8c-21-31.5-39.8-67.7-39.8-96c0-53 43-96 96-96s96 43 96 96zM117.1 489.1c-3.8 4.3-7.2 8.1-10.1 11.3l-1.8 2-.2-.2c-6 4.6-14.6 4-20-1.8C59.8 473 0 402.5 0 352c0-53 43-96 96-96s96 43 96 96c0 30-21.1 67-43.5 97.9c-10.7 14.7-21.7 28-30.8 38.5l-.6 .7zM128 352a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM416 128a32 32 0 1 0 0-64 32 32 0 1 0 0 64z'/%3E%3C/svg%3E")}
.fa-whatsapp{--fa-w:0.8750em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z'/%3E%3C/svg%3E")}
.fa-google{--fa-w:0.9531em;--fa-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 488 512'%3E%3Cpath d='M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z'/%3E%3C/svg%3E")}


    /* ==== RESET & BASE ==== */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
    body { font-family: 'Inter', system-ui, sans-serif; color: #0f172a; background: #fff; -webkit-font-smoothing: antialiased; line-height: 1.6; }
    img { max-width: 100%; height: auto; display: block; }
    a { text-decoration: none; color: inherit; }
    button, input, select, textarea { font: inherit; }
    h1, h2, h3, h4, h5, h6 { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; letter-spacing: -0.02em; line-height: 1.1; }
    ::selection { background: rgba(2,132,199,0.15); }

    /* ==== CSS VARIABLES ==== */
    :root {
      --accent: #0284c7;
      --accent-dark: #0369a1;
      --accent-light: #38bdf8;
      --ink: #0f172a;
      --ink-soft: #1e293b;
      --slate-50: #f8fafc;
      --slate-100: #f1f5f9;
      --slate-200: #e2e8f0;
      --slate-300: #cbd5e1;
      --slate-400: #94a3b8;
      --slate-500: #64748b;
      --slate-600: #475569;
      --slate-700: #334155;
      --white: #ffffff;
      --green: #22c55e;
      --red: #ef4444;
      --whatsapp: #25D366;
      --shadow-soft: 0 12px 40px -16px rgba(15,23,42,0.14);
      --shadow-lift: 0 30px 70px -28px rgba(15,23,42,0.30);
      --radius: 1rem;
      --radius-xl: 1.75rem;
      --radius-full: 999px;
      --max-w: 1280px;
      --transition: 0.3s ease;
    }

    /* ==== UTILITY ==== */
    .container { max-width: var(--max-w); margin: 0 auto; padding: 0 1.25rem; }
    @media (min-width: 640px) { .container { padding: 0 2rem; } }
    .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; }
    .eyebrow { letter-spacing: 0.22em; font-size: 0.7rem; font-weight: 700; text-transform: uppercase; color: var(--accent); }

    /* ==== FOCUS ==== */
    a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
      outline: 3px solid var(--accent); outline-offset: 2px; border-radius: 8px;
    }

    /* ==== ANIMATIONS ==== */
    .reveal { opacity: 0; transform: translateY(24px); transition: opacity 0.7s ease, transform 0.7s ease; }
    .reveal.in { opacity: 1; transform: none; }
    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      .reveal { opacity: 1; transform: none; transition: none; }
    }

    /* ==== BUTTONS ==== */
    .btn { display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; font-weight: 600; border-radius: var(--radius-full); padding: 0.9rem 1.75rem; font-size: 0.938rem; transition: all var(--transition); border: none; cursor: pointer; text-decoration: none; }
    .btn-primary { background: var(--accent); color: var(--white); box-shadow: var(--shadow-soft); }
    .btn-primary:hover { background: var(--accent-dark); box-shadow: var(--shadow-lift); transform: translateY(-1px); }
    .btn-secondary { background: var(--white); color: var(--ink); border: 1px solid var(--slate-200); }
    .btn-secondary:hover { border-color: var(--accent); color: var(--accent); }
    .btn-dark { background: var(--ink); color: var(--white); }
    .btn-dark:hover { background: var(--ink-soft); }
    .btn-whatsapp { background: var(--whatsapp); color: var(--white); }
    .btn-whatsapp:hover { background: #1ebe5d; }
    .btn-sm { padding: 0.65rem 1.25rem; font-size: 0.85rem; }

    /* ==== NO-SCROLL (splash) ==== */
    .no-scroll { overflow: hidden; }

    /* ==== SPLASH SCREEN ==== */
    #splash {
      position: fixed; inset: 0; z-index: 9999; overflow: hidden;
      animation: splashSafety .8s ease 3.2s forwards;
    }
    #splash.splash--hide { opacity: 0; visibility: hidden; transition: opacity .6s ease, visibility .6s; }
    @keyframes splashSafety { to { opacity: 0; visibility: hidden; pointer-events: none; } }
    .splash-clean {
      position: absolute; inset: 0;
      background: radial-gradient(130% 90% at 78% 12%, rgba(56,189,248,.45), transparent 55%), radial-gradient(80% 60% at 20% 90%, rgba(2,132,199,.12), transparent 60%), linear-gradient(180deg, #dcefff 0%, #eaf6ff 45%, #fff 100%);
    }
    .splash-skyline {
      position: absolute; inset-inline: 0; bottom: 0; height: 26%;
      background: linear-gradient(180deg, transparent, rgba(15,23,42,.05)), repeating-linear-gradient(90deg, rgba(15,23,42,.07) 0 22px, transparent 22px 64px);
      mask-image: linear-gradient(180deg, transparent, #000 70%); opacity: .5;
    }
    .splash-brand {
      position: absolute; inset: 0; display: flex; flex-direction: column;
      align-items: center; justify-content: center; gap: .5rem; text-align: center;
    }
    .splash-brand .lt-name { font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; letter-spacing:-.02em; color:#0f172a; line-height:1; font-size:1.6rem; }
    .splash-brand .lt-tag { font-family:'Inter',sans-serif; font-size:.8rem; color:#475569; letter-spacing:.02em; }
    .splash-fog {
      position: absolute; inset: 0;
      background: radial-gradient(circle at 18% 24%, rgba(255,255,255,.55), transparent 9px), radial-gradient(circle at 67% 38%, rgba(255,255,255,.5), transparent 11px), radial-gradient(circle at 82% 72%, rgba(255,255,255,.5), transparent 8px), radial-gradient(circle at 35% 78%, rgba(255,255,255,.45), transparent 10px), linear-gradient(180deg, rgba(244,250,255,.88), rgba(230,242,251,.84));
      backdrop-filter: blur(8px) saturate(1.05) brightness(1.02);
      clip-path: inset(0 0 0 0);
      animation: defog 2.2s cubic-bezier(.45,.05,.35,1) forwards;
    }
    @keyframes defog { to { clip-path: inset(100% 0 0 0); } }
    .splash-squeegee {
      position: absolute; top: 0; left: 50%; width: min(640px, 84%); height: 56px;
      transform: translateX(-50%) translateY(-16vh) rotate(-.5deg);
      animation: squeegee 2.2s cubic-bezier(.45,.05,.35,1) forwards;
      pointer-events: none;
    }
    @keyframes squeegee { 0% { transform: translateX(-50%) translateY(-16vh) rotate(-.5deg); } 100% { transform: translateX(-50%) translateY(106vh) rotate(-.5deg); } }
    .squeegee-edge {
      position:absolute; left:2%; right:2%; bottom:6px; height:3px; border-radius:3px;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,.95), transparent);
      filter: blur(.5px); box-shadow: 0 0 14px 2px rgba(255,255,255,.6);
    }
    .splash-skip {
      position:absolute; bottom:22px; left:50%; transform:translateX(-50%);
      font-family:'Inter',sans-serif; font-size:.78rem; color:#64748b; background:rgba(255,255,255,.7);
      border:1px solid #e2e8f0; border-radius:999px; padding:.4rem 1rem; cursor:pointer; backdrop-filter:blur(4px);
      transition:color .2s, border-color .2s;
    }
    .splash-skip:hover { color:var(--accent); border-color:var(--accent); }
    @media (prefers-reduced-motion: reduce) { #splash { display: none !important; } }

    /* ==== NAVBAR ==== */
    .navbar {
      position: fixed; top: 0; left: 0; right: 0; z-index: 50;
      background: rgba(255,255,255,0.85); backdrop-filter: blur(12px) saturate(1.2);
      border-bottom: 1px solid transparent; transition: all var(--transition);
    }
    .navbar.scrolled { box-shadow: var(--shadow-soft); border-bottom-color: var(--slate-100); }
    .navbar-inner {
      max-width: var(--max-w); margin: 0 auto; padding: 0 1.25rem;
      height: 72px; display: flex; align-items: center; justify-content: space-between;
    }
    @media (min-width: 640px) { .navbar-inner { padding: 0 2rem; } }
    .navbar-logo { display: flex; align-items: center; gap: 0.625rem; }
    .navbar-logo svg { height: 2rem; width: 2rem; flex-shrink: 0; }
    .navbar-logo-text { line-height: 1; }
    .navbar-logo-sub { display: block; font-size: 0.58rem; font-weight: 700; letter-spacing: 0.22em; color: var(--slate-400); }
    .navbar-logo-main { display: block; font-size: 1.125rem; font-weight: 800; letter-spacing: -0.02em; color: var(--ink); }
    .nav-links { display: none; align-items: center; gap: 2.25rem; font-size: 0.875rem; font-weight: 500; color: var(--slate-600); }
    .nav-links a { transition: color var(--transition); }
    .nav-links a:hover { color: var(--ink); }
    .nav-right { display: none; align-items: center; gap: 1.25rem; }
    .nav-phone { font-size: 0.875rem; font-weight: 600; color: var(--ink); transition: color var(--transition); }
    .nav-phone:hover { color: var(--accent); }
    .nav-phone i { color: var(--accent); margin-right: 0.375rem; }
    @media (min-width: 1024px) {
      .nav-links, .nav-right { display: flex; }
      .menu-btn { display: none !important; }
    }
    .menu-btn {
      display: inline-flex; height: 2.75rem; width: 2.75rem; align-items: center; justify-content: center;
      border-radius: 0.75rem; color: var(--ink); background: none; border: none; cursor: pointer;
      transition: background var(--transition); font-size: 1.25rem;
    }
    .menu-btn:hover { background: var(--slate-100); }
    .mobile-menu {
      display: none; border-top: 1px solid var(--slate-100);
      background: rgba(255,255,255,0.97); backdrop-filter: blur(12px);
    }
    .mobile-menu.open { display: block; }
    .mobile-menu-inner { padding: 1rem 1.25rem 1.25rem; }
    .mobile-menu a {
      display: block; padding: 0.75rem 1rem; border-radius: 0.75rem;
      color: var(--slate-700); font-size: 0.875rem; font-weight: 500;
      transition: background var(--transition);
    }
    .mobile-menu a:hover { background: var(--slate-50); }
    .mobile-menu .btn { display: block; text-align: center; margin-top: 0.5rem; }

    /* ==== WHATSAPP FLOTANTE ==== */
    .whatsapp-float {
      position: fixed; bottom: 1.5rem; right: 1.5rem; z-index: 40;
      display: inline-flex; height: 3.5rem; width: 3.5rem; align-items: center; justify-content: center;
      border-radius: 50%; background: var(--whatsapp); color: var(--white);
      box-shadow: var(--shadow-lift); transition: transform var(--transition);
      font-size: 1.75rem;
    }
    .whatsapp-float:hover { transform: scale(1.08); }

    /* ==== HERO ==== */
    .hero {
      position: relative; overflow: hidden; background: var(--white);
      padding: 7rem 0 5rem;
    }
    @media (min-width: 768px) { .hero { padding: 9rem 0 7rem; } }
    .hero-bg-blob {
      position: absolute; top: 0; right: 0; z-index: 0;
      height: 480px; width: 480px; border-radius: 50%;
      background: rgba(2,132,199,0.05); filter: blur(60px);
    }
    .hero-grid {
      display: grid; gap: 3.5rem; align-items: center; position: relative; z-index: 1;
    }
    @media (min-width: 1024px) { .hero-grid { grid-template-columns: 1fr 1fr; gap: 2.5rem; } }
    .hero-content { position: relative; }
    .hero h1 {
      margin-top: 1.25rem; font-weight: 800; color: var(--ink);
      font-size: 2.5rem; line-height: 1.06;
    }
    @media (min-width: 640px) { .hero h1 { font-size: 3.5rem; } }
    @media (min-width: 1024px) { .hero h1 { font-size: 4rem; } }
    .hero h1 .accent { color: var(--accent); }
    .hero-desc {
      margin-top: 1.5rem; font-size: 1.125rem; color: var(--slate-500);
      line-height: 1.7; max-width: 560px;
    }
    .hero-buttons { margin-top: 2.25rem; display: flex; flex-direction: column; gap: 0.875rem; }
    @media (min-width: 640px) { .hero-buttons { flex-direction: row; } }
    .hero-checks {
      margin-top: 2.25rem; display: flex; flex-wrap: wrap; gap: 0.5rem 1.75rem;
      font-size: 0.875rem; color: var(--slate-500);
    }
    .hero-checks span { display: inline-flex; align-items: center; gap: 0.5rem; }
    .hero-checks i { color: var(--accent); }
    .hero-image-wrap {
      position: relative; overflow: hidden; border-radius: var(--radius-xl);
      box-shadow: var(--shadow-lift); border: 1px solid var(--slate-200);
      aspect-ratio: 4/3;
    }
    @media (min-width: 1024px) { .hero-image-wrap { aspect-ratio: 4/5; } }
    .hero-image-wrap img { width: 100%; height: 100%; object-fit: cover; }
    .hero-badge {
      position: absolute; bottom: 1.25rem; left: 1.25rem;
      background: rgba(255,255,255,0.95); backdrop-filter: blur(8px);
      border-radius: var(--radius); padding: 0.75rem 1rem;
      display: flex; align-items: center; gap: 0.75rem;
      box-shadow: var(--shadow-soft);
    }
    .hero-badge-icon {
      display: inline-flex; height: 2.5rem; width: 2.5rem; align-items: center; justify-content: center;
      border-radius: 50%; background: rgba(2,132,199,0.1); color: var(--accent); font-size: 1rem;
    }
    .hero-badge strong { font-size: 1.5rem; font-weight: 800; color: var(--ink); display: block; line-height: 1; }
    .hero-badge small { font-size: 0.75rem; color: var(--slate-500); }

    /* ==== STATS BAR ==== */
    .stats {
      background: var(--slate-50); border-top: 1px solid var(--slate-100);
      border-bottom: 1px solid var(--slate-100);
      padding: 3rem 0;
    }
    .stats-grid {
      display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem;
    }
    @media (min-width: 768px) { .stats-grid { grid-template-columns: repeat(4, 1fr); } }
    .stat-item { text-align: center; }
    .stat-value { font-family: 'Plus Jakarta Sans', sans-serif; font-weight: 800; font-size: 2rem; color: var(--ink); }
    .stat-label { font-size: 0.875rem; color: var(--slate-500); margin-top: 0.25rem; }

    /* ==== SECTIONS COMMON ==== */
    .section { padding: 6rem 0; scroll-margin-top: 5rem; }
    @media (min-width: 768px) { .section { padding: 8rem 0; } }
    .section-header { max-width: 640px; }
    .section-title { margin-top: 1rem; font-weight: 800; color: var(--ink); font-size: 2rem; }
    @media (min-width: 640px) { .section-title { font-size: 2.75rem; } }
    .section-desc { margin-top: 1.25rem; font-size: 1.125rem; color: var(--slate-500); line-height: 1.7; }

    /* ==== SERVICES ==== */
    .services-grid {
      margin-top: 3.5rem;
      display: grid; gap: 1.25rem;
    }
    @media (min-width: 640px) { .services-grid { grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) { .services-grid { grid-template-columns: repeat(3, 1fr); } }
    .service-card {
      position: relative; overflow: hidden; border-radius: var(--radius-xl);
      border: 1px solid var(--slate-200); background: var(--white);
      transition: all var(--transition); cursor: default;
    }
    .service-card:hover { box-shadow: var(--shadow-lift); transform: translateY(-4px); border-color: var(--accent); }
    .service-card-img {
      height: 200px; overflow: hidden; position: relative;
      background: linear-gradient(135deg, var(--accent), var(--accent-dark));
    }
    .service-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
    .service-card:hover .service-card-img img { transform: scale(1.06); }
    .service-card-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(15,23,42,0.7) 0%, transparent 60%);
    }
    .service-card-icon {
      position: absolute; top: 1rem; right: 1rem;
      display: inline-flex; height: 2.5rem; width: 2.5rem; align-items: center; justify-content: center;
      border-radius: 0.75rem; background: rgba(255,255,255,0.9); color: var(--accent);
      font-size: 1rem; backdrop-filter: blur(4px);
    }
    .service-card-body { padding: 1.5rem; }
    .service-card h3 { font-weight: 700; font-size: 1.125rem; color: var(--ink); }
    .service-card p { margin-top: 0.5rem; font-size: 0.875rem; color: var(--slate-500); line-height: 1.6; }

    /* ==== WHY US ==== */
    .why-grid {
      display: grid; gap: 3.5rem; align-items: center;
    }
    @media (min-width: 1024px) { .why-grid { grid-template-columns: 5fr 7fr; } }
    .why-image {
      border-radius: var(--radius-xl); overflow: hidden;
      box-shadow: var(--shadow-lift); aspect-ratio: 4/5;
    }
    .why-image img { width: 100%; height: 100%; object-fit: cover; }
    .why-features { display: flex; flex-direction: column; gap: 1.75rem; margin-top: 2rem; }
    .why-feature { display: flex; gap: 1rem; }
    .why-feature-icon {
      margin-top: 0.125rem; display: inline-flex; height: 2.75rem; width: 2.75rem;
      flex-shrink: 0; align-items: center; justify-content: center;
      border-radius: 0.75rem; background: rgba(2,132,199,0.1); color: var(--accent);
      font-size: 1rem;
    }
    .why-feature h3 { font-weight: 700; color: var(--ink); font-size: 1rem; }
    .why-feature p { margin-top: 0.25rem; color: var(--slate-500); font-size: 0.938rem; line-height: 1.6; }

    /* ==== TESTIMONIALS ==== */
    .testimonials { background: var(--white); }
    .google-badge {
      margin-top: 1.5rem; display: inline-flex; align-items: center; gap: 0.75rem;
      border-radius: var(--radius-full); background: var(--white);
      border: 1px solid var(--slate-200); box-shadow: var(--shadow-soft);
      padding: 0.625rem 1.25rem;
    }
    .google-badge .stars { display: flex; gap: 0.125rem; color: var(--accent); font-size: 0.875rem; }
    .google-badge span { font-size: 0.875rem; font-weight: 600; color: var(--ink); }
    .testimonials-grid {
      margin-top: 3.5rem; display: grid; gap: 1.25rem;
    }
    @media (min-width: 768px) { .testimonials-grid { grid-template-columns: repeat(3, 1fr); } }
    .testimonial-card {
      background: var(--white); border-radius: var(--radius); border: 1px solid var(--slate-200);
      padding: 2rem; display: flex; flex-direction: column;
      transition: all var(--transition);
    }
    .testimonial-card:hover { box-shadow: var(--shadow-soft); }
    .testimonial-stars { display: flex; gap: 0.25rem; color: var(--accent); margin-bottom: 1.25rem; }
    .testimonial-card blockquote { color: var(--slate-700); line-height: 1.7; flex: 1; font-size: 0.938rem; }
    .testimonial-footer {
      margin-top: 1.5rem; display: flex; align-items: center; gap: 0.75rem;
      padding-top: 1.5rem; border-top: 1px solid var(--slate-100);
    }
    .testimonial-avatar {
      display: inline-flex; height: 2.75rem; width: 2.75rem; align-items: center; justify-content: center;
      border-radius: 50%; color: var(--white); font-weight: 700; font-size: 1rem;
    }
    .testimonial-name { font-weight: 600; color: var(--ink); display: block; }
    .testimonial-source { font-size: 0.75rem; color: var(--slate-400); }

    /* ==== CONTACT ==== */
    .contact { background: var(--ink); color: var(--white); position: relative; overflow: hidden; }
    .contact-blob {
      position: absolute; top: -6rem; right: -6rem;
      height: 24rem; width: 24rem; border-radius: 50%;
      background: rgba(2,132,199,0.2); filter: blur(60px);
    }
    .contact-grid {
      display: grid; gap: 3.5rem; align-items: center; position: relative; z-index: 1;
    }
    @media (min-width: 1024px) { .contact-grid { grid-template-columns: 1fr 1fr; } }
    .contact-info .eyebrow { color: var(--accent-light); }
    .contact-info h2 { margin-top: 1rem; font-weight: 800; font-size: 2rem; color: var(--white); }
    @media (min-width: 640px) { .contact-info h2 { font-size: 2.75rem; } }
    .contact-info > p { margin-top: 1.25rem; color: rgba(255,255,255,0.7); font-size: 1.125rem; line-height: 1.7; max-width: 28rem; }
    .contact-details { margin-top: 2.25rem; display: flex; flex-direction: column; gap: 0.875rem; color: rgba(255,255,255,0.85); }
    .contact-details a, .contact-details p { display: flex; align-items: center; gap: 0.75rem; transition: color var(--transition); }
    .contact-details a:hover { color: var(--accent-light); }
    .contact-details i { color: var(--accent-light); width: 1.25rem; text-align: center; }

    /* ==== FORM ==== */
    .form-card {
      background: var(--white); border-radius: var(--radius-xl);
      box-shadow: var(--shadow-lift); padding: 1.75rem;
      color: var(--ink);
    }
    @media (min-width: 640px) { .form-card { padding: 2.25rem; } }
    .form-group { margin-bottom: 1.25rem; }
    .form-label { display: block; font-size: 0.875rem; font-weight: 600; margin-bottom: 0.375rem; color: var(--ink); }
    .form-label .optional { font-weight: 400; color: var(--slate-400); }
    .form-input {
      width: 100%; border-radius: 0.75rem;
      border: 1px solid var(--slate-200); background: var(--slate-50);
      padding: 0.75rem 1rem; color: var(--ink);
      transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
    }
    .form-input::placeholder { color: var(--slate-400); }
    .form-input:focus { border-color: var(--accent); background: var(--white); box-shadow: 0 0 0 3px rgba(2,132,199,0.12); outline: none; }
    .form-row { display: grid; gap: 1rem; }
    @media (min-width: 640px) { .form-row { grid-template-columns: 1fr 1fr; } }
    select.form-input { appearance: auto; }
    textarea.form-input { resize: vertical; min-height: 80px; }

    /* Form validation */
    .field { position: relative; }
    .field-icon { position:absolute; right:.85rem; top:2.6rem; font-size:1rem; opacity:0; pointer-events:none; transition:opacity .2s; }
    .field.is-valid .form-input { border-color: var(--green); }
    .field.is-valid .field-icon.ok { opacity:1; color: var(--green); }
    .field.is-invalid .form-input { border-color: var(--red); }
    .field.is-invalid .field-icon.bad { opacity:1; color: var(--red); }
    .field-err { margin-top:.35rem; font-size:.78rem; color: var(--red); max-height:0; opacity:0; overflow:hidden; transition:max-height .25s, opacity .25s; }
    .field.is-invalid .field-err { max-height:3rem; opacity:1; }

    /* Checkbox RGPD */
    .form-check { display: flex; align-items: flex-start; gap: 0.5rem; margin-bottom: 1.25rem; }
    .form-check input[type="checkbox"] { margin-top: 0.25rem; accent-color: var(--accent); flex-shrink: 0; width: 1rem; height: 1rem; }
    .form-check label { font-size: 0.8rem; color: var(--slate-600); line-height: 1.4; }
    .form-check label a { color: var(--accent); text-decoration: underline; }

    /* RGPD info clause */
    .rgpd-clause {
      margin-top: 1rem; padding: 1rem; border-radius: 0.5rem;
      background: var(--slate-50); border: 1px solid var(--slate-200);
      font-size: 0.72rem; color: var(--slate-500); line-height: 1.5;
    }
    .rgpd-clause strong { color: var(--slate-600); }

    /* Honeypot */
    .hp { position:absolute !important; left:-9999px !important; top:auto; width:1px; height:1px; overflow:hidden; }

    /* Spinner */
    .spinner { width:1.05em; height:1.05em; border:2.5px solid rgba(255,255,255,.45); border-top-color:#fff; border-radius:50%; display:inline-block; vertical-align:-2px; animation:spin .7s linear infinite; }
    @keyframes spin { to { transform: rotate(360deg); } }

    /* ==== TOAST ==== */
    .toast {
      position:fixed; left:50%; bottom:28px; z-index:9998;
      display:flex; gap:.85rem; align-items:flex-start; width:min(92vw,420px);
      padding:1rem 1.1rem; border-radius:var(--radius); background:#fff; border:1px solid var(--slate-200);
      box-shadow:0 24px 60px -20px rgba(15,23,42,.35);
      transform:translateX(-50%) translateY(150%); opacity:0;
      transition:transform .5s cubic-bezier(.22,1,.36,1), opacity .35s;
    }
    .toast.show { transform:translateX(-50%) translateY(0); opacity:1; }
    .toast.is-ok { border-left:4px solid var(--green); }
    .toast.is-err { border-left:4px solid var(--red); }
    .toast.is-ok .toast-icon { color: var(--green); }
    .toast.is-err .toast-icon { color: var(--red); }
    .toast-icon { font-size:1.25rem; margin-top:.1rem; }
    .toast-title { font-weight: 600; color: var(--ink); }
    .toast-text { font-size: 0.875rem; color: var(--slate-500); }
    .toast-close { margin-left:auto; background:none; border:0; font-size:1.3rem; line-height:1; color:var(--slate-400); cursor:pointer; }
    .toast-close:hover { color:var(--ink); }

    /* ==== EU SECTION ==== */
    .eu-section { background: var(--white); border-top: 1px solid var(--slate-100); padding: 3.5rem 0; }
    .eu-flex { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2rem; }
    @media (min-width: 640px) { .eu-flex { flex-direction: row; gap: 3rem; } }
    .eu-text-box {
      background: var(--slate-50); border: 1px solid var(--slate-200);
      padding: 2rem; border-radius: 0.5rem; max-width: 28rem; width: 100%;
    }
    .eu-text-box p {
      font-family: Georgia, 'Times New Roman', serif; font-style: italic;
      color: var(--ink); font-size: 1rem; line-height: 1.4; letter-spacing: 0.02em;
    }
    .eu-bar { height: 3px; width: 75%; background: #FFCC00; margin-top: 1rem; }
    .eu-flag { flex-shrink: 0; text-align: center; }
    .eu-flag p { margin-top: 0.5rem; font-weight: 600; color: #173a93; font-size: 0.875rem; line-height: 1.3; }

    /* ==== FOOTER ==== */
    .footer { background: var(--ink); color: var(--slate-400); }
    .footer-grid {
      display: grid; gap: 2.5rem; padding: 4rem 0;
    }
    @media (min-width: 640px) { .footer-grid { grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) { .footer-grid { grid-template-columns: repeat(4, 1fr); } }
    .footer h4 { font-weight: 700; color: var(--white); margin-bottom: 1rem; font-size: 1rem; }
    .footer-about p { font-size: 0.875rem; line-height: 1.6; margin-top: 1rem; }
    .footer ul { list-style: none; display: flex; flex-direction: column; gap: 0.625rem; font-size: 0.875rem; }
    .footer a { transition: color var(--transition); }
    .footer a:hover { color: var(--accent-light); }
    .footer-bottom {
      border-top: 1px solid rgba(255,255,255,0.1);
      padding: 1.5rem 0;
      display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 0.75rem;
      font-size: 0.75rem; color: var(--slate-500);
    }
    @media (min-width: 640px) { .footer-bottom { flex-direction: row; } }
    .footer-legal { display: flex; align-items: center; gap: 1.25rem; }
    .footer-legal a { transition: color var(--transition); }
    .footer-legal a:hover { color: var(--accent-light); }

    /* ==== LEGAL MODALS ==== */
    .legal-modal-overlay {
      display: none; position: fixed; inset: 0; z-index: 10000;
      background: rgba(15,23,42,0.6); backdrop-filter: blur(4px);
      align-items: center; justify-content: center; padding: 1rem;
    }
    .legal-modal-overlay.active { display: flex; }
    .legal-modal {
      background: var(--white); border-radius: var(--radius-xl);
      max-width: 720px; width: 100%; max-height: 85vh;
      overflow-y: auto; padding: 2rem; position: relative;
      box-shadow: var(--shadow-lift);
    }
    .legal-modal h2 { font-size: 1.5rem; font-weight: 800; color: var(--ink); margin-bottom: 1.5rem; }
    .legal-modal h3 { font-size: 1.1rem; font-weight: 700; color: var(--ink); margin: 1.5rem 0 0.5rem; }
    .legal-modal p, .legal-modal li { font-size: 0.875rem; color: var(--slate-600); line-height: 1.7; margin-bottom: 0.75rem; }
    .legal-modal ul { list-style: disc; padding-left: 1.5rem; }
    .legal-modal-close {
      position: sticky; top: 0; float: right;
      background: var(--slate-100); border: none; border-radius: 50%;
      width: 2.25rem; height: 2.25rem; font-size: 1.25rem;
      cursor: pointer; display: inline-flex; align-items: center; justify-content: center;
      color: var(--slate-500); transition: all var(--transition); z-index: 1;
    }
    .legal-modal-close:hover { background: var(--slate-200); color: var(--ink); }
    .placeholder { background: #FEF9C3; padding: 0.125rem 0.375rem; border-radius: 0.25rem; font-weight: 600; color: #92400e; }

    /* ==== COOKIE BANNER ==== */
    .cookie-banner {
      display: none; position: fixed; bottom: 0; left: 0; right: 0; z-index: 9990;
      background: var(--white); border-top: 1px solid var(--slate-200);
      box-shadow: 0 -8px 40px -12px rgba(15,23,42,0.2);
      padding: 1.25rem;
    }
    .cookie-banner.show { display: block; }
    .cookie-inner {
      max-width: var(--max-w); margin: 0 auto;
      display: flex; flex-direction: column; gap: 1rem;
    }
    @media (min-width: 768px) { .cookie-inner { flex-direction: row; align-items: center; } }
    .cookie-text { flex: 1; font-size: 0.85rem; color: var(--slate-600); line-height: 1.5; }
    .cookie-text a { color: var(--accent); text-decoration: underline; }
    .cookie-buttons { display: flex; gap: 0.5rem; flex-shrink: 0; flex-wrap: wrap; }
    .cookie-btn {
      padding: 0.6rem 1.2rem; border-radius: var(--radius-full);
      font-size: 0.8rem; font-weight: 600; cursor: pointer; border: none;
      transition: all var(--transition);
    }
    .cookie-accept { background: var(--accent); color: var(--white); }
    .cookie-accept:hover { background: var(--accent-dark); }
    .cookie-reject { background: var(--slate-100); color: var(--slate-700); }
    .cookie-reject:hover { background: var(--slate-200); }
    .cookie-config { background: transparent; color: var(--slate-500); border: 1px solid var(--slate-200); }
    .cookie-config:hover { border-color: var(--accent); color: var(--accent); }

    /* Cookie config panel */
    .cookie-config-panel {
      display: none; margin-top: 1rem; padding: 1rem;
      background: var(--slate-50); border-radius: var(--radius); border: 1px solid var(--slate-200);
    }
    .cookie-config-panel.show { display: block; }
    .cookie-config-panel h4 { font-size: 0.9rem; font-weight: 700; color: var(--ink); margin-bottom: 0.75rem; }
    .cookie-option { display: flex; align-items: center; justify-content: space-between; padding: 0.5rem 0; border-bottom: 1px solid var(--slate-200); }
    .cookie-option:last-child { border-bottom: none; }
    .cookie-option-text { font-size: 0.8rem; color: var(--slate-600); }
    .cookie-option-text strong { color: var(--ink); display: block; }
    .cookie-toggle { position: relative; width: 2.5rem; height: 1.375rem; flex-shrink: 0; }
    .cookie-toggle input { opacity: 0; width: 0; height: 0; }
    .cookie-toggle .slider {
      position: absolute; inset: 0; background: var(--slate-300); border-radius: var(--radius-full);
      cursor: pointer; transition: background var(--transition);
    }
    .cookie-toggle .slider::before {
      content: ''; position: absolute; height: 1rem; width: 1rem;
      left: 0.2rem; bottom: 0.1875rem; background: var(--white); border-radius: 50%;
      transition: transform var(--transition);
    }
    .cookie-toggle input:checked + .slider { background: var(--accent); }
    .cookie-toggle input:checked + .slider::before { transform: translateX(1.125rem); }
    .cookie-toggle input:disabled + .slider { opacity: 0.6; cursor: not-allowed; }
    .cookie-save-btn { margin-top: 0.75rem; }
  
    /* ==== PÁGINAS INTERIORES (mismos tokens y componentes que la home) ==== */
    .hero--page { padding: 6.5rem 0 4rem; }
    @media (min-width: 768px) { .hero--page { padding: 8rem 0 5.5rem; } }
    .hero--page h1 { font-size: 2.25rem; line-height: 1.08; }
    @media (min-width: 640px) { .hero--page h1 { font-size: 3rem; } }
    @media (min-width: 1024px) { .hero--page h1 { font-size: 3.4rem; } }
    @media (min-width: 1024px) { .hero--page .hero-image-wrap { aspect-ratio: 5/4; } }

    .breadcrumbs { font-size: 0.8rem; color: var(--slate-500); margin-bottom: 1.25rem; }
    .breadcrumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 0.35rem 0.5rem; align-items: center; }
    .breadcrumbs li { display: inline-flex; align-items: center; gap: 0.5rem; }
    .breadcrumbs li + li::before { content: "/"; color: var(--slate-300); }
    .breadcrumbs a { color: var(--slate-600); text-decoration: underline; text-decoration-color: var(--slate-300); text-underline-offset: 3px; }
    .breadcrumbs a:hover { color: var(--accent-dark); }
    .breadcrumbs [aria-current] { color: var(--ink); font-weight: 600; }

    .section--tint { background: var(--slate-50); }
    .section--tight { padding: 4.5rem 0; }
    @media (min-width: 768px) { .section--tight { padding: 6rem 0; } }

    .split { display: grid; gap: 3rem; align-items: start; }
    @media (min-width: 1024px) { .split { grid-template-columns: 5fr 7fr; gap: 4rem; } }

    .prose { color: var(--slate-600); font-size: 1.05rem; line-height: 1.75; }
    .prose p + p { margin-top: 1rem; }
    .prose strong { color: var(--ink); }
    .prose a { color: var(--accent-dark); text-decoration: underline; text-underline-offset: 3px; }

    .check-grid { list-style: none; display: grid; gap: 0.9rem 2rem; margin-top: 2rem; }
    @media (min-width: 640px) { .check-grid { grid-template-columns: 1fr 1fr; } }
    .check-grid li { display: flex; gap: 0.75rem; align-items: flex-start; color: var(--slate-700); line-height: 1.55; }
    .check-grid li i { color: var(--accent); margin-top: 0.3rem; }
    .check-grid strong { color: var(--ink); }

    .steps { list-style: none; display: grid; gap: 1.25rem; margin-top: 3rem; counter-reset: step; }
    @media (min-width: 640px) { .steps { grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) { .steps { grid-template-columns: repeat(4, 1fr); } }
    .steps li { position: relative; background: var(--white); border: 1px solid var(--slate-200); border-radius: var(--radius); padding: 1.75rem 1.5rem 1.5rem; counter-increment: step; }
    .steps li::before { content: counter(step, decimal-leading-zero); display: block; font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 800; font-size: 1.5rem; color: var(--accent); letter-spacing: -0.02em; margin-bottom: 0.75rem; }
    .steps h3 { font-size: 1.05rem; font-weight: 700; color: var(--ink); }
    .steps p { margin-top: 0.5rem; color: var(--slate-500); font-size: 0.925rem; line-height: 1.6; }

    .chips { display: flex; flex-wrap: wrap; gap: 0.6rem; margin-top: 1.75rem; }
    .chip { display: inline-flex; align-items: center; gap: 0.45rem; padding: 0.55rem 1rem; border-radius: var(--radius-full); border: 1px solid var(--slate-200); background: var(--white); font-size: 0.875rem; font-weight: 500; color: var(--slate-700); transition: all var(--transition); }
    a.chip:hover { border-color: var(--accent); color: var(--accent-dark); box-shadow: var(--shadow-soft); }
    .chip i { color: var(--accent); }

    .faq { margin-top: 2.5rem; display: grid; gap: 0.75rem; max-width: 860px; }
    .faq details { background: var(--white); border: 1px solid var(--slate-200); border-radius: var(--radius); transition: box-shadow var(--transition), border-color var(--transition); }
    .faq details[open] { border-color: var(--accent); box-shadow: var(--shadow-soft); }
    .faq summary { list-style: none; cursor: pointer; padding: 1.15rem 1.35rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; color: var(--ink); font-size: 1rem; letter-spacing: -0.01em; }
    .faq summary::-webkit-details-marker { display: none; }
    .faq summary i { color: var(--accent); transition: transform var(--transition); font-size: 0.85rem; }
    .faq details[open] summary i { transform: rotate(180deg); }
    .faq .faq-a { padding: 0 1.35rem 1.25rem; color: var(--slate-600); line-height: 1.7; font-size: 0.95rem; }

    .cta-band { margin-top: 3rem; display: flex; flex-direction: column; gap: 1rem; align-items: flex-start; padding: 2rem; border-radius: var(--radius-xl); background: var(--ink); color: var(--white); }
    @media (min-width: 768px) { .cta-band { flex-direction: row; align-items: center; justify-content: space-between; padding: 2.25rem 2.5rem; } }
    .cta-band p { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 1.25rem; letter-spacing: -0.01em; }
    .cta-band span { display: block; font-family: 'Inter', system-ui, sans-serif; font-weight: 400; font-size: 0.95rem; color: rgba(255,255,255,0.7); margin-top: 0.25rem; }
    .cta-band .btns { display: flex; flex-wrap: wrap; gap: 0.75rem; }

    .zone-grid { display: grid; gap: 1.25rem; margin-top: 3rem; }
    @media (min-width: 768px) { .zone-grid { grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) { .zone-grid { grid-template-columns: repeat(3, 1fr); } }
    .zone-card { position: relative; background: var(--white); border: 1px solid var(--slate-200); border-radius: var(--radius-xl); padding: 1.75rem; transition: all var(--transition); }
    .zone-card:hover { box-shadow: var(--shadow-lift); border-color: var(--accent); transform: translateY(-3px); }
    .zone-card h3 { font-size: 1.15rem; font-weight: 700; color: var(--ink); display: flex; align-items: center; gap: 0.6rem; }
    .zone-card h3 i { color: var(--accent); }
    .zone-card p { margin-top: 0.6rem; color: var(--slate-500); font-size: 0.925rem; line-height: 1.6; }
    .zone-card .more { margin-top: 1rem; display: inline-flex; align-items: center; gap: 0.4rem; font-weight: 600; font-size: 0.875rem; color: var(--accent-dark); }

    .legal-page { padding: 7.5rem 0 5rem; }
    .legal-page .container { max-width: 820px; }
    .legal-page h1 { font-size: 2.25rem; font-weight: 800; color: var(--ink); margin-bottom: 0.5rem; }
    .legal-page .updated { color: var(--slate-500); font-size: 0.875rem; margin-bottom: 2rem; }
    .legal-page h2 { font-size: 1.25rem; font-weight: 700; color: var(--ink); margin: 2rem 0 0.6rem; }
    .legal-page p, .legal-page li { color: var(--slate-600); line-height: 1.75; font-size: 0.975rem; margin-bottom: 0.75rem; }
    .legal-page ul { padding-left: 1.4rem; }
    .legal-page a { color: var(--accent-dark); text-decoration: underline; }
    .legal-page table { width: 100%; border-collapse: collapse; margin: 1rem 0 1.5rem; font-size: 0.875rem; }
    .legal-page th, .legal-page td { text-align: left; padding: 0.65rem 0.75rem; border: 1px solid var(--slate-200); color: var(--slate-600); vertical-align: top; }
    .legal-page th { background: var(--slate-50); color: var(--ink); }

    /* Pulido: columna de título fija al hacer scroll y enlaces visibles en listas */
    @media (min-width: 1024px) { .split > :first-child { position: sticky; top: 7rem; } }
    .check-grid a, .faq-a a, .chips + .prose a { color: var(--accent-dark); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(3,105,161,.35); }
    .check-grid a:hover, .faq-a a:hover { text-decoration-color: currentColor; }
