/* =========================================
   FOND GLOBAL iGUITARE
   Ivoire rosé #F0EBE6 + grain papier subtil
   ========================================= */

html,
body {
    background-color: #F0EBE6;
    color: #252321;
}

body {
    position: relative;
    min-height: 100vh;
}

/* Grain de papier très discret */
body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 9999;

    opacity: 0.025;
    mix-blend-mode: multiply;

    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.55'/%3E%3C/svg%3E");
}

/* Variation de matière très légère */
body::after {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 9998;

    background:
        radial-gradient(
            ellipse at 20% 10%,
            rgba(255, 255, 255, 0.20),
            transparent 50%
        ),
        radial-gradient(
            ellipse at 80% 90%,
            rgba(105, 75, 70, 0.015),
            transparent 55%
        );
}

/* Adaptation mobile */
@media screen and (max-width: 758px) {
    body::before {
        opacity: 0.018;
    }
}


@media screen and (max-width: 758px) {

    #row_ID1790241553335 > .inner {
        display: block !important;
    }

    #row_ID1790241553335 > .inner > .blockck {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        float: none !important;
        box-sizing: border-box;
    }

}
@media screen and (max-width: 758px) {

    .pagebuilderck img {
        max-width: 100%;
        height: auto;
    }

}
@media screen and (max-width: 758px) {

    #row_ID1790407395234 > .inner {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center;
    }

    #row_ID1790407395234 > .inner > .blockck {
        width: 25% !important;
        max-width: 25% !important;
        float: none !important;
        margin-left: 0 !important;
        box-sizing: border-box;
    }

    #row_ID1790407395234 > .inner > .blockck:first-child,
    #row_ID1790407395234 > .inner > .blockck:last-child {
        display: none !important;
    }

}



/* =========================================================
   iGUITARE — VERSION MOBILE
   Correction du conteneur général
   ========================================================= */

@media screen and (max-width: 524px) {

    /* -----------------------------------------------------
       CONTENEUR GENERAL DU SITE
       ----------------------------------------------------- */

    #wrapper > .tck-container {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    /* -----------------------------------------------------
       LARGEUR DES ZONES PRINCIPALES
       ----------------------------------------------------- */

    #row4,
    #row4 > .inner,
    #row4column2,
    #row4column2 > .inner {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* -----------------------------------------------------
       CADRE BLANC AUTOUR DES CARTES
       ----------------------------------------------------- */

    #row_ID1790241589863 {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    #row_ID1790241589863 > .inner {
        width: 100% !important;
        max-width: 100% !important;

        /* On retire les 20px qui rétrécissent inutilement
           la zone sur smartphone */
        padding: 10px !important;

        box-sizing: border-box !important;
    }

    /* -----------------------------------------------------
       RANGEE DES 3 CARTES
       ----------------------------------------------------- */

    #row_ID1790241553335 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    #row_ID1790241553335 > .inner {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;

        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;
    }

    /* Les deux petits espaces de 6% */
    #block_ID1790242069151,
    #block_ID1790242069517 {
        display: none !important;
    }

    /* -----------------------------------------------------
       CARTES
       ----------------------------------------------------- */

    #block_ID1790241637677,
    #block_ID1790241553335,
    #block_ID1790241637507 {
        display: block !important;
        float: none !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;

        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 24px !important;

        box-sizing: border-box !important;
    }

    #block_ID1790241637677 > .inner,
    #block_ID1790241553335 > .inner,
    #block_ID1790241637507 > .inner {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        box-sizing: border-box !important;
    }

    /* Images */
    #block_ID1790241637677 img,
    #block_ID1790241553335 img,
    #block_ID1790241637507 img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* Texte */
    #block_ID1790241637677,
    #block_ID1790241553335,
    #block_ID1790241637507 {
        overflow-wrap: break-word !important;
        word-wrap: break-word !important;
    }

    /* Iguitare.com */
    #ID1790415716924,
    #ID1790415716924 span {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
        box-sizing: border-box !important;
    }

    #block_ID1790241637507 {
        margin-bottom: 5px !important;
    }


    /* -----------------------------------------------------
       MENU HORIZONTAL
       ----------------------------------------------------- */

    #block_ID1790157216088,
    #block_ID1790157216088 > .inner {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    #maximenuck119 {
        width: 100% !important;
        max-width: 100% !important;
    }

    #maximenuck119 > ul.maximenuck {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;
    }

    #maximenuck119 > ul.maximenuck > li {
        float: none !important;
        display: block !important;
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }

    #maximenuck119 > ul.maximenuck > li > a {
        white-space: nowrap !important;
    }
}


/* =========================================================
   MENU MOBILE — HORIZONTAL
   ========================================================= */

@media screen and (max-width: 524px) {

    #maximenuck119 > ul.maximenuck {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;

        justify-content: space-evenly !important;
        align-items: center !important;

        width: 100% !important;
        margin: 0 !important;
        padding: 0 4px !important;

        box-sizing: border-box !important;
    }

    #maximenuck119 > ul.maximenuck > li {
        float: none !important;
        display: block !important;

        flex: 1 1 auto !important;
        width: auto !important;

        margin: 0 !important;
        padding: 0 !important;

        text-align: center !important;
        white-space: nowrap !important;
    }

    #maximenuck119 > ul.maximenuck > li > a {
        display: block !important;

        padding: 8px 5px !important;

        font-size: 17px !important;
        line-height: 1.2 !important;

        white-space: nowrap !important;
        text-align: center !important;

        box-sizing: border-box !important;
    }
}

/* Suppression du dégradé derrière le logo et le menu */
#testhaut,
#testhaut > .inner,
#testhaut::before,
#testhaut::after,
#testhaut > .inner::before,
#testhaut > .inner::after {
    background: #10283C !important;
}

/* Suppression du voile lumineux global */
body::after {
    content: none !important;
    display: none !important;
}

.convertforms.cf-success .cf-response {
  background-color: #20A5A6 !important;
}

/* Bouton de déconnexion Joomla */
.mod-login-logout__button.logout-button .btn {
    /* Apparence du bouton */
    background-color: #333333;
    color: #ffffff;
    border: none;
    border-radius: 4px;
    padding: 12px 24px;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;

    /* Masquer le texte original */
    font-size: 0;
}

/* Nouveau texte */
.mod-login-logout__button.logout-button .btn::after {
    content: "Se déconnecter";
    font-size: 16px;
    font-weight: 500;
    color: #ffffff;
}

