/* Importation des polices */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@700&family=Source+Code+Pro&family=EB+Garamond&display=swap');

body { font-family: 'EB Garamond', serif; font-size: 1.2rem; line-height: 1.6; }
h1, h2, h3, .navbar-brand { font-family: 'Montserrat', sans-serif; text-transform: uppercase; }
nav, .btn, .badge { font-family: 'Source Code Pro', monospace; font-size: 0.9rem; }



/* Couleurs et bordures */
.text-red { color: red; }
.bg-red { background-color: red; color: white; }
.border-red { border-bottom: 4px solid red; }

/* Contrainte : pas d'arrondis */
* { border-radius: 0 !important; }

/* Layout */
header { background: #fff; padding: 2rem 0; border-top: 6px solid red; position: relative; }
footer { background: #1a1a1a; color: #aaa; padding: 2rem 0; }
footer a { color: #aaa; text-decoration: none; }
footer a:hover { color: white; }

/* Navigation : lien actif et hover en rouge */
nav a.nav-link:hover { color: red !important; }
nav a.fw-bold { color: red !important; border-color: red !important; }

/* Titres des articles en rouge au survol */
.article-card { border-bottom: 3px solid red; padding-bottom: 1.5rem; margin-bottom: 1.5rem; transition: 0.3s; }
.article-card:hover { opacity: 0.8; }
.article-card:hover h2, .article-card:hover h5, .article-card:hover h6 { color: red; }
.article-card img { width: 100%; height: 200px; object-fit: cover; }
.img-main-hero { height: 400px; object-fit: cover; }

/* Séparateurs de colonnes en rouge */
.border-end { border-right-color: red !important; }

/* Sous-titres de l'article en rouge */
article h3 { color: red; border-left: 4px solid red; padding-left: 0.75rem; }

/* Bouton Connexion en rouge */
header .btn-dark { background-color: red; border-color: red; }
header .btn-dark:hover { background-color: darkred; border-color: darkred; }

/* Bouton Menu en rouge */
header .btn-outline-dark { color: red; border-color: red; }

/* Gadget vote : encadré rouge */
aside .border-dark { border-color: red !important; }
aside h6 { color: red; }

/* Sidebars du formulaire */
aside.bg-light { border-color: red !important; border-left: 4px solid red; }
aside.bg-light h5 { color: red; }
aside.bg-light hr { border-color: red; opacity: 1; }

/* Preview zone pour custom.html */
#preview-box { border: 2px dashed red; padding: 20px; min-height: 400px; }

/* Header search input */
.search-input { width: 160px; }