/*
Theme Name:  Infoconectados
Theme URI:   https://infoconectados.com
Description: Tema oficial de Infoconectados. Fraunces + Outfit. Paleta azul/crema/naranja. Rufino, Santa Fe.
Version:     2.0.0
Author:      Infoconectados
Author URI:  https://infoconectados.com
Text Domain: infoconectados
Tags:        blog, custom-menu, featured-images, full-width-template
*/

/* ════════════════════════════════════════════════════════════
   VARIABLES & RESET
════════════════════════════════════════════════════════════ */
:root {
  --azul:        #0E1F3D;
  --azul-med:    #1B3A6B;
  --naranja:     #D4622A;
  --naranja-osc: #B8501F;
  --crema:       #F5F0E8;
  --crema-osc:   #EDE7D9;
  --arena:       #C8B89A;
  --texto:       #1A1610;
  --gris:        #6B6357;
  --blanco:      #FDFBF8;
  --verde:       #2A5C45;
  --ff-titulo:   'Fraunces', Georgia, serif;
  --ff-cuerpo:   'Outfit', system-ui, sans-serif;
  --r:    12px;
  --r-sm: 8px;
  --sombra:    0 2px 24px rgba(14,31,61,0.08);
  --sombra-md: 0 8px 48px rgba(14,31,61,0.13);
  --max: 1100px;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: var(--ff-cuerpo);
  background: var(--crema);
  color: var(--texto);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }

/* ════════════════════════════════════════════════════════════
   NAVEGACIÓN
════════════════════════════════════════════════════════════ */
.site-nav {
  background: var(--azul);
  padding: 0 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 64px;
  position: sticky;
  top: 0;
  z-index: 1000;
  border-bottom: 3px solid var(--naranja);
}
.nav-logo { font-family: var(--ff-titulo); font-weight: 900; font-size: 1.2rem; color: white; letter-spacing: -0.02em; }
.nav-logo span { color: var(--naranja); }
.nav-menu { display: flex; align-items: center; gap: 28px; list-style: none; }
.nav-menu a { color: rgba(255,255,255,0.7); font-size: 0.88rem; font-weight: 500; text-decoration: none; transition: color .2s; }
.nav-menu a:hover, .nav-menu .current-menu-item a { color: white; }
.nav-cta { background: var(--naranja) !important; color: white !important; padding: 8px 18px !important; border-radius: var(--r-sm) !important; font-weight: 600 !important; }
.nav-cta:hover { background: var(--naranja-osc) !important; }
.nav-hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; background: none; border: none; padding: 4px; }
.nav-hamburger span { display: block; width: 24px; height: 2px; background: white; border-radius: 2px; transition: all .3s; }