/* Effet au survol */
.mod-login-logout__button.logout-button .btn:hover {
    background-color: #555555;
}



/* Masquer la connexion par clé d'accès */
.eb-dialog .plg_system_webauthn_login_button {
    display: none !important;
}

/* Masquer les liens de récupération éventuels */
.eb-dialog .mod-login__options {
    display: none !important;
}



/* =========================================
   iGUITARE - JO POPUP LOGIN
   Cadre violet, fond blanc texturé
   Module 126
   ========================================= */

/* Fenêtre principale */
#jopopuploginModal126 .modal-content {
    background:
        radial-gradient(
            rgba(0,0,0,0.025) 1px,
            transparent 1px
        ) 0 0 / 7px 7px padding-box,

        linear-gradient(
            #ffffff,
            #ffffff
        ) padding-box,

        linear-gradient(
            135deg,
            #b477ce 0%,
            #8f46b0 40%,
            #613178 100%
        ) border-box !important;

    border-left: 10px solid transparent !important;
    border-right: 4px solid transparent !important;
    border-top: 1px solid transparent !important;
    border-bottom: 1px solid transparent !important;

    border-radius: 30px 12px 30px 12px !important;

    box-shadow:
        0 12px 35px rgba(16,40,60,0.15),
        0 3px 8px rgba(16,40,60,0.07);

    color: #493B50;
    overflow: hidden;
}

/* En-tête */
#jopopuploginModal126 .modal-header {
    padding: 22px 26px 16px;
    border-bottom: 1px solid rgba(143,70,176,0.12);
}

/* Titre */
#jopopuploginModal126 .modal-title {
    color: #613178 !important;
    font-size: 1.45rem;
    font-weight: 700;
    letter-spacing: 0.2px;
}

/* Corps du formulaire */
#jopopuploginModal126 .modal-body {
    padding: 24px 26px 28px;
}

/* Libellés */
#jopopuploginModal126 .form-label {
    color: #493B50 !important;
    font-weight: 600;
    margin-bottom: 7px;
}

/* Champs identifiant et mot de passe */
#jopopuploginModal126 .form-control {
    background-color: #FFFEFD;
    border: 1px solid #DDD6E3;
    border-radius: 10px;
    color: #302837;
    min-height: 45px;

    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

/* Champs au clic */
#jopopuploginModal126 .form-control:focus {
    border-color: #8f46b0;
    box-shadow: 0 0 0 3px rgba(143,70,176,0.12);
    outline: none;
}

/* Icônes des champs */
#jopopuploginModal126 .jopopuplogin-input-icon {
    color: #8f46b0 !important;
    opacity: 0.65;
}

/* Bouton Connexion */
#jopopuploginModal126 .jopopuplogin-submit {
    background: linear-gradient(
        135deg,
        #a35ac0,
        #8f46b0 55%,
        #613178
    ) !important;

    border: none !important;
    border-radius: 10px;
    min-height: 46px;

    color: #ffffff !important;
    font-weight: 600;
    letter-spacing: 0.3px;

    box-shadow: 0 3px 9px rgba(97,49,120,0.18);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

/* Survol du bouton */
#jopopuploginModal126 .jopopuplogin-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(97,49,120,0.25);
}

/* Masquer "Se rappeler de moi" */
#jopopuploginModal126 .form-check:has(
    input[name="remember"]
) {
    display: none !important;
}

/* Masquer "Forgot your password?" */
#jopopuploginModal126 .jopopuplogin-links {
    display: none !important;
}

/* Bouton de fermeture */
#jopopuploginModal126 .btn-close {
    opacity: 0.55;
    transition: opacity 0.2s ease;
}

#jopopuploginModal126 .btn-close:hover {
    opacity: 1;
}

/* Messages d'erreur */
#jopopuploginModal126 .jopopuplogin-messages .alert {
    border-radius: 10px;
    font-size: 0.92rem;
}

/* Adaptation mobile */
@media (max-width: 575px) {
    #jopopuploginModal126 .modal-header {
        padding: 18px 20px 14px;
    }

    #jopopuploginModal126 .modal-body {
        padding: 20px;
    }
}


/* Centrer le titre "Connexion" */
#jopopuploginModal126 .modal-title {
    text-align: center !important;
    width: 100%;
}

/* Garder la croix de fermeture à droite */
#jopopuploginModal126 .modal-header {
    position: relative;
}

#jopopuploginModal126 .btn-close {
    position: absolute;
    right: 22px;
}



/* iGUITARE — VOILE JO POPUP */

/* Voile sombre qui fonctionnait */
body.modal-open::before {
    content: "" !important;
    display: block !important;
    position: fixed !important;
    inset: 0 !important;

    background: rgba(0, 0, 0, 0.80) !important;
    opacity: 1 !important;

    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);

    z-index: 1050 !important;
    pointer-events: auto !important;
}

/* Popup au-dessus du voile */
#jopopuploginModal126 {
    position: fixed !important;
    z-index: 1060 !important;
}



/* =========================================
   iGUITARE - CONNEXION OR DOUX
   ========================================= */

/* Cadre dégradé */
#jopopuploginModal126 .modal-content {
    background:
        radial-gradient(
            rgba(0,0,0,0.025) 1px,
            transparent 1px
        ) 0 0 / 7px 7px padding-box,

        linear-gradient(
            #FFFEFC,
            #FFFEFC
        ) padding-box,

        linear-gradient(
            135deg,
            #E9CFA6 0%,
            #D5AD70 45%,
            #A47A40 100%
        ) border-box !important;

    color: #493F35;
}

/* Séparation de l'en-tête */
#jopopuploginModal126 .modal-header {
    border-bottom-color: rgba(213,173,112,0.25);
}

/* Titre */
#jopopuploginModal126 .modal-title {
    color: #8A6638 !important;
}

/* Libellés */
#jopopuploginModal126 .form-label {
    color: #493F35 !important;
}

/* Champs */
#jopopuploginModal126 .form-control {
    border-color: #E2D7C7;
    color: #302A25;
}

/* Champ sélectionné */
#jopopuploginModal126 .form-control:focus {
    border-color: #D5AD70;
    box-shadow: 0 0 0 3px rgba(213,173,112,0.17);
}

