/* QA V17 – one unobtrusive WhatsApp access on desktop and mobile. */
.rpwa-float {position:fixed!important;right:18px!important;bottom:calc(18px + env(safe-area-inset-bottom,0px))!important;left:auto!important;top:auto!important;width:54px!important;height:54px!important;z-index:90!important;display:grid!important;place-items:center!important;background:#25d366!important;color:#fff!important;border:3px solid #fff!important;border-radius:50%!important;box-shadow:0 8px 26px rgba(3,61,85,.22)!important;text-decoration:none!important;opacity:1!important;transform:none!important;transition:transform .2s,box-shadow .2s!important;}
.rpwa-float:hover {transform:translateY(-3px)!important;box-shadow:0 12px 28px rgba(3,61,85,.29)!important;}
.rpwa-float:focus-visible {outline:3px solid #033d55!important;outline-offset:3px!important;}
.rpwa-float svg {display:block!important;width:30px!important;height:30px!important;stroke:currentColor!important;fill:none!important;max-width:none!important;}
/* Legacy Joinchat is not needed alongside the theme's own WhatsApp button. Disable the plugin in staging and on production after testing. */
body .joinchat {display:none!important;}
/* Section anchors should not end up hidden behind the sticky header. */
html {scroll-padding-top:106px!important;}
section[id] {scroll-margin-top:106px!important;}
@media(max-width:650px) {
  .rpwa-float {width:46px!important;height:46px!important;right:calc(12px + env(safe-area-inset-right,0px))!important;bottom:calc(12px + env(safe-area-inset-bottom,0px))!important;}
  .rpwa-float svg {width:25px!important;height:25px!important;}
  html {scroll-padding-top:82px!important;}
  section[id] {scroll-margin-top:82px!important;}
}
@media(prefers-reduced-motion:reduce) {.rpwa-float {transition:none!important;}}

/* V17 QA móvil v2 — ajustes de anchura sin cambiar la línea visual. */
@media (max-width:650px) {
  /* Márgenes reales en la portada. Evita que las acciones sobresalgan a 320–400 px. */
  .hero-tech .hero-layout.container {
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-left:20px!important;
    padding-right:20px!important;
  }
  .hero-tech .hero-layout > div { min-width:0; max-width:100%; }
  .hero-tech .hero-buttons {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    gap:10px!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .hero-tech .hero-buttons .button {
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-inline:0!important;
    padding-inline:12px!important;
    white-space:normal!important;
    text-align:center!important;
  }
  /* Mantener el acceso flotante pequeño y separado de los bordes del teléfono. */
  .rpwa-float { min-width:46px!important; min-height:46px!important; }
  .rpwa-float:hover { transform:none!important; }
}
@media (max-width:370px) {
  .hero-tech .hero-layout.container { padding-left:18px!important; padding-right:18px!important; }
}