/* ════════════════════════════════════════════════════════════
   HERO
════════════════════════════════════════════════════════════ */
.hero { background: var(--azul); padding: 96px 32px 100px; position: relative; overflow: hidden; }
.hero::before { content:''; position:absolute; top:-120px; right:-120px; width:480px; height:480px; border-radius:50%; background:radial-gradient(circle,rgba(212,98,42,0.18) 0%,transparent 70%); pointer-events:none; }
.hero::after { content:''; position:absolute; bottom:0; left:0; right:0; height:64px; background:linear-gradient(to top,var(--crema),transparent); }
.hero-inner { max-width: 820px; margin: 0 auto; position: relative; z-index: 1; }
.hero-tag { display:inline-flex; align-items:center; gap:8px; background:rgba(212,98,42,0.18); border:1px solid rgba(212,98,42,0.35); color:#E8915C; font-size:0.75rem; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; padding:5px 14px; border-radius:20px; margin-bottom:24px; }
.hero-tag::before { content:'◉'; font-size:0.6rem; }
.hero h1 { font-family:var(--ff-titulo); font-size:clamp(2.8rem,6vw,5rem); font-weight:900; color:white; line-height:1.0; margin-bottom:24px; letter-spacing:-0.03em; }
.hero h1 em { font-style:italic; font-weight:400; color:var(--naranja); }
.hero-desc { font-size:1.1rem; color:rgba(255,255,255,0.72); max-width:580px; line-height:1.75; margin-bottom:40px; }
.hero-btns { display:flex; gap:12px; flex-wrap:wrap; }

/* ════════════════════════════════════════════════════════════
   BOTONES
════════════════════════════════════════════════════════════ */
.btn-prim { background:var(--naranja); color:white; padding:13px 28px; border-radius:var(--r-sm); font-weight:600; font-size:0.95rem; text-decoration:none; transition:all .2s; border:2px solid var(--naranja); display:inline-block; }
.btn-prim:hover { background:var(--naranja-osc); border-color:var(--naranja-osc); transform:translateY(-2px); box-shadow:0 6px 20px rgba(212,98,42,0.35); }
.btn-sec { background:transparent; color:rgba(255,255,255,0.85); padding:13px 28px; border-radius:var(--r-sm); font-weight:500; font-size:0.95rem; text-decoration:none; border:2px solid rgba(255,255,255,0.25); transition:all .2s; display:inline-block; }
.btn-sec:hover { border-color:rgba(255,255,255,0.6); color:white; }
.btn-azul { background:var(--azul); color:white; padding:13px 28px; border-radius:var(--r-sm); font-weight:600; font-size:0.95rem; text-decoration:none; transition:all .2s; display:inline-block; }
.btn-azul:hover { background:var(--azul-med); transform:translateY(-2px); }
.btn-naranja { background:var(--naranja); color:white; padding:13px 28px; border-radius:var(--r-sm); font-weight:600; font-size:0.95rem; text-decoration:none; transition:all .2s; display:inline-block; }
.btn-naranja:hover { background:var(--naranja-osc); transform:translateY(-2px); }
.btn-ghost { background:transparent; color:var(--azul); padding:13px 28px; border-radius:var(--r-sm); font-weight:600; font-size:0.95rem; text-decoration:none; border:2px solid var(--arena); transition:all .2s; display:inline-block; }
.btn-ghost:hover { border-color:var(--azul); }
.btn-sm { padding:8px 18px !important; font-size:0.84rem !important; }

/* ════════════════════════════════════════════════════════════
   LAYOUT
════════════════════════════════════════════════════════════ */
.seccion { max-width:var(--max); margin:0 auto; padding:80px 32px; }
.seccion-fondo { background:var(--blanco); padding:80px 32px; }
.seccion-fondo .seccion-inner { max-width:var(--max); margin:0 auto; }
.seccion-azul { background:var(--azul); padding:80px 32px; }
.seccion-azul .seccion-inner { max-width:var(--max); margin:0 auto; }
.seccion-crema { background:var(--crema-osc); padding:80px 32px; }
.seccion-crema .seccion-inner { max-width:var(--max); margin:0 auto; }

/* ════════════════════════════════════════════════════════════
   TIPOGRAFÍA
════════════════════════════════════════════════════════════ */
.pretitulo { display:block; font-size:0.72rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--naranja); margin-bottom:12px; }
.titulo-seccion { font-family:var(--ff-titulo); font-size:clamp(1.9rem,3.5vw,2.8rem); font-weight:900; color:var(--azul); line-height:1.1; margin-bottom:16px; letter-spacing:-0.02em; }
.titulo-seccion.blanco { color:white; }
.subtitulo-seccion { font-size:1rem; color:var(--gris); max-width:600px; line-height:1.7; }
.subtitulo-seccion.blanco { color:rgba(255,255,255,0.65); }
.seccion-header { display:flex; justify-content:space-between; align-items:flex-end; flex-wrap:wrap; gap:20px; margin-bottom:48px; padding-bottom:24px; border-bottom:1px solid var(--crema-osc); }
.seccion-header.blanco { border-bottom-color:rgba(255,255,255,0.12); }
.ver-todos { font-size:0.86rem; font-weight:600; color:var(--naranja); text-decoration:none; white-space:nowrap; }
.ver-todos:hover { text-decoration:underline; }