/* Icônes */
#jopopuploginModal126 .jopopuplogin-input-icon {
    color: #A47A40 !important;
}



/* =========================================
   iGUITARE - CONNEXION OR DOUX
   ========================================= */

/* Cadre dégradé */
#jopopuploginModal126 .modal-content {
    background:
        radial-gradient(
            rgba(0,0,0,0.025) 1px,
            transparent 1px
        ) 0 0 / 7px 7px padding-box,

        linear-gradient(
            #FFFEFC,
            #FFFEFC
        ) padding-box,

        linear-gradient(
            135deg,
            #E9CFA6 0%,
            #D5AD70 45%,
            #A47A40 100%
        ) border-box !important;

    color: #493F35;
}

/* Séparation de l'en-tête */
#jopopuploginModal126 .modal-header {
    border-bottom-color: rgba(213,173,112,0.25);
}

/* Titre */
#jopopuploginModal126 .modal-title {
    color: #8A6638 !important;
}

/* Libellés */
#jopopuploginModal126 .form-label {
    color: #493F35 !important;
}

/* Champs */
#jopopuploginModal126 .form-control {
    border-color: #E2D7C7;
    color: #302A25;
}

/* Champ sélectionné */
#jopopuploginModal126 .form-control:focus {
    border-color: #D5AD70;
    box-shadow: 0 0 0 3px rgba(213,173,112,0.17);
}

/* Icônes */
#jopopuploginModal126 .jopopuplogin-input-icon {
    color: #A47A40 !important;
}

/* Bouton Connexion */
#jopopuploginModal126 .jopopuplogin-submit {
    background: linear-gradient(
        135deg,
        #DDBB88,
        #D5AD70 45%,
        #A47A40
    ) !important;

    box-shadow: 0 3px 9px rgba(164,122,64,0.18);
}

/* Survol */
#jopopuploginModal126 .jopopuplogin-submit:hover {
    box-shadow: 0 6px 15px rgba(164,122,64,0.27);
}



/* =========================================
   iGUITARE - JO POPUP INVISIBLE
   Sans espace vide, avant et après connexion
   ========================================= */

/* Neutraliser la rangée réservée au module */
#row1 {
    display: contents !important;
}

/* Neutraliser les conteneurs intermédiaires */
#row1 > .inner,
#row1 #row1column1,
#row1 #Deconect,
#row1 #Deconect > .inner,
#row1 .deconect {
    display: contents !important;
}

/* Masquer le bouton natif de connexion */
#row1 .jopopuplogin-trigger {
    display: none !important;
}

/* Masquer le menu natif après connexion */
#row1 .jopopuplogin-loggedin {
    display: none !important;
}

/* Garder la fenêtre modale fonctionnelle */
#jopopuploginModal126 {
    z-index: 1060 !important;
}


/* =========================================
   iGUITARE - LIEN ACTIF MAXIMENU CK 119
   ========================================= */

/* Lien actif et tous ses textes internes */
#maximenuck119 > ul.maximenuck > li.current > a,
#maximenuck119 > ul.maximenuck > li.active > a,
#maximenuck119 > ul.maximenuck > li.current > a *,
#maximenuck119 > ul.maximenuck > li.active > a * {
    color: #F7F1E6 !important;
}

/* Éventuels effets de texte au survol */
#maximenuck119 > ul.maximenuck > li.current > a::before,
#maximenuck119 > ul.maximenuck > li.current > a::after,
#maximenuck119 > ul.maximenuck > li.active > a::before,
#maximenuck119 > ul.maximenuck > li.active > a::after {
    color: #F7F1E6 !important;
}


/* =========================================
   iGUITARE - MASQUER LE MAIN CONTENT VIDE
   ========================================= */

/* Masquer uniquement le contenu principal vide */
#maincontent:has(.pagebuilderck6:empty) {
    display: none !important;
}



/* TEST UNIQUEMENT : masquer les décorations
   du conteneur du menu public */

.testhaut {
    box-shadow: none !important;
    border-bottom: 0 !important;
}

.testhaut::before,
.testhaut::after {
    content: none !important;
}











/* =====================================================
   iGUITARE - MA BOÎTE À GUITARE
   Menu élèves Joomla - Module 128

   Ordinateur : onglets ivoire et or doux
   Mobile : petites cartes asymétriques
   ===================================================== */

/* 1. CONTENEUR DU MENU */

#block3 {
    background: #F0EBE6 !important;
    border: none !important;
    box-shadow: none !important;
    padding: 10px 12px 0 !important;
}

#block3 > .inner {
    margin: 0 auto !important;
    padding: 0 !important;
}

/* 2. LISTE DES ONGLETS */

#block3 #mod-menu128 {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 6px;

    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
}

/* 3. ÉLÉMENTS DU MENU */

#block3 #mod-menu128 > li {
    display: block !important;
    float: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* 4. LIENS INACTIFS */

#block3 #mod-menu128 > li > a {
    display: block !important;

    padding: 11px 17px !important;

    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.3px;
    text-transform: none;

    color: #10283C !important;
    text-decoration: none !important;

    background: transparent !important;
    border: 0 solid transparent !important;
    border-radius: 20px 7px 17px 7px;

    box-shadow: none !important;

    transition:
        color 0.25s ease,
        background-color 0.25s ease;
}

/* 5. SURVOL */

#block3 #mod-menu128 > li:not(.active) > a:hover,
#block3 #mod-menu128 > li:not(.active) > a:focus-visible {
    color: #946D43 !important;
    background: rgba(213, 173, 112, 0.12) !important;
}

/* 6. ONGLET ACTIF - STYLE CARTE iGUITARE */

#block3 #mod-menu128 > li.current > a,
#block3 #mod-menu128 > li.active > a {
    color: #10283C !important;
    font-weight: 700 !important;

    border-style: solid !important;
    border-width: 1px 3px 1px 7px !important;
    border-color: transparent !important;

    border-radius: 20px 7px 17px 7px !important;

    background:
        linear-gradient(
            #FFFEFC,
            #FFFEFC
        ) padding-box,

        linear-gradient(
            135deg,
            #E9CFA6 0%,
            #D5AD70 45%,
            #A47A40 100%
        ) border-box !important;

    box-shadow:
        0 3px 10px rgba(16,40,60,0.10) !important;
}

/* 7. DÉCONNEXION - PLUS DISCRÈTE */

#block3 #mod-menu128 > li.item-258 > a {
    color: #946D43 !important;
}

