
  :root{
    --ew-radius:10px;
    --ew-space-1:6px; --ew-space-2:10px; --ew-space-3:14px; --ew-space-4:18px;
    --ew-space-5:26px; --ew-space-6:34px; --ew-space-7:44px; --ew-space-8:56px;
    --ew-text-heading:#133B4F;
    --ew-text-body:#405B69;
    --ew-text-muted:#556A7A;
    --ew-action:#0A6098;
    --ew-action-hover:#08507F;
    --ew-icon:#0A6EAC;
    --ew-secondary:#16B7AA;
    --ew-secondary-deep:#0E8A80;
    --ew-surface:#FCFDFE;
    --ew-surface-alt:#FAFCFE;
    --ew-control-border:#6A8798;
    --ew-threshold:rgba(19,59,79,0.28);
    --ew-rule:rgba(19,59,79,0.20);
    --ew-canvas-a:rgba(243,248,251,0.50);
    --ew-canvas-b:rgba(214,230,238,0.50);
    --ew-canvas-c:rgba(220,237,234,0.50);
    --ew-canvas-footer:rgba(220,237,234,0.50);
    --ew-elev-1:0 2px 8px rgba(19,59,79,0.063), 0 18px 55px -14px rgba(19,59,79,0.108);
    --ew-elev-2:0 4px 18px rgba(19,59,79,0.099), 0 36px 100px -22px rgba(19,59,79,0.162);
    --ew-dur:200ms; --ew-dur-slow:300ms; --ew-dur-disclose:300ms; --ew-dur-surface:420ms;
    --ew-ease:cubic-bezier(0.22,1,0.36,1); --ew-ease-soft:cubic-bezier(0.4,0,0.2,1); --ew-ease-surface:cubic-bezier(0.32,0.72,0,1);
  }
  html,body{margin:0;padding:0;}
  *{box-sizing:border-box;}
  body{background:#E8F0F5;}
  .ew-band-a::before,.ew-band-b::before,.ew-band-c::before{content:''; position:absolute; inset:0; pointer-events:none; z-index:0; background:repeating-linear-gradient(90deg, rgba(255,255,255,0.14) 0 1px, rgba(255,255,255,0) 1px 14px); opacity:0.42;}
  .ew-band-a > *,.ew-band-b > *,.ew-band-c > *{position:relative; z-index:1;}
  /* Solo en html: con overflow-x:clip también en body, body pasa a ser contenedor de recorte y
     la animación conducida por scroll resuelve su scroller contra body, que nunca desplaza — el
     progreso quedaba clavado en 0.5 y el paralaje no avanzaba en ningún sujeto. */
  html{overflow-x:clip;}
  a{color:var(--ew-icon);}
  a:hover{color:var(--ew-action-hover);}
  ::selection{background:rgba(10,110,172,0.18);}
  section{border:0;}
  section[id]{scroll-margin-top:104px;}
  /* Each section starts in the previous section's colour and resolves into its own; the seam is invisible. */
  .ew-ambient{position:fixed; left:0; top:0; width:100vw; height:100vh; z-index:0; pointer-events:none; overflow:hidden;}
  /* Los degradados de los orbes reparten dos o tres niveles RGB sobre cientos de píxeles: a 8 bits
     los escalones de cuantización se ven como franjas horizontales tenues, sobre todo entre el
     mapa y el pie. Un grano imperceptible sobre la capa atmosférica difumina esos escalones. No
     desplaza, tiñe ni redimensiona ningún orbe, y no cuesta nada por fotograma. */
  .ew-ambient::after{content:""; position:absolute; inset:0; pointer-events:none; opacity:0.055; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E"); background-size:160px 160px;}
  body{position:relative;}
  body > .ew-ambient{z-index:0;}
  x-dc,.sc-host{position:relative; z-index:1; background:transparent !important;}
  .ew-orb{position:absolute; border-radius:999px; will-change:transform; background:radial-gradient(circle at 32% 28%, rgba(255,255,255,0.72) 0%, rgba(255,255,255,0.18) 20%, rgba(255,255,255,0) 44%), radial-gradient(circle at 50% 56%, var(--orb) 0%, var(--orb) 26%, var(--orb-mid) 56%, rgba(255,255,255,0.03) 82%, rgba(255,255,255,0) 100%); box-shadow:inset -20px -34px 70px -24px rgba(255,255,255,0.62);}
  .ew-orb--1{--orb:rgba(8,127,202,0.28); --orb-mid:rgba(8,127,202,0.11); width:42vmin; height:42vmin; left:-14vmin; top:2vh; animation:ewDrift1 90s ease-in-out infinite alternate;}
  .ew-orb--2{--orb:rgba(22,183,170,0.28); --orb-mid:rgba(22,183,170,0.11); width:44vmin; height:44vmin; right:-10vmin; top:16vh; animation:ewDrift2 110s ease-in-out infinite alternate;}
  .ew-orb--3{--orb:rgba(10,110,172,0.26); --orb-mid:rgba(10,110,172,0.10); width:36vmin; height:36vmin; left:32vw; bottom:-12vmin; animation:ewDrift3 100s ease-in-out infinite alternate;}
  .ew-orb--4{--orb:rgba(22,183,170,0.24); --orb-mid:rgba(22,183,170,0.09); width:24vmin; height:24vmin; right:20vw; bottom:12vh; animation:ewDrift1 120s ease-in-out infinite alternate-reverse;}
  .ew-orb--5{--orb:rgba(8,127,202,0.22); --orb-mid:rgba(8,127,202,0.09); width:16vmin; height:16vmin; left:14vw; top:48vh; animation:ewDrift2 130s ease-in-out infinite alternate-reverse;}
  @keyframes ewDrift1{from{transform:translate3d(0,0,0) scale(1);}to{transform:translate3d(9vw,-12vh,0) scale(1.08);}}
  @keyframes ewDrift2{from{transform:translate3d(0,0,0) scale(1);}to{transform:translate3d(-11vw,14vh,0) scale(0.94);}}
  @keyframes ewDrift3{from{transform:translate3d(0,0,0) scale(1);}to{transform:translate3d(7vw,-18vh,0) scale(1.1);}}
  .ew-page{position:relative; z-index:1;}
  /* Paralaje conducido desde JS. La vía nativa (animation-timeline:view()) no es utilizable
     aquí: cada imagen vive dentro de una caja overflow:hidden, que en CSS es un contenedor de
     scroll, así que view() resuelve su timeline contra esa caja —que nunca desplaza— y el
     progreso queda inactivo en 0.5. El recorte es esencial al diseño. */
  /* content-visibility se retiró: implica contain:paint, y la contención de pintado convierte la
     sección en backdrop root, de modo que el Header no podía desenfocar su texto. El material del
     Header pesa más que el ahorro de render de tres secciones. */
  @media (prefers-contrast: more){ .ew-glass-subtle,.ew-glass-standard,.ew-glass-elevated,.ew-tcard,.ew-note,.ew-service-text{background:#FFFFFF !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important; box-shadow:0 0 0 1px var(--ew-text-heading) !important;} }
  .ew-glass-elevated p,.ew-glass-standard p,.ew-tq,.ew-service-text p{letter-spacing:0.002em;}
  .ew-form-status,label,[data-ew-derived$=".label"]{letter-spacing:0.01em;}
  .ew-reveal{opacity:1; transform:none; transition:opacity 520ms var(--ew-ease-soft), transform 620ms var(--ew-ease-soft);}
  html.ew-io .ew-reveal:not(.is-in){opacity:0; transform:translateY(14px);}
  .ew-reveal[data-d="1"]{transition-delay:70ms;} .ew-reveal[data-d="2"]{transition-delay:140ms;} .ew-reveal[data-d="3"]{transition-delay:210ms;} .ew-reveal[data-d="4"]{transition-delay:280ms;} .ew-reveal[data-d="5"]{transition-delay:350ms;}
  @media (prefers-reduced-motion: reduce){ .ew-reveal{opacity:1 !important; transform:none !important; transition:none !important;} }
  .ew-band-a,.ew-band-b,.ew-band-c{position:relative;}
  .ew-band-a{background:linear-gradient(180deg, var(--ew-canvas-b) 0%, var(--ew-canvas-a) 26%, var(--ew-canvas-a) 100%);}
  .ew-band-b{background:linear-gradient(180deg, var(--ew-canvas-a) 0%, var(--ew-canvas-b) 26%, var(--ew-canvas-b) 100%);}
  .ew-band-b.ew-band--atmos{background:linear-gradient(180deg, var(--ew-canvas-a) 0%, var(--ew-canvas-b) 22%, rgba(201,221,233,0.54) 100%);}
  .ew-band-a.ew-band--after-atmos{background:linear-gradient(180deg, rgba(201,221,233,0.54) 0%, var(--ew-canvas-a) 30%, var(--ew-canvas-a) 100%);}
  .ew-band-c{background:linear-gradient(180deg, var(--ew-canvas-a) 0%, var(--ew-canvas-c) 26%, var(--ew-canvas-c) 100%);}
  .ew-band-a.ew-band--after-c{background:linear-gradient(180deg, var(--ew-canvas-c) 0%, var(--ew-canvas-a) 26%, var(--ew-canvas-a) 100%);}
  .ew-band-a.ew-band--after-hero{background:var(--ew-canvas-a); z-index:1;}
  .ew-band-a.ew-band--after-hero::before{display:none;}
  /* Proof: atmospheric floor with depth so the glass surface has something to refract (no light-on-light stack) */
  .ew-proof-floor{position:relative; border-radius:var(--ew-radius); overflow:hidden; background:linear-gradient(148deg,#DCEDF5 0%, #B9D9E9 34%, #8FC3D9 62%, #63A2BF 84%, #8FC3D9 100%); background-size:260% 260%; animation:ewProofDrift 14s ease-in-out infinite alternate; padding:22px;}
  @keyframes ewProofDrift{from{background-position:0% 0%;}50%{background-position:100% 30%;}to{background-position:40% 100%;}}
  @media (prefers-reduced-motion: reduce){ .ew-proof-floor{animation:none;} }
  .ew-proof-floor::before{content:''; position:absolute; right:-6%; top:-40%; width:46%; height:180%; background:radial-gradient(circle at 50% 50%, rgba(22,183,170,0.32), rgba(22,183,170,0) 62%); pointer-events:none; animation:ewDrift2 40s ease-in-out infinite alternate;}
  .ew-proof-floor::after{content:''; position:absolute; left:-2%; bottom:-40%; width:52%; height:140%; background:radial-gradient(circle at 50% 50%, rgba(226,208,171,0.13) 0%, rgba(226,208,171,0.06) 42%, rgba(226,208,171,0) 78%); pointer-events:none;}
  .ew-proof-glass{position:relative; padding:6px 0;}
  .ew-proof-floor{padding:26px;}
  .ew-proof-glass.ew-glass-standard{background:rgba(255,255,255,0.76);}
  .ew-proof-item{position:relative; padding:24px 28px 26px;}
  .ew-proof-item + .ew-proof-item{border-left:1px solid rgba(19,59,79,0.16);}
  .ew-service-card{background:var(--ew-surface); border:0; border-radius:var(--ew-radius); box-shadow:var(--ew-elev-1); overflow:hidden;}
  .ew-glass-subtle{
    background:rgba(250,252,254,0.42);
    -webkit-backdrop-filter:blur(14px) saturate(1.15); backdrop-filter:blur(14px) saturate(1.15);
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.60), inset 0 16px 28px -18px rgba(255,255,255,0.45), 0 2px 9px rgba(19,59,79,0.099), 0 18px 53px -12px rgba(19,59,79,0.153);
    border:0; border-radius:var(--ew-radius);
  }
  .ew-glass-standard{
    background:rgba(250,252,254,0.58);
    -webkit-backdrop-filter:blur(22px) saturate(1.28); backdrop-filter:blur(22px) saturate(1.28);
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.72), inset 0 20px 34px -20px rgba(255,255,255,0.50), 0 3px 14px rgba(19,59,79,0.126), 0 36px 98px -22px rgba(19,59,79,0.207);
    border:0; border-radius:var(--ew-radius);
  }
  .ew-glass-elevated{
    background:rgba(250,252,254,0.52);
    -webkit-backdrop-filter:blur(32px) saturate(1.55); backdrop-filter:blur(32px) saturate(1.55);
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.90), inset 0 26px 44px -26px rgba(255,255,255,0.55), 0 6px 28px rgba(19,59,79,0.189), 0 52px 140px -26px rgba(19,59,79,0.261);
    border:0; border-radius:var(--ew-radius);
  }
  .ew-glass-elevated.ew-glass-elevated--hero{
    background:rgba(250,252,254,0.756);
    -webkit-backdrop-filter:blur(34px) saturate(1.60); backdrop-filter:blur(34px) saturate(1.60);
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.90), inset 0 26px 44px -26px rgba(255,255,255,0.55), 0 5px 18px rgba(19,59,79,0.27), 0 34px 88px -18px rgba(19,59,79,0.342);
  }
  /* El Header conserva la receta glassElevated de Stage B v6 (blur y saturación intactos) y solo
     sube su propia opacidad: con 0.52 los títulos de sección de 34 px se leían a través y parecía
     que no hubiera desenfoque. El blur no cambia, así que el token de material se respeta. */
  .ew-glass-elevated.ew-glass-elevated--header{background:rgba(250,252,254,0.74); transition:background var(--ew-dur-surface) var(--ew-ease-soft), backdrop-filter var(--ew-dur-surface) var(--ew-ease-soft), -webkit-backdrop-filter var(--ew-dur-surface) var(--ew-ease-soft), box-shadow var(--ew-dur-surface) var(--ew-ease-soft);}
  /* Estado denso: se activa cuando el Header solapa un título o un párrafo. Es comportamiento de
     presentación determinista, no una opción de cliente. Refuerza alfa, desenfoque, saturación y
     la luz superior permitida; no añade perímetro y no llega a barra opaca. */
  .ew-glass-elevated.ew-glass-elevated--header.is-dense{background:rgba(250,252,254,0.88); -webkit-backdrop-filter:blur(44px) saturate(1.72) brightness(1.04); backdrop-filter:blur(44px) saturate(1.72) brightness(1.04); box-shadow:inset 0 1px 0 rgba(255,255,255,0.96), inset 0 26px 44px -26px rgba(255,255,255,0.62), 0 5px 18px rgba(19,59,79,0.27), 0 30px 80px -16px rgba(19,59,79,0.324);}
  .ew-glass-elevated.ew-glass-elevated--about{background:rgba(250,252,254,0.812); -webkit-backdrop-filter:blur(34px) saturate(1.60); backdrop-filter:blur(34px) saturate(1.60);}
  .ew-surface-1{background:var(--ew-surface); border:0; border-radius:var(--ew-radius); box-shadow:var(--ew-elev-1);}
  .ew-benefit-card{transition:box-shadow var(--ew-dur-slow) var(--ew-ease-soft), transform var(--ew-dur-slow) var(--ew-ease-soft);}

  @media (hover:hover) and (pointer:fine){ .ew-benefit-card:hover{box-shadow:0 6px 18px rgba(19,59,79,0.144), 0 30px 75px -18px rgba(19,59,79,0.27); transform:translateY(-6px) scale(1.012);} }
  .ew-navlink{position:relative; font-size:15px; font-weight:500; color:var(--ew-text-heading); text-decoration:none; padding:9px 14px; border-radius:var(--ew-radius); transition:box-shadow var(--ew-dur) var(--ew-ease-soft), color var(--ew-dur) var(--ew-ease-soft), transform 130ms var(--ew-ease);}
  @media (hover:hover) and (pointer:fine){ .ew-navlink:hover{background:linear-gradient(180deg, rgba(19,59,79,0.05) 0%, rgba(19,59,79,0.02) 100%); color:var(--ew-action); box-shadow:inset 0 1px 3px rgba(19,59,79,0.12), inset 0 -1px 0 rgba(255,255,255,0.85);} }
  .ew-navlink:active{transform:scale(0.97);}
  /* El activo lleva el mismo tratamiento que el hover de un inactivo, y no reacciona al puntero. */
  .ew-navlink[aria-current="page"],
  .ew-navlink[aria-current="page"]:hover{background:linear-gradient(180deg, rgba(19,59,79,0.05) 0%, rgba(19,59,79,0.02) 100%); color:var(--ew-action); box-shadow:inset 0 1px 3px rgba(19,59,79,0.12), inset 0 -1px 0 rgba(255,255,255,0.85); font-weight:500;}

  .ew-btn{font-family:inherit; font-size:16px; font-weight:500; border-radius:var(--ew-radius); padding:13px 22px; min-height:44px; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; position:relative; transition:box-shadow 200ms var(--ew-ease-soft), color 200ms var(--ew-ease-soft), transform 150ms var(--ew-ease-soft);}
  .ew-btn:active{transform:scale(0.98); transition-duration:110ms;}
  .ew-btn--primary{color:#FFFFFF; background:linear-gradient(180deg, rgba(255,255,255,0.22) 0%, rgba(255,255,255,0.04) 48%, rgba(255,255,255,0) 100%), linear-gradient(135deg, var(--ew-action) 0%, #0B6FAE 100%); border:0; box-shadow:inset 0 0 0 1px rgba(255,255,255,0.22), inset 0 1px 0 rgba(255,255,255,0.55), inset 0 -8px 14px -10px rgba(6,40,66,0.55), 0 1px 4px rgba(19,59,79,0.198), 0 10px 22px -10px rgba(10,96,152,0.60); -webkit-backdrop-filter:blur(14px) saturate(1.15); backdrop-filter:blur(14px) saturate(1.15);}
  .ew-btn--primary:hover{background:linear-gradient(180deg, rgba(255,255,255,0.30) 0%, rgba(255,255,255,0.06) 48%, rgba(255,255,255,0) 100%), linear-gradient(135deg, #0B6CAC 0%, var(--ew-icon) 100%); color:#FFFFFF; box-shadow:inset 0 0 0 1px rgba(255,255,255,0.22), inset 0 1px 0 rgba(255,255,255,0.75), inset 0 -8px 14px -10px rgba(6,40,66,0.55), 0 2px 8px rgba(19,59,79,0.198), 0 16px 30px -14px rgba(10,96,152,0.62); transform:translateY(-1px);}
  .ew-btn--primary:hover:active{transform:translateY(0) scale(0.97);}
  .ew-btn--secondary{color:var(--ew-text-heading); background:linear-gradient(180deg, rgba(255,255,255,0.72) 0%, rgba(250,252,254,0.50) 100%); border:0; box-shadow:inset 0 0 0 1px rgba(255,255,255,0.70), inset 0 1px 0 rgba(255,255,255,0.95), inset 0 -7px 13px -8px rgba(19,59,79,0.18), 0 1px 4px rgba(19,59,79,0.144), 0 8px 23px -10px rgba(19,59,79,0.252); -webkit-backdrop-filter:blur(22px) saturate(1.28); backdrop-filter:blur(22px) saturate(1.28);}
  .ew-btn--secondary:hover{background:rgba(250,252,254,0.92); color:var(--ew-action); box-shadow:inset 0 0 0 1px rgba(255,255,255,0.70), inset 0 1px 0 #FFFFFF, inset 0 -7px 13px -8px rgba(19,59,79,0.14), 0 2px 8px rgba(19,59,79,0.144), 0 14px 35px -14px rgba(19,59,79,0.306); transform:translateY(-1px);}
  .ew-btn--secondary:hover:active{transform:translateY(0) scale(0.97);}
  .ew-btn--compact{font-size:15px; padding:10px 18px; min-height:40px;}
  .ew-btn--primary,.ew-btn--secondary{border:0 !important;}
  /* Glass buttons sitting on a glass parent: drop their own backdrop-filter (apple-design: never stack light glass on glass) */
  .ew-glass-elevated .ew-btn,.ew-glass-standard .ew-btn{-webkit-backdrop-filter:none; backdrop-filter:none;}
  .ew-glass-elevated .ew-btn--secondary,.ew-glass-standard .ew-btn--secondary{background:linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(250,252,254,0.74) 100%);}
  .ew-btn--header{margin-left:6px;}
  /* Glass form: opaque-enough field on standard glass body, no light-on-light stacking (fields are solid white) */
  .ew-form-glass{padding:28px 30px;}
  .ew-note{display:flex; flex-direction:column; gap:20px; padding:22px 22px 24px; border-radius:var(--ew-radius); background:linear-gradient(180deg, rgba(255,255,255,0.72) 0%, rgba(250,252,254,0.58) 100%); -webkit-backdrop-filter:blur(22px) saturate(1.28); backdrop-filter:blur(22px) saturate(1.28); box-shadow:inset 0 1px 0 rgba(255,255,255,0.95), inset 0 -1px 0 rgba(19,59,79,0.04), 0 2px 8px rgba(19,59,79,0.126), 0 20px 55px -16px rgba(19,59,79,0.216); position:relative;}
  .ew-cicon{flex:none; width:44px; height:44px; border-radius:var(--ew-radius); display:flex; align-items:center; justify-content:center; color:var(--ew-action); background:linear-gradient(180deg, rgba(19,59,79,0.08) 0%, rgba(255,255,255,0.35) 100%); -webkit-backdrop-filter:blur(12px) saturate(1.2); backdrop-filter:blur(12px) saturate(1.2); box-shadow:inset 0 2px 5px rgba(19,59,79,0.18), inset 0 -1px 0 rgba(255,255,255,0.95), inset 1px 0 0 rgba(19,59,79,0.05), inset -1px 0 0 rgba(19,59,79,0.05); transition:box-shadow var(--ew-dur-slow) var(--ew-ease-soft), color var(--ew-dur-slow) var(--ew-ease-soft);}
  @media (hover:hover) and (pointer:fine){ .ew-cinfo:hover .ew-cicon{background:linear-gradient(180deg, rgba(19,59,79,0.04) 0%, rgba(255,255,255,0.65) 100%); color:var(--ew-secondary-deep); box-shadow:inset 0 1px 3px rgba(19,59,79,0.12), inset 0 -1px 0 #FFFFFF;} }
  .ew-req{color:var(--ew-secondary-deep); font-weight:600; margin-left:2px;}
  .ew-form-status{display:flex; align-items:center; gap:10px; font-size:15px; color:var(--ew-text-heading); min-height:44px;}
  .ew-form-status-dot{width:10px; height:10px; border-radius:999px; background:var(--ew-secondary); box-shadow:0 0 0 4px rgba(22,183,170,0.22); flex:none;}
  .ew-form-glass .ew-input{background:rgba(255,255,255,0.92); border-color:rgba(19,59,79,0.30); box-shadow:inset 0 1px 2px rgba(19,59,79,0.06);}
  .ew-form-glass .ew-input:focus{background:#FFFFFF;}
  /* Testimonial: grounded card with a quiet secondary accent that earns its place (the quote mark) */
  .ew-tcard{position:relative; margin:0; padding:28px 28px 24px 30px; display:flex; flex-direction:column; height:100%; background:rgba(250,252,254,0.54); -webkit-backdrop-filter:blur(28px) saturate(1.42); backdrop-filter:blur(28px) saturate(1.42); border:0; border-radius:var(--ew-radius); box-shadow:inset 0 1px 0 rgba(255,255,255,0.88), inset 1px 0 0 rgba(255,255,255,0.50), inset 0 24px 40px -22px rgba(255,255,255,0.62), 0 1px 5px rgba(19,59,79,0.11), 0 4px 22px -14px rgba(19,59,79,0.19);}
  .ew-tcard::after{content:''; position:absolute; left:0; top:0; bottom:0; width:56px; border-radius:inherit; pointer-events:none; background:linear-gradient(90deg, rgba(22,183,170,0.14) 0%, rgba(22,183,170,0.05) 55%, rgba(22,183,170,0) 100%);}
  .ew-tq{flex:1; margin:0; font-size:19px; line-height:1.58; color:var(--ew-text-heading); max-width:52ch; text-wrap:pretty;}
  .ew-tauth{display:block; font-size:15px; font-weight:600; color:var(--ew-text-heading);}
  .ew-tco{display:block; font-size:14px; color:var(--ew-text-muted); margin-top:2px;}
  .ew-tq::before,.ew-tq::after{font-weight:700; color:var(--ew-secondary-deep);}
  .ew-tq::before{content:'\201C';}
  .ew-tq::after{content:'\201D';}
  .ew-tmeta{display:flex; align-items:center; gap:12px; margin-top:var(--ew-space-4);}
  /* Carrusel de testimonios: scroll-snap nativo (gesto táctil y trackpad gratis, transición
     interrumpible) con controles visibles, indicador de posición y navegación por teclado.
     Sin autoplay. El contenido se entiende sin animación: sin transición sigue habiendo salto. */
  /* Patrones repetidos, deduplicados desde estilos en línea idénticos. */
  .ew-h2{margin:0; font-size:clamp(28px, 3vw, 34px); font-weight:600; letter-spacing:-0.018em; line-height:1.14; color:var(--ew-text-heading);}
  .ew-intro{margin:12px 0 0; font-size:17px; line-height:1.6; color:var(--ew-text-body); max-width:58ch; text-wrap:pretty;}
  .ew-svc-h3{margin:0; font-size:24px; font-weight:600; line-height:1.22; letter-spacing:-0.016em; color:var(--ew-text-heading);}
  .ew-plabel{font-size:15px; line-height:1.55; color:var(--ew-text-body); margin-top:10px;}
  .ew-cinfo{display:flex; gap:14px; align-items:flex-start;}
  .ew-clabel{display:block; font-size:13px; font-weight:600; letter-spacing:0.02em; color:var(--ew-text-muted);}
  .ew-chev{width:13px; height:13px; flex:none; fill:currentColor;}
  .ew-carousel{position:relative; margin-top:var(--ew-space-5);}
  .ew-car-frame{position:relative;}
  .ew-car-viewport{display:flex; gap:var(--ew-space-5); overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scroll-behavior:smooth; scrollbar-width:none; -ms-overflow-style:none; background:transparent; padding:0 8px 16px; margin:0 -8px; scroll-padding-inline:8px;}
  .ew-car-viewport::-webkit-scrollbar{display:none;}
  .ew-car-viewport:focus-visible{outline:2px solid var(--ew-action); outline-offset:3px; border-radius:var(--ew-radius);}
  .ew-car-slide{flex:0 0 calc((100% - var(--ew-space-5)) / 2); scroll-snap-align:start; display:flex;}
  .ew-car-slide > .ew-tcard{width:100%;}
  /* Controles bajo las tarjetas, centrados al eje vertical del contenedor. */
  .ew-car-bar{display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:12px; row-gap:6px; margin-top:var(--ew-space-3);}
  .ew-car-nav[disabled]{opacity:0.4; cursor:default; box-shadow:inset 0 1px 0 rgba(255,255,255,0.45), 0 1px 3px rgba(19,59,79,0.09);}
  .ew-car-nav svg{width:17px; height:17px; display:block;}
  .ew-car-dots{display:flex; align-items:center; gap:0; margin-left:auto;}
  .ew-dot{width:44px; height:44px; min-width:44px; min-height:44px; padding:0; border:0; background:transparent; cursor:pointer; display:inline-flex; align-items:center; justify-content:center;}
  .ew-dot::after{content:''; width:11px; height:11px; border-radius:999px; background:rgba(255,255,255,0.68); -webkit-backdrop-filter:blur(8px) saturate(1.25); backdrop-filter:blur(8px) saturate(1.25); box-shadow:inset 0 1px 0.5px rgba(255,255,255,0.98), inset 0 -2px 4px -1px rgba(19,59,79,0.26), 0 1px 4px rgba(19,59,79,0.342); transition:background var(--ew-dur) var(--ew-ease-soft), transform var(--ew-dur) var(--ew-ease-surface), box-shadow var(--ew-dur) var(--ew-ease-soft);}
  .ew-dot[aria-current="true"]::after{background:rgba(14,138,128,0.5); -webkit-backdrop-filter:blur(10px) saturate(1.5); backdrop-filter:blur(10px) saturate(1.5); box-shadow:inset 0 1px 0.5px rgba(255,255,255,0.70), inset 0 -3px 5px -2px rgba(6,58,54,0.34), 0 1px 4px rgba(11,90,84,0.40); transform:scale(1.42);}
  @media (hover:hover) and (pointer:fine){ .ew-dot:not([aria-current="true"]):hover::after{background:rgba(255,255,255,0.92); transform:scale(1.16);} }
  .ew-dot:active::after{transform:scale(0.88); transition-duration:110ms;}
  .ew-dot:focus-visible{outline:2px solid var(--ew-action); outline-offset:2px; border-radius:999px;}
  @media (prefers-reduced-motion: reduce){ .ew-dot::after{transition:background var(--ew-dur) linear;} .ew-dot:active::after{transform:none;} }
  /* Transparencia reducida: el material se vuelve sólido y el estado se sostiene por color y tamaño. */
  @media (prefers-reduced-transparency: reduce){
    .ew-dot::after{background:#FFFFFF; -webkit-backdrop-filter:none; backdrop-filter:none;}
    .ew-dot[aria-current="true"]::after{background:var(--ew-secondary-deep); -webkit-backdrop-filter:none; backdrop-filter:none;}
  }
  @media (prefers-contrast: more){
    .ew-dot::after{background:#FFFFFF; box-shadow:0 0 0 1px var(--ew-text-heading); -webkit-backdrop-filter:none; backdrop-filter:none;}
    .ew-dot[aria-current="true"]::after{background:var(--ew-secondary-deep); box-shadow:0 0 0 1px var(--ew-text-heading);}
  }
  /* El breakpoint decide, no la medición: en escritorio hay 5 posiciones alcanzables. */
  /* Marco de vidrio de 4 px alrededor del mapa: superficie con padding, no propiedad border. */
  .ew-mapframe{padding:12px; border-radius:calc(var(--ew-radius) + 12px); background:linear-gradient(135deg, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0.58) 34%, rgba(240,247,251,0.46) 62%, rgba(255,255,255,0.80) 100%); -webkit-backdrop-filter:blur(22px) saturate(1.4); backdrop-filter:blur(22px) saturate(1.4); box-shadow:inset 0 2px 1px rgba(255,255,255,0.98), inset 2px 0 1px rgba(255,255,255,0.72), inset 0 -3px 2px rgba(19,59,79,0.10), inset -2px 0 2px rgba(19,59,79,0.07), inset 0 -10px 16px -10px rgba(19,59,79,0.20), var(--ew-elev-2);}
  .ew-mapframe iframe{display:block; border-radius:var(--ew-radius);}
  /* Páginas internas: una sola superficie de lectura continua, suficientemente opaca. El vidrio
     se reserva al armazón (Header, Footer) y al plano principal, no a cada subapartado. */
  .ew-legal{max-width:78ch; margin:0 auto; padding:46px 46px 54px; border-radius:var(--ew-radius); background:rgba(253,254,255,0.94); -webkit-backdrop-filter:blur(28px) saturate(1.3); backdrop-filter:blur(28px) saturate(1.3); box-shadow:inset 0 1px 0 rgba(255,255,255,0.96), var(--ew-elev-2); border:0;}
  .ew-legal h1{margin:0; font-size:clamp(30px,3.6vw,40px); font-weight:700; letter-spacing:-0.022em; line-height:1.1; color:var(--ew-text-heading); text-wrap:pretty;}
  .ew-legal h1:focus-visible{outline:2px solid var(--ew-action); outline-offset:6px; border-radius:6px;}
  .ew-lnote{margin:18px 0 0; padding:12px 16px; border-radius:var(--ew-radius); background:rgba(19,59,79,0.05); font-size:14.5px; line-height:1.55; color:var(--ew-text-body);}
  .ew-lbody{margin-top:30px;}
  .ew-lbody h2{margin:34px 0 0; font-size:23px; font-weight:600; letter-spacing:-0.014em; line-height:1.24; color:var(--ew-text-heading); text-wrap:pretty;}
  .ew-lbody h3{margin:24px 0 0; font-size:18px; font-weight:600; line-height:1.3; color:var(--ew-text-heading);}
  .ew-lbody p{margin:14px 0 0; font-size:17px; line-height:1.72; color:var(--ew-text-body); text-wrap:pretty;}
  .ew-lbody ul,.ew-lbody ol{margin:14px 0 0; padding-left:22px; display:flex; flex-direction:column; gap:8px;}
  .ew-lbody li{font-size:17px; line-height:1.68; color:var(--ew-text-body);}
  .ew-lbody strong{font-weight:600; color:var(--ew-text-heading);}
  .ew-lbody a{color:var(--ew-icon); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:2px;}
  .ew-lbody a:hover{color:var(--ew-action-hover); text-decoration-thickness:2px;}
  @media (max-width:760px){ .ew-legal{padding:30px 20px 36px; max-width:none;} .ew-lbody h2{margin-top:28px;} }
  @media (prefers-reduced-transparency: reduce){ .ew-legal{background:#FDFEFF !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important;} }
  html.ew-force-opaque .ew-legal{background:#FDFEFF !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important;}
  /* Control del Libro de Reclamaciones: ancla con el tratamiento de CTA canónico (.ew-btn--primary),
     no con el vidrio de los botones sociales. Aquí solo la colocación y el icono. */
  .ew-lrbtn{margin-top:var(--ew-space-4); gap:10px;}
  .ew-lrbtn svg{width:17px; height:17px; flex:none; fill:currentColor;}
  /* Libro de Reclamaciones: formulario agrupado, no asistente por pasos. */
  .ew-cbgrid{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:16px;}
  @media (max-width:760px){ .ew-cbgrid{grid-template-columns:1fr;} }
  .ew-cbfield{display:flex; flex-direction:column; gap:6px;}
  .ew-cbfield label{font-size:15px; font-weight:500; color:var(--ew-text-heading);}
  .ew-cberr{font-size:14px; line-height:1.5; color:#9A2A1E; font-weight:500;}
  .ew-input[aria-invalid="true"]{border-color:#9A2A1E; box-shadow:0 0 0 2px #FFFFFF, 0 0 0 3px rgba(154,42,30,0.45);}
  .ew-cbsummary{margin-top:20px; padding:16px 18px; border-radius:var(--ew-radius); background:rgba(154,42,30,0.07); box-shadow:inset 0 0 0 2px rgba(154,42,30,0.30);}
  .ew-cbsummary a{color:#9A2A1E; font-weight:500;}
  .ew-cbgroup{margin-top:30px;}
  .ew-cbgroup > h2{margin:0 0 4px; font-size:20px; font-weight:600; letter-spacing:-0.012em; color:var(--ew-text-heading);}
  .ew-cbradios{display:flex; flex-wrap:wrap; gap:12px; margin-top:10px;}
  .ew-cbradio{display:inline-flex; align-items:center; gap:9px; min-height:44px; padding:0 16px; border-radius:var(--ew-radius); background:rgba(255,255,255,0.72); box-shadow:inset 0 1px 0 rgba(255,255,255,0.95), 0 1px 3px rgba(19,59,79,0.12); font-size:16px; color:var(--ew-text-heading); cursor:pointer;}
  .ew-cbradio input{width:18px; height:18px; accent-color:var(--ew-action);}
  .ew-cbradio:focus-within{outline:2px solid var(--ew-action); outline-offset:2px;}
  .ew-turnstile{margin-top:20px; padding:18px; border-radius:var(--ew-radius); background:rgba(19,59,79,0.045); font-size:14.5px; line-height:1.55; color:var(--ew-text-muted); text-align:center;}
  .ew-cbstate{margin-top:22px; padding:22px 24px; border-radius:var(--ew-radius); background:rgba(255,255,255,0.86); box-shadow:inset 0 1px 0 rgba(255,255,255,0.96), var(--ew-elev-1);}
  .ew-cbstate h2{margin:0; font-size:21px; font-weight:600; color:var(--ew-text-heading);}
  .ew-cbstate p{margin:12px 0 0; font-size:16.5px; line-height:1.65; color:var(--ew-text-body);}
  .ew-cbcode{display:inline-block; margin-top:14px; padding:10px 14px; border-radius:var(--ew-radius); background:rgba(19,59,79,0.06); font-family:ui-monospace,'SF Mono',Menlo,monospace; font-size:17px; font-weight:600; letter-spacing:0.02em; color:var(--ew-text-heading);}
  .ew-req-note{margin-top:8px; font-size:14.5px; color:var(--ew-text-muted);}
  .ew-sr--single{display:none;}
  @media (max-width:860px){ .ew-sr--range{display:none;} .ew-sr--single{display:block;} }
  @media (min-width:861px){ .ew-car-dots .ew-dot:last-child{display:none;} }
  .ew-sr{position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0;}
  @media (max-width:1000px){ .ew-car-slide{flex-basis:calc((100% - var(--ew-space-5)) / 2);} }
  @media (max-width:860px){ .ew-car-slide{flex-basis:100%;} }
  @media (max-width:600px){ .ew-proof-floor::after{background:radial-gradient(circle at 50% 50%, rgba(226,208,171,0.07) 0%, rgba(226,208,171,0) 72%) !important;} .ew-car-bar{justify-content:space-between;} .ew-car-dots{margin-left:0; flex:1 0 100%; justify-content:space-between;} }
  @media (prefers-reduced-motion: reduce){ .ew-car-viewport{scroll-behavior:auto;} }
  html.ew-no-anim .ew-car-viewport,html.ew-force-rm .ew-car-viewport{scroll-behavior:auto;}
  .ew-tavatar{width:57px; height:57px; border-radius:999px; object-fit:cover; flex:none; box-shadow:0 0 0 2px #FFFFFF, 0 0 0 3px rgba(22,183,170,0.45);}
  /* Service card: image with bottom scrim, glass title inset, grounded description; hover lifts */
  .ew-service-card{position:relative; aspect-ratio:4/5; border-radius:var(--ew-radius); overflow:hidden; background:var(--ew-surface); box-shadow:var(--ew-elev-1); isolation:isolate;}
  .ew-service-card img{position:absolute; left:0; top:-12%; width:100%; height:124%; object-fit:cover; transition:transform 520ms var(--ew-ease-soft);}
  .ew-service-text{position:absolute; left:8px; right:8px; bottom:8px; top:32%; height:auto; padding:20px; border-radius:calc(var(--ew-radius) - 3px); display:flex; flex-direction:column; justify-content:flex-end; gap:8px; color:var(--ew-text-heading); isolation:isolate;}
  .ew-service-text::before{content:''; position:absolute; inset:0; z-index:-1; border-radius:inherit; background:linear-gradient(180deg, rgba(255,255,255,0) 0px, rgba(255,255,255,0.04) calc(100% - var(--text-h, 120px) - 110px), rgba(255,255,255,0.16) calc(100% - var(--text-h, 120px) - 74px), rgba(255,255,255,0.56) calc(100% - var(--text-h, 120px) - 40px), rgba(255,255,255,0.84) calc(100% - var(--text-h, 120px) - 12px), rgba(253,254,255,0.855) calc(100% - var(--text-h, 120px)), rgba(253,254,255,0.855) 100%); -webkit-backdrop-filter:blur(12px) saturate(1.28); backdrop-filter:blur(12px) saturate(1.28); -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,0) 0px, rgba(0,0,0,0.1) calc(100% - var(--text-h, 120px) - 110px), rgba(0,0,0,0.32) calc(100% - var(--text-h, 120px) - 74px), rgba(0,0,0,0.78) calc(100% - var(--text-h, 120px) - 40px), #000 calc(100% - var(--text-h, 120px) - 12px), #000 100%); mask-image:linear-gradient(180deg, rgba(0,0,0,0) 0px, rgba(0,0,0,0.1) calc(100% - var(--text-h, 120px) - 110px), rgba(0,0,0,0.32) calc(100% - var(--text-h, 120px) - 74px), rgba(0,0,0,0.78) calc(100% - var(--text-h, 120px) - 40px), #000 calc(100% - var(--text-h, 120px) - 12px), #000 100%);}
  .ew-service-text h3,.ew-service-text p{position:relative; z-index:1; opacity:1;}
  @media (hover:hover) and (pointer:fine){ .ew-service-card:hover img{--zoom:1.06;} }
  .ew-service-card img{--zoom:1; transform:scale(var(--zoom));}
  /* Process step marker picks up the secondary */
  .ew-step-dot{position:relative; z-index:1; width:48px; height:48px; border-radius:999px; display:flex; align-items:center; justify-content:center; color:#F4FBFA; background:linear-gradient(180deg, #1FC6B8 0%, var(--ew-secondary) 55%, var(--ew-secondary-deep) 100%); box-shadow:inset 0 1px 0 rgba(255,255,255,0.45), 0 0 0 4px var(--ew-canvas-c), 0 6px 14px -6px rgba(14,138,128,0.55); transition:box-shadow var(--ew-dur-slow) var(--ew-ease-soft), color var(--ew-dur-slow) var(--ew-ease-soft), transform var(--ew-dur-slow) var(--ew-ease-soft);}
  @media (hover:hover) and (pointer:fine){ .ew-step:hover .ew-step-dot{background:linear-gradient(180deg, rgba(255,255,255,0.80) 0%, rgba(255,255,255,0.45) 100%), linear-gradient(180deg, #5FDCD2 0%, var(--ew-secondary) 100%); color:var(--ew-secondary-deep); -webkit-backdrop-filter:blur(10px) saturate(1.4); backdrop-filter:blur(10px) saturate(1.4); box-shadow:inset 0 1px 0 #FFFFFF, inset 0 -6px 10px -8px rgba(14,138,128,0.35), 0 0 0 4px var(--ew-canvas-c), 0 10px 22px -8px rgba(14,138,128,0.55); transform:translateY(-2px);} }
  .ew-process-line{height:6px !important; border-radius:3px; top:21px !important; z-index:0; overflow:hidden; background:linear-gradient(90deg, rgba(22,183,170,0.38), rgba(22,183,170,0.55)) !important;}
  .ew-process-line::after{content:''; position:absolute; inset:0; background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 30%, rgba(255,255,255,0.62) 50%, rgba(255,255,255,0) 70%, rgba(255,255,255,0) 100%); background-size:50% 100%; background-repeat:no-repeat; animation:ewFlow 9s cubic-bezier(0.4,0,0.6,1) infinite;}
  @keyframes ewFlow{from{background-position:-60% 0;}to{background-position:170% 0;}}
  .ew-benefit-num{color:var(--ew-secondary-deep) !important;}
  .ew-form-grid{align-items:end;}
  .ew-proof-value{min-height:0;}
  .ew-proof-item{display:flex; flex-direction:column; justify-content:flex-start;}
  .ew-input{font-family:inherit; font-size:16px; color:var(--ew-text-heading); background:#FFFFFF; border:1px solid var(--ew-control-border); border-radius:var(--ew-radius); padding:11px 13px; min-height:44px; width:100%; transition:border-color var(--ew-dur) var(--ew-ease-soft), box-shadow var(--ew-dur) var(--ew-ease-soft), background var(--ew-dur) var(--ew-ease-soft);}
  .ew-input:focus{outline:none; border-color:var(--ew-action); box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px var(--ew-action);}
  .ew-footlink{display:flex; align-items:center; gap:var(--ew-space-2); min-height:36px; white-space:nowrap; font-size:15px; font-weight:400; color:var(--ew-text-body); text-decoration:none; transition:color var(--ew-dur) var(--ew-ease-soft), transform var(--ew-dur) var(--ew-ease-soft);}
  @media (hover:hover) and (pointer:fine){ .ew-footlink:hover{transform:translateX(3px);} }
  .ew-footlink:hover{color:var(--ew-action-hover);}
  /* Familia de controles de vidrio: sociales, hamburguesa y navegación del carrusel comparten
     material e interacción. Hover hundido, pulsación más marcada, border:0, sin perímetro. */
  .ew-social,.ew-burger,.ew-car-nav{position:relative; display:inline-flex; align-items:center; justify-content:center; flex:none; width:44px; height:44px; min-width:44px; min-height:44px; padding:0; border:0; border-radius:var(--ew-radius); cursor:pointer; color:var(--ew-icon); background:linear-gradient(180deg, rgba(255,255,255,0.70) 0%, rgba(250,252,254,0.50) 100%); -webkit-backdrop-filter:blur(18px) saturate(1.32); backdrop-filter:blur(18px) saturate(1.32); box-shadow:inset 0 1px 0 rgba(255,255,255,0.96), inset 0 -6px 12px -7px rgba(19,59,79,0.20), 0 2px 8px rgba(19,59,79,0.099), 0 16px 43px -16px rgba(19,59,79,0.207); transition:box-shadow var(--ew-dur) var(--ew-ease-soft), color var(--ew-dur) var(--ew-ease-soft), transform 130ms var(--ew-ease-soft);}
  @media (hover:hover) and (pointer:fine){
    .ew-social:hover,.ew-burger:hover,.ew-car-nav:not([disabled]):hover{color:var(--ew-action); transform:translateY(0.5px) scale(0.994); box-shadow:inset 0 1px 2px rgba(19,59,79,0.15), inset 0 -1px 0 rgba(255,255,255,0.96), 0 1px 3px rgba(19,59,79,0.108);}
  }
  .ew-social:active,.ew-burger:active,.ew-car-nav:not([disabled]):active{transform:translateY(1px) scale(0.978); box-shadow:inset 0 2px 5px rgba(19,59,79,0.22), inset 0 -1px 0 rgba(255,255,255,0.68);}
  .ew-social:focus-visible,.ew-burger:focus-visible,.ew-car-nav:focus-visible{outline:2px solid var(--ew-action); outline-offset:2px;}
  /* v9.1 Defecto 4. Los trazos de estos iconos llegan al borde de su viewBox 0 0 16 16 y se
     dibujan a 21/16 y 20/16, escalas fraccionarias; con el scale() del hover, Firefox redondea el
     recorte propio del SVG (overflow:hidden por defecto) y raspa ~2 px del borde derecho. El SVG
     deja de recortar su propio lienzo: la geometría, el tamaño y el centrado no cambian. */
  .ew-social svg,.ew-car-nav svg,.ew-lrbtn svg{overflow:visible;}
  /* Sobre un padre de vidrio no se acumula vidrio (apple-design §12): el control suelta su
     backdrop-filter y el material lo sostienen el relleno y las luces internas. */
  .ew-glass-elevated .ew-social,.ew-glass-standard .ew-social,.ew-glass-elevated .ew-burger,.ew-glass-elevated .ew-car-nav{-webkit-backdrop-filter:none; backdrop-filter:none; background:linear-gradient(180deg, rgba(255,255,255,0.78) 0%, rgba(250,252,254,0.56) 100%); box-shadow:inset 0 1px 0 rgba(255,255,255,0.96), inset 0 -6px 12px -7px rgba(19,59,79,0.20), 0 2px 8px rgba(19,59,79,0.099), 0 16px 43px -16px rgba(19,59,79,0.198);}
  @media (hover:hover) and (pointer:fine){
    .ew-glass-elevated .ew-social:hover,.ew-glass-standard .ew-social:hover,.ew-glass-elevated .ew-burger:hover{background:linear-gradient(180deg, rgba(255,255,255,0.90) 0%, rgba(250,252,254,0.70) 100%); box-shadow:inset 0 1px 2px rgba(19,59,79,0.16), inset 0 -1px 0 rgba(255,255,255,0.98), 0 1px 3px rgba(19,59,79,0.108);}
  }
  .ew-glass-elevated .ew-social:active,.ew-glass-standard .ew-social:active,.ew-glass-elevated .ew-burger:active{background:linear-gradient(180deg, rgba(255,255,255,0.94) 0%, rgba(250,252,254,0.76) 100%); box-shadow:inset 0 2px 5px rgba(19,59,79,0.22), inset 0 -1px 0 rgba(255,255,255,0.90);}
  .ew-car-nav{-webkit-backdrop-filter:blur(18px) saturate(1.32); backdrop-filter:blur(18px) saturate(1.32); background:linear-gradient(180deg, rgba(255,255,255,0.78) 0%, rgba(250,252,254,0.56) 100%); box-shadow:inset 0 1px 0 rgba(255,255,255,0.96), inset 0 -6px 12px -7px rgba(19,59,79,0.20), 0 2px 8px rgba(19,59,79,0.099), 0 16px 43px -16px rgba(19,59,79,0.198);}
  @media (hover:hover) and (pointer:fine){
    .ew-car-nav:not([disabled]):hover{background:linear-gradient(180deg, rgba(255,255,255,0.90) 0%, rgba(250,252,254,0.70) 100%); box-shadow:inset 0 1px 2px rgba(19,59,79,0.16), inset 0 -1px 0 rgba(255,255,255,0.95), 0 1px 3px rgba(19,59,79,0.108);}
  }
  .ew-car-nav:not([disabled]):active{background:linear-gradient(180deg, rgba(255,255,255,0.94) 0%, rgba(250,252,254,0.76) 100%); box-shadow:inset 0 2px 5px rgba(19,59,79,0.22), inset 0 -1px 0 rgba(255,255,255,0.90);}
  @media (prefers-reduced-motion: reduce){ .ew-social,.ew-burger,.ew-car-nav{transition:box-shadow var(--ew-dur) linear, color var(--ew-dur) linear;} .ew-social:hover,.ew-burger:hover,.ew-car-nav:hover,.ew-social:active,.ew-burger:active,.ew-car-nav:active{transform:none;} }
  .ew-social:focus-visible,.ew-faq-btn:focus-visible,.ew-btn:focus-visible,.ew-navlink:focus-visible,.ew-footlink:focus-visible{outline:2px solid var(--ew-action); outline-offset:2px;}
  .ew-faq-btn{width:100%; font-family:inherit; text-align:left; background:transparent; border:0; padding:17px 20px; cursor:pointer; display:flex; align-items:center; gap:var(--ew-space-4); min-height:56px; color:inherit; transition:background var(--ew-dur) var(--ew-ease-soft);}
  @media (hover:hover) and (pointer:fine){ .ew-faq-btn:hover{background:rgba(255,255,255,0.40);} }
  /* Sin animaciones de entrada de un solo disparo: en este runtime se congelan en su
     fotograma 0%, que es un estado oculto. La visibilidad en reposo no puede depender
     de movimiento. Las clases se conservan como anclas de auditoría. */
  .ew-mo-surface,.ew-mo-disclose{opacity:1;}
  .ew-faq-answer{display:grid; grid-template-rows:0fr; transition:grid-template-rows 460ms var(--ew-ease-soft);}
  .ew-faq-answer[data-open="true"]{grid-template-rows:1fr;}
  .ew-faq-answer > div{overflow:hidden; min-height:0;}
  .ew-faq-answer > div > div{padding:0 56px 20px 20px; opacity:0; transform:translateY(-3px); transition:opacity 420ms var(--ew-ease-soft), transform 460ms var(--ew-ease-soft);}
  .ew-faq-answer[data-open="true"] > div > div{opacity:1; transform:none;}
  .ew-burger{position:relative; display:none;}
  .ew-burger-line{position:absolute; left:13px; width:18px; height:2px; border-radius:1px; background:var(--ew-text-heading); transition:transform 260ms var(--ew-ease-surface), opacity 170ms var(--ew-ease-soft);}
  .ew-burger-line:nth-of-type(1){top:15px;}
  .ew-burger-line:nth-of-type(2){top:21px;}
  .ew-burger-line:nth-of-type(3){top:27px;}
  .ew-burger[aria-expanded="true"] .ew-burger-line:nth-of-type(1){transform:translateY(6px) rotate(45deg);}
  .ew-burger[aria-expanded="true"] .ew-burger-line:nth-of-type(2){opacity:0; transform:scaleX(0.35);}
  .ew-burger[aria-expanded="true"] .ew-burger-line:nth-of-type(3){transform:translateY(-6px) rotate(-45deg);}
  .ew-mopanel{display:grid; grid-template-rows:0fr; opacity:0; visibility:hidden; transition:grid-template-rows 280ms var(--ew-ease-surface), opacity 200ms var(--ew-ease-soft), visibility 0s linear 280ms;}
  .ew-mopanel[data-open="true"]{grid-template-rows:1fr; opacity:1; visibility:visible; transition-delay:0s,0s,0s;}
  .ew-mopanel > div{overflow:hidden; min-height:0;}
  .ew-faq-sign{position:relative; display:block; width:15px; height:15px;}
  .ew-faq-sign::before,.ew-faq-sign::after{content:''; position:absolute; background:currentColor; border-radius:1px; transition:transform 460ms var(--ew-ease-soft), opacity 420ms var(--ew-ease-soft);}
  .ew-faq-sign::before{top:6.5px; left:0; width:15px; height:2px;}
  .ew-faq-sign::after{left:6.5px; top:0; width:2px; height:15px;}
  .ew-faq-btn[aria-expanded="true"] .ew-faq-sign::after{transform:scaleY(0); opacity:0;}
  .ew-faq-btn[aria-expanded="true"] .ew-faq-sign::before{transform:rotate(180deg);}
  .ew-faq-btn:active{background:rgba(255,255,255,0.55);}
  /* .ew-social salió de aquí: esta regla precede a la familia de controles y, con la misma
     especificidad y una posición posterior, anulaba su pulsación hundida. */
  .ew-footlink:active{transform:scale(0.97);}
  @media (hover:none){ .ew-navlink:hover,.ew-footlink:hover{background:transparent;} }
  @media (prefers-reduced-motion: reduce){
    .ew-service-card img,.ew-benefit-card,.ew-service-text,.ew-step-dot{transition:none !important;}
    .ew-orb,.ew-process-line::after{animation:none !important;}
    .ew-navlink,.ew-btn,.ew-input,.ew-social,.ew-footlink,.ew-faq-btn{transition:none !important;}
  }
  @media (prefers-reduced-transparency: reduce){
    .ew-glass-subtle,.ew-glass-standard,.ew-glass-elevated{background:#F1F6FA !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important;}
  }
  @supports not ((backdrop-filter:blur(2px)) or (-webkit-backdrop-filter:blur(2px))){
    .ew-glass-subtle,.ew-glass-standard,.ew-glass-elevated{background:#F1F6FA !important;}
  }
  @media (max-width:1000px){
    /* La navegación por hamburguesa cubre todo el rango de tableta, no solo hasta 760 px. */
    .ew-navlinks{display:none !important;}
    .ew-burger{display:inline-flex !important; margin-left:auto;}
    .ew-benefits{grid-template-columns:repeat(2,1fr) !important;}
    .ew-services{grid-template-columns:repeat(2,1fr) !important;}
    .ew-benefits > *{padding-top:0 !important;}
  }
  @media (max-width:860px){
    .ew-proof{grid-template-columns:1fr 1fr !important;}
    .ew-proof-item + .ew-proof-item{border-left:0 !important;}
    .ew-proof-item{border-top:1px solid rgba(19,59,79,0.16);}
    .ew-proof-item:first-child, .ew-proof-item:nth-child(2){border-top:0;}
    .ew-proof-value{min-height:0 !important;}
    .ew-tgrid{grid-template-columns:1fr !important;}
    .ew-contact{grid-template-columns:1fr !important;}
    .ew-foot{grid-template-columns:1fr 1fr !important;}
    .ew-process-line{display:none !important;}
    .ew-process{grid-template-columns:1fr 1fr !important; row-gap:var(--ew-space-5) !important;}
    .ew-about-body{margin-top:-120px !important; max-width:none !important; margin-right:0 !important;}
    .ew-about-img{height:380px !important;}
  }
  /* Tablet: el panel del Hero baja 25 px, así que solapa la sección siguiente 25 px más. */
  @media (min-width:761px) and (max-width:1000px){
    .ew-hero-surface{top:325px !important;}
    .ew-about-body{width:90% !important; max-width:90% !important; margin-left:auto !important; margin-right:auto !important;}
  }
  @media (max-width:760px){
    .ew-hero-surface{position:relative !important; top:auto !important; left:auto !important; right:auto !important; width:auto !important; bottom:auto !important; margin:-94px 16px 0 !important;}
    .ew-form-grid{grid-template-columns:1fr !important;}
    .ew-services{grid-template-columns:1fr !important;}
    .ew-service-card{aspect-ratio:4/4.4 !important;}
    .ew-step-dot{width:44px !important; height:44px !important;}
    #proof{padding-top:77px !important;}
  }
  @media (max-width:600px){
    .ew-benefits{grid-template-columns:1fr !important;}
    .ew-proof{grid-template-columns:1fr !important;}
    .ew-proof-item:nth-child(2){border-top:1px solid rgba(19,59,79,0.16) !important;}
    .ew-process{grid-template-columns:1fr !important;}
    .ew-foot{grid-template-columns:1fr !important;}
    .ew-pad{padding-left:18px !important; padding-right:18px !important;}
    header.ew-glass-elevated{width:calc(100% - 20px) !important;}
    /* Móvil: la imagen de About va a sangre completa y sin radio; el contenido flotante conserva el suyo. */
    .ew-about-img{border-radius:0 !important; width:100vw !important; max-width:100vw !important; margin-left:calc(50% - 50vw) !important;}
  }
  /* ===== Consentimiento: banner, panel de preferencias, contenido externo =====
     Material y movimiento tomados de los tokens compartidos de Stage B v6 (glassElevated,
     --ew-elev-*, --ew-dur-*, --ew-ease-*). No se reescriben valores aproximados. */
  :root{
    /* Reservado para la integración futura del FloatingWhatsAppButton. Sin botón renderizado. */
    --floating-action-obstruction-offset:0px;
    --ew-consent-layer:190;
    --ew-prefs-layer:200;
  }
  .ew-consent{position:fixed; left:50%; bottom:24px; transform:translateX(-50%); width:calc(100% - 48px); max-width:720px; z-index:var(--ew-consent-layer); padding:22px 26px 20px; border:0;}
  /* Sin animación de entrada: el runtime re-renderiza esta Landing de forma continua (paralaje,
     revelado por IntersectionObserver, temporizador de testimonios) y una animación de un solo
     disparo se reiniciaría en cada render, dejando la superficie en su fotograma 0. La visibilidad
     en reposo no puede depender de movimiento. */
  .ew-consent{opacity:1;}
  .ew-consent-actions{display:flex; flex-wrap:wrap; gap:10px; margin-top:18px;}
  .ew-consent-actions .ew-btn{flex:1 1 auto; min-width:180px;}
  .ew-prefs-backdrop{position:fixed; inset:0; z-index:var(--ew-prefs-layer); display:flex; align-items:center; justify-content:center; padding:24px; background:rgba(19,59,79,0.36); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); opacity:1;}
  .ew-prefs{width:100%; max-width:560px; max-height:calc(100dvh - 48px); display:flex; flex-direction:column; border:0; padding:0; overflow:hidden; opacity:1; background:rgba(250,252,254,0.85);}
  .ew-prefs-head{padding:24px 26px 0; display:flex; align-items:flex-start; justify-content:space-between; gap:16px;}
  .ew-prefs-body{padding:16px 26px 2px; overflow-y:auto; -webkit-overflow-scrolling:touch;}
  .ew-prefs-foot{padding:18px 26px 22px; display:flex; justify-content:flex-end;}
  .ew-prefs-close{flex:none; width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; border:0; border-radius:var(--ew-radius); background:transparent; color:var(--ew-text-body); cursor:pointer; transition:background var(--ew-dur) var(--ew-ease-soft), color var(--ew-dur) var(--ew-ease-soft);}
  @media (hover:hover) and (pointer:fine){ .ew-prefs-close:hover{background:rgba(19,59,79,0.06); color:var(--ew-action);} }
  .ew-cat{display:flex; gap:18px; align-items:flex-start; justify-content:space-between; padding:16px 0;}
  .ew-cat + .ew-cat{border-top:1px solid var(--ew-rule);}
  .ew-switch{flex:none; position:relative; width:56px; height:44px; min-height:44px; padding:0; border:0; background:transparent; cursor:pointer;}
  .ew-switch::before{content:''; position:absolute; left:0; top:7px; width:52px; height:30px; border-radius:999px; background:rgba(19,59,79,0.24); box-shadow:inset 0 1px 3px rgba(19,59,79,0.24); transition:background var(--ew-dur) var(--ew-ease-soft);}
  .ew-switch::after{content:''; position:absolute; left:4px; top:12px; width:20px; height:20px; border-radius:999px; background:#FFFFFF; box-shadow:0 1px 4px rgba(19,59,79,0.306); transition:transform var(--ew-dur-disclose) var(--ew-ease-surface);}
  .ew-switch[aria-checked="true"]::before{background:var(--ew-secondary-deep);}
  .ew-switch[aria-checked="true"]::after{transform:translateX(24px);}
  .ew-switch[aria-disabled="true"]{cursor:default;}
  .ew-switch:focus-visible{outline:2px solid var(--ew-action); outline-offset:2px; border-radius:var(--ew-radius);}
  .ew-prefs-close:focus-visible{outline:2px solid var(--ew-action); outline-offset:2px;}
  .ew-extph{position:relative; overflow:hidden; border-radius:var(--ew-radius); padding:var(--ew-space-6) var(--ew-space-5); min-height:220px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:12px;}
  .ew-extph::before{content:''; position:absolute; inset:0; pointer-events:none; background:repeating-linear-gradient(135deg, rgba(19,59,79,0.055) 0 10px, rgba(19,59,79,0) 10px 22px);}
  .ew-extph > *{position:relative; z-index:1;}
  .ew-extph-actions{display:flex; flex-wrap:wrap; gap:10px; margin-top:4px;}
  button.ew-footlink{font-family:inherit; background:transparent; border:0; padding:0; text-align:left; cursor:pointer; width:100%;}
  /* Respaldo de transparencia reducida y de contraste alto para las superficies de consentimiento */
  @media (prefers-reduced-transparency: reduce){
    .ew-consent,.ew-prefs{background:#F1F6FA !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important;}
    .ew-prefs-backdrop{background:rgba(19,59,79,0.52) !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important;}
  }
  @media (prefers-contrast: more){
    .ew-consent,.ew-prefs{background:#FFFFFF !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important; box-shadow:0 0 0 1px var(--ew-text-heading) !important;}
  }
  html.ew-force-opaque .ew-glass-subtle,html.ew-force-opaque .ew-glass-standard,html.ew-force-opaque .ew-glass-elevated,html.ew-force-opaque .ew-consent,html.ew-force-opaque .ew-prefs,html.ew-force-opaque .ew-note,html.ew-force-opaque .ew-tcard{background:#F1F6FA !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important;}
  html.ew-force-opaque .ew-prefs-backdrop{background:rgba(19,59,79,0.52) !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important;}
  html.ew-force-rm *,html.ew-force-rm *::before,html.ew-force-rm *::after{transition:none !important; animation:none !important;}
  /* Reloj de animación detenido (host sin fotogramas): toda transición se pinaría en su
     fotograma 0, que en un cambio de estado in situ es el estado ANTERIOR — la FAQ no abriría,
     el signo +/− no giraría. Sin transiciones, cada cambio aplica su valor final al instante. */
  html.ew-no-anim *,html.ew-no-anim *::before,html.ew-no-anim *::after{transition:none !important; animation:none !important;}
  @media (prefers-reduced-motion: reduce){
    .ew-switch::after{transition:none !important;}
  }
  @media (max-width:600px){
    .ew-consent{left:16px; right:16px; transform:none; width:auto; max-width:none; bottom:calc(16px + env(safe-area-inset-bottom)); padding:20px 18px 18px;}
    .ew-consent-actions .ew-btn{flex:1 1 100%; min-width:0;}
    .ew-prefs-backdrop{padding:16px; align-items:flex-end;}
    .ew-prefs{max-height:calc(100dvh - 32px);}
    .ew-prefs-head{padding:20px 18px 0;}
    .ew-prefs-body{padding:14px 18px 2px;}
    .ew-prefs-foot{padding:16px 18px 20px;}
    .ew-prefs-foot .ew-btn{width:100%;}
    .ew-extph{padding:var(--ew-space-5) var(--ew-space-4);}
    .ew-extph-actions .ew-btn{flex:1 1 100%;}
  }
  /* ===== FloatingWhatsAppButton — componente candidato provisional, Pending canonical synchronization ===== */
  :root{
    --whatsapp-action-fill:#0C8339;
    --whatsapp-action-fill-hover:#0A7332;
    --floating-action-inline-offset:24px;
    --floating-action-block-offset:24px;
    --floating-action-layer:110;   /* misma capa compartida que Catálogo y Restaurante: sobre el contenido, bajo el Header (120) y bajo toda superficie modal */
    --wa-ease:cubic-bezier(0.2,0,0.38,0.9);
    --wa-elev-rest:0 1px 4px rgba(19,59,79,0.198), 0 10px 30px -8px rgba(19,59,79,0.27), inset 0 1px 0 rgba(255,255,255,0.26);
    --wa-elev-hover:0 2px 8px rgba(19,59,79,0.216), 0 16px 40px -10px rgba(19,59,79,0.306), inset 0 1px 0 rgba(255,255,255,0.34);
  }
  /* Posición como en la v3: solo el desplazamiento base. --floating-action-obstruction-offset
     sigue publicándose en :root como contrato para el shell, pero el botón no lo consume. */
  .ew-fabwrap{position:fixed; right:var(--floating-action-inline-offset); bottom:var(--floating-action-block-offset); z-index:var(--floating-action-layer); display:inline-flex;}
  .ew-fab{width:56px; height:56px; min-width:56px; min-height:56px; flex:none; border-radius:999px; border:0; padding:0; display:inline-flex; align-items:center; justify-content:center; background:var(--whatsapp-action-fill); color:#FFFFFF; box-shadow:var(--wa-elev-rest); text-decoration:none; cursor:pointer; -webkit-tap-highlight-color:transparent; transition:background 140ms var(--wa-ease), box-shadow 140ms var(--wa-ease), transform 120ms var(--wa-ease);}
  .ew-fab:hover{color:#FFFFFF;}
  .ew-fab svg{width:30px; height:30px; display:block; pointer-events:none; fill:currentColor;}
  @media (hover:hover) and (pointer:fine){ .ew-fab:hover{background:var(--whatsapp-action-fill-hover); box-shadow:var(--wa-elev-hover); transform:translateY(-1px);} }
  .ew-fab:active{transform:scale(0.98); transition-duration:100ms;}
  .ew-fab:focus-visible{outline:3px solid var(--ew-action); outline-offset:3px; box-shadow:var(--wa-elev-rest), 0 0 0 3px #FCFDFE;}
  .ew-fabtip{position:absolute; right:calc(100% + 12px); top:50%; transform:translateY(-50%); white-space:nowrap; background:#133B4F; color:#FCFDFE; font-size:13px; font-weight:500; padding:7px 11px; border-radius:var(--ew-radius); box-shadow:var(--ew-elev-1); opacity:0; visibility:hidden; pointer-events:none; transition:opacity 140ms var(--wa-ease);}
  @media (hover:hover) and (pointer:fine){ .ew-fabwrap:hover .ew-fabtip,.ew-fab:focus-visible + .ew-fabtip{opacity:1; visibility:visible;} }
  @media (pointer:coarse){ .ew-fabtip{display:none !important;} }
  @media (min-width:601px) and (max-width:1000px){
    .ew-fabwrap{--floating-action-inline-offset:12px; --floating-action-block-offset:12px;}
  }
  @media (max-width:600px){
    .ew-fabwrap{--floating-action-inline-offset:max(8px, env(safe-area-inset-right)); --floating-action-block-offset:calc(8px + env(safe-area-inset-bottom));}
  }
  @media (prefers-reduced-motion: reduce){
    .ew-fab{transition:background 140ms linear, box-shadow 140ms linear;}
    .ew-fab:hover,.ew-fab:active{transform:none;}
  }

  /* =====================================================================
     HOVER HUNDIDO COMPARTIDO una sola receta para todo botón real.
     Carácter ya aprobado en los controles de carrusel y en los botones
     sociales: el reposo conserva su elevación, el puntero lo hunde ~1px
     con luz interior, la pulsación lo hunde ~2px. Solo transform y
     box-shadow: ni un borde nuevo, ni desplazamiento del entorno, ni
     desenfoque animado. Fuera de (hover:hover) no existe, así que el
     táctil no puede quedarse con el estado pegado.

     ALCANCE exclusión explícita del WhatsApp flotante.
     .ew-fab NO figura en ninguna lista de esta receta y ningún selector
     de aquí lo alcanza: todos son de clase concreta, sin button:hover,
     sin [role="button"]:hover, sin selector de icono compartido y sin
     regla de hover de antecesor. El WhatsApp flotante conserva íntegro
     su hover aprobado (elevación --wa-elev-hover, translateY(-1px),
     relleno --whatsapp-action-fill-hover) y su pulsación, foco,
     movimiento reducido y conducta táctil previas. No hay parche con
     !important que lo restaure: nunca entra en el conjunto.

     Excluidos además por contrato: enlaces de texto, .ew-navlink,
     .ew-footlink, .ew-subitem, .ew-skip, tarjetas, .ew-vchip (es un
     label con radio), .ew-switch (control de formulario), pastillas
     estáticas .ew-disc, etiquetas de estado .ew-avail, campos de
     formulario y todo control deshabilitado.
     ===================================================================== */
  :root{
    --ew-press-tf-h:translateY(1px) scale(0.996);
    --ew-press-tf-a:translateY(2px) scale(0.985);
    --ew-press-sh-h:inset 0 1px 2px rgba(19,59,79,0.15), inset 0 -1px 0 rgba(255,255,255,0.96), 0 1px 3px rgba(19,59,79,0.108);
    --ew-press-sh-a:inset 0 2px 5px rgba(19,59,79,0.22), inset 0 -1px 0 rgba(255,255,255,0.68), 0 1px 2px rgba(19,59,79,0.09);
    --ew-press-sh-h-solid:inset 0 1px 2px rgba(9,34,47,0.34), inset 0 -1px 0 rgba(255,255,255,0.20), 0 1px 3px rgba(19,59,79,0.20);
    --ew-press-sh-a-solid:inset 0 2px 6px rgba(9,34,47,0.44), inset 0 -1px 0 rgba(255,255,255,0.14), 0 1px 2px rgba(19,59,79,0.16);
  }
  .ew-btn--secondary,
  .ew-social,
  .ew-burger,
  .ew-car-nav,
  .ew-faq-btn,
  .ew-prefs-close,
  .ew-btn--primary{transition-property:box-shadow,transform,background,background-color,color; transition-duration:var(--ew-dur); transition-timing-function:var(--ew-ease-soft);}
  @media (hover:hover) and (pointer:fine){
    .ew-btn--secondary:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-social:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-burger:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-car-nav:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-faq-btn:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-prefs-close:not([disabled]):not([aria-disabled="true"]):hover{transform:var(--ew-press-tf-h) !important; box-shadow:var(--ew-press-sh-h) !important;}
    .ew-btn--primary:not([disabled]):not([aria-disabled="true"]):hover{transform:var(--ew-press-tf-h) !important; box-shadow:var(--ew-press-sh-h-solid) !important;}
    .ew-dot:not([aria-current="true"]):hover::after{transform:scale(0.94) !important; box-shadow:inset 0 1px 2px rgba(19,59,79,0.20), inset 0 -1px 0 rgba(255,255,255,0.92) !important;}
  }
  .ew-btn--secondary:not([disabled]):not([aria-disabled="true"]):active,
  .ew-social:not([disabled]):not([aria-disabled="true"]):active,
  .ew-burger:not([disabled]):not([aria-disabled="true"]):active,
  .ew-car-nav:not([disabled]):not([aria-disabled="true"]):active,
  .ew-faq-btn:not([disabled]):not([aria-disabled="true"]):active,
  .ew-prefs-close:not([disabled]):not([aria-disabled="true"]):active{transform:var(--ew-press-tf-a) !important; box-shadow:var(--ew-press-sh-a) !important;}
  .ew-btn--primary:not([disabled]):not([aria-disabled="true"]):active{transform:var(--ew-press-tf-a) !important; box-shadow:var(--ew-press-sh-a-solid) !important;}
  .ew-dot:not([aria-current="true"]):active::after{transform:scale(0.88) !important;}
  @media (prefers-reduced-motion: reduce){
    .ew-btn--secondary,
    .ew-social,
    .ew-burger,
    .ew-car-nav,
    .ew-faq-btn,
    .ew-prefs-close,
    .ew-btn--primary{transition-property:box-shadow,background,background-color,color;}
    .ew-btn--secondary:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-social:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-burger:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-car-nav:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-faq-btn:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-prefs-close:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-btn--primary:not([disabled]):not([aria-disabled="true"]):hover,
    .ew-btn--secondary:not([disabled]):not([aria-disabled="true"]):active,
  .ew-social:not([disabled]):not([aria-disabled="true"]):active,
  .ew-burger:not([disabled]):not([aria-disabled="true"]):active,
  .ew-car-nav:not([disabled]):not([aria-disabled="true"]):active,
  .ew-faq-btn:not([disabled]):not([aria-disabled="true"]):active,
  .ew-prefs-close:not([disabled]):not([aria-disabled="true"]):active,
  .ew-btn--primary:not([disabled]):not([aria-disabled="true"]):active{transform:none !important;}
  }
  html.ew-force-rm .ew-btn--secondary:hover,
  html.ew-force-rm .ew-social:hover,
  html.ew-force-rm .ew-burger:hover,
  html.ew-force-rm .ew-car-nav:hover,
  html.ew-force-rm .ew-faq-btn:hover,
  html.ew-force-rm .ew-prefs-close:hover,
  html.ew-force-rm .ew-btn--primary:hover,
  html.ew-force-rm .ew-btn--secondary:active,
  html.ew-force-rm .ew-social:active,
  html.ew-force-rm .ew-burger:active,
  html.ew-force-rm .ew-car-nav:active,
  html.ew-force-rm .ew-faq-btn:active,
  html.ew-force-rm .ew-prefs-close:active,
  html.ew-force-rm .ew-btn--primary:active{transform:none !important;}
  @media (forced-colors: active){
    .ew-btn--secondary:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-social:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-burger:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-car-nav:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-faq-btn:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-prefs-close:not([disabled]):not([aria-disabled="true"]):hover,
  .ew-btn--primary:not([disabled]):not([aria-disabled="true"]):hover,
    .ew-btn--secondary:not([disabled]):not([aria-disabled="true"]):active,
  .ew-social:not([disabled]):not([aria-disabled="true"]):active,
  .ew-burger:not([disabled]):not([aria-disabled="true"]):active,
  .ew-car-nav:not([disabled]):not([aria-disabled="true"]):active,
  .ew-faq-btn:not([disabled]):not([aria-disabled="true"]):active,
  .ew-prefs-close:not([disabled]):not([aria-disabled="true"]):active,
  .ew-btn--primary:not([disabled]):not([aria-disabled="true"]):active{box-shadow:none !important;}
  }
