/*
 Theme Name:   2025- Mousquetaires
 Theme URI:    https://escrimeloue.fr
 Description:  Thème enfant pour le Cercle des Mousquetaires de Loué
 Author:       Philippe Bourdenet
 Author URI:   https://philippe.bourde.net
 Template:     twentytwentyfive
 Version:      1.0.0
*/

/* Déclaration des polices Rubik */
@font-face {
    font-family: 'Rubik';
    src: url('fonts/Rubik-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Rubik';
    src: url('fonts/Rubik-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Rubik';
    src: url('fonts/Rubik-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Rubik';
    src: url('fonts/Rubik-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* Application globale de Rubik */
body {
    font-family: 'Rubik', Helvetica, Arial, sans-serif !important;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Rubik', Helvetica, Arial, sans-serif !important;
}

/* Couleurs de la charte */
:root {
    --bleu-principal: #28348A;
    --rouge: #E20613;
    --noir: #000000;
    --gris: #EEEEEE;
    --cyan: #25B7CF;
    --bleu-fonce: #0F062F;
    --blanc: #FFFFFF;
}


/* === COULEURS DE LA CHARTE === */

/* Liens */
a {
    color: #28348A;
    transition: color 0.3s ease;
}

a:hover {
    color: #E20613;
}

/* Boutons */
.et_pb_button {
    background-color: #E20613 !important;
    color: #FFFFFF !important;
    border-radius: 4px;
    font-weight: 700;
}

.et_pb_button:hover {
    background-color: #28348A !important;
}

/* Menu principal */
#main-header {
    background-color: #FFFFFF;
}

#et-top-navigation a {
    color: #000000;
}

#et-top-navigation a:hover {
    color: #28348A;
}

/* Footer */
#main-footer {
    background-color: #0F062F;
    color: #FFFFFF;
}


/* ========================================
   STYLES GLOBAUX - TOUTES LES PAGES
   Application de la charte graphique
======================================== */

/* === COULEURS GLOBALES === */
body {
    font-family: 'Rubik', Helvetica, Arial, sans-serif !important;
}

/* Titres */
h1, h2, h3, h4, h5, h6,
.et_pb_text h1, .et_pb_text h2, .et_pb_text h3,
.et_pb_text h4, .et_pb_text h5, .et_pb_text h6 {
    font-family: 'Rubik', Helvetica, Arial, sans-serif !important;
}

/* Liens */
a {
    color: #28348A;
    transition: color 0.3s ease;
}

a:hover {
    color: #E20613;
}

/* === HEADER / MENU === */
#main-header {
    background-color: #FFFFFF;
}

#et-top-navigation a {
    color: #000000;
    font-family: 'Rubik', sans-serif !important;
}

#et-top-navigation a:hover {
    color: #28348A !important;
}

/* Menu mobile */
.mobile_menu_bar {
    background-color: #FFFFFF;
}

.mobile_menu_bar:before {
    color: #000000;
}

/* === BOUTONS 2025 === */
.et_pb_button,
.et_pb_promo_button,
.et_pb_newsletter_button,
.et_pb_contact_submit {
    background-color: #E20613 !important;
    color: #FFFFFF !important;
    border: none !important;
    border-radius: 50px !important;
    font-family: 'Rubik', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease !important;
    padding: 18px 40px !important;
}

.et_pb_button:hover,
.et_pb_promo_button:hover,
.et_pb_newsletter_button:hover,
.et_pb_contact_submit:hover {
    background-color: #28348A !important;
    transform: translateY(-3px);
    box-shadow: 0 15px 40px rgba(40, 52, 138, 0.4) !important;
}

/* === SECTIONS DIVI === */
/* Sections avec fond coloré */
.section-bleue,
.et_pb_section.section-bleue {
    background-color: #28348A !important;
}

.section-rouge,
.et_pb_section.section-rouge {
    background-color: #E20613 !important;
}

.section-bleu-fonce,
.et_pb_section.section-bleu-fonce {
    background-color: #0F062F !important;
}

.section-cyan,
.et_pb_section.section-cyan {
    background-color: #25B7CF !important;
}

.section-gris,
.et_pb_section.section-gris {
    background-color: #EEEEEE !important;
}

/* === FOOTER === */
#main-footer {
    background-color: #0F062F !important;
    color: #FFFFFF;
    font-family: 'Rubik', sans-serif;
}

#footer-widgets .widget-title,
#main-footer h1, #main-footer h2, 
#main-footer h3, #main-footer h4 {
    color: #25B7CF !important;
    font-family: 'Rubik', sans-serif !important;
}

#main-footer a {
    color: #25B7CF;
    transition: color 0.3s ease;
}

#main-footer a:hover {
    color: #FFFFFF;
}

/* === FORMULAIRES === */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
textarea,
select,
.et_pb_contact_field input,
.et_pb_contact_field textarea {
    border-color: #EEEEEE !important;
    font-family: 'Rubik', sans-serif !important;
    transition: border-color 0.3s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus,
select:focus,
.et_pb_contact_field input:focus,
.et_pb_contact_field textarea:focus {
    border-color: #28348A !important;
}

/* === MODULES BLURB === */
.et_pb_blurb_content h4 {
    color: #28348A !important;
    font-family: 'Rubik', sans-serif !important;
}

/* === RESPONSIVE === */
@media (max-width: 980px) {
    .et_pb_button {
        padding: 15px 30px !important;
    }
}