/* ════════════════════════════════════════════════════════════
   TILES HOME
════════════════════════════════════════════════════════════ */
.tiles-home { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; position:relative; z-index:2; padding:0 32px; max-width:var(--max); margin:0 auto; }
.tile-home { background:var(--blanco); border-radius:var(--r); padding:32px 28px; box-shadow:var(--sombra-md); border-top:4px solid var(--naranja); transition:transform .2s; }
.tile-home:hover { transform:translateY(-4px); }
.tile-home-ico { font-size:2rem; margin-bottom:14px; display:block; }
.tile-home h3 { font-family:var(--ff-titulo); font-size:1.2rem; color:var(--azul); font-weight:700; margin-bottom:8px; }
.tile-home p { font-size:0.88rem; color:var(--gris); line-height:1.6; margin-bottom:18px; }
.tile-home a { font-size:0.85rem; font-weight:600; color:var(--naranja); }
.tile-home a:hover { text-decoration:underline; }

/* Sección con fondo azul tocando el hero */
.hero-tiles-wrapper { background:var(--azul); padding:0 0 48px; }
.hero-tiles-wrapper .tiles-home { padding-top:0; }

/* ════════════════════════════════════════════════════════════
   NOTICIAS
════════════════════════════════════════════════════════════ */
.noticias-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.noticia-card { background:var(--blanco); border-radius:var(--r); overflow:hidden; box-shadow:var(--sombra); transition:transform .2s,box-shadow .2s; }
.noticia-card:hover { transform:translateY(-4px); box-shadow:var(--sombra-md); }
.noticia-card-img { width:100%; height:190px; object-fit:cover; background:var(--crema-osc); display:flex; align-items:center; justify-content:center; color:var(--arena); font-size:2.5rem; }
.noticia-card-body { padding:22px; }
.noticia-cat { font-size:0.7rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--naranja); margin-bottom:8px; display:block; }
.noticia-card-body h3 { font-family:var(--ff-titulo); font-size:1.1rem; font-weight:700; color:var(--azul); margin-bottom:8px; line-height:1.3; }
.noticia-card-body p { font-size:0.84rem; color:var(--gris); line-height:1.6; margin-bottom:14px; }
.noticia-meta { font-size:0.78rem; color:var(--arena); }
.noticia-destacada { grid-column:span 2; display:grid; grid-template-columns:1.2fr 1fr; }
.noticia-destacada .noticia-card-img { height:100%; min-height:220px; }
.noticia-destacada .noticia-card-body h3 { font-size:1.4rem; }

/* ════════════════════════════════════════════════════════════
   SINGLE POST
════════════════════════════════════════════════════════════ */
.single-hero { background:var(--azul); padding:64px 32px 72px; position:relative; overflow:hidden; }
.single-hero::after { content:''; position:absolute; bottom:0; left:0; right:0; height:48px; background:linear-gradient(to top,var(--crema),transparent); }
.single-hero-inner { max-width:760px; margin:0 auto; position:relative; z-index:1; }
.single-hero h1 { font-family:var(--ff-titulo); font-size:clamp(2rem,4vw,3.2rem); font-weight:900; color:white; line-height:1.1; letter-spacing:-0.02em; margin-bottom:20px; }
.single-hero-meta { font-size:0.85rem; color:rgba(255,255,255,0.5); }
.single-hero-meta span { margin-right:16px; }
.single-content { max-width:760px; margin:48px auto; padding:0 32px; }
.single-content .featured-img { width:100%; border-radius:var(--r); margin-bottom:40px; box-shadow:var(--sombra-md); }
.single-content p { font-size:1.05rem; color:var(--texto); line-height:1.85; margin-bottom:24px; }
.single-content h2 { font-family:var(--ff-titulo); font-size:1.7rem; font-weight:700; color:var(--azul); margin:40px 0 16px; }
.single-content h3 { font-family:var(--ff-titulo); font-size:1.3rem; font-weight:700; color:var(--azul); margin:32px 0 12px; }
.single-content blockquote { font-family:var(--ff-titulo); font-size:1.25rem; font-style:italic; color:var(--azul-med); border-left:4px solid var(--naranja); padding:12px 0 12px 24px; margin:32px 0; line-height:1.5; }
.single-content ul, .single-content ol { margin:0 0 24px 24px; color:var(--texto); font-size:1rem; line-height:1.8; }
.single-content a { color:var(--naranja); text-decoration:underline; }

