/* 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; } }
/* ============================================================
   SECCION EQUIPOS Y AREAS DE EVALUACION (2026-08-08)
   ============================================================ */
.camep-equipos{ background:var(--camep-gris); padding:70px 20px 80px; }
.camep-eq-head{ max-width:820px; margin:0 auto 42px; text-align:center; }
.camep-eq-head h2{
  font-size:clamp(26px,3.2vw,40px); font-weight:600; color:var(--camep-morado);
  margin:0 0 12px; line-height:1.2;
}
.camep-eq-head p{ font-size:17px; color:#5b6270; margin:0; }

/* ---------- Areas ---------- */
.camep-areas{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:18px; max-width:1120px; margin:0 auto 52px;
}
.camep-area{
  background:#fff; border-radius:6px; padding:24px 22px;
  border-left:4px solid var(--camep-oro); box-shadow:0 1px 4px rgba(20,20,50,.07);
}
.camep-area-num{
  display:block; font-size:13px; font-weight:700; letter-spacing:.12em;
  color:var(--camep-oro); margin-bottom:8px;
}
.camep-area h3{
  font-size:16px; font-weight:600; color:var(--camep-morado);
  margin:0; line-height:1.35; text-transform:none;
}

/* ---------- Carrusel de equipos ---------- */
.camep-eq-carrusel{
  position:relative; max-width:1120px; margin:0 auto;
  background:#fff; border-radius:8px; box-shadow:0 3px 18px rgba(20,20,50,.10);
  overflow:hidden;
}
.camep-eq-track{ position:relative; }
.camep-eq-slide{
  display:grid; grid-template-columns:1.05fr 1fr; align-items:center; gap:0;
  opacity:0; visibility:hidden; position:absolute; inset:0;
  transition:opacity .5s ease;
}
.camep-eq-slide.is-activa{ opacity:1; visibility:visible; position:relative; }
.camep-eq-foto{ background:#eceef3; }
.camep-eq-foto img{
  display:block; width:100%; height:100%; max-height:430px;
  object-fit:cover; object-position:center;
}
.camep-eq-texto{ padding:38px 80px 38px 44px; }
.camep-eq-num{
  display:inline-block; font-size:12px; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:var(--camep-oro); margin-bottom:10px;
}
.camep-eq-texto h3{
  font-size:clamp(21px,2.2vw,28px); font-weight:600; color:var(--camep-morado);
  margin:0 0 14px; line-height:1.25;
}
.camep-eq-texto p{ font-size:16px; line-height:1.7; color:#4a5160; margin:0 0 24px; }
.camep-eq-btn{ font-size:15px; padding:12px 24px; }

/* Flechas */
.camep-eq-nav{
  position:absolute; top:50%; transform:translateY(-50%); z-index:3;
  width:44px; height:44px; border-radius:50%; border:none; cursor:pointer;
  background:rgba(42,26,94,.82); color:#fff; font-size:0; line-height:0;
  transition:background .2s ease;
}
.camep-eq-nav:hover{ background:var(--camep-morado); }
.camep-eq-nav::before{
  content:""; display:block; width:11px; height:11px; margin:0 auto;
  border-top:2px solid #fff; border-right:2px solid #fff;
}
.camep-eq-prev{ left:14px; }
.camep-eq-prev::before{ transform:rotate(-135deg); margin-left:4px; }
.camep-eq-next{ right:14px; }
.camep-eq-next::before{ transform:rotate(45deg); margin-right:4px; }

/* Puntos */
.camep-eq-puntos{
  position:absolute; bottom:16px; right:44px; z-index:3;
  display:flex; gap:9px;
}
.camep-eq-punto{
  width:9px; height:9px; border-radius:50%; border:none; padding:0; cursor:pointer;
  background:#c9cddb; transition:all .2s ease;
}
.camep-eq-punto.is-activa{ background:var(--camep-oro); width:26px; border-radius:5px; }

/* ---------- Celular ---------- */
@media (max-width:900px){
  .camep-equipos{ padding:52px 16px 60px; }
  .camep-eq-slide{ grid-template-columns:1fr; }
  .camep-eq-foto img{ max-height:250px; }
  .camep-eq-texto{ padding:26px 24px 58px; }
  .camep-eq-texto p{ font-size:15px; }
  .camep-eq-nav{ width:38px; height:38px; top:125px; }
  .camep-eq-prev{ left:10px; } .camep-eq-next{ right:10px; }
  .camep-eq-puntos{ bottom:20px; right:auto; left:24px; }
  .camep-areas{ gap:14px; margin-bottom:38px; }
  .camep-area{ padding:18px 18px; }
}
@media (max-width:575px){
  .camep-areas{ grid-template-columns:1fr 1fr; }
  .camep-area h3{ font-size:14px; }
  .camep-eq-btn{ width:100%; text-align:center; }
}
/* El edificio de la seccion "Visitenos" ya no se monta sobre el texto */
.cta{ overflow:hidden; }
.cta .cta_image{ overflow:hidden; }
.cta .cta_image img{ max-width:100%; height:auto; display:block; }
@media (max-width:991px){
  .cta .cta_image{ margin-top:26px; }
  .cta .cta_image img{ max-width:78%; margin:0 auto; }
}
/* La flecha derecha no debe pisar el texto */
@media (min-width:901px){
  .camep-eq-next{ right:18px; }
  .camep-eq-puntos{ right:22px; }
}
/* --- Carrusel de equipos: altura estable y ficha tecnica --- */
.camep-eq-track{ display:grid !important; }
.camep-eq-slide{
  grid-area:1 / 1 !important; position:relative !important; inset:auto !important;
  align-items:stretch;
}
.camep-eq-slide:not(.is-activa){ pointer-events:none; }
.camep-eq-foto img{ max-height:none !important; min-height:100%; }
.camep-eq-texto{
  display:flex; flex-direction:column; justify-content:center;
  padding:34px 80px 34px 44px;
}
.camep-eq-texto p{ margin-bottom:16px; }
.camep-eq-datos{
  list-style:none; margin:0 0 22px; padding:0;
  border-top:1px solid #e6e8ef; padding-top:15px;
}
.camep-eq-datos li{
  position:relative; padding-left:20px; margin-bottom:9px;
  font-size:14.5px; line-height:1.55; color:#4a5160;
}
.camep-eq-datos li:last-child{ margin-bottom:0; }
.camep-eq-datos li::before{
  content:""; position:absolute; left:0; top:8px;
  width:7px; height:7px; border-radius:50%; background:var(--camep-oro);
}
.camep-eq-datos strong{ color:var(--camep-morado); font-weight:600; }
.camep-eq-btn{ align-self:flex-start; margin-top:2px; }

@media (max-width:900px){
  .camep-eq-texto{ padding:24px 22px 56px; }
  .camep-eq-foto img{ max-height:230px !important; min-height:0; }
  .camep-eq-datos li{ font-size:13.5px; }
  .camep-eq-btn{ align-self:stretch; text-align:center; }
}
/* --- Fotos de equipos completas, sin recorte --- */
.camep-eq-slide{ grid-template-columns:1.35fr 1fr !important; }
.camep-eq-foto{
  background:#d7d9de;
  display:flex; align-items:center; justify-content:center;
}
.camep-eq-foto img{
  object-fit:contain !important; width:100% !important; height:auto !important;
  max-height:100% !important; min-height:0 !important;
}
.camep-eq-texto{ padding:30px 70px 30px 38px; }
.camep-eq-texto p{ font-size:15.5px; line-height:1.65; }
.camep-eq-datos li{ font-size:14px; }

@media (max-width:900px){
  .camep-eq-slide{ grid-template-columns:1fr !important; }
  .camep-eq-foto img{ max-height:none !important; }
  .camep-eq-texto{ padding:24px 22px 56px; }
}
/* --- Fondo difuminado detras de la foto: sin bandas planas --- */
.camep-eq-foto{ position:relative; overflow:hidden; background:#cfd2d8; }
.camep-eq-foto::before{
  content:""; position:absolute; inset:-24px;
  background-image:var(--eq-bg); background-size:cover; background-position:center;
  filter:blur(22px) saturate(.85) brightness(1.02);
  transform:scale(1.12); z-index:0;
}
.camep-eq-foto::after{
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(0,0,0,.06));
}
.camep-eq-foto img{
  position:relative; z-index:2;
  object-fit:contain !important; width:100% !important; height:auto !important;
  max-height:100% !important;
}
/* Texto un poco mas compacto para reducir el alto total */
.camep-eq-texto{ padding:28px 66px 28px 36px; }
.camep-eq-texto h3{ margin-bottom:11px; }
.camep-eq-texto p{ font-size:15.5px; line-height:1.6; margin-bottom:14px; }
.camep-eq-datos{ padding-top:13px; margin-bottom:19px; }
.camep-eq-datos li{ font-size:13.8px; line-height:1.5; margin-bottom:7px; }
/* Separacion definitiva entre el texto y la flecha derecha */
@media (min-width:901px){
  .camep-eq-texto{ padding:28px 88px 28px 38px !important; }
  .camep-eq-next{ right:16px; }
}
/* ============================================================
   SECTORES QUE EVALUAMOS - carrusel automatico (2026-08-08)
   ============================================================ */
.camep-sectores{ background:#fff; padding:74px 20px 78px; }
.camep-sec-head{ max-width:840px; margin:0 auto 40px; text-align:center; }
.camep-sec-head h2{
  font-size:clamp(26px,3.2vw,40px); font-weight:600; color:var(--camep-morado);
  margin:0 0 12px; line-height:1.2;
}
.camep-sec-head p{ font-size:17px; color:#5b6270; margin:0; }

.camep-sec-carrusel{
  position:relative; max-width:1120px; margin:0 auto;
  border-radius:8px; overflow:hidden; box-shadow:0 4px 22px rgba(20,20,50,.16);
}
.camep-sec-track{ display:grid; }
.camep-sec-slide{
  grid-area:1 / 1; position:relative;
  opacity:0; visibility:hidden; transition:opacity .6s ease;
}
.camep-sec-slide.is-activa{ opacity:1; visibility:visible; }
.camep-sec-slide:not(.is-activa){ pointer-events:none; }

.camep-sec-foto{ position:relative; }
.camep-sec-foto img{
  display:block; width:100%; height:clamp(340px,42vw,470px);
  object-fit:cover; object-position:center;
}
.camep-sec-foto::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(90deg,rgba(29,17,66,.88) 0%,rgba(29,17,66,.72) 34%,rgba(29,17,66,.10) 68%,rgba(29,17,66,0) 100%);
}
.camep-sec-texto{
  position:absolute; left:0; top:50%; transform:translateY(-50%);
  z-index:2; max-width:520px; padding:0 44px;
}
.camep-sec-num{
  display:inline-block; font-size:12px; font-weight:700; letter-spacing:.18em;
  color:var(--camep-oro-claro); margin-bottom:12px;
}
.camep-sec-texto h3{
  font-size:clamp(26px,3.4vw,40px); font-weight:600; color:#fff;
  margin:0 0 12px; line-height:1.15; text-shadow:0 2px 12px rgba(0,0,0,.4);
}
.camep-sec-texto p{
  font-size:16.5px; line-height:1.6; color:#e7e9f2; margin:0;
  text-shadow:0 1px 8px rgba(0,0,0,.45);
}

/* Flechas */
.camep-sec-nav{
  position:absolute; bottom:22px; z-index:4;
  width:42px; height:42px; border-radius:50%; border:1px solid rgba(255,255,255,.45);
  background:rgba(29,17,66,.5); cursor:pointer; font-size:0; transition:all .2s ease;
}
.camep-sec-nav:hover{ background:var(--camep-oro); border-color:var(--camep-oro); }
.camep-sec-nav::before{
  content:""; display:block; width:10px; height:10px; margin:0 auto;
  border-top:2px solid #fff; border-right:2px solid #fff;
}
.camep-sec-prev{ right:74px; }
.camep-sec-prev::before{ transform:rotate(-135deg); margin-left:3px; }
.camep-sec-next{ right:22px; }
.camep-sec-next::before{ transform:rotate(45deg); margin-right:3px; }

/* Puntos */
.camep-sec-puntos{
  position:absolute; left:44px; bottom:30px; z-index:4;
  display:flex; gap:7px; flex-wrap:wrap; max-width:60%;
}
.camep-sec-punto{
  width:8px; height:8px; border-radius:50%; border:none; padding:0; cursor:pointer;
  background:rgba(255,255,255,.42); transition:all .25s ease;
}
.camep-sec-punto.is-activa{ background:var(--camep-oro-claro); width:24px; border-radius:4px; }

/* Celular */
@media (max-width:767px){
  .camep-sectores{ padding:52px 14px 58px; }
  .camep-sec-foto img{ height:400px; }
  .camep-sec-foto::after{
    background:linear-gradient(0deg,rgba(29,17,66,.93) 0%,rgba(29,17,66,.78) 45%,rgba(29,17,66,.25) 100%);
  }
  .camep-sec-texto{
    top:auto; bottom:74px; transform:none; padding:0 22px; max-width:100%;
  }
  .camep-sec-texto h3{ font-size:25px; }
  .camep-sec-texto p{ font-size:14.5px; }
  .camep-sec-puntos{ left:22px; bottom:26px; max-width:52%; }
  .camep-sec-nav{ bottom:18px; width:38px; height:38px; }
  .camep-sec-prev{ right:66px; } .camep-sec-next{ right:18px; }
}
/* El texto de sectores no debe desbordarse en celular */
@media (max-width:767px){
  .camep-sec-texto{
    left:0 !important; right:0 !important; max-width:none !important;
    width:auto !important; box-sizing:border-box;
  }
  .camep-sec-texto p{ max-width:100%; }
}
/* Los carruseles no deben crecer mas que su contenedor */
.camep-sec-track, .camep-eq-track{ grid-template-columns:minmax(0,1fr) !important; width:100%; }
.camep-sec-slide, .camep-eq-slide{ min-width:0; }
.camep-sec-texto, .camep-eq-texto{ min-width:0; }
.camep-sec-texto h3, .camep-sec-texto p{ overflow-wrap:break-word; }
/* --- Sectores: menos recorte en las fotos --- */
.camep-sec-foto{ position:relative; overflow:hidden; background:#241548; }
.camep-sec-foto img{
  height:auto !important; width:100% !important;
  aspect-ratio:16 / 9; object-fit:cover !important; object-position:center 55%;
}
@media (max-width:767px){
  .camep-sec-foto img{ aspect-ratio:4 / 3; object-position:center 50%; }
}
/* SECTORES v2: foto al costado, texto en panel aparte */
.camep-sec-carrusel{ background:var(--camep-morado-osc); }
.camep-sec-slide{
  display:grid !important; grid-template-columns:minmax(0,1.32fr) minmax(0,1fr) !important;
  align-items:stretch;
}
.camep-sec-foto{ background:#241548; }
.camep-sec-foto::after{ display:none !important; }
.camep-sec-foto img{
  aspect-ratio:4 / 3 !important; height:100% !important; width:100% !important;
  object-fit:cover !important; object-position:center 55%;
}
.camep-sec-texto{
  position:static !important; transform:none !important;
  display:flex; flex-direction:column; justify-content:center;
  background:var(--camep-morado-osc); padding:38px 44px 66px !important;
  max-width:none !important; width:auto !important;
}
.camep-sec-texto h3{ font-size:clamp(24px,2.6vw,34px); margin:0 0 14px; text-shadow:none; }
.camep-sec-texto p{ font-size:16px; line-height:1.65; color:#cfd2e2; text-shadow:none; margin:0; }
.camep-sec-texto h3::after{
  content:""; display:block; width:46px; height:3px; border-radius:2px;
  background:var(--camep-oro); margin-top:14px;
}
.camep-sec-puntos{ left:auto !important; right:26px !important; bottom:30px !important; max-width:30%; }
.camep-sec-nav{ bottom:26px; }
.camep-sec-prev{ left:auto; right:auto; }
/* Controles y version movil de sectores v2 */
.camep-sec-carrusel .camep-sec-prev{ right:78px !important; left:auto !important; }
.camep-sec-carrusel .camep-sec-next{ right:26px !important; }
.camep-sec-puntos{ left:44px !important; right:auto !important; bottom:30px !important; max-width:32%; }

@media (max-width:900px){
  .camep-sec-slide{ grid-template-columns:minmax(0,1fr) !important; }
  .camep-sec-foto img{ height:auto !important; }
  .camep-sec-texto{ padding:24px 22px 66px !important; }
  .camep-sec-texto h3{ font-size:23px; }
  .camep-sec-texto p{ font-size:15px; }
  .camep-sec-puntos{ left:22px !important; bottom:26px !important; max-width:50%; }
  .camep-sec-nav{ bottom:20px; width:36px; height:36px; }
  .camep-sec-carrusel .camep-sec-prev{ right:64px !important; }
  .camep-sec-carrusel .camep-sec-next{ right:20px !important; }
}
/* Correccion: la foto define la altura de la diapositiva */
.camep-sec-foto{ display:block !important; }
.camep-sec-foto img{
  height:auto !important; width:100% !important; display:block;
  aspect-ratio:4 / 3 !important; object-fit:cover !important;
}
/* ============================================================
   QUIENES SOMOS - tarjetas cuadradas (2026-08-08)
   ============================================================ */
.camep-quienes{
  background:var(--camep-morado-osc);
  background-image:radial-gradient(ellipse at 12% 0%,rgba(200,160,60,.16),transparent 58%);
  padding:78px 20px 84px;
}
.camep-q-wrap{
  max-width:1180px; margin:0 auto;
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.55fr); gap:52px; align-items:start;
}
.camep-q-eyebrow{
  display:inline-block; font-size:12px; font-weight:700; letter-spacing:.22em;
  text-transform:uppercase; color:var(--camep-oro-claro); margin-bottom:16px;
}
.camep-q-intro h2{
  font-size:clamp(34px,4.4vw,52px); font-weight:700; color:#fff;
  margin:0 0 18px; line-height:1.05; letter-spacing:-.01em;
}
.camep-q-intro h2::after{
  content:""; display:block; width:56px; height:3px; border-radius:2px;
  background:var(--camep-oro); margin-top:18px;
}
.camep-q-intro p{
  font-size:16.5px; line-height:1.7; color:#c6cadb; margin:22px 0 28px;
}
.camep-q-intro .camep-btn{ font-size:15px; }

.camep-q-grid{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px;
}
.camep-q-card{
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.10);
  border-radius:4px; padding:28px 26px 30px;
  position:relative; overflow:hidden;
  transition:border-color .25s ease, background .25s ease, transform .25s ease;
}
.camep-q-card::before{
  content:""; position:absolute; left:0; top:0; width:3px; height:0;
  background:var(--camep-oro); transition:height .3s ease;
}
.camep-q-card:hover{
  background:rgba(255,255,255,.075);
  border-color:rgba(200,160,60,.42);
  transform:translateY(-3px);
}
.camep-q-card:hover::before{ height:100%; }
.camep-q-num{
  display:block; font-size:13px; font-weight:700; letter-spacing:.18em;
  color:var(--camep-oro); margin-bottom:14px;
}
.camep-q-card h3{
  font-size:19px; font-weight:600; color:#fff; margin:0 0 10px; line-height:1.3;
  text-transform:none;
}
.camep-q-card p{
  font-size:14.5px; line-height:1.65; color:#b9bed2; margin:0;
}

@media (max-width:991px){
  .camep-q-wrap{ grid-template-columns:minmax(0,1fr); gap:38px; }
  .camep-q-intro h2::after{ margin-top:14px; }
}
@media (max-width:600px){
  .camep-quienes{ padding:56px 16px 60px; }
  .camep-q-grid{ grid-template-columns:minmax(0,1fr); gap:14px; }
  .camep-q-card{ padding:22px 20px 24px; }
  .camep-q-intro .camep-btn{ width:100%; text-align:center; }
}
/* Areas de evaluacion: 8 tarjetas con descripcion */
.camep-areas{
  grid-template-columns:repeat(auto-fit,minmax(255px,1fr)) !important;
  gap:18px !important; max-width:1120px !important; margin-bottom:56px !important;
  align-items:stretch;
}
.camep-area{
  padding:24px 22px 26px !important; display:flex; flex-direction:column;
  transition:box-shadow .22s ease, transform .22s ease;
}
.camep-area:hover{ box-shadow:0 6px 20px rgba(20,20,50,.12); transform:translateY(-2px); }
.camep-area h3{ margin:0 0 10px !important; font-size:16.5px !important; }
.camep-area p{
  font-size:14px; line-height:1.6; color:#5b6270; margin:0;
}
@media (max-width:600px){
  .camep-areas{ grid-template-columns:minmax(0,1fr) !important; }
  .camep-area p{ font-size:13.5px; }
}
/* CONTACTO con vista de Santiago */
.camep-contacto{ position:relative; overflow:hidden; isolation:isolate; padding:96px 20px 100px; text-align:center; }
.camep-ct-fondo{ position:absolute; inset:0; z-index:-2; background:url(/images/santiago.jpg) center 62% / cover no-repeat; transform:scale(1.02); }
.camep-ct-velo{ position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(29,17,66,.90) 0%,rgba(29,17,66,.80) 45%,rgba(29,17,66,.93) 100%); }
.camep-ct-wrap{ max-width:880px; margin:0 auto; }
.camep-ct-eyebrow{ display:inline-block; font-size:12px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--camep-oro-claro); margin-bottom:16px; }
.camep-contacto h2{ font-size:clamp(28px,3.8vw,44px); font-weight:600; color:#fff; margin:0 0 16px; line-height:1.15; text-shadow:0 2px 14px rgba(0,0,0,.45); }
.camep-ct-wrap > p{ font-size:17px; line-height:1.65; color:#dde0ec; margin:0 auto 30px; max-width:640px; text-shadow:0 1px 10px rgba(0,0,0,.5); }
.camep-ct-acciones{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-bottom:46px; }
.camep-ct-datos{ display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:22px; padding-top:32px; border-top:1px solid rgba(255,255,255,.18); }
.camep-ct-datos span{ display:block; font-size:11.5px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--camep-oro-claro); margin-bottom:7px; }
.camep-ct-datos strong{ display:block; font-size:15px; font-weight:500; color:#fff; line-height:1.5; }
.camep-ct-datos a{ color:#fff; text-decoration:underline; }
@media (max-width:767px){
  .camep-contacto{ padding:64px 18px 68px; }
  .camep-ct-acciones{ margin-bottom:36px; }
  .camep-ct-acciones .camep-btn{ width:100%; max-width:300px; }
  .camep-ct-datos{ gap:18px; padding-top:26px; }
}
/* ============================================================
   CONTACTO con vista de Santiago (2026-08-09)
   ============================================================ */
.camep-contacto{
  position:relative; overflow:hidden; isolation:isolate;
  padding:96px 20px 100px; text-align:center;
}
.camep-ct-fondo{
  position:absolute; inset:0; z-index:-2;
  background:url(/images/santiago.jpg) center 62% / cover no-repeat;
  transform:scale(1.02);
}
.camep-ct-velo{
  position:absolute; inset:0; z-index:-1;
  background:linear-gradient(180deg,rgba(29,17,66,.90) 0%,rgba(29,17,66,.80) 45%,rgba(29,17,66,.93) 100%);
}
.camep-ct-wrap{ max-width:880px; margin:0 auto; }
.camep-ct-eyebrow{
  display:inline-block; font-size:12px; font-weight:700; letter-spacing:.22em;
  text-transform:uppercase; color:var(--camep-oro-claro); margin-bottom:16px;
}
.camep-contacto h2{
  font-size:clamp(28px,3.8vw,44px); font-weight:600; color:#fff;
  margin:0 0 16px; line-height:1.15; text-shadow:0 2px 14px rgba(0,0,0,.45);
}
.camep-contacto > .camep-ct-wrap > p{
  font-size:17px; line-height:1.65; color:#dde0ec; margin:0 auto 30px; max-width:640px;
  text-shadow:0 1px 10px rgba(0,0,0,.5);
}
.camep-ct-acciones{
  display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-bottom:46px;
}
.camep-ct-datos{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:22px; padding-top:32px; border-top:1px solid rgba(255,255,255,.18);
}
.camep-ct-datos span{
  display:block; font-size:11.5px; font-weight:700; letter-spacing:.16em;
  text-transform:uppercase; color:var(--camep-oro-claro); margin-bottom:7px;
}
.camep-ct-datos strong{
  display:block; font-size:15px; font-weight:500; color:#fff; line-height:1.5;
}
.camep-ct-datos a{ color:#fff; text-decoration:underline; }
.camep-ct-datos a:hover{ color:var(--camep-oro-claro); }

@media (max-width:767px){
  .camep-contacto{ padding:64px 18px 68px; }
  .camep-ct-acciones{ margin-bottom:36px; }
  .camep-ct-acciones .camep-btn{ width:100%; max-width:300px; }
  .camep-ct-datos{ gap:18px; padding-top:26px; }
}
/* Pendon institucional - Empresa */
.camep-pendon{display:block;width:100%;height:auto;max-width:100%;margin:0 auto;border-radius:14px;box-shadow:0 18px 44px rgba(29,17,66,.20);}
@media (min-width:1025px){.camep-pendon{max-height:none;width:100%;}}
@media (max-width:1024px){.camep-pendon{width:auto;max-height:760px;}}
@media (max-width:767px){.camep-pendon{width:auto;max-height:600px;}}
@media (min-width:992px){
 .device_image:has(.camep-pendon){padding-left:0 !important;padding-right:0 !important;width:100% !important;}
 .device_image:has(.camep-pendon) .device_image_container{width:100% !important;max-width:100% !important;}
}