/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/
/* ReCaptcha - En el css normal no se aplica INI */
    .grecaptcha-badge{opacity:0;visibility:hidden;}
/* ReCaptcha - En el css normal no se aplica FIN */
/* No separar la imagen destacada del menú INI */
    .separate-containers .featured-image {
        margin-top: 0px;
    }
    .gv-cabecera-entradas {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        min-height: 80vh;
    }
    .gv-cabecera-paginas {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        min-height: 20vh;
    }
/* No separar la imagen destacada del menú FIN */
/* Mosca Flotante INI */
    /* Accesibilidad (si tu tema no lo trae) */
    /* Botón flotante */
    .dr-mosca-flotante{
      position: fixed;
      bottom: 6.5rem;   /* por encima del volver arriba */
      right: 1.7rem;
      z-index: 9999;
      /* tamaño total del “botón” */
      width: 84px;
      height: 84px;
      border-radius: 999px;              /* círculo */
      background: #eeeeee;
      /* contorno */
      border: 2px solid rgba(0,0,0,0.10);
      /* sombra suave */
      box-shadow: 0 8px 20px rgba(0,0,0,0.18);
      display: grid;
      place-items: center;
      transition: background-color .25s ease, transform .25s ease, box-shadow .25s ease, border-color .25s ease;
      overflow: visible;
    }
    /* Marco interior para que las imágenes no “rompan” el círculo */
    .dr-mosca-frame{
      position: relative;
      width: 62px;     /* tamaño del logo dentro */
      height: 62px;    /* altura fija => no se deforma */
      display: block;
    }
    /* Las dos imágenes se superponen sin deformar */
    .dr-mosca-img{
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: contain;  /* clave para NO deformar */
      display: block;
      opacity: 0;
      transition: opacity .2s ease;
    }
    .dr-mosca-img--default{ opacity: 1; }
    /* Hover: cambia fondo y swap de imagen */
    .dr-mosca-flotante:hover{
      background: #004e65;
      border-color: rgba(255,255,255,0.28);
      transform: translateY(-3px);
      box-shadow: 0 12px 28px rgba(0,0,0,0.25);
    }
    .dr-mosca-flotante:hover .dr-mosca-img--default{ opacity: 0; }
    .dr-mosca-flotante:hover .dr-mosca-img--hover{ opacity: 1; }
    /* Tooltip mosca flotante */
    .dr-mosca-flotante::after{
        content: "Viajes organizados\A en Autocaravana y Camper";
        position: absolute;
        right: -20%;
        bottom: 180%;
        transform: translate(-14px, 50%);

        background: #004e65;
        color: #ffffff;
        padding: 10px 14px;
        border-radius: 16px; /* mejor que 999px si son 2 líneas */
        border-color: rgba(255,255,255,0.28);

        font-size: 13px;
        line-height: 1.15;
        white-space: pre-line; /* 👈 permite el salto de línea (\A) */
        text-align: center;

        opacity: 0;
        visibility: hidden;
        pointer-events: none;

        box-shadow: 0 10px 25px rgba(0,0,0,0.22);
        transition: opacity .2s ease, transform .2s ease, visibility .2s ease;

        max-width: 220px; /* evita que se vaya demasiado ancho */
    }

    .dr-mosca-flotante::before{
        content: "";
        position: absolute;
        right: 100%;
        bottom: 50%;
        transform: translate(-6px, 50%);

        width: 0;
        height: 0;

        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-left: 6px solid #004e65;

        opacity: 0;
        visibility: hidden;
        pointer-events: none;

        transition: opacity .2s ease, visibility .2s ease;
    }
    .dr-mosca-flotante:hover::after{
        opacity: 1;
        visibility: visible;
        transform: translate(-18px, 50%);
    }
    .dr-mosca-flotante:hover::before{
        opacity: 1;
        visibility: visible;
    }
/* Mosca Flotante FIN */
/* Botones GenerateBlocks. Corregir estilo global GP pisando clases globales GPBlocks INI */
    a.gb-text.boton-azul-blanco, a.gb-text.boton-naranja-blanco {
        color: #ffffff;
    }
    a.gb-text.boton-azul-blanco:hover {
        color: #004e65;
    }
    a.gb-text.boton-naranja-blanco:hover {
        color: #f2610d;
    }
    a.gb-text.boton-blanco-azul {
        color: #004e65;
    }
    a.gb-text.boton-blanco-naranja {
        color: #f2610d;
    }
    a.gb-text.boton-blanco-azul:hover, a.gb-text.boton-blanco-naranja:hover {
        color: #ffffff;
    }