/* ════════════════════════════════════════════════════════════
   PÁGINA
════════════════════════════════════════════════════════════ */
.page-hero { background:var(--azul); padding:64px 32px; position:relative; overflow:hidden; }
.page-hero::after { content:''; position:absolute; bottom:0; left:0; right:0; height:40px; background:linear-gradient(to top,var(--crema),transparent); }
.page-hero-inner { max-width:var(--max); margin:0 auto; position:relative; z-index:1; }
.page-hero h1 { font-family:var(--ff-titulo); font-size:clamp(2rem,4vw,3rem); font-weight:900; color:white; letter-spacing:-0.02em; margin-bottom:12px; }
.page-hero p { color:rgba(255,255,255,0.65); font-size:1rem; }
.page-content { max-width:var(--max); margin:0 auto; padding:56px 32px; }
.page-content p { font-size:1rem; color:var(--texto); line-height:1.8; margin-bottom:20px; }
.page-content h2 { font-family:var(--ff-titulo); font-size:1.6rem; color:var(--azul); margin:32px 0 12px; font-weight:700; }
.page-content ul { margin:0 0 20px 24px; color:var(--gris); line-height:1.8; }

/* ════════════════════════════════════════════════════════════
   TESTIMONIOS
════════════════════════════════════════════════════════════ */
.testimonios-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.testimonio { background:var(--crema); border-radius:var(--r); padding:28px; position:relative; }
.testimonio::before { content:'"'; font-family:var(--ff-titulo); font-size:5rem; color:var(--crema-osc); position:absolute; top:-8px; left:16px; line-height:1; }
.testimonio p { font-size:0.94rem; color:var(--texto); line-height:1.7; font-style:italic; margin-bottom:16px; position:relative; z-index:1; }
.testimonio-autor { display:flex; align-items:center; gap:10px; }
.testimonio-avatar { width:38px; height:38px; border-radius:50%; background:var(--azul-med); display:flex; align-items:center; justify-content:center; color:white; font-weight:700; font-size:0.9rem; flex-shrink:0; overflow:hidden; }
.testimonio-autor strong { display:block; font-size:0.88rem; color:var(--azul); }
.testimonio-autor span { font-size:0.78rem; color:var(--gris); }

/* ════════════════════════════════════════════════════════════
   PASOS
════════════════════════════════════════════════════════════ */
.pasos-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.paso { background:var(--blanco); border-radius:var(--r); padding:28px 22px; box-shadow:var(--sombra); position:relative; transition:transform .2s; }
.paso:hover { transform:translateY(-3px); }
.paso::after { content:'→'; position:absolute; right:-14px; top:50%; transform:translateY(-50%); font-size:1.2rem; color:var(--arena); z-index:1; }
.paso:last-child::after { display:none; }
.paso-n { width:36px; height:36px; background:var(--naranja); color:white; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:0.9rem; margin-bottom:14px; }
.paso h4 { font-family:var(--ff-titulo); font-size:1rem; color:var(--azul); margin-bottom:8px; font-weight:700; }
.paso p { font-size:0.83rem; color:var(--gris); line-height:1.6; }

/* ════════════════════════════════════════════════════════════
   REGLAS (azul)
════════════════════════════════════════════════════════════ */
.reglas-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.regla { padding:28px; border-left:3px solid var(--naranja); background:rgba(255,255,255,0.06); border-radius:0 var(--r) var(--r) 0; transition:background .2s; }
.regla:hover { background:rgba(255,255,255,0.1); }
.regla h4 { font-family:var(--ff-titulo); font-size:1.1rem; font-weight:700; color:white; margin-bottom:10px; }
.regla p { font-size:0.9rem; color:rgba(255,255,255,0.65); line-height:1.7; }

