
:root {
    --primary: #0D0D0D;
    --secondary: #1A1A1A;
    --accent: #C5A028;
    --accent-light: #E2C14D;
    --text-light: #F5F5F5;
    --text-dark: #000000;
    --glass: rgba(13, 13, 13, 0.8);
    --border-radius: 8px;
    --transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Inter', sans-serif;
}

body {
    background-color: var(--primary);
    color: var(--text-light);
    line-height: 1.6;
    overflow-x: hidden;
    width: 100%;
}

/* Tipografía Responsiva Automática */
.section-title { 
    font-size: clamp(2rem, 8vw, 3.5rem); 
    color: var(--accent); 
    text-align: center; 
    margin: clamp(4rem, 15vh, 8rem) 0 clamp(2rem, 8vh, 4rem); 
    font-weight: 800;
    letter-spacing: -1px;
    padding: 0 5%;
}

.reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s ease; }
.reveal.active { opacity: 1; transform: translateY(0); }

/* Scrollbar Premium */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--primary); }
::-webkit-scrollbar-thumb { background: var(--accent); border-radius: 10px; }

/* Utility Classes */
.hide-mobile { display: inline-block; }

@media (max-width: 768px) {
    .hide-mobile { display: none !important; }
}