#block3 #mod-menu128 > li.item-258 > a:hover {
    color: #B16B4C !important;
}

/* =====================================================
   VERSION MOBILE
   ===================================================== */

@media screen and (max-width: 750px) {

    #block3 {
        padding: 12px 10px !important;
    }

    #block3 #mod-menu128 {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px !important;
        width: 100%;
    }

    #block3 #mod-menu128 > li {
        min-width: 0;
        width: 100%;
    }

    #block3 #mod-menu128 > li > a {
        display: flex !important;
        align-items: center;
        justify-content: center;

        min-height: 52px;
        height: 100%;

        padding: 10px 8px !important;

        font-size: 11px !important;
        line-height: 1.35;
        text-align: center;

        background: #FFFEFC !important;

        border: 1px solid #DDD5CA !important;
        border-radius: 17px 6px 15px 6px !important;
    }

    /* Carte active dorée */

    #block3 #mod-menu128 > li.current > a,
    #block3 #mod-menu128 > li.active > a {
        border-width: 1px 3px 1px 7px !important;
        border-color: transparent !important;

        background:
            linear-gradient(
                #FFFEFC,
                #FFFEFC
            ) padding-box,

            linear-gradient(
                135deg,
                #E9CFA6,
                #D5AD70,
                #A47A40
            ) border-box !important;
    }
}



/* =====================================================
   iGUITARE - NETTOYAGE DES BORDURES PARASITES
   Menu élèves et conteneurs du contenu
   ===================================================== */

/* 1. Conteneur du menu élèves */
#block3 > .inner,

/* 2. Conteneur principal Joomla */
#maincontent > .inner,

/* 3. Bloc Page Builder CK identifié */
#block_ID1792513264392 > .inner {

    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}


/* iGUITARE — Masquer la rangée vide responsable du trait */
#row3 {
    display: none !important;
}


/* iGUITARE — MA BOÎTE À GUITARE
   Harmonisation des cartes PC / mobile */

/* Cartes sur tous les écrans */
#block3 #mod-menu128 > li > a {
    background: #FFFEFC !important;
    color: #10283C !important;
    font-weight: 600 !important;
    border: 1px solid #DDD5CA !important;
    border-radius: 17px 6px 15px 6px !important;
    transition:
        background-color .25s ease,
        color .25s ease,
        border-color .25s ease !important;
}

/* Survol : ivoire doré, sans rose orangé */
#block3 #mod-menu128 > li:not(.active) > a:hover,
#block3 #mod-menu128 > li:not(.active) > a:focus-visible {
    background: #F7F0E5 !important;
    color: #745329 !important;
    border-color: #D5AD70 !important;
}

/* Rubrique active : conserver la bordure dorée */
#block3 #mod-menu128 > li.current > a,
#block3 #mod-menu128 > li.active > a {
    color: #10283C !important;
    font-weight: 700 !important;
    border: 1px solid transparent !important;
    border-left-width: 7px !important;
    border-right-width: 3px !important;
    background:
        linear-gradient(#FFFEFC, #FFFEFC) padding-box,
        linear-gradient(
            135deg,
            #E9CFA6,
            #D5AD70,
            #A47A40
        ) border-box !important;
}

/* Sur PC : espacement entre les cartes */
@media screen and (min-width: 751px) {
    #block3 #mod-menu128 {
        gap: 10px !important;
    }

    #block3 #mod-menu128 > li > a {
        padding: 12px 20px !important;
    }
}






/* iGUITARE — Bouton de déconnexion du footer */

.ig-deconnexion {
    text-align: center;
}

/* Masquer les éléments accessoires du module */
.ig-deconnexion .mod-login-logout__greeting {
    display: none;
}

/* Bouton Joomla */
.ig-deconnexion button[type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    padding: 8px 17px !important;

    background: transparent !important;
    color: #F0EBE6 !important;

    border-style: solid !important;
    border-width: 1px 2px 1px 3px !important;
    border-color: #D5AD70 !important;
    border-radius: 14px 5px 12px 5px !important;

    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .2px;

    box-shadow: none !important;
    cursor: pointer;
    transition: opacity .2s ease;
}

/* Petite icône de sortie */
.ig-deconnexion button[type="submit"]::before {
    content: "↪";
    color: #D5AD70;
    font-size: 15px;
    line-height: 1;
}

/* Survol : aucune variation de couleur */
.ig-deconnexion button[type="submit"]:hover {
    background: transparent !important;
    color: #F0EBE6 !important;
    border-color: #D5AD70 !important;
    opacity: .8;
}

/* Accessibilité clavier */
.ig-deconnexion button[type="submit"]:focus-visible {
    outline: 2px solid #F0EBE6;
    outline-offset: 3px;
}

/* iGUITARE — Petit bouton de déconnexion */

.ig-deconnexion {
    margin: 4px auto 0 !important;
    padding: 0 !important;
    text-align: center;
}

.ig-deconnexion button[type="submit"] {
    padding: 5px 12px !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
    border-radius: 11px 4px 10px 4px !important;
}



/* iGUITARE — Footer : déconnexion épurée */

/* Supprimer la ligne au-dessus du module */
.moduletable.ig-deconnexion {
    border-top: none !important;
    box-shadow: none !important;
}

/* Supprimer la ligne de la zone footer concernée */
#Footer .footer.tck-module:has(.ig-deconnexion) {
    border-top: none !important;
}

/* Bouton plus discret */
.ig-deconnexion button[type="submit"] {
    font-size: 11px !important;
    padding: 5px 12px !important;
    line-height: 1.3 !important;
    border-radius: 11px 4px 10px 4px !important;
}

/* Éviter tout texte ajouté après le bouton */
.ig-deconnexion button[type="submit"]::after {
    content: none !important;
}



/* ==========================================
   iGUITARE — MA BOÎTE À GUITARE — VERSION 2
   Contrastes renforcés, fond ivoire et or
   ========================================== */

.ig-accueil-eleves {
    max-width: 1060px;
    margin: 28px auto 45px;
    padding: 0 18px;
    font-family: 'Montserrat', sans-serif !important;
    color: #10283C;
}

.ig-accueil-eleves *,
.ig-accueil-eleves *::before,
.ig-accueil-eleves *::after {
    box-sizing: border-box;
}

/* TYPOGRAPHIE */