/* ════════════════════════════════════════════════════════════
   VALORES / CARDS CON BORDE
════════════════════════════════════════════════════════════ */
.valores-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.valor { background:var(--crema); border-radius:var(--r); padding:20px; border-left:3px solid var(--naranja); transition:transform .2s,box-shadow .2s; }
.valor:hover { transform:translateY(-2px); box-shadow:var(--sombra); }
.valor-icono { font-size:1.4rem; margin-bottom:8px; display:block; }
.valor h4 { font-family:var(--ff-titulo); font-size:1rem; font-weight:700; color:var(--azul); margin-bottom:4px; }
.valor p { font-size:0.84rem; color:var(--gris); line-height:1.5; }

/* ════════════════════════════════════════════════════════════
   HERRAMIENTAS (tools-grid)
════════════════════════════════════════════════════════════ */
.tools-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.tool { background:var(--blanco); border-radius:var(--r); padding:28px; box-shadow:var(--sombra); transition:transform .2s,box-shadow .2s; }
.tool:hover { transform:translateY(-3px); box-shadow:var(--sombra-md); }
.tool-icono { font-size:2rem; margin-bottom:14px; display:block; }
.tool h4 { font-family:var(--ff-titulo); font-size:1.1rem; color:var(--azul); font-weight:700; margin-bottom:8px; }
.tool p { font-size:0.88rem; color:var(--gris); line-height:1.65; margin-bottom:18px; }
.tool-btns { display:flex; flex-direction:column; gap:8px; }
.tool-btn { display:block; padding:9px 16px; border-radius:var(--r-sm); font-size:0.84rem; font-weight:600; text-decoration:none; text-align:center; transition:all .2s; }
.tool-btn.prim { background:var(--naranja); color:white; }
.tool-btn.prim:hover { background:var(--naranja-osc); }
.tool-btn.sec { background:var(--crema); color:var(--azul); border:1px solid var(--crema-osc); }
.tool-btn.sec:hover { background:var(--crema-osc); }

/* ════════════════════════════════════════════════════════════
   CTA FINAL
════════════════════════════════════════════════════════════ */
.cta-final { background:var(--crema-osc); border-radius:var(--r); padding:56px 48px; text-align:center; position:relative; overflow:hidden; margin:0 32px 80px; }
.cta-final::before { content:''; position:absolute; top:-80px; left:50%; transform:translateX(-50%); width:400px; height:400px; border-radius:50%; background:radial-gradient(circle,rgba(212,98,42,0.08) 0%,transparent 70%); }
.cta-final h2 { font-family:var(--ff-titulo); font-size:clamp(1.8rem,3vw,2.6rem); font-weight:900; color:var(--azul); margin-bottom:14px; position:relative; }
.cta-final p { color:var(--gris); font-size:1rem; max-width:480px; margin:0 auto 32px; line-height:1.7; position:relative; }
.cta-btns { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }

/* ════════════════════════════════════════════════════════════
   FERIA
════════════════════════════════════════════════════════════ */
.feria-filtros { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px; }
.filtro-btn { padding:7px 18px; border-radius:20px; font-size:0.84rem; font-weight:600; cursor:pointer; border:2px solid var(--crema-osc); background:var(--blanco); color:var(--gris); transition:all .2s; }
.filtro-btn.activo, .filtro-btn:hover { background:var(--naranja); border-color:var(--naranja); color:white; }
.feria-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.anuncio-card { background:var(--blanco); border-radius:var(--r); overflow:hidden; box-shadow:var(--sombra); transition:transform .2s,box-shadow .2s; }
.anuncio-card:hover { transform:translateY(-3px); box-shadow:var(--sombra-md); }
.anuncio-img { width:100%; height:160px; object-fit:cover; background:var(--crema-osc); }
.anuncio-body { padding:18px; }
.anuncio-cat { font-size:0.7rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--naranja); margin-bottom:6px; display:block; }
.anuncio-body h3 { font-family:var(--ff-titulo); font-size:1rem; font-weight:700; color:var(--azul); margin-bottom:6px; }
.anuncio-body p { font-size:0.83rem; color:var(--gris); line-height:1.5; margin-bottom:12px; }
.anuncio-precio { font-family:var(--ff-titulo); font-size:1.2rem; font-weight:900; color:var(--azul); }
.anuncio-footer { display:flex; justify-content:space-between; align-items:center; padding:12px 18px; border-top:1px solid var(--crema-osc); font-size:0.78rem; color:var(--arena); }

