/* ============================================================
   Overlay de modernización — Unidad Educativa Simón Bolívar
   Se carga DESPUÉS del style.css del tema edulia (gana en cascada).
   Refina la paleta azul marino existente (#00124e / #4068fc) con
   detalles 2026: sombras suaves, hover-lift, esquinas, ritmo.
   Autor: auditoría 2026-07-29. No altera la estructura del tema.
   ============================================================ */

:root{
  --ue-navy:#0f2f57;
  --ue-blue:#1e5a97;
  --ue-blue-bright:#2e8bc0;
  --ue-accent:#f2a03d;       /* ámbar cálido */
  --ue-accent-600:#e08a1e;
  --ue-green:#20ca84;
  --ue-ink:#1a2433;
  --ue-muted:#5b6b82;
  --ue-line:#e6ecf4;
  --ue-bg-alt:#f5f8fc;
  --ue-radius:16px;
  --ue-radius-lg:22px;
  --ue-shadow-sm:0 2px 8px rgba(15,47,87,.06);
  --ue-shadow:0 10px 30px rgba(15,47,87,.10);
  --ue-shadow-lg:0 22px 48px rgba(15,47,87,.16);
  --ue-ease:.22s cubic-bezier(.4,0,.2,1);
}

/* ---- Tipografía y suavizado ---- */
body{ -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; color:var(--ue-ink); }
h1,h2,h3,.section_title,.section_title h2{ letter-spacing:-.01em; }

/* ---- Cards: cursos, blog, archivo, eventos ---- */
.course_item_inner,
.blog_card_wrapper_content,
.archive_card_wrapper_content,
.events_item_inner,
.reg_wrapper_item_card,
.checkouts_info_card{
  border-radius:var(--ue-radius-lg)!important;
  box-shadow:var(--ue-shadow-sm)!important;
  border:1px solid var(--ue-line)!important;
  overflow:hidden;
  transition:transform var(--ue-ease),box-shadow var(--ue-ease)!important;
}
.course_item_inner:hover,
.blog_card_wrapper_content:hover,
.archive_card_wrapper_content:hover,
.events_item_inner:hover{
  transform:translateY(-6px);
  box-shadow:var(--ue-shadow-lg)!important;
}
/* imagen dentro de card: zoom sutil al hover */
.course_item_img_inner img,
.course_details_preview_img img,
.events_preview_img img,
.team_member_img img{
  transition:transform .45s ease!important;
  will-change:transform;
}
.course_item_inner:hover .course_item_img_inner img,
.events_item_inner:hover .events_preview_img img{ transform:scale(1.06); }

/* ---- Galería de fotos: esquinas + hover ---- */
.photo_gallery_item img, .gallery_item img, [class*="gallery"] img{
  border-radius:var(--ue-radius)!important;
  transition:transform var(--ue-ease),box-shadow var(--ue-ease)!important;
}
.photo_gallery_item:hover img, .gallery_item:hover img{
  transform:translateY(-4px) scale(1.02);
  box-shadow:var(--ue-shadow);
}

/* ---- Botones ---- */
.primary-btn,.common_btn,.btn,button.primary-btn,a.primary-btn{
  border-radius:999px!important;
  transition:transform var(--ue-ease),box-shadow var(--ue-ease),background var(--ue-ease)!important;
  font-weight:600!important;
}
.primary-btn:hover,.common_btn:hover,.btn:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(15,47,87,.22);
}

/* ---- Kickers / títulos de sección ---- */
.section_title span, .sub_title, .section_sub_title{
  color:var(--ue-accent-600)!important;
  font-weight:700!important;
  letter-spacing:.06em;
  text-transform:uppercase;
}

/* ---- Ritmo de secciones: aire ---- */
.section_padding{ padding-top:clamp(56px,7vw,100px)!important; padding-bottom:clamp(56px,7vw,100px)!important; }

/* ---- Topbar / franja superior ---- */
.header_top, .top_header, .headaer_top_area{ background:var(--ue-navy)!important; }

/* ---- Footer oscuro elegante ---- */
.footer{ background:var(--ue-navy)!important; }
.footer a{ transition:color var(--ue-ease)!important; }
.footer a:hover{ color:var(--ue-accent)!important; }
.footer_copyright{ border-top:1px solid rgba(255,255,255,.12); }

/* ---- CTA final: gradiente cálido de marca ---- */
.cta_area{
  background:linear-gradient(135deg,var(--ue-navy) 0%,var(--ue-blue) 55%,var(--ue-blue-bright) 100%)!important;
  border-radius:var(--ue-radius-lg);
}