.ig-accueil-eleves h1,
.ig-accueil-eleves h2,
.ig-accueil-eleves h3 {
    color: #10283C !important;
}

.ig-accueil-eleves p {
    color: #34495A;
    font-size: 14px;
    line-height: 1.85;
}

/* INTRODUCTION */

.ig-accueil-eleves .ig-intro {
    padding: 35px 30px;
    text-align: center;
    background: #F2EFEB;
    border: 1px solid #10283C;
    border-left-width: 12px;
    border-right-width: 8px;
    border-radius: 30px 9px 30px 9px;
}

.ig-accueil-eleves .ig-surtitle {
    margin-bottom: 13px;
    color: #946D43;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.ig-accueil-eleves h1 {
    margin: 0 0 17px;
    font-family: Georgia, serif;
    font-size: clamp(27px, 4vw, 38px);
    font-weight: 400;
    line-height: 1.3;
}

.ig-accueil-eleves .ig-intro p {
    max-width: 710px;
    margin: 0 auto;
    font-size: 15px;
    color: #283D4E;
}

.ig-accueil-eleves .ig-devise {
    max-width: 650px;
    margin: 24px auto 0;
    padding: 15px 20px;
    background: #10283C;
    border: 1px solid #E1D6C5;
    border-radius: 15px 5px 14px 5px;
    color: #10283C;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.7;
}

/* TITRES DES SECTIONS */

.ig-accueil-eleves .ig-titre-section {
    margin: 40px 0 23px;
    text-align: center;
}

.ig-accueil-eleves .ig-titre-section h2,
.ig-accueil-eleves .ig-mode-emploi h2 {
    margin: 0 0 14px;
    font-family: Georgia, serif;
    font-size: 28px;
    font-weight: 400;
}

.ig-accueil-eleves .ig-filet {
    width: 60px;
    height: 2px;
    margin: 0 auto;
    background: #D5AD70;
}

/* CARTES DES RUBRIQUES */

