/*
Theme Name: Straburo Theme
Theme URI: https://straburo.fr/
Author: Antigravity
Description: Thème WordPress premium, moderne et réactif pour Straburo Alsace Agencement. Supporte le Dark Mode, les animations haut de gamme et dispose de modèles personnalisés pour le portfolio et les services.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: straburo
*/

/* --- VARIABLES DE CONTEXTE ET THEMES --- */
:root {
    --primary: #c21e1e;
    --primary-hover: #a11818;
    --background: #fcfbfb;
    --surface: #ffffff;
    --border: #e5e1e1;
    --text-main: #000000;
    --text-body: #111827;
    --text-muted: #4b5563;
    --text-slate: #0f172a;
    --shadow-premium: 0 10px 40px -10px rgba(0, 0, 0, 0.1);
    --font-sans: 'Inter', sans-serif;
    --font-serif: 'Playfair Display', serif;
}

html.dark {
    --background: #171111;
    --surface: #261c1c;
    --border: #382929;
    --text-main: #ffffff;
    --text-body: #cbd5e1;
    --text-muted: #94a3b8;
    --text-slate: #f1f5f9;
    --shadow-premium: 0 10px 40px -10px rgba(0, 0, 0, 0.5);
}

/* --- STYLES GENERAUX DE BASE --- */
* { 
    box-sizing: border-box; 
    margin: 0; 
    padding: 0; 
}

html { 
    scroll-behavior: smooth; 
}

body { 
    background-color: var(--background); 
    font-family: var(--font-sans); 
    color: var(--text-slate); 
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    transition: background-color 0.2s, color 0.2s;
}

.fill-1 { 
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24; 
}

img { 
    max-width: 100%; 
    height: auto; 
    display: block; 
}

a { 
    text-decoration: none; 
    color: inherit; 
}

button { 
    background: none; 
    border: none; 
    cursor: pointer; 
    font-family: inherit; 
}

::-webkit-scrollbar { 
    width: 8px; 
}

::-webkit-scrollbar-thumb { 
    background: var(--primary); 
    border-radius: 10px; 
}

/* --- STRUCTURES ET UTILITAIRES --- */
.container { 
    max-width: 1280px; 
    margin: 0 auto; 
    padding: 0 1rem; 
}

.hidden { 
    display: none !important; 
}

.hover-lift { 
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease; 
}

.hover-lift:hover { 
    transform: translateY(-6px); 
}

/* Utilitaires spécifiques aux grilles ou alignements réutilisables */
.text-center { 
    text-align: center; 
}

@media (min-width: 1024px) {
    .container { 
        padding: 0 2rem; 
    }
}
