/* © Fernando Martínez Marín · VEOVIRTUAL® · veovirtual.com */

/* Botón flotante de escritorio */
body .vv-wa-flota {
display:none;
}
@media only screen and (min-width:768px) {
body .vv-wa-flota {
position:fixed;
right:clamp(14px,2vw,28px);
bottom:calc(clamp(14px,2vw,28px) + 3px + var(--vv-acc-cookies,0px));
z-index:99990;
display:inline-flex;
align-items:center;
justify-content:center;
gap:0;
box-sizing:border-box;
height:56px;
min-width:56px;
padding:0 13px;
border:3px solid #ffffff;
border-radius:999px;
background-color:#0f7a40;
color:#ffffff;
font-family:var(--vv-fuente-textos);
font-size:15px;
font-weight:700;
line-height:1;
text-decoration:none;
box-shadow:0 14px 28px -12px rgba(0,0,0,.55);
transition:gap .35s ease,background-color .2s ease;
}
body .vv-wa-flota svg {
flex:none;
width:28px;
height:28px;
}
body .vv-wa-flota__txt {
max-width:0;
overflow:hidden;
white-space:nowrap;
transition:max-width .4s ease;
}
body .vv-wa-flota:hover,
body .vv-wa-flota:focus-visible {
gap:8px;
background-color:#0b5f32;
color:#ffffff;
}
body .vv-wa-flota:hover .vv-wa-flota__txt,
body .vv-wa-flota:focus-visible .vv-wa-flota__txt {
max-width:140px;
}
body .vv-wa-flota:focus-visible {
outline:3px solid var(--vv-foco,#ffbf47);
outline-offset:3px;
}
}
@media (prefers-reduced-motion:reduce) {
body .vv-wa-flota,
body .vv-wa-flota__txt {
transition:none;
}
}
@media print {
body .vv-wa-flota {
display:none !important;
}
}

/* Aviso de WhatsApp */
body .vv-modal--wa .vv-modal-caja {
max-width:480px;
overflow-y:auto;
}
body .vv-modal--wa .vv-modal-titulo {
font-size:25px;
padding-right:28px;
}
body .vv-modal--wa .vv-modal-texto {
font-size:13.5px;
color:var(--vv-texto);
}
body .vv-modal--wa .vv-modal-opciones {
display:block;
}
body .vv-wa-info {
margin:0 0 16px;
padding:0;
border-top:1px solid color-mix(in srgb,var(--vv-texto) 14%,#ffffff);
}
body .vv-wa-info div {
display:grid;
grid-template-columns:112px minmax(0,1fr);
gap:10px;
padding:8px 0;
border-bottom:1px solid color-mix(in srgb,var(--vv-texto) 14%,#ffffff);
}
body .vv-wa-info dt {
margin:0;
color:var(--vv-oscuro);
font-size:12.5px;
font-weight:700;
line-height:1.45;
}
body .vv-wa-info dd {
margin:0;
color:var(--vv-texto);
font-size:12.5px;
line-height:1.45;
}
body .vv-wa-info a {
color:var(--vv-acento);
text-decoration:underline;
text-underline-offset:2px;
}
body .vv-wa-acepto {
display:flex;
align-items:flex-start;
gap:10px;
margin:0 0 16px;
color:var(--vv-texto);
font-size:13.5px;
line-height:1.45;
cursor:pointer;
}
body .vv-wa-acepto input {
flex:0 0 auto;
width:20px;
height:20px;
margin:1px 0 0;
accent-color:var(--vv-acento);
}
body .vv-wa-botones {
display:flex;
flex-wrap:wrap;
gap:10px;
}
body .vv-wa-btn {
flex:1 1 auto;
min-height:48px;
padding:0 18px;
border:0;
border-radius:999px;
font:inherit;
font-size:14.5px;
font-weight:700;
cursor:pointer;
transition:background-color .2s ease,opacity .2s ease,box-shadow .2s ease;
}
body .vv-wa-btn--si {
background-color:var(--vv-oscuro);
color:#ffffff;
}
body .vv-wa-btn--si:disabled {
opacity:.45;
cursor:not-allowed;
}
body .vv-wa-btn--si:not(:disabled):hover,
body .vv-wa-btn--si:not(:disabled):focus-visible {
background-color:color-mix(in srgb,var(--vv-oscuro) 82%,#000000);
}
body .vv-wa-btn--no {
flex:0 0 auto;
background-color:transparent;
color:var(--vv-oscuro);
box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--vv-texto) 30%,#ffffff);
}
body .vv-wa-btn--no:hover,
body .vv-wa-btn--no:focus-visible {
box-shadow:inset 0 0 0 1.5px var(--vv-oscuro);
}
@media only screen and (max-width:480px) {
body .vv-modal--wa .vv-modal-caja {
padding:24px 18px 18px;
}
body .vv-modal--wa .vv-modal-titulo {
font-size:22px;
}
body .vv-wa-info div {
grid-template-columns:86px minmax(0,1fr);
gap:8px;
padding:6px 0;
}
body .vv-wa-info dt,
body .vv-wa-info dd {
font-size:12px;
}
body .vv-wa-btn {
flex:1 1 100%;
}
}
