:root{
--text:#f5f5f5;
--muted:#bdbdbd;

--primary:#ff3d00;     /* rojo energía */
--primary-2:#ff9100;   /* naranja fuego */
--accent:#76ff03;      /* verde adrenalina */

--success:#00c853;

--line:rgba(255,255,255,.12);
--shadow:0 20px 45px rgba(0,0,0,.35);
--radius:22px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
/* body{font-family:'Barlow',sans-serif;background:radial-gradient(circle at top left, rgba(0,212,255,.14), transparent 30%),radial-gradient(circle at top right, rgba(255,123,0,.16), transparent 24%),linear-gradient(180deg, #0b1020, #0d1429 45%, #0a1226);color:var(--text);overflow-x:hidden}*/
body{
	font-family:'Barlow',sans-serif;
	background:
	linear-gradient(180deg,#0f0f0f,#141414 40%,#1c1c1c),
	radial-gradient(circle at 30% 20%, rgba(255,61,0,.15), transparent 30%),
	radial-gradient(circle at 70% 30%, rgba(255,145,0,.15), transparent 30%);
	color:var(--text);
	overflow-x:hidden;
}

h1,h2,h3,h4,h5{
	font-family:'Bebas Neue', sans-serif;
	letter-spacing:1px;
	text-transform:uppercase;
}
p{color:var(--muted)} a{text-decoration:none}

.pattern-section{
  position:relative; overflow:hidden;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,183,3,.08), transparent 18%),
    radial-gradient(circle at 80% 30%, rgba(0,212,255,.08), transparent 18%),
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(11,16,32,.96), rgba(10,18,38,.96));
  background-size: 600px 600px, 700px 700px, 28px 28px, 28px 28px, auto;
  background-position: center center;
}
.pattern-section:after{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.08;
  background-image: radial-gradient(rgba(255,255,255,.35) 0.6px, transparent 0.6px);
  background-size:12px 12px;
  mix-blend-mode:soft-light;
}
.pattern-section > .container{position:relative; z-index:1}
.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
.navbar{background:rgba(8,12,26,.72)!important;backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07);transition:.25s ease}.navbar.scrolled{background:rgba(8,12,26,.92)!important;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.navbar-brand{font-family:'Orbitron',sans-serif;font-weight:800;color:#fff!important;display:flex;align-items:center;gap:.75rem}
.brand-mark{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 10px 20px rgba(255,123,0,.35);color:#111}
.brand-text{display:flex;flex-direction:column;line-height:1}.brand-text strong{color:#fff;font-size:1rem}.brand-text small{color:var(--primary-2);font-weight:700;letter-spacing:.6px}
.nav-link{color:#e8eeff!important;font-weight:600;opacity:.9}.nav-link:hover{color:var(--primary-2)!important}
.btn-warrior{background:linear-gradient(135deg,var(--primary),var(--primary-2));border:0;color:#101010;font-weight:800;border-radius:999px;padding:.9rem 1.35rem;box-shadow:0 12px 30px rgba(255,123,0,.24);transition:.2s ease}.btn-warrior:hover{transform:translateY(-2px);color:#101010}
.btn-ghost{border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:999px;padding:.9rem 1.35rem;font-weight:700;background:rgba(255,255,255,.04)}.btn-ghost:hover{border-color:var(--accent);color:#fff;background:rgba(0,212,255,.08)}
.floating-socials{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:1035;display:flex;flex-direction:column;gap:.65rem}.floating-socials a{width:48px;height:48px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(12px);box-shadow:var(--shadow);transition:.2s ease}.floating-socials a:hover{transform:translateY(-2px) scale(1.04);color:var(--primary-2)}
.hero{padding-top:70px}.carousel-item{min-height:88vh;overflow:hidden;border-radius:0 0 34px 34px}.hero-slide{min-height:90vh;display:flex;align-items:center;position:relative;background-size:cover;background-position:center;padding-top:15px;}.hero-slide:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg, rgba(4,8,18,.86), rgba(5,8,20,.55) 55%, rgba(4,8,18,.8)), linear-gradient(180deg, rgba(255,123,0,.08), rgba(0,212,255,.06))}
.hero-content{position:relative;z-index:2;max-width:720px}.eyebrow{display:inline-flex;align-items:center;gap:.55rem;padding:.55rem .9rem;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#fff;font-weight:700;margin-bottom:1rem;backdrop-filter:blur(8px)}
.hero h1{font-size:clamp(2.4rem,5vw,5rem);line-height:.97;margin-bottom:1rem}.hero p.lead{font-size:1.15rem;max-width:640px}
.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}.hero-stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:1rem;backdrop-filter:blur(10px)}.hero-stat strong{display:block;font-size:1.35rem;color:#fff}
section{padding:88px 0}.section-heading{max-width:760px;margin-bottom:2.5rem}.section-heading .mini{color:var(--primary-2);font-weight:800;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:.6rem;display:inline-block}
.glass-card{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.045));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.info-card,.timeline-card,.schedule-card,.sponsor-card{padding:1.4rem;transition:.22s ease;height:100%}.info-card:hover,.timeline-card:hover,.obstacle-card:hover,.sponsor-card:hover{transform:translateY(-5px)}
.info-icon{width:58px;height:58px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(255,123,0,.2),rgba(255,183,3,.18));color:var(--primary-2);border:1px solid rgba(255,183,3,.22);margin-bottom:1rem;font-size:1.25rem}
.about-banner{padding:1.6rem;border-radius:28px;background:linear-gradient(135deg,rgba(0,212,255,.09),rgba(255,123,0,.09));border:1px solid rgba(255,255,255,.12)}
.event-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.mini-stat{padding:1rem 1.15rem;border-radius:20px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}.mini-stat strong{display:block;font-size:1.25rem;color:#fff}
.timeline-index{width:46px;height:46px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(0,212,255,.18),rgba(255,123,0,.18));color:#fff;font-weight:800;margin-bottom:1rem;border:1px solid rgba(255,255,255,.14)}
.testimonial-avatar{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),var(--primary));color:#111;font-weight:800}
.race-type-card{position:relative;padding:1.5rem;height:100%}.race-badge{position:absolute;top:18px;right:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:.4rem .75rem;border-radius:999px;font-size:.85rem;font-weight:700;color:#fff}
.price{font-size:2.25rem;color:#fff;font-family:'Orbitron',sans-serif;margin-bottom:.5rem}.feature-list li{margin-bottom:.65rem;color:var(--muted)}.feature-list i{color:var(--success);margin-right:.55rem}
.obstacle-top{height:110px;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;background:linear-gradient(135deg,rgba(255,123,0,.35),rgba(0,212,255,.2));border-bottom:1px solid rgba(255,255,255,.08)}
.schedule-card{text-align:center}.schedule-card strong{display:block;color:#fff;font-size:1.35rem;margin-bottom:.6rem;font-family:'Orbitron',sans-serif}
.gallery-item{position:relative;display:block;overflow:hidden;border-radius:24px}.gallery-item img{width:100%;height:320px;object-fit:cover;display:block;transition:.35s ease}.gallery-item span{position:absolute;right:18px;bottom:18px;width:48px;height:48px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);backdrop-filter:blur(10px);color:#fff;border:1px solid rgba(255,255,255,.16)}.gallery-item:hover img{transform:scale(1.06)}
.blog-card img{width:100%;height:240px;object-fit:cover;border-radius:24px 24px 0 0}.blog-card .content{padding:1.3rem}
.sponsor-logo{height:74px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-weight:800;background:rgba(255,255,255,.05);border:1px dashed rgba(255,255,255,.18);color:#dfe8ff;padding:1.4rem}
.contact-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:1.25rem}.form-control,.form-select{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:16px;padding:.9rem 1rem}.form-select option{color:#111}.form-control::placeholder{color:#b6c4e2}.form-control:focus,.form-select:focus{background:rgba(255,255,255,.07);border-color:rgba(0,212,255,.55);box-shadow:0 0 0 .2rem rgba(0,212,255,.12);color:#fff}
.cart-badge{position:absolute;top:-7px;right:-9px;min-width:21px;height:21px;padding:0 6px;background:var(--primary);color:#111;font-size:.75rem;border-radius:999px;display:flex;align-items:center;justify-content:center;font-weight:800}
.cart-item{display:grid;grid-template-columns:1fr auto;gap:.5rem;padding:.9rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.cart-item:last-child{border-bottom:0}
.countdown-box{padding:1rem;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);text-align:center}.countdown-box strong{font-size:1.6rem;display:block;color:#fff;font-family:'Orbitron',sans-serif}
.checkout-page .pt-hero{padding-top:120px}
.checkout-summary .cart-item-mini{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.08)}
footer{border-top:1px solid rgba(255,255,255,.08);padding:28px 0 48px;background:rgba(3,8,18,.3)}
@media (max-width:991.98px){.floating-socials{right:12px}.hero-stats,.event-strip,.contact-wrap{grid-template-columns:1fr}.carousel-item,.hero-slide{min-height:82vh}}
@media (max-width:767.98px){.floating-socials{flex-direction:row;left:50%;right:auto;top:auto;bottom:14px;transform:translateX(-50%)}section{padding:72px 0}.hero-content .d-flex{flex-direction:column;align-items:stretch!important}.hero h1{font-size:2.2rem}.gallery-item img{height:250px}}
