/* =========================================================
   FACILITY ONE — HERO INTERATIVO (substitui o banner em imagem)
   ========================================================= */
.hero-ai{
  --hai-navy-deep:#054a9e;
  --hai-navy-mid:#075CCD;
  --hai-blue-glow:#2f7ae0;
  --hai-cyan:#3fd6ec;
  --hai-orange:#ff8a1e;
  --hai-orange-2:#ffab4d;
  --hai-green:#3ddc84;
  --hai-card-bg:rgba(255,255,255,0.06);
  --hai-card-border:rgba(255,255,255,0.14);
  --hai-ink:#eef2ff;
  padding:14px 0 8px;
}

.hai-panel{
  position:relative;
  border-radius:28px;
  overflow:hidden;
  background:
    radial-gradient(circle at 74% 46%, var(--hai-blue-glow) 0%, rgba(47,95,224,.3) 22%, transparent 46%),
    linear-gradient(135deg, var(--hai-navy-deep) 0%, var(--hai-navy-mid) 55%, #0d6fe8 100%);
  padding:26px 40px 24px 44px;
  box-shadow:0 30px 80px rgba(2,6,30,.45);
  color:var(--hai-ink);
  font-family:'Inter',sans-serif;
}

.hai-rings{
  position:absolute;
  top:50%; left:76%;
  width:520px; height:520px;
  transform:translate(-50%,-50%);
  pointer-events:none;
}
.hai-rings span{
  position:absolute; inset:0;
  border-radius:50%;
  border:1px solid rgba(120,170,255,.16);
}
.hai-rings span:nth-child(1){ inset:60px; }
.hai-rings span:nth-child(2){ inset:30px; }
.hai-rings span:nth-child(3){ inset:0; }

.hai-layout{
  position:relative;
  display:grid;
  grid-template-columns:1.15fr 1fr 300px;
  column-gap:14px;
  row-gap:0;
  align-items:stretch;
  z-index:2;
}
.hai-left{ display:flex; flex-direction:column; justify-content:flex-start; }

/* ---------- ESQUERDA ---------- */
.hai-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 16px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.04);
  font-size:12.5px;
  letter-spacing:.03em;
  color:#cfe0ff;
  font-weight:600;
  margin-bottom:22px;
}
.hai-badge svg{ width:14px; height:14px; }

.hero-ai h1{
  font-family:'Sora',sans-serif;
  font-size:clamp(28px,3.6vw,42px);
  line-height:1.12;
  font-weight:700;
  margin:0 0 6px;
  color:#fbfdff;
  letter-spacing:normal;
}
.hero-ai h1 .hai-accent{
  display:block;
  color:var(--hai-cyan);
  font-weight:800;
}

.hai-lede{
  color:#a9bce8;
  font-size:15px;
  line-height:1.55;
  max-width:460px;
  margin:14px 0 22px;
}