.ig-accueil-eleves .ig-cartes {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.ig-accueil-eleves .ig-carte {
    display: block;
    padding: 26px 26px 24px;
    background: #FFFEFC;
    border: 1px solid #CDB58E;
    border-left: 5px solid #D5AD70;
    border-radius: 23px 7px 20px 7px;
    text-decoration: none !important;
    color: #8f46b0 !important;
    box-shadow: 0 4px 15px rgba(16,40,60,.07);
    transition: transform .2s ease, box-shadow .2s ease;
}

.ig-accueil-eleves a.ig-carte:hover {
    transform: translateY(-3px);
    box-shadow: 0 7px 20px rgba(16,40,60,.12);
}

.ig-accueil-eleves a.ig-carte:focus-visible {
    outline: 2px solid #A47A40;
    outline-offset: 3px;
}

.ig-accueil-eleves .ig-picto {
    display: block;
    font-size: 27px;
    line-height: 1.2;
    margin-bottom: 12px;
}

.ig-accueil-eleves .ig-carte h3 {
    margin: 0 0 12px;
    font-family: 'Montserrat', sans-serif;
    font-size: 17px;
    font-weight: 700;
}

.ig-accueil-eleves .ig-carte p {
    margin: 0;
    color: #34495A;
    font-size: 14px;
    line-height: 1.8;
}

.ig-accueil-eleves .ig-suite {
    display: inline-block;
    margin-top: 18px;
    color: #806039;
    font-size: 12px;
    font-weight: 700;
}

/* MODE D'EMPLOI */

.ig-accueil-eleves .ig-mode-emploi {
    margin-top: 35px;
    padding: 32px 28px;
    background: #F2EFEB;
    border: 1px solid #E1D6C5;
    border-radius: 27px 8px 24px 8px;
}

.ig-accueil-eleves .ig-mode-emploi h2 {
    text-align: center;
}

.ig-accueil-eleves .ig-mode-emploi > p {
    max-width: 700px;
    margin: 0 auto 25px;
    text-align: center;
    font-size: 14px;
    color: #34495A;
}

.ig-accueil-eleves .ig-etapes {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 13px;
}

.ig-accueil-eleves .ig-etape {
    padding: 20px 15px;
    text-align: center;
    background: #FFFEFC;
    border: 1px solid #E1D6C5;
    border-radius: 17px 6px 15px 6px;
}

.ig-accueil-eleves .ig-numero {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin: 0 auto 13px;
    border-radius: 50%;
    background: #10283C;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 700;
}

.ig-accueil-eleves .ig-etape p {
    margin: 0;
    color: #34495A;
    font-size: 13px;
    line-height: 1.7;
}

/* CONSEIL DU PROFESSEUR */

.ig-accueil-eleves .ig-conseil {
    margin-top: 26px;
    padding: 25px 28px;
    background: #EAF5F3;
    border: 1px solid #B6DCD8;
    border-left: 5px solid #4AA9A4;
    border-radius: 18px 6px 16px 6px;
}

.ig-accueil-eleves .ig-conseil strong {
    display: block;
    margin-bottom: 8px;
    color: #10283C;
    font-size: 15px;
}

.ig-accueil-eleves .ig-conseil p {
    margin: 0;
    color: #283D4E;
    font-size: 14px;
}

/* CONTACT */

.ig-accueil-eleves .ig-contact {
    margin-top: 30px;
    padding: 18px;
    text-align: center;
    background: #F2EFEB;
    border-radius: 15px 5px 14px 5px;
    color: #34495A;
    font-size: 13px;
    line-height: 1.8;
}

/* RESPONSIVE */

@media (max-width: 700px) {
    .ig-accueil-eleves {
        margin: 15px auto 30px;
        padding: 0 10px;
    }

    .ig-accueil-eleves .ig-intro {
        padding: 27px 18px;
    }

    .ig-accueil-eleves .ig-cartes {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    .ig-accueil-eleves .ig-carte {
        padding: 22px 20px;
    }

    .ig-accueil-eleves .ig-mode-emploi {
        padding: 25px 15px;
    }

    .ig-accueil-eleves .ig-etapes {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ig-accueil-eleves .ig-titre-section h2,
    .ig-accueil-eleves .ig-mode-emploi h2 {
        font-size: 24px;
    }
}

@media (max-width: 360px) {
    .ig-accueil-eleves .ig-etapes {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ig-accueil-eleves .ig-carte {
        transition: none;
    }
}

#maximenuck119 ul.maximenuck li.maximenuck.level1 {
    background-image: none !important;
}



/* iGUITARE — BANDEAU ENSEMBLES : VERSION COLORÉE */

.ig-ensemble-bandeau {
    background: var(--ig-fond, #D5AD70);
    border: 1px solid rgba(6,18,28,0.12);
    border-radius: 14px;
    padding: 30px 24px 28px;
    margin: 0 auto 28px;
    text-align: center;
    box-shadow: 0 8px 24px rgba(0,0,0,0.10);
}

.ig-ensemble-surtitre {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    color: var(--ig-texte, #FFFFFF);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.ig-ensemble-trait {
    display: block;
    width: 80px;
    max-width: 20%;
    height: 2px;
    background: var(--ig-texte, #FFFFFF);
    border-radius: 3px;
}

.ig-ensemble-bandeau .ig-ensemble-titre {
    color: var(--ig-texte, #20A5A6) !important;
    font-size: clamp(32px, 5vw, 48px);
    font-weight: 700;
    line-height: 1.2;
    margin: 12px 0 10px;
    padding: 0;
}

.ig-ensemble-devise {
    color: var(--ig-texte, #06121C);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.5px;
    margin: 0;
}

.ig-ensemble-devise span {
    padding: 0 5px;
    opacity: 0.65;
}

@media (max-width: 600px) {
    .ig-ensemble-bandeau {
        padding: 25px 14px;
        border-radius: 10px;
    }
    .ig-ensemble-surtitre {
        gap: 9px;
        font-size: 10px;
        letter-spacing: 1px;
    }
    .ig-ensemble-trait {
        width: 32px;
    }
    .ig-ensemble-devise {
        font-size: 12px;
    }
}
























































































/* ====================================================
   iGUITARE — RAPI MUSIC PLAYER
   Style universel pour tous les ensembles
   ==================================================== */

:root {
    --ig-rapi-nuit: #10283C;
    --ig-rapi-ivoire: #F7F1E6;
    --ig-rapi-or: #D5AD70;
    --ig-rapi-selection: #DCE8F0;
    --ig-rapi-piste: #657686;
}

/* ====================================================
   1. CONTENEUR PRINCIPAL
   ==================================================== */

.rapi_music_player {
    background: var(--ig-rapi-ivoire) !important;
    border: 1px solid var(--ig-rapi-or) !important;
    border-radius: 36px 12px 36px 12px !important;
    overflow: hidden !important;
    box-shadow: 0 8px 22px rgba(6,18,28,.12);
    isolation: isolate;
}

/* ====================================================
   2. FOND BLEU NUIT
   ==================================================== */

.rapi_music_player .player_background {
    background: var(--ig-rapi-nuit) !important;
    background-image: none !important;
    filter: none !important;
    -webkit-filter: none !important;
}

.rapi_music_player .player_dark_background {
    background: transparent !important;
    background-image: none !important;
}

/* ====================================================
   3. COMMANDES AUDIO
   ==================================================== */

.rapi_music_player .plyr__controls,
.rapi_music_player .plyr__controls button,
.rapi_music_player .plyr__controls svg {
    color: var(--ig-rapi-ivoire) !important;
}

/* Navigation : dimensions réduites */

.rapi_music_player .tracks {
    text-align: center;
}

.rapi_music_player .tracks img {
    width: 32px !important;
    height: 32px !important;
    object-fit: contain;
    filter: brightness(0) invert(1) !important;
}

.rapi_music_player .tracks #btnPlay img,
.rapi_music_player .tracks #btnPause img {
    width: 46px !important;
    height: 46px !important;
}

/* ====================================================
   4. BARRES AUDIO FINES
   ==================================================== */

/* Important : aucun fond sur le conteneur de progression */

.rapi_music_player .plyr__progress {
    background: transparent !important;
}

/* Hauteur commune des pistes */

.rapi_music_player .plyr__progress progress,
.rapi_music_player .plyr__volume progress {
    height: 6px !important;
    border-radius: 20px !important;
}

/* Partie chargée */

.rapi_music_player .plyr__progress--buffer {
    color: var(--ig-rapi-piste) !important;
}

/* Partie lue */

.rapi_music_player .plyr__progress--played {
    color: var(--ig-rapi-or) !important;
}

/* Curseurs */

.rapi_music_player .plyr__progress--seek,
.rapi_music_player .plyr__volume--input {
    accent-color: var(--ig-rapi-or) !important;
}

/* Piste Firefox : lecture et volume */

.rapi_music_player input[type="range"]::-moz-range-track {
    background: var(--ig-rapi-piste) !important;
    height: 6px !important;
    border-radius: 20px !important;
}

.rapi_music_player input[type="range"]::-moz-range-progress {
    background: var(--ig-rapi-or) !important;
    height: 6px !important;
    border-radius: 20px !important;
}

.rapi_music_player input[type="range"]::-moz-range-thumb {
    background: var(--ig-rapi-or) !important;
    border: 0 !important;
    width: 17px !important;
    height: 17px !important;
    border-radius: 50% !important;
}

/* Piste Chrome / Edge */

.rapi_music_player input[type="range"]::-webkit-slider-runnable-track {
    background: var(--ig-rapi-piste) !important;
    height: 6px !important;
    border-radius: 20px !important;
}

.rapi_music_player input[type="range"]::-webkit-slider-thumb {
    background: var(--ig-rapi-or) !important;
}

/* ====================================================
   5. LISTE DE LECTURE COMPACTE
   ==================================================== */

.rapi_music_player ul.plList {
    max-height: 300px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    scrollbar-width: thin;
    scrollbar-color: var(--ig-rapi-piste) var(--ig-rapi-ivoire);
}

.rapi_music_player .plList li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(16,40,60,.08);
    font-size: 15px !important;
    line-height: normal !important;
}

.rapi_music_player .plList li:nth-child(odd) {
    background: #FFFFFF !important;
}

.rapi_music_player .plList li:nth-child(even) {
    background: var(--ig-rapi-ivoire) !important;
}

.rapi_music_player .plList li.plSel {
    background: var(--ig-rapi-selection) !important;
}

.rapi_music_player .plList li:hover {
    background: #E8EEF2 !important;
}

/* ====================================================
   6. ALIGNEMENT RÉEL DES ÉLÉMENTS
   ==================================================== */

/* Trois colonnes :
   numéro | titre flexible | durée + téléchargement */

.rapi_music_player .plItem {
    display: grid !important;
    grid-template-columns: 34px minmax(0,1fr) auto;
    align-items: center !important;
    column-gap: 8px;
    min-height: 45px;
    padding: 5px 12px !important;
    box-sizing: border-box;
}

/* Neutralisation des anciens positionnements */

.rapi_music_player .plNum,
.rapi_music_player .plTitle,
.rapi_music_player .plLength {
    position: static !important;
    float: none !important;
    transform: none !important;
    top: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.25 !important;
    align-self: center !important;
    vertical-align: middle !important;
}

/* Numéro */

.rapi_music_player .plNum {
    text-align: right !important;
    font-size: 13px !important;
    color: #64788A !important;
    width: auto !important;
}

/* Titre */

.rapi_music_player .plTitle {
    color: var(--ig-rapi-nuit) !important;
    font-size: 15px !important;
    min-width: 0;
    overflow-wrap: anywhere;
}

.rapi_music_player .plSel .plTitle {
    font-weight: 700 !important;
}

/* Durée et icône sur une même ligne */

.rapi_music_player .plLength {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end;
    gap: 8px;
    white-space: nowrap;
    font-size: 12px !important;
    color: #526779 !important;
}

/* Lien de téléchargement */

.rapi_music_player .plLength a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    line-height: 1 !important;
}

/* Icône */

.rapi_music_player .player_download_icon {
    display: block !important;
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
    opacity: .9;
    filter: brightness(0) saturate(100%)
            invert(20%) sepia(19%)
            saturate(1093%) hue-rotate(164deg)
            brightness(93%) contrast(91%);
}

.rapi_music_player .player_download_icon:hover {
    opacity: 1;
}

/* ====================================================
   7. MOBILE
   ==================================================== */

@media (max-width: 600px) {

    .rapi_music_player .plItem {
        grid-template-columns: 27px minmax(0,1fr) auto;
        gap: 5px;
        padding: 6px 8px !important;
    }

    .rapi_music_player .plTitle {
        font-size: 13px !important;
    }

    .rapi_music_player .plLength {
        font-size: 11px !important;
        gap: 5px;
    }

    .rapi_music_player .player_download_icon {
        width: 14px !important;
        height: 14px !important;
    }
}
































/* ==========================================
   iGUITARE — BOUTONS PERSONNALISÉS RAPI
   ========================================== */

/* Les images d'origine restent dans le HTML,
   mais on affiche nos SVG à leur place. */

.rapi_music_player .tracks a img {
    opacity: 0 !important;
}

.rapi_music_player .tracks a {
    display: inline-block;
    width: 40px;
    height: 40px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    vertical-align: middle;
}

.rapi_music_player .tracks #btnPrev {
    background-image:
        url('/images/iguitare/jukebox/precedent.svg');
}

.rapi_music_player .tracks #btnNext {
    background-image:
        url('/images/iguitare/jukebox/suivant.svg');
}

.rapi_music_player .tracks #btnPlay,
.rapi_music_player .tracks #btnPause {
    width: 56px;
    height: 56px;
}

.rapi_music_player .tracks #btnPlay {
    background-image:
        url('/images/iguitare/jukebox/lecture.svg');
}

.rapi_music_player .tracks #btnPause {
    background-image:
        url('/images/iguitare/jukebox/pause.svg');
}