/* Botones GenerateBlocks. Corregir estilo global GP pisando clases globales GPBlocks FIN */
/* GUTENBERG INI */
    .enlace-negativo {
        color: #ffffff;
    }
/* GUTENBERG FIN */
/* WOOCOMMERCE INI */
    /* Botón Añadir al carrito */
    a.button.product_type_simple.add_to_cart_button {
        border-radius: 100px;
    }
    /* Separación campos personalizados productos carrito */
    .woocommerce form .form-row {
        padding: 3px;
        margin: -1.5rem 0 1.5rem;
    }
    .wc-block-components-button__text {
        color: #ffffff;
    }
    /* Barra aviso */
    .woocommerce-store-notice, p.demo_store {
        background-color: #f2610d;
        font-weight: bold;
    }
/* WOOCOMMERCE FIN */
/* Botón en menú INI */
    .boton-menu {
        color: #ffffff;
        background-color: #075875;
    }
/* Botón en menú FIN */
/* Gravity Forms INI */
    input#gform_submit_button_4 {
        background: #004e65;
        font-size: 18px;
        border-radius: 10px;
    }
    input#gform_submit_button_4:hover {
        background: #f2610d;
    }
/* Gravity Forms FIN */
/* Activar - Desactivar la visualización de un elemento INI */
    .desactivo {
        display: none !important;
    }
/* Activar - Desactivar la visualización de un elemento INI */
    /* Activar - Desactivar la visualización de un elemento en Desktop INI */
    .desactivo-desktop {
        display: none !important;
    }
    /* Activar - Desactivar la visualización de un elemento en Desktop FIN */
    /* Activar - Desactivar la visualización de un elemento en Mobile INI */
    .desactivo-mobile {
        display: none !important;
    }
    /* Activar - Desactivar la visualización de un elemento en Mobile FIN */
/* Activar - Desactivar la visualización de un elemento FIN */
/* Go To Top INI */
.gv-go-top-thrive {
        font-size: 20px;
        border-radius: 3px;
        position: fixed;
        bottom: 30px;
        right: 30px;
        line-height: 40px;
        width: 40px;
        height: 40px;
        text-align: center;
        z-index: 10;
        transition: opacity 300ms ease-in-out, transform 300ms ease-in-out, background-color 200ms ease-in-out;
        opacity: 0.1;
        transform: translateY(1000px);
        background-color: #004e65;
        color: #ffffff;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 2px 5px rgba(0,0,0,0.15);
    }
    /* Estado visible (equivalente a .generate-back-to-top__show) */
    body.tve_lp .gv-go-top-thrive,
    body.thrv_page .gv-go-top-thrive {
        opacity: 1;
        transform: translateY(0);
    }
    .gv-go-top-thrive:hover {
        background-color: #f2610d;
        color: #ffffff;
    }
    .gv-go-top-thrive:active {
        color: #ffffff;
    }
    /* Accesibilidad (tab/teclado) */
    .gv-go-top-thrive:focus-visible {
        outline: 3px solid rgba(255,255,255,0.8);
        outline-offset: 3px;
        background-color: #f2610d;
        color: #ffffff;
        }
    }
/* Go To Top FIN */
/* Menú GeneratePress INI */
/* Menú Thrive INI */
    /* Desktop (normal + sticky) */
    /*    ul.tve_horizontal > li {
        position: relative; 
    }
    ul.tve_horizontal > li:nth-last-child(-n+2) > ul.sub-menu {
        transform: translateX(-50%) !important;
    }
    */
/* Menú Thrive FIN */
/* MOBILE */
@media (max-width: 768px) {
    .desactivo-desktop  {
        display: block !important;
    }
    /* Mosca Flotante INI */
    .dr-mosca-flotante{
        width: 48px;
        height: 48px;
        bottom: 6rem;
    }
    .dr-mosca-frame{
        width: 36px;
        height: 36px;
    }
    .dr-mosca-flotante::after {
        opacity: 0 !important;
        visibility: hidden !important;;
        display: none !important;
        content:""
    }
    .dr-mosca-flotante:hover::after {
        opacity: 0 !important;
        visibility: hidden !important;;
        display: none !important;
        content:""
    }
    /* Mosca Flotante FIN */
}