/* ════════════════════════════════════════════════════════════
   BENEFICIOS
════════════════════════════════════════════════════════════ */
.beneficios-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.beneficio-card { background:var(--blanco); border-radius:var(--r); padding:28px; box-shadow:var(--sombra); position:relative; overflow:hidden; transition:transform .2s,box-shadow .2s; }
.beneficio-card:hover { transform:translateY(-3px); box-shadow:var(--sombra-md); }
.beneficio-card::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:var(--naranja); }
.beneficio-logo { width:48px; height:48px; border-radius:var(--r-sm); background:var(--crema); display:flex; align-items:center; justify-content:center; font-size:1.5rem; margin-bottom:14px; }
.beneficio-card h3 { font-family:var(--ff-titulo); font-size:1.05rem; font-weight:700; color:var(--azul); margin-bottom:6px; }
.beneficio-card p { font-size:0.84rem; color:var(--gris); line-height:1.6; margin-bottom:14px; }
.beneficio-descuento { display:inline-block; background:var(--naranja); color:white; font-size:0.75rem; font-weight:700; padding:4px 12px; border-radius:20px; }

/* ════════════════════════════════════════════════════════════
   BOLSA DE TRABAJO
════════════════════════════════════════════════════════════ */
.empleo-grid { display:flex; flex-direction:column; gap:12px; }
.empleo-item { background:var(--blanco); border-radius:var(--r); padding:20px 24px; box-shadow:var(--sombra); display:flex; align-items:center; gap:20px; transition:transform .2s; }
.empleo-item:hover { transform:translateX(4px); }
.empleo-logo { width:48px; height:48px; flex-shrink:0; border-radius:var(--r-sm); background:var(--crema); display:flex; align-items:center; justify-content:center; font-size:1.4rem; }
.empleo-info { flex:1; }
.empleo-info h3 { font-family:var(--ff-titulo); font-size:1.02rem; font-weight:700; color:var(--azul); margin-bottom:4px; }
.empleo-info p { font-size:0.84rem; color:var(--gris); }
.empleo-tags { display:flex; gap:8px; flex-wrap:wrap; margin-top:6px; }
.empleo-tag { font-size:0.72rem; font-weight:600; padding:3px 10px; border-radius:20px; background:var(--crema); color:var(--gris); }
.empleo-tag.urgente { background:rgba(212,98,42,0.12); color:var(--naranja); }

/* ════════════════════════════════════════════════════════════
   PAGINACIÓN
════════════════════════════════════════════════════════════ */
.paginacion { display:flex; justify-content:center; gap:8px; margin-top:48px; }
.paginacion a, .paginacion span { width:38px; height:38px; display:flex; align-items:center; justify-content:center; border-radius:var(--r-sm); font-size:0.9rem; font-weight:600; background:var(--blanco); color:var(--gris); border:1px solid var(--crema-osc); transition:all .2s; }
.paginacion a:hover { background:var(--naranja); color:white; border-color:var(--naranja); }
.paginacion .current { background:var(--naranja); color:white; border-color:var(--naranja); }

/* ════════════════════════════════════════════════════════════
   DIVISOR
════════════════════════════════════════════════════════════ */
.divisor { max-width:var(--max); margin:0 auto; padding:0 32px; border:none; border-top:1px solid var(--crema-osc); }

/* ════════════════════════════════════════════════════════════
   FOOTER
════════════════════════════════════════════════════════════ */
.site-footer { background:var(--azul); padding:56px 32px 32px; border-top:3px solid var(--naranja); }
.footer-inner { max-width:var(--max); margin:0 auto; display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:48px; padding-bottom:40px; border-bottom:1px solid rgba(255,255,255,0.1); margin-bottom:24px; }
.footer-marca { font-family:var(--ff-titulo); font-size:1.2rem; font-weight:900; color:white; margin-bottom:12px; }
.footer-marca span { color:var(--naranja); }
.footer-desc { font-size:0.86rem; color:rgba(255,255,255,0.5); line-height:1.7; }
.footer-col h5 { color:white; font-size:0.82rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; margin-bottom:14px; }
.footer-col a { display:block; color:rgba(255,255,255,0.5); font-size:0.86rem; text-decoration:none; margin-bottom:8px; transition:color .2s; }
.footer-col a:hover { color:white; }
.footer-bottom { max-width:var(--max); margin:0 auto; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; }
.footer-bottom p { font-size:0.78rem; color:rgba(255,255,255,0.3); }
.footer-rufino { font-size:0.78rem; color:rgba(255,255,255,0.3); display:flex; align-items:center; gap:6px; }
.footer-rufino::before { content:'📍'; }

