/* ---------- Sensor de temperatura y humedad ---------- */
.th-hero::before { display: none; }
.th-hero::after { background: radial-gradient(ellipse 50% 70% at 78% 45%, rgba(61,155,233,.22), rgba(61,155,233,0) 70%), radial-gradient(ellipse 40% 50% at 8% 100%, rgba(254,102,1,.12), rgba(254,102,1,0) 70%), linear-gradient(90deg, #081220 0%, rgba(8,18,32,.97) 50%, #0b1a2c 100%); }
.th-hero .vg-wrap { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 48px; align-items: center; }
.vg26 .th-hero h1 em { font-style: normal; color: #6cc3ff !important; }
.th-pills { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; padding: 0; list-style: none; }
.th-pills li { font-size: 13px; font-weight: 600; color: #fff; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.06); border-radius: 999px; padding: 7px 14px; }
.th-shot { position: relative; border-radius: 26px; overflow: hidden; box-shadow: 0 30px 80px rgba(0,0,0,.55); border: 1px solid rgba(255,255,255,.12); background: #000; }
.th-shot img { display: block; width: 100%; height: auto; }
.th-chip { position: absolute; display: flex; align-items: center; gap: 10px; background: rgba(8,18,32,.88); color: #fff; font-size: 13px; font-weight: 700; padding: 9px 13px; border-radius: 12px; backdrop-filter: blur(4px); line-height: 1.25; }
.th-chip small { display: block; font-weight: 500; color: #b4c4d7; font-size: 11.5px; }
.th-chip i { width: 10px; height: 10px; border-radius: 50%; background: #4ade80; flex: none; box-shadow: 0 0 0 4px rgba(74,222,128,.25); }
.th-chip--a { left: 16px; bottom: 16px; } .th-chip--b { right: 16px; top: 16px; } .th-chip--b i { background: #ff7a1a; box-shadow: 0 0 0 4px rgba(255,122,26,.3); }

.vg26 main > .vg-section.th-kpis { background: linear-gradient(90deg, #1f6fb8, #3d9be9) !important; padding: 34px 0; }
.th-kpis .vg-wrap { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.th-kpis b { display: block; font-family: var(--vg-display); font-size: 32px; font-weight: 800; letter-spacing: -.02em; line-height: 1.1; color: #fff; }
.th-kpis span { font-size: 14px; color: #dbeeff; }

.th-what { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-top: 34px; }
.th-w { background: #fff; border: 1px solid var(--vg-line); border-radius: 20px; padding: 24px; }
.th-w .vx-ic { background: #e6f3fd; color: #1f6fb8; }
.th-w h3 { font-family: var(--vg-display); font-size: 18px; color: var(--vg-ink); margin: 12px 0 6px; }
.th-w p { font-size: 14.5px; color: var(--vg-muted); line-height: 1.55; margin: 0; }

.th-how__grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 36px; align-items: center; margin-top: 34px; }
.th-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; counter-reset: th; }
.th-steps li { background: #fff; border: 1px solid var(--vg-line); border-radius: 20px; padding: 20px 22px 20px 70px; position: relative; box-shadow: 0 16px 40px rgba(11,22,36,.05); }
.th-steps li::before { counter-increment: th; content: counter(th); position: absolute; left: 20px; top: 20px; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #3d9be9; color: #fff; font-weight: 800; }
.th-steps h3 { font-family: var(--vg-display); font-size: 17px; color: var(--vg-ink); margin: 3px 0 4px; }
.th-steps p { font-size: 14.5px; color: var(--vg-muted); line-height: 1.5; margin: 0; }
.th-dash { background: #0f1d2e; border-radius: 24px; padding: 22px; color: #fff; box-shadow: 0 30px 70px rgba(11,22,36,.35); }
.th-dash__top { display: flex; justify-content: space-between; gap: 14px; align-items: flex-start; margin-bottom: 8px; }
.th-dash__top b { display: block; font-size: 16px; } .th-dash__top span { font-size: 13px; color: #9fb2c9; }
.th-dash__now { text-align: right; } .th-dash__now b { font-family: var(--vg-display); font-size: 30px; color: #6cc3ff; line-height: 1; }
.th-dash svg { display: block; width: 100%; height: auto; }
.th-dash svg text { fill: #6f849c; font-size: 11px; font-family: var(--vg-font); } .th-dash svg text.b { fill: #6cc3ff; font-weight: 700; }
.th-als { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 8px; }
.th-al { display: grid; grid-template-columns: 52px 1fr; gap: 10px; align-items: center; background: rgba(255,255,255,.05); border-radius: 12px; padding: 9px 12px; font-size: 13.5px; border-left: 3px solid #6f849c; }
.th-al b { color: #9fb2c9; font-size: 13px; } .th-al small { display: block; color: #8ea3bb; font-size: 12px; }
.th-al--w { border-left-color: #ff7a1a; } .th-al--w span { color: #ffb27a; font-weight: 700; }
.th-al--ok { border-left-color: #4ade80; } .th-al--ok span { color: #86efac; font-weight: 700; }

.th-models { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 38px; }
.th-model { background: #fff; border: 1px solid var(--vg-line); border-radius: 24px; overflow: hidden; box-shadow: 0 20px 50px rgba(11,22,36,.06); display: flex; flex-direction: column; }
.th-model__img { background: #000; }
.th-model__img img { display: block; width: 100%; height: auto; }
.th-model__body { padding: 24px 26px 26px; display: flex; flex-direction: column; flex: 1; }
.th-model h3 { font-family: var(--vg-display); font-size: 26px; font-weight: 800; color: var(--vg-ink); margin: 0; letter-spacing: -.02em; }
.th-model h3 small { display: block; font-size: 13px; font-weight: 600; color: var(--vg-orange); letter-spacing: .08em; text-transform: uppercase; margin-bottom: 4px; }
.th-model p { font-size: 15px; color: var(--vg-muted); line-height: 1.55; margin: 10px 0 14px; }
.th-model ul { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 7px; }
.th-model li { font-size: 14px; color: var(--vg-text); padding-left: 22px; position: relative; }
.th-model li::before { content: ""; position: absolute; left: 0; top: 6px; width: 10px; height: 10px; border-radius: 50%; background: #3d9be9; }
.th-model__for { margin-top: auto; align-self: flex-start; font-size: 13px; font-weight: 600; color: var(--vg-ink); background: #f4f7fa; border-radius: 10px; padding: 8px 12px; }
.th-model--atex { border-color: #ffc400; } .th-model--atex li::before { background: #ffc400; } .th-model--atex .th-model__for { background: #fff6cc; }
.th-model--en { border-color: #3d9be9; } .th-model--en .th-model__for { background: #e6f3fd; }

.th-cmp { margin-top: 32px; background: #fff; border: 1px solid var(--vg-line); border-radius: 24px; overflow: hidden; box-shadow: 0 20px 50px rgba(11,22,36,.06); }
.th-cmp table { width: 100%; border-collapse: collapse; font-size: 15px; }
.th-cmp th, .th-cmp td { padding: 13px 20px; text-align: left; border-bottom: 1px solid var(--vg-line); vertical-align: top; }
.th-cmp thead th { background: var(--vg-ink); color: #fff; font-size: 14px; }
.th-cmp thead th:not(:first-child) { font-size: 18px; font-weight: 800; font-family: var(--vg-display); }
.th-cmp tbody th { font-weight: 600; color: var(--vg-ink); width: 28%; background: #fafbfc; }
.th-cmp tr:last-child th, .th-cmp tr:last-child td { border-bottom: 0; }
.th-plus { color: #1f6fb8; font-weight: 700; } .th-plus--atex { color: #b36b00; }
.th-note { font-size: 12.5px; color: var(--vg-muted); margin-top: 14px; }
.th-en { display: flex; gap: 16px; align-items: flex-start; margin-top: 24px; background: #e6f3fd; border-radius: 20px; padding: 22px 24px; }
.th-en .vx-ic { flex: none; background: #fff; color: #1f6fb8; }
.th-en b { display: block; font-family: var(--vg-display); font-size: 17px; color: var(--vg-ink); margin-bottom: 4px; }
.th-en p { margin: 0; font-size: 15px; color: var(--vg-text); line-height: 1.6; max-width: 900px; }

.th-cases { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 34px; }
.th-case { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--vg-line); border-radius: 22px; overflow: hidden; box-shadow: 0 18px 44px rgba(11,22,36,.06); }
.th-case__img { position: relative; aspect-ratio: 3 / 2; overflow: hidden; }
.th-case__img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.th-case__tag { position: absolute; left: 14px; top: 14px; background: rgba(8,18,32,.84); color: #fff; font-size: 12px; font-weight: 700; padding: 6px 11px; border-radius: 999px; }
.th-case__body { padding: 22px 24px 24px; }
.th-case h3 { font-family: var(--vg-display); font-size: 19px; line-height: 1.3; color: var(--vg-ink); margin: 0 0 8px; }
.th-case p { font-size: 14.5px; color: var(--vg-muted); line-height: 1.55; margin: 0 0 14px; }
.th-case ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; }
.th-case li { font-size: 14px; color: var(--vg-text); padding-left: 22px; position: relative; }
.th-case li::before { content: ""; position: absolute; left: 0; top: 4px; width: 14px; height: 14px; border-radius: 50%; background: #e6f3fd url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231f6fb8' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 9px no-repeat; }

@media (max-width: 1000px) { .th-what { grid-template-columns: repeat(2, minmax(0, 1fr)); } .th-models, .th-cases { grid-template-columns: minmax(0, 1fr); max-width: 560px; } }
@media (max-width: 900px) {
  .th-hero .vg-wrap, .th-how__grid { grid-template-columns: minmax(0, 1fr); }
  .th-kpis .vg-wrap { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .th-what { grid-template-columns: minmax(0, 1fr); }
  .th-kpis b { font-size: 24px; }
  .th-cmp { overflow-x: auto; } .th-cmp table { min-width: 640px; font-size: 14px; } .th-cmp th, .th-cmp td { padding: 11px 14px; }
  .th-chip { font-size: 11px; padding: 7px 10px; }
  .th-dash { padding: 16px; } .th-dash__now b { font-size: 24px; }
}
