/* Xervion lead tools. Every class is prefixed xv- so nothing clashes with page styles. */

/* WhatsApp widget */
.xv-wa{position:fixed;right:16px;bottom:16px;z-index:900;display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-family:inherit}
.xv-wa__btn{width:58px;height:58px;border:0;border-radius:50%;background:#25D366;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:0 8px 24px -6px rgba(0,0,0,.35);transition:transform .2s}
.xv-wa__btn:hover{transform:scale(1.06)}
.xv-wa__btn svg{width:30px;height:30px;fill:currentColor}
.xv-wa__btn:focus-visible,.xv-wa__row:focus-visible{outline:3px solid #012a6b;outline-offset:2px}
.xv-wa__menu{width:min(320px,calc(100vw - 32px));background:#fff;color:#1d1d1f;border-radius:18px;box-shadow:0 20px 50px -12px rgba(0,0,0,.35);padding:16px;display:flex;flex-direction:column;gap:6px}
.xv-wa__menu[hidden]{display:none}
.xv-wa__title{font-weight:700;font-size:16px}
.xv-wa__sub{font-size:13px;color:#6e6e73;margin-bottom:6px}
.xv-wa__row{display:flex;align-items:center;gap:12px;min-height:48px;padding:8px 10px;border-radius:12px;text-decoration:none;color:inherit;background:#f5f5f7}
.xv-wa__row:hover{background:#e8f8ee}
.xv-wa__flag{flex:none;display:block;width:30px;height:20px;border-radius:3px;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.xv-wa__flag svg{display:block;width:100%;height:100%}
.xv-wa__txt{display:flex;flex-direction:column;font-size:14px;line-height:1.3}
.xv-wa__txt strong{font-weight:600}
.xv-wa__txt span{color:#6e6e73}

/* Quick quote form (product pages) */
.xv-qf-card{max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--divider,#d2d2d7);border-radius:24px;padding:40px;box-shadow:0 20px 50px -30px rgba(0,0,0,.25)}
.xv-qf-card h2{font-size:clamp(24px,3.2vw,34px);font-weight:700;letter-spacing:-.02em;margin:0 0 8px;color:var(--text,#1d1d1f)}
.xv-qf-card>p{color:var(--text-soft,#6e6e73);margin:0 0 24px}
.xv-qf__row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.xv-qf__field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.xv-qf__row .xv-qf__field{margin-bottom:0}
.xv-qf label{font-size:12.5px;font-weight:600;color:var(--text-soft,#6e6e73)}
.xv-qf input[type=text],.xv-qf input[type=email],.xv-qf textarea{font:inherit;font-size:15px;padding:13px 14px;border:1.5px solid var(--divider,#d2d2d7);border-radius:12px;background:#fff;color:var(--text,#1d1d1f);width:100%;box-sizing:border-box}
.xv-qf textarea{min-height:110px;resize:vertical}
.xv-qf input:focus,.xv-qf textarea:focus{outline:none;border-color:var(--accent,#0078e4);box-shadow:0 0 0 3px rgba(0,120,228,.18)}
.xv-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.xv-qf__msg{font-size:14px;margin-top:12px}
.xv-qf__msg.is-error{color:#c0392b}
.xv-qf__msg a{color:inherit;text-decoration:underline}
.xv-qf__note{font-size:12px;color:var(--text-soft,#6e6e73);margin:14px 0 0;text-align:center}
.xv-qf__thanks{text-align:center;padding:24px 0}
.xv-qf__thanks h3{font-size:22px;margin:0 0 8px;color:var(--text,#1d1d1f)}
.xv-qf__thanks p{margin:0;color:var(--text-soft,#6e6e73)}

/* Secondary WhatsApp link under the blog CTA */
.xv-cta-wa{display:block;width:fit-content;margin:16px auto 0;font-size:14px;font-weight:600;color:inherit;text-decoration:underline}

/* Mobile footer fix: the two-column footer could not shrink below its longest email/address, so on
   phones it grew to about 400px and the whole page scrolled sideways (blank strip on the right).
   Let the columns shrink, wrap long text, and use one column on small screens. */
.foot-grid>*{min-width:0}
.foot-office-row span,.foot-office-row a,.foot-contact a{overflow-wrap:anywhere}
@media (max-width:480px){.foot-grid{grid-template-columns:1fr}}

@media (max-width:640px){
  .xv-qf-card{padding:24px 18px;border-radius:18px}
  .xv-qf__row{grid-template-columns:1fr}
  .xv-wa{right:12px;bottom:12px}
}
@media (prefers-reduced-motion:reduce){.xv-wa__btn{transition:none}}