/* ---- Cartelera de avisos (home): más suave ---- */
.hero_area_inner_meta, .notice_board_area{ border-radius:var(--ue-radius-lg)!important; }

/* ---- Inputs / buscador ---- */
input,select,textarea{ border-radius:12px!important; }
input:focus,select:focus,textarea:focus{ outline:2px solid var(--ue-blue-bright); outline-offset:1px; }

/* ---- Accesibilidad: focus visible y movimiento reducido ---- */
a:focus-visible,button:focus-visible,.primary-btn:focus-visible{
  outline:3px solid var(--ue-accent); outline-offset:3px;
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
  .course_item_inner:hover,.events_item_inner:hover,.primary-btn:hover{transform:none}
}

/* ---- Detalle: badge verde "Inscripciones abiertas" reutilizable ---- */
.ue-badge-open{
  display:inline-flex;align-items:center;gap:.4rem;
  background:rgba(32,202,132,.15);color:#0e6b46;
  padding:.4rem .9rem;border-radius:999px;font-weight:700;font-size:.85rem;
}

/* ===== Auditoría visual 2026-07-29 (2ª pasada) ===== */
/* Ocultar secciones del vendor sin contenido escolar real */
.section_padding:has(.video-gallery){ display:none!important; }          /* Galería de videos (promos del ERP) */
/* Rótulo azul duplicado bajo los tiles de la galería de fotos */
.gallery_item_title{ display:none!important; }
/* Aire bajo el navbar para que el hero no quede cortado */
.hero_area, .hero_area_slider{ margin-top:0; }
.hero_area_inner_meta{ padding-top:40px; }