.hai-ask-row{
  display:flex;
  align-items:center;
  gap:10px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.16);
  border-radius:16px;
  padding:8px 8px 8px 18px;
  max-width:520px;
  transition:border-color .2s ease, background .2s ease;
}
.hai-ask-row:focus-within{
  border-color:rgba(63,214,236,.55);
  background:rgba(255,255,255,.09);
}
.hai-ask-row svg.hai-spark{ flex-shrink:0; color:var(--hai-cyan); }
.hai-ask-row input{
  flex:1;
  background:none;
  border:none;
  outline:0;
  color:#f2f6ff;
  font-size:14.5px;
  font-family:'Inter',sans-serif;
  padding:10px 0;
}
.hai-ask-row input::placeholder{ color:#8fa2d6; }
.hai-ask-btn{
  width:40px; height:40px;
  border-radius:50%;
  border:none;
  background:linear-gradient(135deg,#2f6cf0,#1c46c9);
  color:#fff;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer;
  flex-shrink:0;
  transition:transform .15s ease, filter .15s ease;
}
.hai-ask-btn:hover{ filter:brightness(1.12); }
.hai-ask-btn:active{ transform:scale(.92); }
.hai-ask-btn svg{ width:17px; height:17px; }

.hai-response-box{
  max-width:520px;
  margin-top:12px;
  font-size:13.5px;
  line-height:1.5;
  color:#dbe6ff;
  background:rgba(63,214,236,.08);
  border:1px solid rgba(63,214,236,.28);
  border-radius:14px;
  padding:12px 16px;
  display:none;
}
.hai-response-box.show{ display:block; animation:haiFadein .35s ease; }
.hai-response-box b{ color:#8ff0ff; }

.hai-examples-label{
  font-size:12px;
  color:#7f93c4;
  margin:22px 0 10px;
}

.hai-chip-row{
  grid-column:1 / -1;
  align-self:end;
  margin-top:0;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.1);
}
.hai-chip-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:11px;
  width:100%;
}
.hai-chip{
  display:flex;
  align-items:center;
  gap:9px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  padding:11px 12px;
  cursor:pointer;
  text-align:left;
  color:#eef3ff;
  font-family:'Inter',sans-serif;
  transition:background .18s ease, border-color .18s ease, transform .12s ease;
}
.hai-chip:hover{ background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.3); }
.hai-chip:active{ transform:scale(.97); }
.hai-chip.active{ border-color:var(--hai-cyan); background:rgba(63,214,236,.12); }
.hai-chip .hai-ic{
  width:30px; height:30px;
  border-radius:9px;
  display:flex; align-items:center; justify-content:center;
  font-size:15px;
  flex-shrink:0;
}
.hai-chip .hai-txt{ min-width:0; }
.hai-chip .hai-txt strong{ display:block; font-size:13px; font-weight:600; }
.hai-chip .hai-txt span{ display:block; font-size:10.5px; color:#93a6d4; margin-top:1px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.hai-ic.hai-occ{ background:rgba(63,214,236,.18); }
.hai-ic.hai-chk{ background:rgba(255,171,77,.18); }
.hai-ic.hai-tar{ background:rgba(61,220,132,.18); }
.hai-ic.hai-fin{ background:rgba(255,138,30,.18); }
.hai-ic.hai-eve{ background:rgba(160,130,255,.18); }
.hai-ic.hai-ale{ background:rgba(255,90,90,.18); }

/* ---------- CENTRO: MASCOTE ---------- */
.hai-mascot-col{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  padding:0;
}

.hai-bubble{
  position:relative;
  background:#fff;
  color:#0b1a4d;
  border-radius:18px;
  padding:14px 20px;
  max-width:250px;
  font-size:13.5px;
  line-height:1.42;
  box-shadow:0 18px 40px rgba(0,0,0,.28);
  margin:0 0 8px -30px;
  animation:haiFloatIn .6s ease both;
}
.hai-bubble strong{ display:block; font-family:'Sora',sans-serif; font-size:15px; margin-bottom:2px; }
.hai-bubble:after{
  content:"";
  position:absolute;
  left:38px; bottom:-11px;
  width:0; height:0;
  border-left:12px solid transparent;
  border-right:12px solid transparent;
  border-top:12px solid #fff;
}

.hai-robot-wrap{
  width:min(260px,76%);
  margin-top:-22px;
  filter:drop-shadow(0 20px 30px rgba(0,0,0,.35));
  cursor:pointer;
  animation:haiBob 4.5s ease-in-out infinite;
}
.hai-robot-wrap:active{ animation-play-state:paused; }
.hai-robot-img{ width:100%; display:block; }

/* ---------- DIREITA ---------- */
.hai-right{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:12px;
  height:100%;
}
.hai-stat{
  background:var(--hai-card-bg);
  border:1px solid var(--hai-card-border);
  border-radius:14px;
  padding:12px 15px;
  display:flex;
  align-items:center;
  gap:12px;
  cursor:default;
  transition:background .18s ease;
}
.hai-stat.clickable{ cursor:pointer; }
.hai-stat.clickable:hover{ background:rgba(255,255,255,.1); }

.hai-stat .hai-dot{
  width:10px; height:10px;
  border-radius:50%;
  background:var(--hai-green);
  box-shadow:0 0 0 4px rgba(61,220,132,.18);
  flex-shrink:0;
}
.hai-stat .hai-icon{
  width:36px; height:36px;
  border-radius:10px;
  background:rgba(255,255,255,.08);
  display:flex; align-items:center; justify-content:center;
  font-size:17px;
  flex-shrink:0;
}
.hai-stat .hai-body{ flex:1; min-width:0; }
.hai-stat .hai-big{
  font-family:'Sora',sans-serif;
  font-size:19px;
  font-weight:700;
  line-height:1.1;
}
.hai-stat .hai-lbl{ font-size:11.5px; color:#9db0da; margin-top:2px; }
.hai-delta{
  font-size:12px;
  font-weight:700;
  display:flex;
  align-items:center;
  gap:3px;
  flex-shrink:0;
}
.hai-delta.up{ color:var(--hai-green); }
.hai-delta.arrow{ color:var(--hai-green); font-size:16px; }

.hai-cta{
  flex:0 0 auto;
  margin-top:4px;
  border:none;
  border-radius:16px;
  padding:16px 18px;
  background:linear-gradient(135deg, var(--hai-orange), var(--hai-orange-2));
  color:#1a0e00;
  font-family:'Sora',sans-serif;
  font-weight:700;
  font-size:15px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(255,138,30,.35);
  transition:transform .15s ease, box-shadow .15s ease;
  text-align:center;
}
.hai-cta:hover{ transform:translateY(-2px); box-shadow:0 18px 36px rgba(255,138,30,.45); }
.hai-cta:active{ transform:translateY(0); }

@keyframes haiFadein{ from{opacity:0; transform:translateY(4px);} to{opacity:1; transform:none;} }
@keyframes haiFloatIn{ from{opacity:0; transform:translateY(10px);} to{opacity:1; transform:none;} }
@keyframes haiBob{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-9px);} }
@keyframes haiPopIn{ from{opacity:0; transform:scale(.9) translateY(12px);} to{opacity:1; transform:none;} }

