/*
 Theme Name:   Univet Child
 Theme URI:    https://univet.rstheme.com/
 Description:  Univet Child
 Author:       RSTheme
 Author URI:   http://rstheme.com
 Template:     univet
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
 */

.elementor-26 .elementor-element.elementor-element-800cf43 > .rstb-nav-menu > .primary-menu > .menu-item > .menu-item-link {
	margin-right: 24px !important;
}

/* Nested Accordion FAQ : titres H2 - hérite couleur du parent (gère ouvert/fermé/hover) + line-height raisonnable */
h2.e-n-accordion-item-title-text,
h3.e-n-accordion-item-title-text,
h4.e-n-accordion-item-title-text {
    color: inherit;
    line-height: 1.3;
}

/* Header — éviter que les boutons "Devis/Inscription" et "Contact" se chevauchent
   (le widget rs-button déborde de son conteneur Elementor en largeur intermédiaire) */
.elementor-element-8365468,
.elementor-element-9940f34,
.elementor-element-d44d3ec,
.elementor-element-df12f58 {
    flex-shrink: 0 !important;
    width: auto !important;
    min-width: max-content !important;
}

/* Header — empêcher que le conteneur du logo et celui du menu soient écrasés
   par les nouveaux boutons en largeur intermédiaire */
.elementor-element-340314e,
.elementor-element-051f1f3,
.elementor-element-65f0378,
.elementor-element-6f18c9d {
    flex-shrink: 0 !important;
}

/* Header — Petit espacement entre le logo et le premier item du menu principal
   pour éviter le chevauchement visuel à largeur intermédiaire (~1280px) */
.elementor-26 .elementor-element-800cf43,
.rstb-nav-menu.nav-horizontal {
    padding-left: 40px;
}

/* Header — sous 1300px (notebook 1280), il manque de la place pour le menu + les 2 boutons.
   On resserre l'espacement menu, le padding interne des boutons, et le gap entre eux. */
@media (max-width: 1500px) {
    .elementor-26 .elementor-element-800cf43,
    .rstb-nav-menu.nav-horizontal {
        padding-left: 20px !important;
    }

    .elementor-element-8365468 .rs-button,
    .elementor-element-9940f34 .rs-button,
    .elementor-element-d44d3ec .rs-button,
    .elementor-element-df12f58 .rs-button {
        padding-left: 8px !important;
        padding-right: 8px !important;
        font-size: 13px !important;
    }

    .elementor-element-23df970,
    .elementor-element-ff76b36 {
        gap: 12px !important;
    }

    /* Items du menu top-level resserrés */
    .elementor-26 .elementor-element-800cf43,
    .rstb-nav-menu.nav-horizontal {
        padding-left: 0 !important;
    }
    .primary-menu > .menu-item > a,
    .primary-menu > li > a {
        padding-left: 8px !important;
        padding-right: 8px !important;
        font-size: 14px !important;
    }

    /* Réduire l'écart entre les items du menu top-level (qui a un margin-right: 24px !important par défaut) */
    .elementor-26 .elementor-element.elementor-element-800cf43 > .rstb-nav-menu > .primary-menu > .menu-item > .menu-item-link {
        margin-right: 4px !important;
    }
}

/* Header — sous 1029px (mode responsive Elementor), pousser les boutons à
   droite (juste avant le hamburger) au lieu de les laisser collés au logo */
@media (max-width: 1279px) {
    /* Couper le flex-grow du conteneur Menu (qui absorbait tout l'espace libre) */
    .elementor-element-65f0378,
    .elementor-element-6f18c9d {
        flex-grow: 0 !important;
        margin-left: 20px !important;
    }

    .elementor-element-8365468,
    .elementor-element-d44d3ec {
        margin-left: auto !important;
    }
    .elementor-element-9940f34,
    .elementor-element-df12f58 {
        margin-left: 12px !important;
    }
}

/* Forcer le mode burger jusqu'à 1279px (l'option du widget RS s'arrête à 1200) */
@media (max-width: 1279px) {
    .rstb-nav-menu.nav-breakpoint-xl > ul.primary-menu {
        display: none !important;
    }
    .rstb-nav-menu.nav-breakpoint-xl .menu-toggler {
        display: flex !important;
    }
}


/* Mobile étroit (Galaxy Fold/Flip et petits téléphones ≤ 500px) : cacher les
   boutons Devis/Inscription + Contact du header — ils débordent du viewport
   à cette largeur. Ils restent accessibles via le menu burger. */
@media (max-width: 500px) {
    /* Header ultra-étroit : compresser les CTAs "Devis/Inscription" + "Contact"
       du header, et coller le tout au logo (sans margin-left:auto poussant à
       droite) pour que le burger reste visible dans le viewport. */
    .elementor-element-8365468 .rs-button,
    .elementor-element-9940f34 .rs-button,
    .elementor-element-d44d3ec .rs-button,
    .elementor-element-df12f58 .rs-button {
        padding-left: 10px !important;
        padding-right: 10px !important;
        font-size: 11px !important;
        line-height: 1.15 !important;
        white-space: nowrap !important;
        /* border-radius laissé au style d'origine (pill arrondi) */
    }
    /* Annuler le margin-left:auto hérité du breakpoint 1279 qui pousse
       Devis/Inscription complètement à droite */
    .elementor-element-8365468,
    .elementor-element-d44d3ec {
        margin-left: 8px !important;
    }
    .elementor-element-9940f34,
    .elementor-element-df12f58 {
        margin-left: 0 !important;
    }
    /* Container burger — près des boutons, flex-shrink:0 pour le garder visible */
    .elementor-element-65f0378,
    .elementor-element-6f18c9d {
        margin-left: 4px !important;
        flex-shrink: 0 !important;
    }
    /* Menu widget (contient le burger) : ne pas contraindre en largeur */
    .elementor-element-800cf43 {
        max-width: none !important;
        flex-shrink: 0 !important;
    }
    /* Gaps de conteneur */
    .elementor-element-23df970,
    .elementor-element-ff76b36 {
        gap: 0 !important;
    }
}


/* Page "Devenir établissement partenaire" — carte "Votre interlocuteur Nacel"
   Sur mobile ≤ 500px : masquer le badge "D" (avatar 140×140) et repasser la
   carte en une colonne, pour que l'email et le téléphone tiennent en largeur. */
@media (max-width: 500px) {
    .elementor-element-726749f > div:first-child > div:first-child {
        display: none !important;
    }
    .elementor-element-726749f > div:first-child {
        grid-template-columns: 1fr !important;
        padding: 24px !important;
        gap: 12px !important;
    }
}


/* Menu mobile : le bouton X du panneau off-canvas est à top:20px, mais
   la topbar fixe .dd-topbar-inner (z-index:10001, hauteur ~45px) le recouvre
   à cause d'un stacking context imbriqué. Solution : quand le panneau est
   ouvert, on cache la topbar (elle sera rétablie à la fermeture). En bonus,
   on repositionne le X un peu plus bas pour qu'il reste bien accessible. */
body:has(.mobile-panel-wrapper.show-panel) .dd-topbar-inner {
    display: none !important;
}
.mobile-panel-wrapper.show-panel .mobile-panel-close {
    top: 12px !important;
    right: 12px !important;
    background: rgba(0, 36, 64, 0.08) !important;
    border-radius: 50% !important;
    width: 36px !important;
    height: 36px !important;
    z-index: 10 !important;
}