/* ===== Auditoría 2ª pasada: espaciados y layout ===== */
/* Testimonios: quitar exceso de espacio arriba */
.section_padding.tesimonials{ padding-top:24px!important; }
/* Horario de atención: filas más compactas */
.openning_hours_container .events_schedule,
.openning_hours_container li,
.openning_hours_container tr,
.openning_hours_container .schedule_item{ padding-top:6px!important; padding-bottom:6px!important; margin:0!important; }
.openning_hours_container .events_schedule + .events_schedule{ border-top:1px solid rgba(0,0,0,.06); }
/* Tarjeta de blog: aire interno (estaba pegado) */
.blog_item_inner{ padding:22px 24px 26px!important; }
.blog_item_meta{ display:inline-block; margin-bottom:10px!important; color:#f2a03d!important; font-weight:600; }
.blog_item_title{ display:block; margin-bottom:14px!important; line-height:1.35!important; }
.blog_item{ border-radius:20px!important; overflow:hidden; box-shadow:0 2px 8px rgba(15,47,87,.06); }
/* App móvil: bullets legibles */
.download_app_section .single_download_app_content_item{ margin-bottom:10px; }

/* Horario de atención: filas compactas */
.noticeboard_inner_weekinfo{ margin-bottom:6px!important; padding-bottom:6px!important; border-bottom:1px solid rgba(0,0,0,.05); }
.noticeboard_inner_weekinfo:last-child{ border-bottom:0; }
.openning_hours_container .noticeboard_inner{ margin-top:8px; }

/* Botones de tienda (app móvil): tamaño consistente */
.download_links{ align-items:center; gap:16px; }
.download_links a img, .download_links img{ height:52px!important; width:auto!important; }

/* Dedup de rótulos: la imagen del tile ya no lleva texto, el título del card rotula una vez */
.course_item_img_status{ display:none!important; }  /* badge de categoría redundante con el h4 */

/* ============================================================
   Logo "Sistema Educativo" (diseñador, 2026-07-30) — más grande
   El logo es horizontal (ratio ~3.2); antes se veía muy pequeño.
   ============================================================ */
.heading_logo img,
.heading_main_logo img,
.header_logo img,
.site_logo img{
  height:54px!important;
  width:auto!important;
  max-width:220px!important;
  object-fit:contain;
}
@media (max-width:768px){
  .heading_logo img,.heading_main_logo img{ height:44px!important; max-width:170px!important; }
}
/* Footer: logo blanco un poco más presente */
.footer-item-logo img{ height:46px!important; width:auto!important; max-width:230px!important; }

/* Footer logo horizontal: el contenedor original era 140px/overflow:hidden (para logo cuadrado) → recortaba */
.footer-item-logo{ width:auto!important; max-width:280px!important; overflow:visible!important; display:inline-block; }
.footer-item-logo img{ height:44px!important; width:auto!important; max-width:100%!important; }

/* ============================================================
   Auditoría forense 2026-07-30 — correcciones visuales
   ============================================================ */

/* Header: usar hamburguesa hasta 1199px (entre 768-1199 el menú de 8 ítems
   envolvía y se solapaba con el logo "SISTEMA EDUCATIVO") */
@media (max-width:1199px){
  .heading_main{ display:none!important; }
  .heading_mobile{ display:flex!important; }
}

/* No hay app publicada → ocultar la sección de descarga de app */
.download_app_section{ display:none!important; }

/* Hero en móvil: evitar la franja navy bajo el slide */
@media (max-width:767px){
  .hero_area{ background:#4068fc!important; }
  .hero_area .owl-item, .hero_area .owl-item img{ height:100%!important; object-fit:cover; }
}

/* Tarjetas de curso: título con aire (no pegado al borde redondeado) */
.course_item_inner h4, .course_item_inner .course_title{ padding-left:20px!important; padding-right:20px!important; }

/* Internas: reducir el hueco grande entre el banner de título y el contenido */
.header-breadcumb{ margin-bottom:0!important; }

/* Sección "Nuestros Docentes" del home: oculta hasta cargar fotos reales del personal */
.section_padding.teacher{ display:none!important; }

/* ============================================================
   Ajustes 2026-07-30 (feedback del dueño)
   ============================================================ */

/* --- Galería (home): tarjeta unificada, no dos rectángulos con esquinas cuadradas --- */
.gallery_item{
  display:block;
  border-radius:18px!important;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(15,47,87,.10);
  transition:transform .28s ease, box-shadow .28s ease;
}
.gallery_item:hover{ transform:translateY(-6px); box-shadow:0 20px 46px rgba(15,47,87,.22); }
.gallery_item .gallery_item_img{ overflow:hidden; margin:0!important; }
.gallery_item .gallery_item_img img{
  border-radius:0!important;        /* el redondeo lo da la tarjeta contenedora */
  width:100%!important; height:100%!important; object-fit:cover;
  transition:transform .5s ease;
}
.gallery_item:hover .gallery_item_img img{ transform:scale(1.06); }
.gallery_item_inner{
  background:linear-gradient(135deg,#0f2f57 0%,#2e63c8 60%,#4068fc 100%)!important;
  padding:16px 20px!important;
  border-radius:0!important;
  transition:filter .28s ease;
}
.gallery_item:hover .gallery_item_inner{ filter:brightness(1.08); }
.gallery_item_inner .photo-gallery-image, .gallery_item_inner h4{ margin:0!important; font-weight:600; }

/* --- Horario de Atención: compactar el espaciado vertical excesivo --- */
.openning_hours_container .noticeboard_inner_weekinfo{
  margin:0!important;
  padding:12px 0!important;
  border-bottom:1px solid var(--ue-line,#e6ecf4);
}
.openning_hours_container .noticeboard_inner_weekinfo:last-child{ border-bottom:none; }
.openning_hours_container .noticeboard_inner_weekinfo li{ padding:0!important; margin:0!important; }

/* Horario: el <span> traía line-height:50px (fila de 75px) -> compactar de verdad */
.openning_hours_container .noticeboard_inner_weekinfo{ padding:9px 0!important; }
.openning_hours_container .noticeboard_inner_weekinfo li span,
.openning_hours_container .noticeboard_inner_weekinfo li span label{ line-height:1.5!important; }

/* Cuotas escolares: párrafos justificados para mejor lectura */
.page-tuition-fees .tmp-services-content p,
.page-tuition-fees .text-editor p,
.tmp-services-content p{ text-align:justify; text-justify:inter-word; }

/* ============================================================
   /events y /contact-us: grilla de eventos simétrica
   (los eventos sin imagen dejaban caja rota y tarjetas dispares)
   ============================================================ */
.events_item_img:has(img[src$="tusistemaedu.com/"]),
.events_item_img:has(img[src=""]),
.events_item_img:has(img:not([src])){ display:none !important; }

.section_padding.events .row{ display:flex; flex-wrap:wrap; align-items:stretch; }
.section_padding.events .row > [class*="col-"]{ display:flex; }
.section_padding.events .events_item{ display:flex; flex-direction:column; width:100%; height:100%; margin-bottom:24px; }
.section_padding.events .events_item_inner{ flex:1 1 auto; display:flex; flex-direction:column; }
.section_padding.events .events_item_inner_title{ margin-bottom:16px; }
.section_padding.events .events_item_inner > a:last-child{ margin-top:auto; }

/* Cuotas: cubrir también los párrafos de intro (.tmp-sectiontitle-two) que no estaban justificados */
.page-tuition-fees .tmp-sectiontitle-two p,
.page-tuition-fees .tmp-services p,
.page-tuition-fees p{ text-align:justify; text-justify:inter-word; }
