/* CAMEP Chile - mejoras 2026 (agregado 2026-08-07) */
:root{
  --camep-morado:#2a1a5e; --camep-morado-osc:#1d1142; --camep-oro:#c8a03c;
  --camep-oro-claro:#e0bd63; --camep-azul:#1b6ec2; --camep-texto:#33383f;
  --camep-gris:#f4f5f8; --camep-borde:#d6d9e0;
}
body{ font-size:16px; line-height:1.65; color:var(--camep-texto); }
p{ line-height:1.7; }

/* ---------- Botones ---------- */
.camep-btn{
  display:inline-block; padding:14px 30px; border-radius:4px; border:2px solid transparent;
  font-weight:600; font-size:16px; line-height:1.2; text-align:center; cursor:pointer;
  text-decoration:none; transition:all .2s ease;
}
.camep-btn:focus-visible{ outline:3px solid var(--camep-oro-claro); outline-offset:3px; }
.camep-btn-primary{ background:var(--camep-oro); color:#1d1142; border-color:var(--camep-oro); }
.camep-btn-primary:hover,.camep-btn-primary:focus{ background:var(--camep-oro-claro); border-color:var(--camep-oro-claro); color:#1d1142; text-decoration:none; }
.camep-btn-ghost{ background:transparent; color:#fff; border-color:rgba(255,255,255,.75); }
.camep-btn-ghost:hover,.camep-btn-ghost:focus{ background:#fff; color:var(--camep-morado); text-decoration:none; }

/* ---------- Heroe ---------- */
.camep-hero-copy{ max-width:900px; margin:0 auto; padding:0 20px; text-align:center; }
.camep-hero-title{
  font-size:clamp(26px,4vw,46px); line-height:1.18; font-weight:700; color:#fff;
  margin:22px 0 14px; text-shadow:0 2px 14px rgba(0,0,0,.65);
}
.camep-hero-sub{
  font-size:clamp(16px,1.7vw,20px); line-height:1.55; color:#eef1f7; margin:0 auto 26px;
  max-width:720px; text-shadow:0 2px 10px rgba(0,0,0,.7);
}
.camep-hero-cta{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* ---------- Franja de indicadores ---------- */
.camep-stats{ background:var(--camep-morado); padding:38px 0; }
.camep-stats-grid{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:26px; max-width:1100px; margin:0 auto; padding:0 20px; text-align:center;
}
.camep-stat-num{ font-size:38px; font-weight:700; color:var(--camep-oro-claro); line-height:1; }
.camep-stat-lbl{ font-size:14px; color:#e6e8f0; margin-top:8px; letter-spacing:.03em; }

/* ---------- Logos de clientes ---------- */
.camep-clientes{ background:#fff; padding:52px 0; }
.camep-clientes h2{ text-align:center; font-size:22px; color:var(--camep-morado); margin-bottom:8px; }
.camep-clientes .camep-sub{ text-align:center; color:#6b7280; font-size:15px; margin-bottom:32px; }
.camep-clientes-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:30px 40px; align-items:center; max-width:1000px; margin:0 auto; padding:0 20px; }
.camep-clientes-grid img{
  max-width:100%; height:auto; filter:grayscale(100%); opacity:.65; transition:all .25s ease;
}
.camep-clientes-grid img:hover{ filter:none; opacity:1; }

/* ---------- Formulario ---------- */
.camep-form-wrap{ max-width:680px; }
.camep-field{ margin-bottom:20px; }
.camep-field label{
  display:block; font-weight:600; font-size:15px; color:var(--camep-morado); margin-bottom:7px;
}
.camep-field label span[aria-hidden]{ color:#c0392b; }
.camep-opt{ font-weight:400; color:#6b7280; }
.camep-form .form-control{
  width:100%; padding:12px 14px; font-size:16px; color:var(--camep-texto);
  border:1px solid var(--camep-borde); border-radius:4px; background:#fff; height:auto;
}
.camep-form .form-control:focus{
  border-color:var(--camep-azul); outline:2px solid rgba(27,110,194,.25); outline-offset:0;
}
.camep-form textarea.form-control{ resize:vertical; min-height:140px; }
.camep-legal{ font-size:13px; color:#6b7280; margin:0 0 18px; }
.camep-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.camep-alert{ padding:15px 18px; border-radius:4px; margin-bottom:22px; font-size:15px; border-left:4px solid; }
.camep-alert-ok{ background:#e8f5ea; border-color:#2e7d32; color:#1b5e20; }
.camep-alert-err{ background:#fdeceb; border-color:#c0392b; color:#8e2018; }
.camep-alert a{ color:inherit; font-weight:600; text-decoration:underline; }

/* ---------- WhatsApp flotante ---------- */
.camep-wa{
  position:fixed; right:20px; bottom:20px; z-index:9999;
  display:flex; align-items:center; gap:9px;
  background:#25d366; color:#fff; padding:13px 19px; border-radius:50px;
  font-weight:600; font-size:15px; text-decoration:none;
  box-shadow:0 4px 16px rgba(0,0,0,.28); transition:all .2s ease;
}
.camep-wa:hover,.camep-wa:focus{ background:#1da851; color:#fff; text-decoration:none; transform:translateY(-2px); }
.camep-wa svg{ width:22px; height:22px; fill:currentColor; flex-shrink:0; }
@media (max-width:576px){
  .camep-wa{ right:14px; bottom:14px; padding:14px; border-radius:50%; }
  .camep-wa .camep-wa-txt{ display:none; }
}

/* ---------- Pie / contacto ---------- */
.footer a[href^="tel:"], .footer a[href^="mailto:"]{ color:var(--camep-morado); text-decoration:underline; font-weight:600; }
.footer a[href^="tel:"]:hover, .footer a[href^="mailto:"]:hover{ color:var(--camep-azul); }

/* ---------- Accesibilidad ---------- */
.camep-salto{
  position:absolute; left:-9999px; top:0; background:var(--camep-oro); color:#1d1142;
  padding:12px 20px; z-index:10000; font-weight:600;
}
.camep-salto:focus{ left:10px; top:10px; }
a:focus-visible, button:focus-visible{ outline:3px solid var(--camep-oro); outline-offset:2px; }
/* ---------- Titulos decorativos que antes eran h1 ---------- */
.camep-h1-visual{
  font-family:'Poppins',sans-serif; font-size:48px; font-weight:500;
  line-height:52px; color:#28262d; margin:0 0 8px;
}
.icon_box_title .camep-h1-visual{ line-height:60px; }
@media (max-width:991px){ .camep-h1-visual{ font-size:36px; line-height:42px; } }
@media (max-width:575px){ .camep-h1-visual{ font-size:28px; line-height:34px; } }



/* ---------- H1 del banner interior (antes era h2) ---------- */
.home_title h1{
  font-size:clamp(30px,4vw,48px); font-weight:600; color:#fff; margin:0;
  text-shadow:0 2px 12px rgba(0,0,0,.5);
}
/* ---------- Logo del heroe (mayor especificidad que Owl Carousel) ---------- */
.owl-carousel .owl-item img.camep-hero-logo,
img.camep-hero-logo{
  width:250px !important; max-width:40vw; height:auto !important;
  display:block; margin:0 auto 6px;
}
@media (max-width:991px){ .owl-carousel .owl-item img.camep-hero-logo, img.camep-hero-logo{ width:190px !important; } }
@media (max-width:575px){ .owl-carousel .owl-item img.camep-hero-logo, img.camep-hero-logo{ width:150px !important; } }

/* Ajuste fino del bloque de texto del heroe */
.camep-hero-copy{ padding-top:10px; }
.camep-hero-title{ margin:16px 0 12px; }
@media (max-width:575px){
  .camep-hero-title{ margin:12px 0 10px; }
  .camep-hero-sub{ margin-bottom:20px; }
  .camep-hero-cta .camep-btn{ width:100%; max-width:300px; }
}
.camep-clientes-grid img{ width:100%; max-width:460px; justify-self:center; }
@media (max-width:767px){ .camep-clientes-grid{ grid-template-columns:1fr; gap:22px; } }
/* ---------- Pie: enlaces de contacto sobre fondo claro ---------- */
footer.footer a[href^="tel:"], footer.footer a[href^="mailto:"],
.footer a[href^="tel:"], .footer a[href^="mailto:"]{
  color:#2a1a5e !important; text-decoration:underline; font-weight:600;
}
footer.footer a[href^="tel:"]:hover, footer.footer a[href^="mailto:"]:hover{ color:#1b6ec2 !important; }
/* ---------- Logo dorado del pie: acotar tamano ---------- */
.footer .footer_logo img, .footer_logo img{
  width:auto !important; max-width:165px !important; height:auto !important; display:block;
}
@media (max-width:767px){ .footer .footer_logo img, .footer_logo img{ max-width:130px !important; margin:0 auto 18px; } }
/* ---------- Foto del CEO ---------- */
img[src*="leo.jpg"]{ width:100%; max-width:430px; height:auto; border-radius:4px; }
/* ---------- Emblema dorado del encabezado ---------- */
.logo img.camep-emblema, img.camep-emblema{
  width:auto !important; height:64px !important; max-width:none;
  margin-right:14px; margin-left:0; vertical-align:middle; display:inline-block;
  
}
@media (max-width:991px){ .logo img.camep-emblema, img.camep-emblema{ height:42px !important; margin-left:10px; } }
@media (max-width:575px){ .logo img.camep-emblema, img.camep-emblema{ height:36px !important; margin-left:8px; } }
/* ============================================================
   AJUSTES MOVIL Y MODO OSCURO AUTOMATICO (2026-08-07)
   Chrome/Safari en movil aplican un "modo oscuro automatico" a
   sitios que no declaran su esquema: invierten textos claros y
   ponen fondo gris a los PNG transparentes. Lo desactivamos.
   ============================================================ */
:root{ color-scheme: only light; }
html{ color-scheme: only light; -webkit-text-size-adjust:100%; }

/* Textos del heroe: forzados para que nunca se inviertan */
.camep-hero-title{
  color:#ffffff !important; -webkit-text-fill-color:#ffffff !important;
}
.camep-hero-sub{
  color:#eef1f7 !important; -webkit-text-fill-color:#eef1f7 !important;
}
.camep-hero-sub strong{ color:#e8c877 !important; -webkit-text-fill-color:#e8c877 !important; }
.camep-btn-ghost{
  color:#ffffff !important; -webkit-text-fill-color:#ffffff !important;
  border-color:#ffffff !important; background:rgba(255,255,255,.08) !important;
}
.camep-btn-primary{
  color:#1d1142 !important; -webkit-text-fill-color:#1d1142 !important;
  background:#c8a03c !important; border-color:#c8a03c !important;
}
.camep-stat-num{ color:#e0bd63 !important; -webkit-text-fill-color:#e0bd63 !important; }
.camep-stat-lbl{ color:#e6e8f0 !important; -webkit-text-fill-color:#e6e8f0 !important; }

/* PNG transparentes: sin fondo ni realces del navegador */
img.camep-hero-logo, img.camep-emblema, .logo img, .footer_logo img{
  background:transparent !important; background-color:transparent !important;
  mix-blend-mode:normal !important;
}

/* ---------- Heroe en celular: mas compacto y legible ---------- */
@media (max-width:767px){
  .camep-hero-copy{ padding:0 22px; }
  .camep-hero-title{
    font-size:23px !important; line-height:1.25 !important;
    margin:14px 0 10px !important; letter-spacing:-.01em;
    text-shadow:0 2px 10px rgba(0,0,0,.75) !important;
  }
  .camep-hero-sub{
    font-size:15px !important; line-height:1.5 !important; margin-bottom:20px !important;
    text-shadow:0 1px 8px rgba(0,0,0,.8) !important;
  }
  .camep-hero-cta{ gap:11px; }
  .camep-hero-cta .camep-btn{ width:100%; max-width:280px; padding:13px 20px; font-size:15px; }
  .owl-carousel .owl-item img.camep-hero-logo, img.camep-hero-logo{ width:150px !important; }
}
@media (max-width:400px){
  .camep-hero-title{ font-size:21px !important; }
  .camep-hero-sub{ font-size:14px !important; }
  .owl-carousel .owl-item img.camep-hero-logo, img.camep-hero-logo{ width:132px !important; }
}

/* La flecha de "bajar" no debe pisar los botones */
@media (max-width:767px){
  .next_section_scroll{ display:none !important; }
}
/* ============================================================
   LOGOS DE CLIENTES (pagina Clientes)
   El carrusel del tema comprimia los banners a 267px y los
   logos quedaban ilegibles. Los apilamos a ancho completo.
   ============================================================ */
.wrapper .carousel .inner{
  transform:none !important; width:100% !important; left:0 !important;
  display:flex !important; flex-direction:column; gap:34px; align-items:center;
}
.wrapper .carousel .slide{
  width:100% !important; display:block !important; opacity:1 !important;
  visibility:visible !important; position:static !important; padding:0 !important;
}
.wrapper .carousel .slide img{
  width:100% !important; max-width:940px; height:auto !important;
  display:block; margin:0 auto;
}
.wrapper .carousel{ overflow:visible !important; }
.wrapper .carousel > button, .wrapper .carousel .indicators,
.wrapper .carousel .prev, .wrapper .carousel .next{ display:none !important; }
.wrapper{ padding:10px 0 50px !important; }

@media (max-width:767px){
  .wrapper .carousel .inner{ gap:26px; }
  .wrapper .carousel .slide img{ max-width:100%; }
  .wrapper, .wrapper .container{ padding-left:6px !important; padding-right:6px !important; }
}
/* Ajustes finales del bloque de clientes: alto automatico y sin flechas */
.wrapper, .wrapper .carousel{ height:auto !important; min-height:0 !important; }
.wrapper .carousel .inner{ position:static !important; height:auto !important; }
.wrapper .carousel .arrow, .wrapper .carousel .arrow-left,
.wrapper .carousel .arrow-right, .wrapper .carousel .indicators{ display:none !important; }
.wrapper .carousel .slide{ height:auto !important; }
/* En celular los banners de clientes se amplian y se deslizan */
@media (max-width:767px){
  .wrapper .carousel .slide{
    overflow-x:auto; -webkit-overflow-scrolling:touch;
    scrollbar-width:thin; border-radius:4px;
    background:linear-gradient(90deg,#fff 60%,rgba(255,255,255,0)) right/24px 100% no-repeat, #fff;
  }
  .wrapper .carousel .slide img{ min-width:620px; max-width:none !important; }
  .wrapper .carousel .slide::-webkit-scrollbar{ height:4px; }
  .wrapper .carousel .slide::-webkit-scrollbar-thumb{ background:#c8c9d4; border-radius:4px; }
}
/* Menos aire muerto sobre el bloque de clientes */
.services{ padding-top:0 !important; padding-bottom:0 !important; }
.services .row:empty{ display:none !important; }
/* ---------- Logo de X (antes Twitter) ---------- */
.camep-x{
  display:inline-block; font-size:1.32em; line-height:1; position:relative; top:1px;
  font-family:"Segoe UI Symbol","Apple Symbols","Noto Sans Symbols 2",system-ui,sans-serif;
  vertical-align:middle; letter-spacing:0;
}

/* ---------- Emblema a la izquierda del nombre ---------- */
.logo, .logo.mr-auto{
  display:flex !important; align-items:center; flex-direction:row;
}
.logo img.camep-emblema{ order:-1 !important; margin-left:0 !important; margin-right:16px !important; }
@media (max-width:991px){ .logo img.camep-emblema{ margin-right:12px !important; } }
@media (max-width:575px){ .logo img.camep-emblema{ margin-right:9px !important; } }