/* Retour visuel au survol */

.rapi_music_player .tracks a:hover {
    opacity: .8;
}


/* ==========================================
   iGUITARE — RAPI : VERSION PLUS COMPACTE
   ========================================== */

/* Réduire les marges internes des commandes audio */

.rapi_music_player .plyr--audio .plyr__controls,
#rapi_music_player132 .plyr--audio .plyr__controls {
    padding: 16px 16px 8px 16px !important;
}

/* Rapprocher les boutons de la barre audio */

.rapi_music_player .tracks {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 12px !important;
}

/* Éviter les espaces supplémentaires autour des liens */

.rapi_music_player .tracks a {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Adaptation mobile */

@media (max-width: 600px) {

    .rapi_music_player .plyr--audio .plyr__controls,
    #rapi_music_player132 .plyr--audio .plyr__controls {
        padding: 12px 10px 6px 10px !important;
    }

    .rapi_music_player .tracks {
        padding-bottom: 9px !important;
    }
}


/* ==========================================
   iGUITARE — TEST BORDURES JUKEBOX
   À supprimer si le résultat ne plaît pas
   ========================================== */

.rapi_music_player {
    border-top: 1px solid #10283C !important;
    border-bottom: 1px solid #10283C !important;
    border-left: 3px solid #10283C !important;
    border-right: 3px solid #10283C !important;

    border-radius: 36px 12px 36px 12px !important;

    box-shadow: 0 8px 24px rgba(16,40,60,.16) !important;
}

/* Un peu moins épais sur téléphone */

@media (max-width: 600px) {
    .rapi_music_player {
        border-left-width: 4px !important;
        border-right-width: 4px !important;
    }
}




/* ==========================================
   iGUITARE — FOOTER : 4 ICÔNES CENTRÉES
   ========================================== */

/* Rangée des icônes */

#Footer #row_ID1790407395234 > .inner {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;
	gap: clamp(18px, 4vw, 55px) !important;

    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 auto !important;
    padding: 0 10px !important;
}

/* Masquer les deux colonnes vides */

#Footer #block_ID1790407395235,
#Footer #block_ID1790407403381 {
    display: none !important;
}

/* Neutraliser les dimensions des quatre blocs */

#Footer #row_ID1790407395234 > .inner > .blockck {
    float: none !important;
    flex: 0 0 auto !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}

/* Neutraliser les largeurs internes héritées */

#Footer #row_ID1790407395234 .blockck > .inner,
#Footer #row_ID1790407395234 .innercontent,
#Footer #row_ID1790407395234 .plyr,
#Footer #row_ID1790407395234 .cktype,
#Footer #row_ID1790407395234 .imageck {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Centrage des liens et des images */

#Footer #row_ID1790407395234 .imageck a {
    display: block !important;
}

#Footer #row_ID1790407395234 .imageck img {
    display: block !important;
    width: 70px !important;
    height: 70px !important;
    max-width: 100% !important;
    object-fit: contain;
}

/* Mobile */