/* ════════════════════════════════════════════════════════════
   ANIMACIONES
════════════════════════════════════════════════════════════ */
@keyframes fadeUp { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
.fade-in   { animation:fadeUp .6s ease both; }
.fade-in-2 { animation:fadeUp .6s .15s ease both; }
.fade-in-3 { animation:fadeUp .6s .3s ease both; }

/* ════════════════════════════════════════════════════════════
   404
════════════════════════════════════════════════════════════ */
.not-found { background:var(--azul); min-height:70vh; display:flex; align-items:center; justify-content:center; text-align:center; padding:64px 32px; }
.not-found-inner h1 { font-family:var(--ff-titulo); font-size:8rem; font-weight:900; color:rgba(255,255,255,0.08); line-height:1; margin-bottom:-24px; }
.not-found-inner h2 { font-family:var(--ff-titulo); font-size:2rem; color:white; margin-bottom:12px; }
.not-found-inner p { color:rgba(255,255,255,0.55); margin-bottom:32px; }

/* ════════════════════════════════════════════════════════════
   RESPONSIVE
════════════════════════════════════════════════════════════ */
@media(max-width:1100px){
  .tools-grid{grid-template-columns:repeat(2,1fr);}
  .feria-grid,.beneficios-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:900px){
  .footer-inner{grid-template-columns:1fr;gap:32px;}
  .pasos-grid{grid-template-columns:1fr 1fr;}
  .paso::after{display:none;}
  .noticias-grid,.testimonios-grid,.reglas-grid{grid-template-columns:1fr;}
  .tiles-home{grid-template-columns:1fr 1fr;}
  .noticia-destacada{grid-column:span 1;grid-template-columns:1fr;display:block;}
}
@media(max-width:640px){
  .site-nav{padding:0 16px;}
  .nav-menu{display:none;}
  .nav-menu.abierto{display:flex;flex-direction:column;position:absolute;top:64px;left:0;right:0;background:var(--azul);padding:16px 24px 24px;gap:16px;border-top:1px solid rgba(255,255,255,0.1);z-index:999;}
  .nav-hamburger{display:flex;}
  .hero{padding:64px 20px 60px;}
  .seccion,.page-content,.single-content{padding:56px 20px;}
  .seccion-fondo,.seccion-azul,.seccion-crema{padding:56px 20px;}
  .tiles-home{grid-template-columns:1fr;padding:0 20px;}
  .pasos-grid,.feria-grid,.beneficios-grid,.valores-grid{grid-template-columns:1fr;}
  .cta-final{padding:40px 24px;margin:0 16px 48px;}
  .footer-inner{grid-template-columns:1fr;}
  .tools-grid{grid-template-columns:1fr;}
}

/* ════════════════════════════════════════════════════════════
   AJUSTES NOTEBOOK (pantallas ~768px alto)
════════════════════════════════════════════════════════════ */
@media(max-height: 800px) {
  .page-hero       { padding: 36px 32px 40px; }
  .page-hero h1    { font-size: clamp(1.6rem, 3vw, 2.2rem); margin-bottom: 8px; }
  .page-hero::after{ height: 24px; }
  .hero            { padding: 56px 32px 64px; }
  .hero h1         { font-size: clamp(2.2rem, 5vw, 3.8rem); }
  .seccion         { padding: 56px 32px; }
  .seccion-fondo   { padding: 56px 32px; }
  .seccion-azul    { padding: 56px 32px; }
  .cta-final       { padding: 40px 48px; margin-bottom: 48px; }
  .site-footer     { padding: 36px 32px 24px; }
}
