/*
Theme Name: Neve Child
Theme URI: https://themeisle.com/themes/neve/
Template: neve
Author: ThemeIsle
Author URI: https://themeisle.com
Description: Neve is a next-generation, ultra-fast WordPress theme designed for top performance, SEO, and Core Web Vitals. Its lightweight codebase and small size ensure minimal overhead and lightning-fast load times. Fully compatible with the block editor, popular page builders (Elementor, Bricks, Oxygen etc), and WooCommerce, it’s perfect for blogs, small businesses, agencies, portfolios, and online stores. With responsive design, multilingual translations, and easy customization options, Neve empowers you to create a future-proof, high-ranking online presence. Discover everything Neve has to offer and explore our powerful premium version at https://themeisle.com/themes/neve/.
Tags: blog,custom-logo,e-commerce,rtl-language-support,grid-layout,one-column,two-columns,custom-background,custom-colors,custom-header,custom-menu,featured-image-header,featured-images,flexible-header,full-width-template,sticky-post,theme-options,threaded-comments,translation-ready,accessibility-ready,wide-blocks,block-styles,footer-widgets,portfolio,left-sidebar,right-sidebar
Version: 4.2.3.1777237361
Updated: 2026-04-26 21:02:41

*/

/* =============================================
   ESTILOS EXTRAÍDOS Y ORGANIZADOS
   ============================================= */

body {
  font-family: Arial, sans-serif;
  color: #333;
  line-height: 1.6;
  margin: 0;
}

/* ====================== HERO SECTION ====================== */
.hero-section {
  position: relative;
  text-align: center;
}

.hero-section img {
  width: 100% !important;
  height: 100vh !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block;
}

/* Caja */
.hero-box {
  position: absolute !important;
  top: 65% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  background: rgba(255,255,255,0.95) !important;
  padding: 35px !important;
  border-radius: 8px !important;
  max-width: 750px !important;
  box-shadow: 0 5px 20px rgba(0,0,0,0.15) !important;
  width: 90% !important;
}

/* Botones - Muy fuerte */
.hero-buttons a,
.hero-buttons .btn-contactar,
.hero-buttons .btn-valoracion {
  padding: 16px 28px !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  display: inline-block !important;
  min-width: 160px !important;
  font-family: Arial, sans-serif !important;
  transition: all 0.3s ease !important;
}

.hero-buttons a:first-child {
  background: #1e73be !important;
  color: white !important;
}

.hero-buttons a:last-child {
  background: #1e7a4f !important;
  color: white !important;
}

/* Hover */
.hero-buttons a:hover {
  transform: scale(1.08) !important;
  box-shadow: 0 10px 25px rgba(0,0,0,0.25) !important;
}

/* Texto */
.hero-box h1 {
  font-size: 34px !important;
  margin-top: 0 !important;
  font-family: Arial, sans-serif !important;
}

.hero-box p {
  font-size: 18px !important;
  font-family: Arial, sans-serif !important;
}

/* Responsive */
@media (max-width: 768px) {
  .hero-section img {
    height: 85vh !important;
  }
  
  .hero-box {
    position: static !important;
    transform: none !important;
    margin: 20px auto !important;
    padding: 30px 20px !important;
    width: 95% !important;
  }
  
  .hero-box h1 {
    font-size: 28px !important;
  }
}
/* ====================== FEDERACIONES ====================== */
.logos-federaciones {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  align-items: center;
  gap: 40px;
  margin-top: 30px;
}

.logos-federaciones img {
  width: 100%;
  max-height: 100px;
  object-fit: contain;
  margin: auto;
  filter: grayscale(100%);
  opacity: 0.7;
  transition: all 0.3s ease;
}

.logos-federaciones img:hover {
  filter: grayscale(0%);
  opacity: 1;
  transform: scale(1.05);
}

@media (max-width: 600px) {
  .logos-federaciones {
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
  }
}

/* ==================== CONFIANZA ==================== */
.confianza-section {
  padding: 60px 20px;
  background: #f5f7fa;
}

.confianza-section .section-inner {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 40px;
  align-items: center;
}

/* ==================== EQUIPO ==================== */
.equipo-section * {
  box-sizing: border-box;
}

.equipo-container {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 50px 0;
  text-align: center;
}

.equipo-title {
  color: #0077b6;
  margin-bottom: 40px;
}

.equipo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 30px;
}

.equipo-card {
  background-color: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 6px 20px rgba(0,0,0,0.1);
  transition: all 0.3s;
}

.equipo-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.15);
}

.equipo-card img {
  width: 100%;
  height: 280px;
  object-fit: cover;
  object-position: top;
}

.equipo-info {
  padding: 20px;
}

.equipo-info h3 {
  color: #0077b6;
  margin-bottom: 10px;
}

.equipo-info p {
  margin-bottom: 10px;
  font-size: 14px;
  color: #555;
}

.equipo-info a {
  display: inline-block;
  margin-top: 10px;
  font-size: 14px;
  color: #0077b6;
  border: 1px solid #0077b6;
  padding: 6px 12px;
  border-radius: 6px;
}

.equipo-boton a {
  background: #1e73be;
  color: white;
  padding: 12px 20px;
  border-radius: 5px;
  display: inline-block;
}

/* ==================== MULTIDISCIPLINAR ==================== */
.multidisciplinar-section {
  padding: 60px 20px;
  background: #f5f7fa;
}

.multidisciplinar-section .section-inner {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 40px;
  align-items: center;
}

/* Responsive */
@media (max-width: 768px) {
  .hero-box {
    position: static;
    transform: none;
    box-shadow: none;
    margin-top: 20px;
    padding: 25px;
  }
}

@media (max-width: 600px) {
  .logos-federaciones {
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
  }
}

/* =============================================
   SECCIÓN: Eventos Deportivos
   ============================================= */

.eventos {
  padding: 60px 20px;
  background: #f7f9fc;
  text-align: center;
}

.eventos .container {
  max-width: 900px;
  margin: auto;
}

.eventos .intro {
  color: #555;
  margin-bottom: 30px;
  font-size: 1.1rem;
}

.eventos .slider {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
}

.eventos .slide {
  display: none;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

.eventos .slide.active {
  display: block;
}

.eventos .slide img {
  width: 100%;
  height: 500px;
  object-fit: cover;
  border-radius: 12px 12px 0 0;
}

.eventos .info {
  padding: 20px;
  text-align: left;
}

.eventos .info h3 {
  margin-bottom: 8px;
  color: #1a2a44;
  font-size: 1.35rem;
}

.eventos .info p {
  color: #555;
  font-size: 0.98rem;
  line-height: 1.5;
}

/* Botones del slider */
.eventos .prev,
.eventos .next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: #1a2a44;
  color: white;
  border: none;
  padding: 12px 16px;
  cursor: pointer;
  border-radius: 50%;
  font-size: 20px;
  z-index: 10;
  transition: all 0.3s ease;
}

.eventos .prev {
  left: 15px;
}

.eventos .next {
  right: 15px;
}

.eventos .prev:hover,
.eventos .next:hover {
  background: #2e4a7d;
  transform: translateY(-50%) scale(1.1);
}

/* Responsive */
@media (max-width: 768px) {
  .eventos .slide img {
    height: 380px;
  }
  
  .eventos .prev,
  .eventos .next {
    padding: 10px 14px;
    font-size: 18px;
  }
}