@media (max-width: 600px) {

    #Footer #row_ID1790407395234 > .inner {
        gap: clamp(8px, 3vw, 16px) !important;
        padding: 0 8px !important;
    }

    #Footer #row_ID1790407395234 .imageck img {
        width: clamp(44px, 13vw, 60px) !important;
        height: auto !important;
        aspect-ratio: 1;
    }
}

/* ==========================================
   iGUITARE — FILET DÉCORATIF FOOTER
   ========================================== */

/* Supprimer la rangée vide intermédiaire */
#Footer #row_ID1790416757357 {
    display: none !important;
}

/* Dessiner une seule ligne derrière le petit i */
#Footer #row_ID1790427194938 {
    position: relative !important;
    isolation: isolate;
    margin: 12px auto 4px !important;
    padding: 0 !important;
}

/* Ligne centrée, ivoire et or doux */
#Footer #row_ID1790427194938::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;

    width: min(340px, 75%) !important;
    height: 1px !important;

    background: linear-gradient(
        90deg,
        transparent,
        #D5AD70 20%,
        #F7F1E6 50%,
        #D5AD70 80%,
        transparent
    ) !important;

    z-index: -1;
    pointer-events: none;
}

/* Le petit i reste devant la ligne */
#Footer #row_ID1790427194938 .imageck img {
    position: relative;
    z-index: 1;
}

/* Mobile : ligne plus courte */
@media (max-width: 600px) {
    #Footer #row_ID1790427194938::before {
        width: min(220px, 58%) !important;
    }
}



/* ============================================
   iGuitare — Habillage Grand Événement
   ============================================ */

.ig-grand-evenement {
    box-sizing: border-box;
    width: 100%;

    background: #10283C;
    color: #F7F1E6;

    border-style: solid;
    border-color: #D5AD70 #AE864A #D5AD70 #D5AD70;
    border-width: 1px 4px 2px 9px;

    border-radius: 36px 12px 36px 12px;

    padding: 32px 24px;
    text-align: center;

    box-shadow: 0 15px 35px rgba(6,18,28,.18);
}

/* Mention spéciale */
.ig-grand-evenement .ig-grand-label {
    color: #D5AD70;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    line-height: 1.6;
}

.ig-grand-evenement .ig-grand-etoile {
    color: #D5AD70;
    margin: 0 8px;
}

/* Titre principal */
.ig-grand-evenement .ig-grand-titre {
    color: #F7F1E6 !important;
    font-size: clamp(25px, 4vw, 38px);
    font-weight: 700;
    line-height: 1.2;
    margin: 18px 0 14px;
}

/* Petit trait doré */
.ig-grand-evenement .ig-grand-separateur {
    width: 74px;
    height: 2px;
    margin: 0 auto 18px;
    background: #D5AD70;
    border-radius: 3px;
}

/* Phrase d'accroche */
.ig-grand-evenement .ig-grand-accroche {
    color: #F7F1E6 !important;
    font-size: 17px;
    line-height: 1.6;
    margin: 0 0 12px;
}

/* Signature */
.ig-grand-evenement .ig-grand-signature {
    color: #D5AD70 !important;
    font-size: 13px;
    letter-spacing: 1px;
    margin: 0;
}

/* Version mobile */
@media (max-width: 600px) {
    .ig-grand-evenement {
        padding: 25px 15px;
        border-width: 1px 3px 2px 7px;
        border-radius: 28px 10px 28px 10px;
    }

    .ig-grand-evenement .ig-grand-label {
        font-size: 10px;
        letter-spacing: 1px;
    }

    .ig-grand-evenement .ig-grand-accroche {
        font-size: 15px;
    }
}




/* =====================================
   iGUITARE - BOUTON HALLOWEEN
   J'ai la trouille !
   ===================================== */

/* Bouton Halloween */
#block3 #mod-menu128 li.item-257 > a {
    background: linear-gradient(
        135deg,
        #FFB454 0%,
        #FF8A30 100%
    ) !important;

    color: #14182C !important;
    font-weight: 800 !important;

    border: 2px solid #D5AD70 !important;
    border-radius: 16px 5px 16px 5px !important;

    box-shadow:
        0 3px 8px rgba(0,0,0,0.18),
        0 0 10px rgba(255,154,61,0.25);

    transition:
        background 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease;
}

/* Survol : petit effet magique */
#block3 #mod-menu128 li.item-257 > a:hover,
#block3 #mod-menu128 li.item-257 > a:focus-visible {
    background: linear-gradient(
        135deg,
        #FFD17D 0%,
        #FF9A3D 100%
    ) !important;

    color: #06121C !important;

    box-shadow:
        0 4px 14px rgba(255,154,61,0.45),
        0 0 18px rgba(255,154,61,0.3);

    transform: translateY(-2px);
}

/* Même apparence sur la page active */
#block3 #mod-menu128 li.item-257.current > a,
#block3 #mod-menu128 li.item-257.active > a {
    color: #14182C !important;
}



/* iGuitare — Compte à rebours Halloween */

#ig-halloween-countdown {
  max-width: 620px;
  margin: 25px auto;
  padding: 24px 20px;
  background: #14182C;
  border: 1px solid #5A456D;
  border-radius: 18px;
  text-align: center;
  box-shadow: 0 8px 25px rgba(0,0,0,.2);
}

.ig-halloween-title {
  color: #FF9A3D;
  font-size: 21px;
  font-weight: 700;
  margin-bottom: 20px;
}

.ig-halloween-timer {
  display: flex;
  justify-content: center;
  gap: 12px;
}

.ig-time-box {
  flex: 1;
  max-width: 115px;
  padding: 14px 5px;
  background: #24253F;
  border-radius: 12px;
  border: 1px solid #57456C;
}

.ig-time-box span {
  display: block;
  color: #FF9A3D;
  font-size: clamp(24px, 5vw, 38px);
  font-weight: 800;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
}

.ig-time-box small {
  display: block;
  color: #D9C7EF;
  font-size: 12px;
  margin-top: 5px;
}

#ig-halloween-message {
  color: #F7F1E6;
  font-size: 14px;
  margin: 18px 0 0;
}

@media (max-width: 480px) {
  #ig-halloween-countdown {
    padding: 20px 12px;
  }

  .ig-halloween-timer {
    gap: 6px;
  }

  .ig-time-box {
    padding: 12px 3px;
  }

  .ig-time-box small {
    font-size: 10px;
  }
}
