:root {
    --bg-main: #080808;
    --bg-card: #111111;
    --silver: #e0e0e0;
    --metal-gradient: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    --blue-accent: #3498db; /* Para tarjeta Estándar */
    --purple-accent: #9b59b6; /* Para tarjeta Rápida */
    --orange-accent: #e67e22; /* Para tarjeta Express */
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }

body {
    background-color: var(--bg-main);
    color: var(--silver);
    font-family: 'Inter', sans-serif;
    overflow-x: hidden;
}

h1, h2, h3, h4 { font-family: 'Teko', sans-serif; text-transform: uppercase; letter-spacing: 1px; }

/* NAV */
nav {
    display: flex; justify-content: space-between; align-items: center;
    padding: 20px 5%; position: sticky; top: 0; z-index: 999;
    background: rgba(8,8,8,0.95); border-bottom: 1px solid #222;
}
.logo { font-size: 2rem; font-weight: 700; line-height: 1; color: white;}
.logo-sub { font-size: 0.7rem; letter-spacing: 4px; color: #888; display: block; margin-left: 2px;}
.metal-dot { color: #aaa; }
.nav-links { margin-left: auto; margin-right: 40px; }
.nav-links a { color: #888; text-decoration: none; margin: 0 15px; transition: 0.3s; font-size: 0.9rem;}
.nav-links a:hover { color: white; }

.btn-metal-solid {
    background: var(--metal-gradient); color: #000; padding: 10px 30px;
    font-family: 'Teko'; font-size: 1.3rem; font-weight: 600; text-decoration: none;
    border-radius: 2px; transition: 0.3s; display: inline-block; border: none; cursor: pointer;
}
.btn-metal-solid:hover { transform: scale(1.05); box-shadow: 0 0 20px rgba(255,255,255,0.4); }

/* HERO */
.hero {
    height: 90vh; 
    display: flex; 
    align-items: center; 
    padding: 0 10%; 
    position: relative;
    
    /* CAMBIO IMPORTANTE 1: */
    /* Agregamos 'center top' para anclar la imagen arriba y que no corte la cabeza */
    /* Quitamos el 'fixed' si sientes que se mueve raro en celular, pero por ahora déjalo */
    background: url('fondo.png') center top / cover no-repeat; 
}

.overlay {
    position: absolute; top:0; left:0; width:100%; height:100%;
    
    /* CAMBIO IMPORTANTE 2: */
    /* Ajusté el degradado: Negro sólido al inicio, y CASI invisible al final */
    /* Esto aclara mucho la foto del jugador */
    background: linear-gradient(80deg, 
        #050505 0%, 
        rgba(5,5,5,0.9) 35%, 
        rgba(5,5,5,0.2) 100%
    );
}
.hero-content { position: relative; z-index: 2; max-width: 700px; }
.badge-tech { border: 1px solid #444; display: inline-block; padding: 5px 15px; font-size: 0.8rem; color: #ccc; margin-bottom: 20px; letter-spacing: 2px; }
.hero h1 { font-size: 5rem; line-height: 0.9; margin-bottom: 20px; color: white; }
.metal-text { background: var(--metal-gradient); -webkit-background-clip: text; color: transparent; }
.hero p { color: #888; font-size: 1.2rem; margin-bottom: 40px; max-width: 700px; }
.hero-stats { display: flex; gap: 20px; margin-bottom: 40px; }
.stat strong { color: white; font-family: 'Teko'; font-size: 1.5rem; }
.divider { width: 1px; height: 30px; background: #333; }

/* SECCIONES GENERALES */
.section-padding { padding: 100px 5%; }
.bg-darker { background-color: #050505; }
.text-center { text-align: center; margin-bottom: 60px; }
.section-header h2 { font-size: 3.5rem; margin-bottom: 10px; color: white;}
.section-header p { color: #888; }

/* NIVELES */
.grid-levels { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 30px; }
.level-card { background: #111; border: 1px solid #333; padding: 30px; position: relative; transition: transform 0.1s; transform-style: preserve-3d; }
.level-header h3 { font-size: 2.5rem; color: white; margin: 0; }
.badge-delivery { font-size: 0.8rem; color: #888; border: 1px solid #444; padding: 2px 8px; border-radius: 4px; }
.btn-toggle { background: transparent; border: 1px solid #555; color: white; width: 100%; padding: 10px; margin-top: 15px; cursor: pointer; transition: 0.3s; }
.btn-toggle:hover { background: #222; border-color: white; }
.level-details { max-height: 0; overflow: hidden; transition: max-height 0.5s ease-out; background: #0a0a0a; }
.level-details ul { padding: 20px; list-style: none; border-top: 1px solid #333; }
.level-details li { margin-bottom: 10px; font-size: 0.9rem; color: #ccc; }
.level-details i { color: white; margin-right: 10px; }
.featured { border: 1px solid #aaa; box-shadow: 0 0 20px rgba(255,255,255,0.05); }
.featured-tag { position: absolute; top: 0; right: 0; background: white; color: black; font-weight: 700; font-size: 0.7rem; padding: 5px 15px; }

/* TIEMPOS DE ENTREGA */
.grid-delivery { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 30px; max-width: 1000px; margin: 0 auto; }
.delivery-card { background: #111; border: 1px solid #333; padding: 30px; text-align: center; border-radius: 10px; transition: 0.3s; }
.delivery-card:hover { transform: translateY(-10px); }
.icon-box { font-size: 2.5rem; margin-bottom: 20px; }
.delivery-card h3 { font-size: 2rem; margin-bottom: 5px; color: white; }
.days { color: #888; margin-bottom: 20px; font-weight: 600; }
.cost { padding: 10px; border-radius: 5px; font-weight: 700; color: #000; }
.cost small { font-weight: 400; font-size: 0.8rem; }

/* Colores especificos de entrega */
.standard { border-top: 4px solid var(--blue-accent); }
.standard .icon-box { color: var(--blue-accent); }
.standard .cost { background: rgba(52, 152, 219, 0.2); color: var(--blue-accent); }

.fast { border-top: 4px solid var(--purple-accent); }
.fast .icon-box { color: var(--purple-accent); }
.fast .cost { background: rgba(155, 89, 182, 0.2); color: var(--purple-accent); }

.express { border-top: 4px solid var(--orange-accent); }
.express .icon-box { color: var(--orange-accent); }
.express .cost { background: rgba(230, 126, 34, 0.2); color: var(--orange-accent); }

/* PROCESO (TIMELINE) */
.timeline { max-width: 800px; margin: 0 auto; position: relative; }
.timeline::before { content: ''; position: absolute; left: 29px; top: 0; height: 100%; width: 2px; background: #333; }
.timeline-item { display: flex; margin-bottom: 40px; position: relative; }
.number { width: 60px; height: 60px; background: #222; border: 2px solid #555; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: 'Teko'; font-size: 1.5rem; color: white; z-index: 2; margin-right: 25px; flex-shrink: 0; }
.timeline-item:hover .number { border-color: white; background: #000; }
.content h3 { font-size: 1.5rem; color: white; margin-bottom: 5px; }
.content p { color: #888; font-size: 0.95rem; }

/* FAQ */
.faq-container { max-width: 800px; margin: 0 auto; }
details { background: #111; margin-bottom: 15px; padding: 20px; border: 1px solid #222; cursor: pointer; border-radius: 5px; transition: 0.3s; }
details:hover { border-color: #555; }
summary { font-weight: 600; list-style: none; display: flex; justify-content: space-between; align-items: center; color: white; }
summary::after { content: '+'; font-size: 1.5rem; font-weight: 300; }
details[open] summary::after { content: '-'; }
details p { margin-top: 15px; color: #888; line-height: 1.6; }

/* FOOTER COMPLETO */
footer { background: #000; padding: 80px 5% 20px; border-top: 1px solid #222; }
.footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 40px; margin-bottom: 60px; }
.footer-col h3 { color: white; font-size: 2rem; margin-bottom: 15px; }
.footer-col h4 { color: white; margin-bottom: 20px; font-family: 'Inter'; font-size: 1rem; font-weight: 600; }
.footer-col a, .footer-col p { display: block; color: #666; text-decoration: none; margin-bottom: 10px; font-size: 0.9rem; transition: 0.3s; }
.footer-col a:hover { color: white; padding-left: 5px; }
.socials a { display: inline-block; font-size: 1.2rem; margin-right: 15px; color: #888; }
.socials a:hover { color: white; }
.footer-bar { border-top: 1px solid #111; padding-top: 20px; text-align: center; color: #333; font-size: 0.8rem; }

/* CTA FINAL */
.final-cta {
    background: url('fondo2.png') center/cover fixed;
    padding: 100px 5%; text-align: center; position: relative;
}
.final-cta::before { content: ''; position: absolute; top:0; left:0; width:100%; height:100%; background: rgba(14, 14, 14, 0.85); }
.cta-content { position: relative; z-index: 2; max-width: 700px; margin: 0 auto; }
.cta-content h2 { font-size: 3.5rem; margin-bottom: 20px; color: white; }
.btn-metal-solid.large { padding: 15px 40px; font-size: 1.5rem; margin-top: 20px; }

@media (max-width: 768px) {
    .nav-links { display: none; }
    .hero h1 { font-size: 3.5rem; }
    .timeline::before { left: 29px; }
}
.my-logo {
    height: 100px; /*
    width: auto;  
    display: block;
}