/* ---------- MODAL ---------- */
.hai-modal-overlay{
  position:fixed; inset:0;
  background:rgba(3,7,25,.6);
  display:none;
  align-items:center; justify-content:center;
  z-index:120;
  padding:20px;
}
.hai-modal-overlay.show{ display:flex; }
.hai-modal{
  background:#0d1f57;
  border:1px solid rgba(255,255,255,.15);
  border-radius:20px;
  max-width:380px;
  width:100%;
  padding:26px 26px 22px;
  color:#eef2ff;
  animation:haiPopIn .28s ease both;
  box-shadow:0 30px 70px rgba(0,0,0,.5);
}
.hai-modal h3{ font-family:'Sora',sans-serif; margin:0 0 10px; font-size:18px; }
.hai-modal p{ font-size:13.5px; line-height:1.55; color:#c3cff2; margin:0 0 16px; }
.hai-modal ul{ margin:0 0 18px; padding-left:18px; font-size:13px; color:#dbe4fc; line-height:1.7; }
.hai-modal button{
  width:100%;
  border:none; border-radius:12px;
  padding:11px;
  background:rgba(255,255,255,.1);
  color:#fff;
  font-weight:600;
  font-family:'Inter',sans-serif;
  cursor:pointer;
  transition:background .15s ease;
}
.hai-modal button:hover{ background:rgba(255,255,255,.18); }

@media(max-width:980px){
  .hai-layout{ grid-template-columns:1fr; }
  .hai-mascot-col{ order:-1; align-items:center; }
  .hai-bubble{ margin-left:0; }
  .hai-right{ flex-direction:row; flex-wrap:wrap; height:auto; }
  .hai-stat{ flex:1 1 200px; }
  .hai-cta{ flex:1 1 100%; }
  .hai-panel{ padding:28px 22px; }
  .hai-chip-grid{ grid-template-columns:repeat(3,1fr); }
}
@media(max-width:560px){
  .hero-ai{ padding:8px 0; }
  .hai-chip-grid{ grid-template-columns:repeat(2,1fr); }
  .hai-chip .hai-txt span{ white-space:normal; }
  .hai-panel{ padding:24px 16px; border-radius:22px; }
  .hai-lede,.hai-ask-row,.hai-chip-grid,.hai-response-box{ max-width:100%; }
}
