
/* Drones México — Inspección termográfica V1.1.10 */
.dm-thermal-shell{width:min(1120px,calc(100% - 48px));margin-inline:auto}
.dm-thermal-eyebrow{margin:0 0 8px;color:#2f79b8;font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.dm-thermal-intro{padding:64px 0;background:#f3f6f9}
.dm-thermal-intro__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:48px;align-items:center}
.dm-thermal-intro h2,.dm-thermal-heading h2,.dm-thermal-process h2,.dm-thermal-contact h2{margin:0 0 18px;color:#173753;font-weight:500;line-height:1.2}
.dm-thermal-intro p,.dm-thermal-heading p,.dm-thermal-process p,.dm-thermal-contact p{color:#294a64;line-height:1.7}
.dm-thermal-intro__visual,.dm-thermal-process__visual{margin:0;overflow:hidden;border:1px solid #d9e3ea;border-radius:8px;background:#fff}
.dm-thermal-intro__visual img,.dm-thermal-process__visual img{display:block;width:100%;height:auto}
.dm-thermal-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:26px}
.dm-thermal-link{color:#2f79b8;font-weight:600}
.dm-thermal-band,.dm-thermal-section,.dm-thermal-contact{padding:64px 0}
.dm-thermal-band{background:#fff}
.dm-thermal-band--muted{background:#f3f6f9}
.dm-thermal-heading{max-width:780px;margin:0 auto 32px;text-align:center}
.dm-thermal-grid{display:grid;gap:18px}
.dm-thermal-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.dm-thermal-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.dm-thermal-card,.dm-thermal-benefit{border:1px solid #dbe5ec;border-radius:8px;background:#fff}
.dm-thermal-card{padding:26px}
.dm-thermal-card h3{margin:0 0 10px;color:#173753;font-size:1.1rem;font-weight:600}
.dm-thermal-card p{margin:0;color:#4f6678;line-height:1.6}
.dm-thermal-process{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);gap:48px;align-items:center}
.dm-thermal-steps{list-style:none;margin:26px 0 0;padding:0}
.dm-thermal-steps li{display:grid;grid-template-columns:48px 1fr;gap:14px;padding:14px 0;border-top:1px solid #dbe5ec}
.dm-thermal-steps li span{color:#2f79b8;font-size:.8rem;font-weight:700;letter-spacing:.08em}
.dm-thermal-steps strong{display:block;color:#173753;margin-bottom:4px}
.dm-thermal-steps p{margin:0;color:#526b7e;line-height:1.55}
.dm-thermal-benefit{padding:24px}
.dm-thermal-benefit strong{display:block;color:#173753;margin-bottom:8px}
.dm-thermal-benefit span{display:block;color:#526b7e;line-height:1.5}
.dm-thermal-contact{background:#fff}
.dm-thermal-contact__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:36px;align-items:start}
.dm-thermal-contact__note{padding:28px;border-left:4px solid #2f79b8;background:#f3f6f9}
.dm-thermal-contact__note strong{display:block;color:#173753;margin-bottom:12px}
.dm-thermal-contact__note ul{margin:0;padding-left:20px;color:#3f5f77;line-height:1.7}
@media(max-width:900px){
  .dm-thermal-intro__grid,.dm-thermal-process,.dm-thermal-contact__grid{grid-template-columns:1fr}
  .dm-thermal-grid--3{grid-template-columns:1fr}
  .dm-thermal-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .dm-thermal-shell{width:calc(100% - 32px)}
  .dm-thermal-intro,.dm-thermal-band,.dm-thermal-section,.dm-thermal-contact{padding:44px 0}
  .dm-thermal-grid--4{grid-template-columns:1fr}
}


/* =====================================================
   V1.1.11 — Sustitución de imágenes por paneles gráficos
===================================================== */
.dm-thermal-panel{
  min-height:360px;
  padding:34px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  color:#fff;
  background:#1f6fae;
  border:0;
  box-shadow:none;
}
.dm-thermal-panel__icon{
  width:54px;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:24px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:50%;
  font-size:1.4rem;
}
.dm-thermal-panel__kicker{
  margin:0 0 8px;
  color:inherit;
  font-size:.76rem;
  font-weight:600;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.dm-thermal-panel h3,
.dm-thermal-process-card h3{
  margin:0 0 14px;
  color:inherit;
  font-size:1.45rem;
  font-weight:500;
  line-height:1.25;
}
.dm-thermal-panel > p{
  margin:0;
  color:rgba(255,255,255,.92);
  line-height:1.65;
}
.dm-thermal-panel__metrics{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.dm-thermal-panel__metrics div{
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.28);
}
.dm-thermal-panel__metrics strong,
.dm-thermal-panel__metrics span{
  display:block;
}
.dm-thermal-panel__metrics strong{
  margin-bottom:3px;
  font-size:.98rem;
  font-weight:600;
}
.dm-thermal-panel__metrics span{
  color:rgba(255,255,255,.76);
  font-size:.86rem;
}

.dm-thermal-process-card{
  min-height:338px;
  padding:32px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:#f3f6f9;
  border:1px solid #d9e3ea;
  border-radius:8px;
}
.dm-thermal-process-card__header{
  margin-bottom:28px;
}
.dm-thermal-process-card__header .dm-thermal-panel__kicker{
  color:#2f79b8;
}
.dm-thermal-process-card h3{
  color:#173753;
}
.dm-thermal-process-card__flow{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr;
  gap:10px;
  align-items:center;
}
.dm-thermal-process-node{
  min-height:126px;
  padding:20px 16px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:#fff;
  border:1px solid #dbe5ec;
  border-radius:6px;
}
.dm-thermal-process-node span{
  margin-bottom:8px;
  color:#2f79b8;
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.08em;
}
.dm-thermal-process-node strong{
  margin-bottom:5px;
  color:#173753;
  font-size:1rem;
}
.dm-thermal-process-node small{
  color:#60788a;
  font-size:.8rem;
  line-height:1.4;
}
.dm-thermal-process-arrow{
  color:#2f79b8;
  font-size:1.25rem;
}
.dm-thermal-process-card__footer{
  margin-top:24px;
  padding:18px 20px;
  background:#1f6fae;
  color:#fff;
  border-radius:6px;
}
.dm-thermal-process-card__footer strong{
  display:block;
  margin-bottom:5px;
}
.dm-thermal-process-card__footer p{
  margin:0;
  color:rgba(255,255,255,.9);
  line-height:1.5;
}

@media(max-width:900px){
  .dm-thermal-panel{
    min-height:auto;
  }
}
@media(max-width:620px){
  .dm-thermal-process-card__flow{
    grid-template-columns:1fr;
  }
  .dm-thermal-process-arrow{
    transform:rotate(90deg);
    text-align:center;
  }
}


/* =====================================================
   V1.1.12 — Ajustes finales panel y flujo con IA
===================================================== */

/* El panel azul inicia directamente con el contenido; se elimina el
   elemento circular decorativo de la versión anterior. */
.dm-thermal-panel{
  padding-top:40px;
}

/* Imagen de mayor resolución dentro del panel de flujo. */
.dm-thermal-process-card__image{
  margin:0 0 24px;
  overflow:hidden;
  border-radius:6px;
  background:#fff;
}
.dm-thermal-process-card__image img{
  display:block;
  width:100%;
  height:150px;
  object-fit:cover;
}

/* Ajuste para acomodar textos algo más largos de IA / visión artificial. */
.dm-thermal-process-node{
  min-height:146px;
}
.dm-thermal-process-node small{
  line-height:1.45;
}

@media(max-width:620px){
  .dm-thermal-process-card__image img{
    height:auto;
  }
}


/* =====================================================
   V1.1.13 — Mayor color y énfasis visual en aplicaciones
   y beneficios
===================================================== */
.dm-thermal-grid--apps .dm-thermal-card--application{
  position:relative;
  overflow:hidden;
  padding:0 26px 26px;
  background:#ffffff;
}
.dm-thermal-card__accent{
  height:8px;
  margin:0 -26px 22px;
  background:linear-gradient(90deg,#2f79b8 0%, #74a9d4 100%);
}
.dm-thermal-card__icon{
  width:48px;
  height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:16px;
  border-radius:12px;
  background:#edf5fb;
  color:#2f79b8;
  font-size:1.2rem;
  line-height:1;
}
.dm-thermal-grid--apps .dm-thermal-card{
  box-shadow:0 8px 22px rgba(23,55,83,.05);
}
.dm-thermal-grid--apps .dm-thermal-card h3{
  margin-top:0;
}

.dm-thermal-grid--benefits .dm-thermal-benefit--featured{
  position:relative;
  padding:28px 24px 24px;
  background:#ffffff;
  border:1px solid #dbe5ec;
  box-shadow:0 8px 22px rgba(23,55,83,.05);
}
.dm-thermal-benefit__badge{
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
  border-radius:50%;
  background:#2f79b8;
  color:#fff;
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.06em;
}
.dm-thermal-grid--benefits .dm-thermal-benefit--featured::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:6px;
  background:linear-gradient(90deg,#2f79b8 0%, #74a9d4 100%);
  border-bottom-left-radius:8px;
  border-bottom-right-radius:8px;
}
.dm-thermal-grid--benefits .dm-thermal-benefit strong{
  font-size:1.05rem;
}

@media(max-width:620px){
  .dm-thermal-card__accent{
    margin-left:-20px;
    margin-right:-20px;
  }
}
