:root{--blue:#0b69f3;--blue2:#4b98ff;--ink:#10243d;--muted:#687a90;--line:rgba(20,62,108,.10);--shadow:0 24px 70px rgba(27,70,120,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#fbfdff,#f3f8fe 45%,#fff);overflow-x:hidden}a{text-decoration:none;color:inherit}.container{width:min(calc(100% - 40px),1240px);margin:auto}header{position:sticky;top:0;z-index:100;padding:18px 0}.nav{height:66px;padding:0 14px 0 20px;display:flex;align-items:center;justify-content:space-between;border:1px solid rgba(255,255,255,.8);border-radius:21px;background:rgba(255,255,255,.84);backdrop-filter:blur(20px);box-shadow:0 10px 35px rgba(26,67,115,.08)}.brand{font-size:24px;font-weight:700}.brand b{font-size:14px;letter-spacing:.16em;color:var(--blue);margin-left:10px}nav{display:flex;gap:30px}nav a{font-size:14px;color:#566a81}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 26px;border-radius:16px;background:linear-gradient(135deg,var(--blue),var(--blue2));color:white;font-size:14px;font-weight:600;box-shadow:0 16px 34px rgba(11,105,243,.23);transition:.25s}.btn:hover{transform:translateY(-3px)}.btn.small{min-height:44px;padding:0 18px}.btn.ghost{background:#fff;color:#29445f;border:1px solid var(--line);box-shadow:0 12px 30px rgba(26,67,115,.07)}.hero{padding:58px 0 110px}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}.tag{display:inline-flex;padding:9px 14px;border-radius:999px;background:#fff;border:1px solid rgba(11,105,243,.12);font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--blue)}h1{font-size:clamp(50px,5.2vw,76px);line-height:1.03;letter-spacing:-.055em;font-weight:300;margin:26px 0 24px}h1 strong{display:block;color:var(--blue);font-weight:600}.copy>p{font-size:18px;line-height:1.75;color:var(--muted)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.pills{display:flex;gap:9px;flex-wrap:wrap;margin-top:38px}.pills span{padding:9px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:11px;color:#607289}.stage{position:relative;min-height:690px;display:flex;align-items:center;justify-content:center}.halo{position:absolute;width:450px;height:450px;border-radius:50%;background:radial-gradient(circle,rgba(74,150,255,.28),rgba(74,150,255,.07) 52%,transparent 72%);filter:blur(14px)}.orbit{position:absolute;border-radius:50%;border:1px dashed rgba(28,111,220,.16)}.o1{width:540px;height:540px}.o2{width:430px;height:430px}.robot{position:relative;z-index:4;width:450px;filter:drop-shadow(0 30px 28px rgba(19,60,105,.18))}.card{position:absolute;z-index:7;min-width:205px;padding:14px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.86);backdrop-filter:blur(22px);box-shadow:var(--shadow)}.card b,.card small{display:block}.card b{font-size:13px}.card small{font-size:10px;color:#74869a;margin-top:4px}.c1{top:80px;left:-25px}.c2{top:48px;right:-28px}.c3{bottom:165px;left:-45px}.c4{bottom:145px;right:-35px}.chat{position:absolute;z-index:10;right:10px;bottom:-5px;width:390px;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.88);backdrop-filter:blur(24px);box-shadow:0 30px 80px rgba(22,63,110,.18)}.chat-head{height:70px;display:flex;align-items:center;gap:12px;padding:14px 17px;border-bottom:1px solid var(--line)}.chat-head>span{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;color:white;background:linear-gradient(135deg,var(--blue),var(--blue2));font-size:11px;font-weight:700}.chat-head b,.chat-head small{display:block}.chat-head b{font-size:13px}.chat-head small{font-size:10px;color:#7c8da1;margin-top:4px}.chat-body{height:250px;padding:16px;display:flex;flex-direction:column;gap:10px;overflow:hidden;background:linear-gradient(180deg,#f8fbff,#fff)}.message{max-width:86%;padding:10px 12px;border-radius:14px;font-size:11px;line-height:1.5}.message.user{align-self:flex-end;background:linear-gradient(135deg,var(--blue),var(--blue2));color:white}.message.one{align-self:flex-start;background:#fff;border:1px solid var(--line);color:#405871}.typing{display:flex;gap:4px;align-self:flex-start;padding:10px 13px;border-radius:14px;background:#fff;border:1px solid var(--line)}.typing i{width:5px;height:5px;border-radius:50%;background:#8293a7}.impact,.plans{padding:120px 0;background:rgba(255,255,255,.62)}.heading{text-align:center;max-width:800px;margin:0 auto 55px}.heading>span,.overline,.box>div>span{font-size:11px;font-weight:700;letter-spacing:.15em;color:var(--blue)}.heading h2,.demo h2,.box h2{font-size:clamp(36px,4vw,58px);line-height:1.12;font-weight:300;letter-spacing:-.045em;margin:16px 0}.heading p,.demo p{color:var(--muted);line-height:1.75}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.grid4 article{padding:28px 24px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(155deg,#fff,#f8fbff);box-shadow:0 18px 50px rgba(20,60,105,.07)}.grid4 em{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#eef5ff;color:var(--blue);font-style:normal;font-weight:700;font-size:12px}.grid4 h3{font-size:18px;margin:22px 0 12px}.grid4 p{font-size:13px;line-height:1.7;color:#728398}.demo{padding:130px 0}.demo-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.commands{display:grid;grid-template-columns:1fr 1fr;gap:14px}.commands button{min-height:84px;text-align:left;padding:18px 18px 18px 46px;border:1px solid var(--line);border-radius:19px;background:#fff;color:#425a74;font-family:inherit;position:relative;box-shadow:0 14px 38px rgba(20,60,105,.07)}.commands button:before{content:'›';position:absolute;left:17px;color:var(--blue);font-size:22px}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.plans-grid article{position:relative;display:flex;flex-direction:column;padding:30px;min-height:470px;border-radius:27px;border:1px solid var(--line);background:#fff;box-shadow:0 20px 60px rgba(20,60,105,.08)}.plans-grid .featured{transform:translateY(-12px);border-color:rgba(11,105,243,.24);background:linear-gradient(160deg,#fff,#eef6ff)}.plans-grid label{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;padding:8px 15px;border-radius:999px;font-size:10px;font-weight:700}.plans-grid h3{font-size:26px;margin:0 0 8px}.plans-grid p{color:#74859a}.plans-grid ul{list-style:none;padding:0;margin:26px 0;display:grid;gap:14px;flex:1}.plans-grid li{font-size:13px;color:#566c83}.plans-grid li:before{content:'✓';color:#15a96b;margin-right:9px}.plans-grid article>a{height:50px;border-radius:14px;border:1px solid rgba(11,105,243,.18);display:grid;place-items:center;color:var(--blue);font-weight:600;font-size:13px}.final{padding:110px 0}.box{display:grid;grid-template-columns:170px 1fr auto;gap:35px;align-items:center;padding:50px 55px;border-radius:34px;color:white;background:radial-gradient(circle at 85% 10%,rgba(111,178,255,.38),transparent 30%),linear-gradient(135deg,#0a50bd,#0b69f3 55%,#4a95ff);box-shadow:0 35px 90px rgba(12,85,190,.25)}.box img{width:165px}.box h2{font-size:42px;color:#fff}.box p{color:rgba(255,255,255,.8);line-height:1.7}.btn.light{background:#fff;color:var(--blue);white-space:nowrap}footer{padding:60px 0;border-top:1px solid var(--line);background:#f9fbfe}.footer p{font-size:12px;color:#77889b}@media(max-width:1050px){.hero-grid{grid-template-columns:1fr}.copy{text-align:center}.actions,.pills{justify-content:center}.grid4{grid-template-columns:1fr 1fr}.demo-grid{grid-template-columns:1fr}.plans-grid{grid-template-columns:1fr;max-width:650px;margin:auto}.plans-grid .featured{transform:none}.box{grid-template-columns:140px 1fr}.box .btn{grid-column:1/-1}}@media(max-width:720px){nav{display:none}.hero h1{font-size:43px}.stage{min-height:600px}.o1{width:390px;height:390px}.o2{width:315px;height:315px}.robot{width:320px}.card{min-width:145px}.c1{left:0}.c2{right:0}.c3{left:0}.c4{right:0}.chat{width:min(100%,360px);right:50%;transform:translateX(50%)}.grid4,.commands{grid-template-columns:1fr}.impact,.plans,.demo,.final{padding:85px 0}.box{grid-template-columns:1fr;text-align:center;padding:42px 24px}.box img{margin:auto}}


/* =========================================================
   IDENTIDADE FACILITY ONE — SPRINT 1.2
   ========================================================= */

.brand{
  display:flex;
  align-items:center;
  width:222px;
  min-width:222px;
}
.brand img{
  display:block;
  width:100%;
  height:auto;
}

.robot{
  object-fit:contain;
  background:transparent !important;
  mix-blend-mode:normal;
}

.stage::after{
  content:"";
  position:absolute;
  z-index:3;
  left:50%;
  bottom:118px;
  width:310px;
  height:58px;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(23,72,126,.18),rgba(23,72,126,.06) 48%,transparent 72%);
  filter:blur(12px);
  transform:translateX(-50%);
  pointer-events:none;
}

.final .box > img{
  object-fit:contain;
  background:transparent;
}

.footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:42px;
}
.footer-brand{
  width:220px;
  height:auto;
}
.footer p{
  max-width:560px;
  margin:0;
  text-align:right;
}

@media(max-width:720px){
  .brand{
    width:176px;
    min-width:176px;
  }
  .footer{
    flex-direction:column;
    align-items:flex-start;
  }
  .footer p{
    text-align:left;
  }
}


/* =========================================================
   FACILITY ONE — SPRINT 1.3
   Ajustes finais do Hero
   ========================================================= */

/* 1. Aproveita toda a largura disponível da tela */
:root{
  --container: 1600px;
}

.container{
  width:min(calc(100% - 56px), var(--container));
}

header .container{
  width:calc(100% - 40px);
  max-width:none;
}

.hero .container{
  width:calc(100% - 72px);
  max-width:1720px;
}

.hero-grid{
  grid-template-columns:minmax(470px,.82fr) minmax(760px,1.18fr);
  gap:28px;
}

.copy{
  padding-left:8px;
}

.stage{
  min-height:720px;
  overflow:visible;
}

/* 2. Mascote maior e mais visível */
.robot{
  width:470px;
  z-index:5;
  transform:translateX(-58px);
}

.halo{
  width:500px;
  height:500px;
  transform:translateX(-60px);
}

.orbit.o1{
  width:600px;
  height:600px;
  transform:translateX(-58px);
}

.orbit.o2{
  width:470px;
  height:470px;
  transform:translateX(-58px);
}

/* 3. Painel do ONE deslocado para o lado direito */
.chat{
  right:-12px;
  left:auto;
  bottom:38px;
  width:400px;
  z-index:11;
}

.chat-head{
  min-height:72px;
  padding:14px 18px;
  gap:12px;
}

.chat-head > img{
  width:46px;
  height:46px;
  flex:0 0 46px;
  padding:6px;
  border-radius:14px;
  background:#f2f7ff;
  box-shadow:inset 0 0 0 1px rgba(18,104,243,.08);
}

.chat-head > div{
  min-width:0;
}

.chat-head b{
  font-size:13px;
  display:block;
}

.chat-head small{
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:4px;
}

.chat-head small i{
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#18b875;
  box-shadow:0 0 0 4px rgba(24,184,117,.10);
}

/* Remove o antigo bloco azul "ONE" caso algum navegador mantenha estilo */
.chat-head > span{
  display:none!important;
}

/* 4. Apenas três cards, posicionados sem cobrir o mascote */
.card{
  min-width:226px;
  display:flex;
  align-items:center;
  gap:13px;
  padding:15px 17px;
}

.card > div{
  min-width:0;
}

.card b{
  line-height:1.35;
}

.card small{
  margin-top:5px;
  line-height:1.35;
}

.c1{
  top:56px;
  left:-4px;
}

.c2{
  top:42px;
  right:8px;
}

.c3{
  bottom:116px;
  left:8px;
}

.c4{
  display:none!important;
}

.mini-icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  border-radius:14px;
  background:#eef5ff;
  position:relative;
  box-shadow:inset 0 0 0 1px rgba(18,104,243,.06);
}

.search-icon::before{
  content:"";
  position:absolute;
  width:16px;
  height:16px;
  border:3px solid #1268f3;
  border-radius:50%;
  left:10px;
  top:9px;
}

.search-icon::after{
  content:"";
  position:absolute;
  width:12px;
  height:3px;
  border-radius:3px;
  background:#1268f3;
  transform:rotate(45deg);
  left:25px;
  top:27px;
}

.chart-icon::before{
  content:"";
  position:absolute;
  left:10px;
  right:9px;
  bottom:10px;
  height:4px;
  border-radius:3px;
  background:linear-gradient(90deg,#68a9ff 0 18%,transparent 18% 26%,#418cf8 26% 52%,transparent 52% 60%,#1268f3 60%);
  box-shadow:0 -7px 0 -1px rgba(18,104,243,.18);
}

.chart-icon::after{
  content:"↗";
  position:absolute;
  color:#1268f3;
  font-weight:800;
  font-size:22px;
  right:7px;
  top:3px;
}

.event-icon::before{
  content:"";
  position:absolute;
  left:9px;
  top:11px;
  width:25px;
  height:23px;
  border:3px solid #1268f3;
  border-radius:5px;
}

.event-icon::after{
  content:"✓";
  position:absolute;
  color:#1268f3;
  font-size:16px;
  font-weight:800;
  left:17px;
  top:16px;
}

/* Ajustes de largura em telas grandes */
@media (min-width:1500px){
  .copy h1{
    max-width:660px;
  }

  .copy > p{
    max-width:620px;
  }

  .stage{
    min-height:730px;
  }

  .robot{
    width:500px;
    transform:translateX(-70px);
  }

  .halo,
  .orbit.o1,
  .orbit.o2{
    transform:translateX(-70px);
  }

  .chat{
    right:8px;
  }
}

/* Notebook / telas intermediárias */
@media (max-width:1320px){
  .hero-grid{
    grid-template-columns:minmax(430px,.9fr) minmax(650px,1.1fr);
  }

  .robot{
    width:420px;
    transform:translateX(-42px);
  }

  .halo,
  .orbit.o1,
  .orbit.o2{
    transform:translateX(-42px);
  }

  .chat{
    right:-18px;
    width:365px;
  }

  .card{
    min-width:205px;
  }
}

@media (max-width:1050px){
  header .container,
  .hero .container{
    width:min(calc(100% - 32px), 920px);
  }

  .hero-grid{
    grid-template-columns:1fr;
  }

  .stage{
    min-height:700px;
  }

  .robot{
    transform:translateX(-70px);
  }

  .halo,
  .orbit.o1,
  .orbit.o2{
    transform:translateX(-70px);
  }

  .chat{
    right:10px;
  }
}

@media (max-width:720px){
  .container,
  header .container,
  .hero .container{
    width:calc(100% - 24px);
  }

  .stage{
    min-height:650px;
  }

  .robot{
    width:315px;
    transform:translateX(-28px);
  }

  .halo{
    width:340px;
    height:340px;
    transform:translateX(-28px);
  }

  .orbit.o1{
    width:410px;
    height:410px;
    transform:translateX(-28px);
  }

  .orbit.o2{
    width:330px;
    height:330px;
    transform:translateX(-28px);
  }

  .card{
    min-width:164px;
    padding:10px 11px;
    gap:8px;
  }

  .card b{
    font-size:10px;
  }

  .card small{
    font-size:8px;
  }

  .mini-icon{
    width:34px;
    height:34px;
    flex-basis:34px;
    transform:scale(.82);
  }

  .c1{
    left:0;
    top:58px;
  }

  .c2{
    right:0;
    top:54px;
  }

  .c3{
    left:0;
    bottom:192px;
  }

  .chat{
    width:min(100%,350px);
    right:50%;
    bottom:-4px;
    transform:translateX(50%);
  }
}

/* =========================================================
   FACILITY ONE — SPRINT 1.4
   Correção de proporção para Full HD / ultrawide
   ========================================================= */
.hero{width:100%}
.hero .container{
  width:min(calc(100% - 64px),1560px);
  max-width:1560px;
  margin-inline:auto;
}
.hero-grid{
  grid-template-columns:minmax(500px,650px) minmax(700px,820px);
  justify-content:space-between;
  gap:54px;
  align-items:center;
}
.copy{width:100%;max-width:650px;padding-left:0}
.copy h1{
  max-width:650px;
  font-size:clamp(54px,4.25vw,74px);
  line-height:1.04;
}
.copy>p{max-width:610px}
.stage{
  width:100%;
  max-width:820px;
  min-height:690px;
  margin-inline:auto;
  overflow:visible;
}
.robot{
  width:455px;
  max-width:55vw;
  transform:translateX(-48px);
}
.halo{width:480px;height:480px;transform:translateX(-48px)}
.orbit.o1{width:570px;height:570px;transform:translateX(-48px)}
.orbit.o2{width:455px;height:455px;transform:translateX(-48px)}
.c1{top:62px;left:0}
.c2{top:48px;right:0}
.c3{left:8px;bottom:116px}
.chat{width:390px;right:-4px;bottom:24px}

@media(min-width:1700px){
  .hero .container{width:min(calc(100% - 96px),1600px);max-width:1600px}
  .hero-grid{grid-template-columns:650px 830px;gap:70px}
  .stage{max-width:830px}
  .robot{width:470px;transform:translateX(-54px)}
  .halo,.orbit.o1,.orbit.o2{transform:translateX(-54px)}
  .chat{right:0}
}
@media(max-width:1450px){
  .hero .container{width:min(calc(100% - 48px),1320px)}
  .hero-grid{grid-template-columns:minmax(450px,570px) minmax(620px,700px);gap:40px}
  .stage{max-width:700px;min-height:650px}
  .robot{width:405px;transform:translateX(-42px)}
  .halo{width:430px;height:430px;transform:translateX(-42px)}
  .orbit.o1{width:515px;height:515px;transform:translateX(-42px)}
  .orbit.o2{width:415px;height:415px;transform:translateX(-42px)}
  .chat{width:355px;right:-4px}
  .card{min-width:195px}
}
@media(max-width:1100px){
  .hero .container{width:min(calc(100% - 36px),900px)}
  .hero-grid{grid-template-columns:1fr;gap:30px}
  .copy{max-width:720px;margin-inline:auto;text-align:center}
  .copy h1,.copy>p{margin-left:auto;margin-right:auto}
  .actions,.chips{justify-content:center}
  .stage{max-width:760px;min-height:690px}
  .robot{width:420px;transform:translateX(-55px)}
  .halo,.orbit.o1,.orbit.o2{transform:translateX(-55px)}
  .chat{right:8px}
}
@media(max-width:720px){
  .hero .container{width:calc(100% - 24px)}
  .copy h1{font-size:43px}
  .stage{min-height:640px}
  .robot{width:310px;max-width:none;transform:translateX(-26px)}
  .halo{width:340px;height:340px;transform:translateX(-26px)}
  .orbit.o1{width:405px;height:405px;transform:translateX(-26px)}
  .orbit.o2{width:325px;height:325px;transform:translateX(-26px)}
  .chat{width:min(100%,350px);right:50%;bottom:-4px;transform:translateX(50%)}
}


/* =========================================================
   FACILITY ONE — SPRINT 1.5
   Painel de conversa totalmente lateral ao mascote
   ========================================================= */

/*
  O mascote permanece centralizado no palco visual.
  O chat passa para a lateral direita, sem cobrir rosto, tronco ou braço.
*/
.stage{
  padding-right:300px;
}

.robot{
  transform:translateX(-120px);
}

.halo,
.orbit.o1,
.orbit.o2{
  transform:translateX(-120px);
}

.chat{
  right:-24px;
  bottom:72px;
  width:360px;
  max-height:390px;
  z-index:12;
}

.chat-body{
  max-height:290px;
}

/* Reposiciona os cards para manter o equilíbrio visual */
.c1{
  top:64px;
  left:-8px;
}

.c2{
  top:50px;
  right:2px;
}

.c3{
  left:16px;
  bottom:126px;
}

/* Full HD / telas grandes */
@media(min-width:1500px){
  .stage{
    padding-right:320px;
  }

  .robot{
    transform:translateX(-135px);
  }

  .halo,
  .orbit.o1,
  .orbit.o2{
    transform:translateX(-135px);
  }

  .chat{
    right:-10px;
    bottom:76px;
    width:365px;
  }
}

/* Notebooks */
@media(max-width:1450px){
  .stage{
    padding-right:265px;
  }

  .robot{
    transform:translateX(-100px);
  }

  .halo,
  .orbit.o1,
  .orbit.o2{
    transform:translateX(-100px);
  }

  .chat{
    right:-10px;
    bottom:64px;
    width:335px;
  }

  .c1{
    left:-2px;
  }

  .c2{
    right:0;
  }

  .c3{
    left:10px;
  }
}

/* Tablet: volta para composição central com chat abaixo */
@media(max-width:1100px){
  .stage{
    padding-right:0;
  }

  .robot{
    transform:translateX(-70px);
  }

  .halo,
  .orbit.o1,
  .orbit.o2{
    transform:translateX(-70px);
  }

  .chat{
    right:6px;
    bottom:18px;
    width:350px;
  }
}

/* Mobile */
@media(max-width:720px){
  .stage{
    padding-right:0;
  }

  .robot{
    transform:translateX(-28px);
  }

  .halo,
  .orbit.o1,
  .orbit.o2{
    transform:translateX(-28px);
  }

  .chat{
    right:50%;
    bottom:-4px;
    width:min(100%,350px);
    transform:translateX(50%);
  }
}


/* =========================================================
   FACILITY ONE — SPRINT 1.6
   Preços + contratação em 3 passos
   ========================================================= */
.plan-price{margin:22px 0 8px;padding:18px;border-radius:18px;background:#f6f9fe;border:1px solid rgba(18,104,243,.09)}
.plan-price .plan-bundle{display:block;font-size:10px;font-weight:700;letter-spacing:.06em;color:#6d8095;text-transform:uppercase;margin-bottom:9px}
.plan-price div{display:flex;align-items:baseline;gap:5px}
.plan-price strong{font-size:34px;letter-spacing:-.05em;color:#1268f3}
.plan-price small{font-size:12px;color:#73859a}
.plan-price em{display:inline-block;margin-top:8px;font-size:10px;font-style:normal;font-weight:700;color:#16a36a}

.contract-modal{position:fixed;inset:0;z-index:9999;display:none;place-items:center;padding:24px}
.contract-modal.open{display:grid}
.contract-backdrop{position:absolute;inset:0;background:rgba(5,22,42,.58);backdrop-filter:blur(14px)}
.contract-shell{position:relative;width:min(760px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border-radius:30px;box-shadow:0 40px 120px rgba(5,30,65,.32);padding:32px 38px 38px}
.contract-close{position:absolute;right:18px;top:17px;width:38px;height:38px;border:0;border-radius:50%;background:#f1f5fa;color:#60748b;font-size:24px;cursor:pointer}
.contract-brand{display:flex;align-items:center;justify-content:space-between;padding-right:48px;margin-bottom:34px}
.contract-brand>img{width:190px;height:auto}
.contract-progress{display:flex;align-items:center}
.contract-progress span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#edf2f8;color:#8392a4;font-size:11px;font-weight:700}
.contract-progress span.active{background:#1268f3;color:#fff;box-shadow:0 7px 18px rgba(18,104,243,.25)}
.contract-progress i{width:28px;height:1px;background:#dbe4ee}
.contract-step{display:none}.contract-step.active{display:block}
.contract-kicker{font-size:10px;font-weight:800;letter-spacing:.14em;color:#1268f3}
.contract-step h2{font-size:36px;line-height:1.12;letter-spacing:-.04em;font-weight:400;margin:11px 0 12px;color:#122d49}
.contract-step>p{font-size:13px;line-height:1.7;color:#6d7f93;max-width:620px;margin:0 0 27px}
.field{display:block}.field>span{display:block;font-size:11px;font-weight:700;color:#425970;margin-bottom:7px}
.field input{width:100%;height:48px;border:1px solid #dce5ef;border-radius:13px;padding:0 14px;font:inherit;font-size:13px;outline:0;background:#fbfdff}
.field input:focus{border-color:#7eb3ff;box-shadow:0 0 0 4px rgba(18,104,243,.07)}
.cnpj-row{display:grid;grid-template-columns:1fr auto;gap:9px}.cnpj-row button{border:0;border-radius:13px;padding:0 18px;background:#eaf3ff;color:#1268f3;font-weight:700;cursor:pointer}
.company-preview{margin-top:18px;padding:18px;border:1px solid #dce7f2;border-radius:18px;background:#f9fbfe}.company-preview>strong{font-size:12px}.company-preview>small{display:block;margin-top:12px;color:#8795a5;font-size:9px}
.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:14px}.company-grid .full{grid-column:1/-1}.contact-grid{margin-top:20px}
.contract-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:28px}.contract-actions.split{justify-content:space-between}
.contract-primary,.contract-secondary{min-height:49px;padding:0 21px;border-radius:13px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.contract-primary{border:0;color:#fff;background:linear-gradient(135deg,#1268f3,#4c98ff);box-shadow:0 13px 28px rgba(18,104,243,.2)}
.contract-primary:disabled{opacity:.45;cursor:not-allowed}.contract-secondary{border:1px solid #dbe5ef;background:#fff;color:#536a82}
.selected-plan{display:flex;align-items:center;justify-content:space-between;padding:22px;border-radius:20px;background:linear-gradient(145deg,#f7fbff,#edf5ff);border:1px solid rgba(18,104,243,.12)}
.selected-plan>div:first-child{display:flex;align-items:center;gap:14px}.selected-plan img{width:48px}.selected-plan span{font-size:9px;font-weight:800;letter-spacing:.12em;color:#71849a}.selected-plan h3{margin:4px 0 0;font-size:21px}
.selected-price{display:flex;align-items:baseline;gap:4px}.selected-price strong{font-size:31px;color:#1268f3}.selected-price small{font-size:11px;color:#74869b}
.plan-summary{display:grid;gap:1px;margin-top:18px;border-radius:17px;overflow:hidden;border:1px solid #e1e9f2}.plan-summary>div{display:flex;justify-content:space-between;gap:20px;padding:14px 16px;background:#fff}.plan-summary b{font-size:11px}.plan-summary span{font-size:10px;color:#7d8c9e;text-align:right}
.contract-document{border:1px solid #dce6f0;border-radius:19px;overflow:hidden}.document-head{display:flex;align-items:center;gap:11px;padding:14px 16px;background:#f7faff;border-bottom:1px solid #e3eaf2}.document-head img{width:35px}.document-head strong,.document-head small{display:block}.document-head strong{font-size:11px}.document-head small{font-size:9px;color:#8291a2;margin-top:3px}
.document-placeholder{min-height:185px;padding:28px;background:repeating-linear-gradient(0deg,#fff,#fff 27px,#f4f7fa 28px)}.document-placeholder p{font-size:11px;line-height:1.7;color:#65778c;max-width:560px}.document-placeholder span{display:inline-block;margin-top:28px;padding:8px 11px;border-radius:9px;background:#eef5ff;color:#1268f3;font-size:9px;font-weight:700}
.accept-row{display:flex;align-items:flex-start;gap:10px;margin-top:18px;font-size:10px;line-height:1.5;color:#61758b}.accept-row input{margin-top:2px}
.contract-success{text-align:center;padding:35px 20px 20px}.success-mark{width:72px;height:72px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;background:#16ae72;color:#fff;font-size:31px;box-shadow:0 18px 35px rgba(22,174,114,.22)}.contract-success>p{margin-left:auto;margin-right:auto}.contract-success .contract-primary{margin-top:8px}

@media(max-width:700px){
 .contract-modal{padding:10px}.contract-shell{padding:26px 18px 24px;border-radius:22px;max-height:calc(100vh - 20px)}
 .contract-brand{align-items:flex-start;gap:15px}.contract-brand>img{width:145px}.contract-progress i{width:15px}
 .contract-step h2{font-size:29px}.company-grid{grid-template-columns:1fr}.company-grid .full{grid-column:auto}
 .cnpj-row{grid-template-columns:1fr}.cnpj-row button{height:45px}
 .selected-plan{align-items:flex-start;gap:15px;flex-direction:column}.plan-summary>div{flex-direction:column;gap:4px}.plan-summary span{text-align:left}
 .contract-actions.split{gap:8px}.contract-actions.split>*{flex:1}
}


/* =========================================================
   FACILITY ONE — SPRINT 1.7
   Configurador de preços por quartos + adicionais
   ========================================================= */
.plans .heading>p{max-width:700px;margin:18px auto 0;color:#73859a;line-height:1.7}
.rooms-config{display:grid;grid-template-columns:1fr auto;align-items:center;gap:22px;margin:0 auto 34px;padding:22px 24px;border:1px solid rgba(18,104,243,.11);border-radius:22px;background:linear-gradient(145deg,#fff,#f6faff);box-shadow:0 16px 45px rgba(23,65,110,.07)}
.rooms-config>div:first-child span{display:block;font-size:10px;letter-spacing:.14em;font-weight:800;color:#1268f3;margin-bottom:6px}.rooms-config>div:first-child strong{font-size:15px;color:#1b3957}
.rooms-stepper{display:flex;align-items:center;gap:8px}.rooms-stepper>button{width:42px;height:42px;border:1px solid #d7e5f5;border-radius:13px;background:#fff;color:#1268f3;font-size:22px;cursor:pointer}
.rooms-stepper label{display:flex;align-items:center;gap:7px;height:48px;padding:0 13px;border:1px solid #cfe0f4;border-radius:14px;background:#fff}.rooms-stepper input{width:68px;border:0;outline:0;font:inherit;font-weight:700;font-size:17px;color:#153552;text-align:center}.rooms-stepper small{color:#7f90a3}
.rooms-note{grid-column:1/-1;color:#8292a5;font-size:10px}.rooms-note.warning{color:#c07916;font-weight:600}

.configurator-plans article{transition:.25s}.configurator-plans article.selected{border-color:rgba(18,104,243,.32);box-shadow:0 24px 70px rgba(18,104,243,.14);transform:translateY(-5px)}
.plan-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.plan-level{font-size:9px;letter-spacing:.13em;font-weight:800;color:#7c8fa5}
.plan-select{border:1px solid #cfe0f5;background:#fff;color:#1268f3;min-height:37px;padding:0 13px;border-radius:11px;font:inherit;font-size:10px;font-weight:700;cursor:pointer}.plan-select.selected{background:#1268f3;color:#fff;border-color:#1268f3}
.dynamic-price{margin:20px 0 8px;padding:18px;border-radius:18px;background:#f5f9ff;border:1px solid rgba(18,104,243,.1)}.dynamic-price .plan-bundle{font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#73869b}.dynamic-price>div{display:flex;align-items:baseline;gap:5px;margin-top:8px}.dynamic-price strong{font-size:31px;color:#1268f3;letter-spacing:-.04em}.dynamic-price small{color:#71839a;font-size:11px}.dynamic-price em{display:block;margin-top:8px;color:#16a36a;font-size:9px;font-style:normal;font-weight:800}

.addons-section{margin-top:58px}.addons-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:22px}.addons-heading span{font-size:10px;font-weight:800;letter-spacing:.14em;color:#1268f3}.addons-heading h3{margin:8px 0 0;font-size:29px;font-weight:400;letter-spacing:-.035em}.addons-heading p{max-width:360px;color:#75879b;font-size:12px;line-height:1.6}
.addons-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.addon-card{position:relative;display:flex;align-items:flex-start;gap:12px;min-height:125px;padding:17px;border:1px solid #e0e8f1;border-radius:18px;background:#fff;cursor:pointer;transition:.22s}.addon-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(24,64,106,.08)}.addon-card.active{border-color:rgba(18,104,243,.34);background:#f5f9ff;box-shadow:0 14px 36px rgba(18,104,243,.09)}
.addon-card>input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.addon-switch{position:relative;flex:0 0 36px;width:36px;height:21px;border-radius:999px;background:#dce6f0;transition:.2s}.addon-switch:after{content:"";position:absolute;width:15px;height:15px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.15);transition:.2s}.addon-card.active .addon-switch{background:#1268f3}.addon-card.active .addon-switch:after{transform:translateX(15px)}
.addon-card>div{min-width:0}.addon-card b,.addon-card small,.addon-card strong{display:block}.addon-card b{font-size:12px;color:#203d59}.addon-card small{margin:5px 0 12px;color:#7b8ca0;font-size:9px;line-height:1.45}.addon-card strong{color:#1268f3;font-size:11px}.addon-card.one-time strong{color:#864ed6}
.addon-option{display:none;margin-top:11px;padding-top:10px;border-top:1px solid #e0e8f1;align-items:center;justify-content:space-between;gap:10px}.addon-card.active .addon-option{display:flex}.addon-option span{font-size:9px;color:#6f8298}.addon-option input{width:58px;height:30px;border:1px solid #d4e0ed;border-radius:8px;text-align:center}

.package-summary{position:sticky;bottom:18px;z-index:60;margin-top:28px;border:1px solid rgba(18,104,243,.16);border-radius:24px;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);box-shadow:0 22px 70px rgba(16,55,100,.18);padding:18px 20px}
.summary-main,.summary-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.summary-main>div:first-child>span{font-size:9px;letter-spacing:.13em;font-weight:800;color:#1268f3}.summary-main h3{margin:3px 0 2px;font-size:19px}.summary-main p{margin:0;color:#7b8da0;font-size:10px}.summary-total{text-align:right}.summary-total small,.summary-total em{display:block}.summary-total small{font-size:9px;color:#8191a3}.summary-total strong{display:block;margin:2px 0;color:#1268f3;font-size:29px;letter-spacing:-.04em}.summary-total em{font-size:9px;color:#16a36a;font-style:normal;font-weight:800}
.summary-addons{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0;padding-top:12px;border-top:1px solid #e5ebf2}.summary-addons>span{display:inline-flex;gap:7px;align-items:center;padding:6px 9px;border-radius:999px;background:#f2f6fb;color:#667a90;font-size:9px}.summary-addons b{font-weight:600}.summary-addons em{font-style:normal;color:#1268f3}
.summary-bottom{padding-top:13px;border-top:1px solid #e5ebf2}.summary-bottom>div small,.summary-bottom>div strong{display:block}.summary-bottom>div small{font-size:9px;color:#8292a5}.summary-bottom>div strong{font-size:15px;color:#7542c5}.package-continue{border:0}.package-continue:disabled{opacity:.55;cursor:not-allowed}

.contract-room-field{margin-bottom:16px}.contract-one-time{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding:13px 15px;border-radius:13px;background:#faf6ff;border:1px solid #e9dcfb}.contract-one-time span{font-size:10px;color:#75658d}.contract-one-time strong{font-size:14px;color:#7542c5}

@media(max-width:1050px){.addons-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){
 .rooms-config{grid-template-columns:1fr}.rooms-stepper{justify-content:flex-start}.addons-heading{align-items:flex-start;flex-direction:column}.addons-grid{grid-template-columns:1fr}
 .package-summary{bottom:8px}.summary-main{align-items:flex-start}.summary-bottom{align-items:stretch;flex-direction:column}.package-continue{width:100%}
}


/* =========================================================
   FACILITY ONE — SPRINT 1.8
   Carrinho lateral compacto, sem sobreposição
   ========================================================= */

/*
  Em desktop, cria uma coluna lateral para o resumo do pacote.
  O carrinho deixa de ficar sticky na horizontal e passa a ocupar
  o canto direito dentro do fluxo da seção, sem cobrir cards.
*/
.plans > .container{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  column-gap:28px;
  align-items:start;
}

.plans .heading,
.rooms-config,
.configurator-plans,
.addons-section{
  grid-column:1;
}

.package-summary{
  grid-column:2;
  grid-row:1 / span 4;
  position:sticky;
  top:110px;
  bottom:auto;
  margin-top:88px;
  padding:14px 14px 15px;
  border-radius:20px;
  box-shadow:0 18px 52px rgba(16,55,100,.14);
  align-self:start;
}

.summary-main{
  display:block;
}

.summary-main>div:first-child>span{
  font-size:8px;
  letter-spacing:.11em;
}

.summary-main h3{
  margin:3px 0 1px;
  font-size:17px;
}

.summary-main p{
  font-size:9px;
}

.summary-total{
  margin-top:12px;
  padding-top:11px;
  border-top:1px solid #e5ebf2;
  text-align:left;
}

.summary-total small{
  font-size:8px;
}

.summary-total strong{
  margin:2px 0 1px;
  font-size:24px;
}

.summary-total em{
  font-size:8px;
}

.summary-addons{
  display:grid;
  gap:6px;
  margin:11px 0;
  padding-top:10px;
}

.summary-addons>span{
  display:flex;
  justify-content:space-between;
  gap:7px;
  width:100%;
  padding:6px 8px;
  font-size:8px;
}

.summary-addons b{
  min-width:0;
  max-width:175px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.summary-addons em{
  flex:0 0 auto;
  font-size:8px;
}

.summary-bottom{
  display:block;
  padding-top:11px;
}

.summary-bottom>div{
  margin-bottom:9px;
}

.summary-bottom>div small{
  font-size:8px;
}

.summary-bottom>div strong{
  font-size:13px;
}

.package-continue{
  width:100%;
  min-height:44px;
  padding:0 12px;
  font-size:11px;
}

/*
  Dá um pouco mais de respiro à coluna principal.
*/
.configurator-plans{
  gap:16px;
}

.plan-option{
  min-width:0;
}

/*
  Em telas médias, reduz o carrinho sem forçar sobreposição.
*/
@media(max-width:1320px){
  .plans > .container{
    grid-template-columns:minmax(0,1fr) 270px;
    column-gap:20px;
  }

  .package-summary{
    top:96px;
    margin-top:82px;
    padding:13px;
  }

  .summary-total strong{
    font-size:22px;
  }
}

/*
  Em tablet/notebook estreito, o carrinho volta para o fluxo normal
  abaixo dos adicionais. Assim ele nunca cobre cards ou textos.
*/
@media(max-width:1080px){
  .plans > .container{
    display:block;
  }

  .package-summary{
    position:relative;
    top:auto;
    grid-column:auto;
    grid-row:auto;
    width:100%;
    margin-top:26px;
  }

  .summary-main{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
  }

  .summary-total{
    margin-top:0;
    padding-top:0;
    border-top:0;
    text-align:right;
  }

  .summary-addons{
    display:flex;
    flex-wrap:wrap;
  }

  .summary-addons>span{
    width:auto;
  }

  .summary-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }

  .package-continue{
    width:auto;
    min-width:210px;
  }
}

@media(max-width:700px){
  .package-summary{
    padding:13px;
    border-radius:18px;
  }

  .summary-main{
    display:block;
  }

  .summary-total{
    margin-top:10px;
    padding-top:10px;
    border-top:1px solid #e5ebf2;
    text-align:left;
  }

  .summary-addons{
    display:grid;
  }

  .summary-addons>span{
    width:100%;
  }

  .summary-bottom{
    display:block;
  }

  .package-continue{
    width:100%;
    min-width:0;
  }
}


/* =========================================================
   FACILITY ONE — SPRINT 1.9
   Rodapé institucional
   ========================================================= */
.one-footer{
  position:relative;
  margin-top:0;
  padding:58px 0 20px;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 0%,rgba(44,132,255,.14),transparent 34%),
    radial-gradient(circle at 88% 100%,rgba(30,107,242,.10),transparent 32%),
    #0b2038;
  color:#fff;
}

.one-footer:before{
  content:"";
  position:absolute;
  width:440px;
  height:440px;
  right:-180px;
  top:-240px;
  border:1px solid rgba(111,174,255,.12);
  border-radius:50%;
  box-shadow:
    0 0 0 70px rgba(111,174,255,.025),
    0 0 0 140px rgba(111,174,255,.018);
  pointer-events:none;
}

.one-footer-inner{
  position:relative;
  z-index:1;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:60px;
  padding-bottom:40px;
}

.one-footer-brand{
  max-width:390px;
}

.one-footer-brand img{
  display:block;
  width:190px;
  height:auto;
  padding:11px 14px;
  border-radius:15px;
  background:#fff;
  box-shadow:0 13px 34px rgba(0,0,0,.16);
}

.one-footer-brand p{
  max-width:360px;
  margin:20px 0 0;
  color:#9fb2c7;
  font-size:13px;
  line-height:1.7;
}

.one-footer-contact{
  min-width:520px;
}

.one-footer-contact>span{
  display:block;
  margin-bottom:13px;
  color:#6faeff;
  font-size:9px;
  font-weight:800;
  letter-spacing:.16em;
}

.one-footer-links{
  display:flex;
  gap:10px;
}

.one-footer-links>a{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:210px;
  padding:13px 15px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:15px;
  background:rgba(255,255,255,.045);
  color:#fff;
  text-decoration:none;
  transition:.22s ease;
}

.one-footer-links>a:last-child{
  min-width:300px;
}

.one-footer-links>a:hover{
  transform:translateY(-2px);
  border-color:rgba(83,153,255,.34);
  background:rgba(47,124,238,.11);
}

.footer-icon{
  display:grid;
  place-items:center;
  flex:0 0 35px;
  width:35px;
  height:35px;
  border-radius:11px;
  background:linear-gradient(135deg,#1268f3,#4696ff);
  font-size:15px;
}

.one-footer-links small,
.one-footer-links strong{
  display:block;
}

.one-footer-links small{
  margin-bottom:3px;
  color:#8399b0;
  font-size:8px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.one-footer-links strong{
  color:#f7fbff;
  font-size:11px;
  font-weight:600;
  white-space:nowrap;
}

.one-footer-bottom{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.07);
  color:#6f849a;
  font-size:9px;
}

.one-footer-bottom span:first-child{
  color:#7dafff;
  font-weight:800;
  letter-spacing:.08em;
}

@media(max-width:900px){
  .one-footer-inner{
    flex-direction:column;
    gap:35px;
  }

  .one-footer-contact{
    min-width:0;
    width:100%;
  }

  .one-footer-links{
    flex-wrap:wrap;
  }

  .one-footer-links>a,
  .one-footer-links>a:last-child{
    min-width:0;
    flex:1 1 260px;
  }
}

@media(max-width:600px){
  .one-footer{
    padding-top:42px;
  }

  .one-footer-brand img{
    width:170px;
  }

  .one-footer-links{
    display:grid;
  }

  .one-footer-links>a,
  .one-footer-links>a:last-child{
    width:100%;
  }

  .one-footer-bottom{
    flex-direction:column;
    gap:7px;
  }
}
\n\n/* =========================================================\n   FACILITY ONE — SPRINT 2.0\n   Arte ONE Inteligente incorporada à Home\n   ========================================================= */\n.one-home-showcase{\n  width:100%;\n  padding:14px 14px 26px;\n}\n.one-home-art{\n  position:relative;\n  width:100%;\n  max-width:1920px;\n  margin:0 auto;\n  overflow:hidden;\n  border-radius:22px;\n  background:#0757c9;\n  box-shadow:0 22px 65px rgba(11,78,177,.16);\n}\n.one-home-art img{\n  display:block;\n  width:100%;\n  height:auto;\n}\n.one-home-art-cta{\n  position:absolute;\n  z-index:2;\n  right:1.45%;\n  bottom:8.6%;\n  width:14.6%;\n  height:13.2%;\n  border-radius:14px;\n}\n.one-home-art-cta:focus-visible{\n  outline:3px solid #fff;\n  outline-offset:3px;\n}\n@media(max-width:900px){\n  .one-home-showcase{padding:8px 8px 18px}\n  .one-home-art{border-radius:16px}\n}\n@media(max-width:620px){\n  .one-home-showcase{overflow-x:auto;padding:6px 0 16px}\n  .one-home-art{\n    width:1120px;\n    max-width:none;\n    border-radius:0;\n  }\n}\n

/* =========================================================
   FACILITY ONE — SPRINT 2.1
   Home simplificada: nova arte como hero principal
   ========================================================= */
.one-home-showcase{
  padding:14px 14px 38px;
}
.one-home-art{
  box-sizing:border-box;
  padding-top:18px;
  padding-bottom:18px;
  background:linear-gradient(135deg,#0754c5 0%,#0867dc 55%,#183da5 100%);
}
.one-home-art img{
  width:100%;
  height:auto;
  object-fit:contain;
}
/* O hotspot acompanha a posição do botão dentro da arte original,
   compensando apenas o respiro azul acrescentado acima e abaixo. */
.one-home-art-cta{
  bottom:calc(8.6% + 12px);
}
@media(max-width:900px){
  .one-home-showcase{padding:8px 8px 28px}
  .one-home-art{padding-top:12px;padding-bottom:12px}
  .one-home-art-cta{bottom:calc(8.6% + 8px)}
}
@media(max-width:620px){
  .one-home-showcase{padding:6px 0 22px}
  .one-home-art{padding-top:8px;padding-bottom:8px}
  .one-home-art-cta{bottom:calc(8.6% + 5px)}
}


/* SPRINT 2.2 — hero integral, sem qualquer corte */
.one-home-showcase{
  width:100%;
  padding:14px 14px 38px;
  overflow:visible;
}
.one-home-art{
  width:100%;
  max-width:none;
  margin:0 auto;
  padding:0;
  overflow:visible;
  border-radius:22px;
  background:transparent;
  aspect-ratio:auto;
}
.one-home-art img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:contain;
  object-position:center center;
  border-radius:22px;
}
.one-home-art-cta{
  right:1.45%;
  bottom:8.6%;
  width:14.6%;
  height:13.2%;
}
@media(max-width:900px){
  .one-home-showcase{padding:8px 8px 28px}
  .one-home-art{padding:0;border-radius:16px}
  .one-home-art img{border-radius:16px}
  .one-home-art-cta{bottom:8.6%}
}
@media(max-width:620px){
  .one-home-showcase{padding:6px 6px 22px;overflow:visible}
  .one-home-art{width:100%;max-width:none;padding:0;border-radius:12px}
  .one-home-art img{width:100%;height:auto;max-width:100%;border-radius:12px}
  .one-home-art-cta{bottom:8.6%}
}


/* =========================================================
   FACILITY ONE — SPRINT 2.3
   Hero HD + maior presença vertical + textos mais legíveis
   ========================================================= */

/*
  A arte deste sprint possui proporção mais alta e largura Full HD.
  Não existe object-fit: cover, crop ou deformação.
*/
.one-home-showcase{
  width:100%;
  padding:14px 14px 44px;
}

.one-home-art{
  position:relative;
  width:100%;
  max-width:1920px;
  margin:0 auto;
  padding:0;
  overflow:visible;
  background:transparent;
  border-radius:22px;
  box-shadow:0 24px 72px rgba(11,78,177,.15);
}

.one-home-art img{
  display:block;
  width:100%;
  height:auto;
  max-width:1920px;
  margin:0 auto;
  object-fit:contain;
  object-position:center;
  border-radius:22px;
  image-rendering:auto;
}

/*
  Área clicável do CTA laranja recalibrada para a nova arte.
*/
.one-home-art-cta{
  right:1.25%;
  bottom:8.2%;
  width:19.1%;
  height:16.7%;
  border-radius:18px;
}

/*
  O banner passa a usar praticamente toda a largura útil em Full HD.
*/
@media(min-width:1500px){
  .one-home-showcase{
    padding-left:16px;
    padding-right:16px;
  }
}

/*
  Em notebook mantém a arte integral e proporcional.
*/
@media(max-width:1100px){
  .one-home-showcase{
    padding:10px 10px 34px;
  }
  .one-home-art,
  .one-home-art img{
    border-radius:17px;
  }
}

/*
  Em celular preserva a legibilidade usando rolagem horizontal
  em vez de reduzir a arte até os textos ficarem ilegíveis.
*/
@media(max-width:700px){
  .one-home-showcase{
    padding:8px 0 28px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  .one-home-art{
    width:1040px;
    max-width:none;
    margin-left:8px;
    margin-right:8px;
    border-radius:15px;
  }

  .one-home-art img{
    width:1040px;
    max-width:none;
    border-radius:15px;
  }

  .one-home-art-cta{
    right:1.25%;
    bottom:8.2%;
    width:19.1%;
    height:16.7%;
  }
}


/* =========================================================
   FACILITY ONE — SPRINT 2.4
   HERO 100% COMPONENTIZADO
   Textos, botões, métricas e cards em HTML/CSS vetorial.
   ========================================================= */

.one-live-hero{
  padding:14px 15px 46px;
}

.one-live-shell{
  position:relative;
  display:grid;
  grid-template-columns:minmax(620px,1.08fr) minmax(690px,.92fr);
  min-height:650px;
  max-width:1920px;
  margin:0 auto;
  border-radius:28px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 70% 54%,rgba(0,222,255,.28),transparent 19%),
    radial-gradient(circle at 65% 50%,rgba(0,139,255,.30),transparent 35%),
    linear-gradient(120deg,#073aa8 0%,#0a5bd1 43%,#0965d8 63%,#133da4 100%);
  box-shadow:0 28px 80px rgba(8,65,158,.18);
}

.one-live-shell::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 67% 45%,rgba(255,255,255,.08),transparent 28%),
    linear-gradient(90deg,rgba(255,255,255,.02),transparent 35%);
}

.one-live-copy{
  position:relative;
  z-index:4;
  padding:58px 34px 48px 46px;
  align-self:center;
}

.one-live-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:39px;
  padding:0 17px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  background:rgba(255,255,255,.05);
  color:#fff;
  font-size:13px;
  line-height:1;
  font-weight:700;
  letter-spacing:.01em;
}

.one-live-copy h1{
  margin:30px 0 18px;
  max-width:850px;
  color:#fff;
  font-size:clamp(42px,3.15vw,64px);
  line-height:1.04;
  font-weight:700;
  letter-spacing:-.045em;
}

.one-live-copy h1 strong{
  color:#04d5ef;
  font-weight:700;
}

.one-live-copy>p{
  margin:0 0 28px;
  color:rgba(255,255,255,.95);
  font-size:clamp(16px,1.12vw,21px);
  line-height:1.5;
  font-weight:400;
}

.one-question-box{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:15px;
  min-height:82px;
  width:min(100%,900px);
  padding:10px 12px 10px 22px;
  border-radius:18px;
  background:#fff;
  color:#54667a;
  box-shadow:0 18px 40px rgba(0,37,102,.15);
  font-size:clamp(16px,1.18vw,21px);
  font-weight:500;
}

.one-question-star{
  color:#1578ff;
  font-size:24px;
}

.one-question-arrow{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  border-radius:50%;
  background:linear-gradient(135deg,#0877fb,#28a2ff);
  color:#fff;
  font-size:30px;
  font-weight:700;
}

.one-question-label{
  display:block;
  margin:17px 0 11px;
  color:rgba(255,255,255,.88);
  font-size:12px;
  font-weight:500;
}

.one-question-cards{
  display:grid;
  grid-template-columns:repeat(6,minmax(108px,1fr));
  gap:9px;
  width:min(100%,990px);
}

.one-question-cards button{
  min-height:92px;
  padding:13px 9px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:13px;
  background:rgba(255,255,255,.055);
  color:#fff;
  font-family:inherit;
  text-align:center;
  cursor:pointer;
  transition:.2s ease;
}

.one-question-cards button:hover{
  transform:translateY(-3px);
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.42);
}

.one-question-cards b{
  display:block;
  margin-bottom:6px;
  font-size:clamp(13px,.95vw,17px);
  font-weight:700;
}

.one-question-cards span{
  display:block;
  font-size:clamp(10px,.7vw,12px);
  line-height:1.3;
  color:rgba(255,255,255,.9);
}

.one-live-visual{
  position:relative;
  min-height:650px;
  overflow:hidden;
}

.one-live-orbit{
  position:absolute;
  left:44%;
  top:52%;
  border:1px solid rgba(48,205,255,.24);
  border-radius:50%;
  transform:translate(-50%,-50%);
}

.orbit-a{width:570px;height:570px}
.orbit-b{width:455px;height:455px}

.one-live-glow{
  position:absolute;
  left:44%;
  top:53%;
  width:385px;
  height:385px;
  border-radius:50%;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle,rgba(0,229,255,.46),rgba(0,142,255,.14) 47%,transparent 71%);
  filter:blur(12px);
}

.one-live-robot{
  position:absolute;
  z-index:3;
  left:43%;
  bottom:0;
  width:430px;
  max-height:590px;
  object-fit:contain;
  transform:translateX(-50%);
  filter:drop-shadow(0 25px 28px rgba(0,19,72,.30));
}

.one-live-speech{
  position:absolute;
  z-index:6;
  top:54px;
  left:5%;
  width:250px;
  padding:20px 20px 17px;
  border-radius:18px;
  background:#fff;
  color:#0d213a;
  box-shadow:0 20px 45px rgba(0,28,85,.17);
}

.one-live-speech::after{
  content:"";
  position:absolute;
  right:25px;
  bottom:-16px;
  border:17px solid transparent;
  border-top-color:#fff;
  border-right-width:0;
}

.one-live-speech b{
  display:block;
  font-size:18px;
  line-height:1.1;
}

.one-live-speech span{
  display:block;
  margin-top:10px;
  color:#53677e;
  font-size:12px;
  line-height:1.45;
}

.one-live-metrics{
  position:absolute;
  z-index:7;
  top:33px;
  right:20px;
  width:310px;
  display:grid;
  gap:10px;
}

.one-live-status,
.one-metric{
  display:flex;
  align-items:center;
  min-height:82px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:16px;
  background:rgba(22,74,184,.56);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(7px);
}

.one-live-status{
  min-height:78px;
  gap:12px;
}

.one-live-status i{
  width:13px;
  height:13px;
  flex:0 0 13px;
  border-radius:50%;
  background:#34e777;
  box-shadow:0 0 0 7px rgba(52,231,119,.10),0 0 17px rgba(52,231,119,.65);
}

.one-live-status b,
.one-live-status span{
  display:block;
}

.one-live-status b{
  font-size:17px;
}

.one-live-status span{
  margin-top:4px;
  color:#c7dbff;
  font-size:11px;
}

.one-metric{
  gap:13px;
}

.metric-icon{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  flex:0 0 48px;
  border-radius:12px;
  background:rgba(128,178,255,.22);
  font-size:21px;
}

.one-metric>div{
  flex:1;
}

.one-metric b,
.one-metric small{
  display:block;
}

.one-metric b{
  font-size:29px;
  line-height:1;
}

.one-metric small{
  margin-top:5px;
  color:#ecf4ff;
  font-size:11px;
}

.one-metric em{
  color:#30f176;
  font-size:12px;
  font-style:normal;
  font-weight:800;
}

.one-live-cta{
  min-height:70px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-top:2px;
  padding:0 14px;
  border:3px solid #ffd38c;
  border-radius:17px;
  background:linear-gradient(135deg,#ff8d05,#ffa60e);
  color:#fff;
  box-shadow:0 10px 0 rgba(255,189,91,.22),0 13px 32px rgba(255,145,0,.28);
  font-size:18px;
  font-weight:800;
  text-align:center;
  transition:.2s ease;
}

.one-live-cta:hover{
  transform:translateY(-2px);
  filter:brightness(1.04);
}

.one-live-cta span{
  font-size:23px;
}

@media(max-width:1450px){
  .one-live-shell{
    grid-template-columns:minmax(560px,1fr) minmax(590px,.9fr);
  }
  .one-live-copy{
    padding-left:34px;
    padding-right:22px;
  }
  .one-question-cards{
    grid-template-columns:repeat(3,1fr);
  }
  .one-question-cards button{
    min-height:74px;
  }
  .one-live-robot{
    width:380px;
    left:41%;
  }
  .one-live-metrics{
    width:270px;
    right:14px;
  }
  .one-live-speech{
    width:220px;
    left:1%;
  }
}

@media(max-width:1080px){
  .one-live-shell{
    grid-template-columns:1fr;
  }
  .one-live-copy{
    padding:44px 28px 24px;
  }
  .one-live-copy h1,
  .one-live-copy>p{
    max-width:850px;
  }
  .one-live-visual{
    min-height:630px;
  }
  .one-live-robot{
    left:42%;
    width:400px;
  }
  .one-live-metrics{
    width:285px;
  }
}

@media(max-width:700px){
  .one-live-hero{
    padding:8px 8px 28px;
  }
  .one-live-shell{
    border-radius:20px;
  }
  .one-live-copy{
    padding:30px 17px 18px;
  }
  .one-live-badge{
    font-size:9px;
    min-height:32px;
    padding:0 11px;
  }
  .one-live-copy h1{
    font-size:37px;
    margin-top:22px;
  }
  .one-live-copy>p{
    font-size:14px;
  }
  .one-question-box{
    min-height:66px;
    font-size:14px;
  }
  .one-question-arrow{
    width:46px;
    height:46px;
    font-size:24px;
  }
  .one-question-cards{
    grid-template-columns:repeat(2,1fr);
  }
  .one-live-visual{
    min-height:830px;
  }
  .one-live-speech{
    top:35px;
    left:16px;
    width:210px;
  }
  .one-live-robot{
    left:50%;
    bottom:235px;
    width:330px;
  }
  .one-live-metrics{
    top:auto;
    right:12px;
    left:12px;
    bottom:14px;
    width:auto;
    grid-template-columns:repeat(3,1fr);
  }
  .one-live-status{
    grid-column:1/-1;
  }
  .one-live-cta{
    grid-column:1/-1;
    min-height:62px;
    font-size:16px;
  }
  .one-metric{
    min-height:96px;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
  }
  .one-metric em{
    position:absolute;
    right:10px;
  }
}


/* =========================================================
   FACILITY ONE — SPRINT 2.5
   Hero mais compacto + mascote aprovado da Home
   ========================================================= */

/*
  Reduzimos a altura total do Hero para que o início do segundo bloco
  apareça já na primeira dobra em monitores Full HD.
*/
.one-live-hero{
  padding:12px 15px 24px;
}

.one-live-shell{
  min-height:515px;
  max-height:545px;
  grid-template-columns:minmax(600px,1.08fr) minmax(650px,.92fr);
}

.one-live-copy{
  padding:38px 30px 34px 42px;
}

.one-live-badge{
  min-height:34px;
  font-size:11px;
  padding:0 14px;
}

.one-live-copy h1{
  margin:20px 0 13px;
  font-size:clamp(37px,2.7vw,53px);
  line-height:1.02;
}

.one-live-copy>p{
  margin-bottom:18px;
  font-size:clamp(14px,.95vw,18px);
  line-height:1.42;
}

.one-question-box{
  min-height:64px;
  border-radius:15px;
  font-size:clamp(14px,1vw,18px);
}

.one-question-arrow{
  width:48px;
  height:48px;
  font-size:25px;
}

.one-question-label{
  margin:11px 0 8px;
  font-size:10px;
}

.one-question-cards{
  gap:7px;
}

.one-question-cards button{
  min-height:70px;
  padding:9px 7px;
}

.one-question-cards b{
  margin-bottom:4px;
  font-size:clamp(11px,.82vw,15px);
}

.one-question-cards span{
  font-size:clamp(9px,.62vw,11px);
}

/* Visual lateral */
.one-live-visual{
  min-height:515px;
}

.orbit-a{width:470px;height:470px}
.orbit-b{width:380px;height:380px}

.one-live-glow{
  width:320px;
  height:320px;
}

/* Mascote aprovado na Home do Facility */
.one-live-robot{
  left:43%;
  bottom:-4px;
  width:350px;
  max-height:490px;
  object-fit:contain;
  filter:drop-shadow(0 22px 26px rgba(0,19,72,.28));
}

.one-live-speech{
  top:32px;
  left:4%;
  width:215px;
  padding:15px 16px 14px;
}

.one-live-speech b{
  font-size:15px;
}

.one-live-speech span{
  margin-top:7px;
  font-size:10px;
}

/* Painel lateral compacto */
.one-live-metrics{
  top:22px;
  right:16px;
  width:275px;
  gap:8px;
}

.one-live-status,
.one-metric{
  min-height:64px;
  padding:10px 12px;
  border-radius:13px;
}

.one-live-status{
  min-height:60px;
}

.one-live-status b{
  font-size:14px;
}

.one-live-status span{
  font-size:9px;
}

.metric-icon{
  width:38px;
  height:38px;
  flex-basis:38px;
  font-size:17px;
}

.one-metric b{
  font-size:23px;
}

.one-metric small{
  font-size:9px;
}

.one-metric em{
  font-size:10px;
}

.one-live-cta{
  min-height:54px;
  border-radius:14px;
  font-size:14px;
}

/*
  Segundo bloco mais próximo: o texto
  “Enquanto sua equipe organiza o dia...” entra na página inicial.
*/
.impact{
  padding-top:62px;
}

.impact .heading{
  margin-bottom:38px;
}

@media(min-width:1500px){
  .one-live-shell{
    min-height:525px;
  }
}

@media(max-width:1200px){
  .one-live-shell{
    grid-template-columns:minmax(520px,1fr) minmax(560px,.9fr);
  }

  .one-live-copy{
    padding-left:28px;
  }

  .one-live-robot{
    width:320px;
  }

  .one-live-metrics{
    width:245px;
  }
}

@media(max-width:1080px){
  .one-live-shell{
    max-height:none;
    grid-template-columns:1fr;
  }

  .one-live-visual{
    min-height:560px;
  }

  .one-live-robot{
    left:43%;
    width:350px;
  }
}

@media(max-width:700px){
  .one-live-shell{
    max-height:none;
  }

  .one-live-copy{
    padding:28px 17px 18px;
  }

  .one-live-copy h1{
    font-size:35px;
  }

  .one-live-visual{
    min-height:790px;
  }

  .one-live-robot{
    left:50%;
    bottom:220px;
    width:300px;
  }

  .impact{
    padding-top:48px;
  }
}


/* =========================================================
   FACILITY ONE — SPRINT 2.6
   Mascote íntegro restaurado
   ========================================================= */

.one-live-robot{
  left:43%;
  bottom:-6px;
  width:360px;
  max-height:500px;
  object-fit:contain;
  filter:drop-shadow(0 22px 26px rgba(0,19,72,.28));
}

@media(max-width:1200px){
  .one-live-robot{
    width:330px;
  }
}

@media(max-width:1080px){
  .one-live-robot{
    width:350px;
  }
}

@media(max-width:700px){
  .one-live-robot{
    width:300px;
  }
}


/* SPRINT 2.7 — Mascote oficial da Home do Facility */
.one-live-robot{
  left:43%;
  bottom:-6px;
  width:380px;
  max-height:505px;
  object-fit:contain;
  filter:drop-shadow(0 22px 26px rgba(0,19,72,.28));
}
@media(max-width:1200px){.one-live-robot{width:345px}}
@media(max-width:1080px){.one-live-robot{width:360px}}
@media(max-width:700px){.one-live-robot{width:305px}}


/* =========================================================
   FACILITY ONE — SPRINT 2.8
   Ajuste fiel à SEGUNDA IMAGEM DE REFERÊNCIA
   ========================================================= */

/*
  Hero mais próximo da proporção visual da referência:
  compacto, com o segundo bloco já aparecendo na primeira dobra.
*/
.one-live-hero{
  padding:10px 12px 24px;
}

.one-live-shell{
  max-width:1680px;
  min-height:500px;
  max-height:520px;
  grid-template-columns:minmax(590px,1.08fr) minmax(620px,.92fr);
  border-radius:20px;
}

.one-live-copy{
  padding:34px 26px 28px 36px;
}

.one-live-badge{
  min-height:32px;
  padding:0 13px;
  font-size:10px;
}

.one-live-copy h1{
  max-width:720px;
  margin:18px 0 12px;
  font-size:clamp(38px,2.7vw,52px);
  line-height:1.03;
}

.one-live-copy>p{
  max-width:720px;
  margin-bottom:16px;
  font-size:clamp(14px,.92vw,17px);
  line-height:1.43;
}

.one-question-box{
  width:min(100%,760px);
  min-height:58px;
  padding-left:18px;
  border-radius:13px;
  font-size:15px;
}

.one-question-arrow{
  width:44px;
  height:44px;
  font-size:23px;
}

.one-question-label{
  margin:10px 0 7px;
  font-size:9px;
}

.one-question-cards{
  grid-template-columns:repeat(6,minmax(96px,1fr));
  gap:6px;
  width:min(100%,820px);
}

.one-question-cards button{
  min-height:65px;
  padding:8px 6px;
  border-radius:10px;
}

.one-question-cards b{
  font-size:12px;
  margin-bottom:4px;
}

.one-question-cards span{
  font-size:9px;
}

/* ---------------------------------------------------------
   LADO DIREITO
   --------------------------------------------------------- */
.one-live-visual{
  min-height:500px;
  overflow:hidden;
}

.one-live-orbit{
  left:45%;
  top:51%;
}

.orbit-a{
  width:455px;
  height:455px;
}

.orbit-b{
  width:365px;
  height:365px;
}

.one-live-glow{
  left:45%;
  top:52%;
  width:310px;
  height:310px;
}

/*
  IMPORTANTE:
  O mascote é o próprio da SEGUNDA IMAGEM enviada.
  Não removemos fundo por algoritmo — foi isso que estragou
  o personagem nas versões anteriores.
  Em vez disso, o recorte azul é fundido ao próprio hero.
*/
.one-live-robot{
  position:absolute;
  z-index:3;
  left:44%;
  bottom:-2px;
  width:350px;
  height:auto;
  max-height:none;
  object-fit:contain;
  transform:translateX(-50%);
  filter:none;

  -webkit-mask-image:
    radial-gradient(
      ellipse 78% 88% at 50% 54%,
      #000 0%,
      #000 72%,
      rgba(0,0,0,.95) 79%,
      rgba(0,0,0,.55) 89%,
      transparent 100%
    );
  mask-image:
    radial-gradient(
      ellipse 78% 88% at 50% 54%,
      #000 0%,
      #000 72%,
      rgba(0,0,0,.95) 79%,
      rgba(0,0,0,.55) 89%,
      transparent 100%
    );
}

/*
  O balão passa a ser 100% HTML, por cima do recorte.
*/
.one-live-speech{
  z-index:8;
  top:28px;
  left:4%;
  width:200px;
  padding:13px 14px 12px;
  border-radius:14px;
}

.one-live-speech b{
  font-size:14px;
}

.one-live-speech span{
  margin-top:6px;
  font-size:9px;
}

/* Métricas no mesmo equilíbrio visual da referência */
.one-live-metrics{
  z-index:9;
  top:17px;
  right:12px;
  width:255px;
  gap:7px;
}

.one-live-status,
.one-metric{
  min-height:58px;
  padding:9px 11px;
  border-radius:11px;
}

.one-live-status{
  min-height:56px;
}

.one-live-status i{
  width:10px;
  height:10px;
  flex-basis:10px;
}

.one-live-status b{
  font-size:13px;
}

.one-live-status span{
  font-size:8px;
}

.metric-icon{
  width:35px;
  height:35px;
  flex-basis:35px;
  font-size:15px;
}

.one-metric b{
  font-size:21px;
}

.one-metric small{
  margin-top:3px;
  font-size:8px;
}

.one-metric em{
  font-size:9px;
}

.one-live-cta{
  min-height:50px;
  margin-top:1px;
  border-width:2px;
  border-radius:11px;
  font-size:13px;
}

/* Segundo bloco seguindo a composição da referência */
.impact{
  padding-top:42px;
}

.impact .heading{
  max-width:820px;
  margin-bottom:28px;
}

.impact .heading>span{
  font-size:10px;
  letter-spacing:.13em;
}

.impact .heading h2{
  max-width:780px;
  margin:10px auto 8px;
  font-size:clamp(34px,3vw,48px);
  line-height:1.08;
  font-weight:600;
}

.impact .heading p{
  max-width:600px;
  margin-left:auto;
  margin-right:auto;
  font-size:13px;
}

/* Ajustes de viewport */
@media(max-width:1300px){
  .one-live-shell{
    grid-template-columns:minmax(520px,1fr) minmax(540px,.9fr);
  }

  .one-live-robot{
    width:320px;
  }

  .one-live-metrics{
    width:230px;
  }
}

@media(max-width:1080px){
  .one-live-shell{
    max-height:none;
    grid-template-columns:1fr;
  }

  .one-live-visual{
    min-height:540px;
  }

  .one-live-robot{
    width:345px;
  }
}

@media(max-width:700px){
  .one-live-shell{
    max-height:none;
  }

  .one-live-copy{
    padding:27px 16px 17px;
  }

  .one-live-copy h1{
    font-size:35px;
  }

  .one-question-cards{
    grid-template-columns:repeat(2,1fr);
  }

  .one-live-visual{
    min-height:760px;
  }

  .one-live-robot{
    left:50%;
    bottom:215px;
    width:305px;
  }

  .one-live-metrics{
    top:auto;
    right:10px;
    left:10px;
    bottom:10px;
    width:auto;
  }
}


/* =========================================================
   FACILITY ONE — SPRINT 2.9
   Mascote da Home isolado corretamente
   ========================================================= */
.one-live-robot{
  position:absolute;
  z-index:4;
  left:45%;
  bottom:-4px;
  width:365px;
  height:auto;
  max-height:490px;
  object-fit:contain;
  transform:translateX(-50%);
  filter:drop-shadow(0 20px 24px rgba(0,25,82,.22));
  -webkit-mask-image:none;
  mask-image:none;
}

@media(max-width:1300px){
  .one-live-robot{width:335px;}
}
@media(max-width:1080px){
  .one-live-robot{width:350px;}
}
@media(max-width:700px){
  .one-live-robot{
    left:50%;
    bottom:215px;
    width:305px;
  }
}


/* =========================================================
   FACILITY ONE — SPRINT 3.0
   HOME EXATA / COMPONENTIZADA
   ========================================================= */

.home30-hero{
  padding:14px 24px 28px;
}

.home30-shell{
  position:relative;
  display:grid;
  grid-template-columns:minmax(650px,1.08fr) minmax(610px,.92fr);
  max-width:1660px;
  min-height:560px;
  margin:0 auto;
  border-radius:20px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 63% 44%,rgba(0,179,255,.28),transparent 24%),
    linear-gradient(115deg,#0b3aa8 0%,#0964dc 47%,#0a5fd5 67%,#0b3a9e 100%);
  box-shadow:0 22px 60px rgba(8,64,154,.18);
}

.home30-copy{
  position:relative;
  z-index:6;
  padding:38px 34px 30px 36px;
}

.home30-badge{
  display:inline-flex;
  align-items:center;
  min-height:35px;
  padding:0 15px;
  border:1px solid rgba(255,255,255,.32);
  border-radius:999px;
  background:rgba(255,255,255,.04);
  color:#fff;
  font-size:11px;
  font-weight:700;
}

.home30-copy h1{
  margin:23px 0 14px;
  color:#fff;
  font-size:clamp(44px,3.25vw,64px);
  line-height:1.01;
  letter-spacing:-.045em;
  font-weight:700;
}

.home30-copy h1 strong{
  color:#05d6ed;
  font-weight:700;
}

.home30-copy>p{
  max-width:780px;
  margin:0 0 20px;
  color:#fff;
  font-size:clamp(15px,1.05vw,18px);
  line-height:1.45;
}

.home30-search{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:15px;
  width:min(100%,780px);
  min-height:68px;
  padding:8px 10px 8px 20px;
  border-radius:15px;
  background:#fff;
  color:#5b6f86;
  box-shadow:0 12px 30px rgba(3,37,92,.12);
  font-size:16px;
  font-weight:500;
}

.home30-spark{
  color:#147cff;
  font-size:22px;
}

.home30-search-arrow{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:50%;
  color:#fff;
  background:#117ffc;
  font-size:25px;
}

.home30-label{
  display:block;
  margin:12px 0 8px;
  color:rgba(255,255,255,.94);
  font-size:10px;
}

.home30-shortcuts{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:8px;
  width:min(100%,900px);
}

.home30-shortcuts button{
  min-height:80px;
  padding:10px 7px;
  border:1px solid rgba(255,255,255,.23);
  border-radius:11px;
  background:rgba(255,255,255,.04);
  color:#fff;
  font-family:inherit;
  cursor:pointer;
}

.home30-shortcuts b,
.home30-shortcuts span{
  display:block;
}

.home30-shortcuts b{
  margin-bottom:6px;
  font-size:13px;
}

.home30-shortcuts span{
  font-size:9px;
  line-height:1.3;
  color:rgba(255,255,255,.93);
}

.home30-visual{
  position:relative;
  min-height:560px;
  overflow:hidden;
}

.home30-ring{
  position:absolute;
  left:42%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1px solid rgba(58,198,255,.16);
}
.ring1{width:510px;height:510px}
.ring2{width:410px;height:410px}

.home30-robot-wrap{
  position:absolute;
  z-index:3;
  left:43%;
  bottom:0;
  width:430px;
  height:510px;
  transform:translateX(-50%);
  overflow:hidden;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 8%,#000 92%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0,#000 8%,#000 92%,transparent 100%);
}

.home30-robot{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 54%;
}

.home30-speech{
  position:absolute;
  z-index:8;
  top:42px;
  left:1%;
  width:220px;
  padding:17px 18px 15px;
  border-radius:16px;
  background:#fff;
  color:#10233d;
  box-shadow:0 16px 36px rgba(0,34,96,.16);
}

.home30-speech:after{
  content:"";
  position:absolute;
  right:18px;
  bottom:-17px;
  border:18px solid transparent;
  border-top-color:#fff;
  border-right-width:0;
}

.home30-speech b{
  display:block;
  font-size:16px;
  line-height:1.12;
}

.home30-speech span{
  display:block;
  margin-top:8px;
  color:#536a83;
  font-size:10px;
  line-height:1.45;
}

.home30-side{
  position:absolute;
  z-index:9;
  top:22px;
  right:16px;
  width:270px;
  display:grid;
  gap:9px;
}

.home30-status,
.home30-metric{
  display:flex;
  align-items:center;
  min-height:70px;
  padding:10px 13px;
  border:1px solid rgba(255,255,255,.23);
  border-radius:13px;
  background:rgba(16,72,181,.55);
}

.home30-status{
  gap:11px;
  min-height:66px;
}

.home30-status i{
  width:12px;
  height:12px;
  border-radius:50%;
  background:#2fe26d;
  box-shadow:0 0 0 7px rgba(47,226,109,.10);
}

.home30-status b,
.home30-status span{
  display:block;
}
.home30-status b{font-size:14px}
.home30-status span{margin-top:3px;font-size:9px;color:#dce9ff}

.home30-metric{
  gap:11px;
}

.metric-ico{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:10px;
  background:rgba(120,174,255,.22);
}

.home30-metric>div{flex:1}
.home30-metric b,
.home30-metric small{display:block}
.home30-metric b{font-size:25px;line-height:1}
.home30-metric small{margin-top:5px;font-size:9px;color:#fff}
.home30-metric em{font-size:10px;font-weight:800;font-style:normal;color:#32ed6c}

.home30-orange{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:58px;
  padding:0 12px;
  border:2px solid #ffd08a;
  border-radius:13px;
  background:linear-gradient(135deg,#ff8700,#ff9800);
  color:#fff;
  font-size:14px;
  font-weight:800;
  box-shadow:0 8px 20px rgba(255,136,0,.24);
}

.home30-orange span{font-size:20px}

/* Segundo bloco */
.home30-impact{
  padding:38px 0 62px;
}

.home30-heading{
  max-width:950px;
  margin-bottom:32px;
}

.home30-heading>span{
  font-size:10px;
  letter-spacing:.13em;
  color:#1268f3;
  font-weight:800;
}

.home30-heading h2{
  margin:10px 0 9px;
  font-size:clamp(40px,3.6vw,60px);
  line-height:1.06;
  font-weight:700;
  letter-spacing:-.04em;
}

.home30-heading p{
  color:#74869b;
  font-size:15px;
  line-height:1.55;
}

.home30-benefits{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.home30-benefits article{
  min-height:118px;
  display:flex;
  align-items:center;
  gap:18px;
  padding:20px 25px;
  border-radius:18px;
  background:#fff;
  border:1px solid #edf2f8;
  box-shadow:0 16px 42px rgba(20,60,105,.07);
}

.benefit-icon{
  display:grid;
  place-items:center;
  flex:0 0 48px;
  width:48px;
  height:48px;
  color:#1268f3;
  font-size:36px;
  font-weight:800;
}

.home30-benefits b,
.home30-benefits small{
  display:block;
}

.home30-benefits b{
  font-size:14px;
  color:#132f4b;
}

.home30-benefits small{
  margin-top:7px;
  font-size:11px;
  color:#74869a;
}

/* Responsividade */
@media(max-width:1300px){
  .home30-shell{
    grid-template-columns:minmax(560px,1fr) minmax(540px,.9fr);
  }
  .home30-copy{padding-left:28px}
  .home30-robot-wrap{width:390px}
  .home30-side{width:240px}
}

@media(max-width:1080px){
  .home30-shell{
    grid-template-columns:1fr;
  }
  .home30-visual{min-height:580px}
  .home30-benefits{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:700px){
  .home30-hero{padding:8px}
  .home30-shell{border-radius:18px}
  .home30-copy{padding:28px 16px 18px}
  .home30-copy h1{font-size:37px}
  .home30-shortcuts{grid-template-columns:repeat(2,1fr)}
  .home30-visual{min-height:780px}
  .home30-robot-wrap{
    left:50%;
    bottom:220px;
    width:340px;
    height:430px;
  }
  .home30-side{
    top:auto;
    right:10px;
    left:10px;
    bottom:10px;
    width:auto;
  }
  .home30-benefits{grid-template-columns:1fr}
}


/* =========================================================
   FACILITY ONE — SPRINT 3.1
   HOME FIEL À ÚLTIMA REFERÊNCIA APROVADA
   ========================================================= */

/*
  A composição do Hero passa a seguir a proporção exata da imagem
  aprovada: texto e controles à esquerda em HTML/CSS; lado direito
  em um componente visual único, evitando duplicação e recortes.
*/
.home30-hero{
  padding:14px 14px 28px;
}

.home30-shell{
  grid-template-columns:minmax(600px,1.02fr) minmax(630px,.98fr);
  max-width:1640px;
  min-height:555px;
  border-radius:19px;
}

/* Lado esquerdo */
.home30-copy{
  padding:37px 22px 28px 32px;
}

.home30-copy h1{
  margin-top:22px;
  font-size:clamp(43px,3.15vw,62px);
}

.home30-copy>p{
  font-size:clamp(15px,1vw,18px);
  line-height:1.46;
}

.home30-search{
  width:min(100%,760px);
  min-height:67px;
}

.home30-shortcuts{
  width:min(100%,870px);
}

.home30-shortcuts button{
  min-height:78px;
}

/* Lado direito: arte inteira, sem crop no navegador */
.home31-visual{
  position:relative;
  min-width:0;
  height:555px;
  overflow:hidden;
  align-self:stretch;
  background:transparent;
}

.home31-right-image{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center right;
  image-rendering:auto;
}

/*
  Como o recorte já contém o fundo azul original, retiramos qualquer
  efeito visual antigo que pudesse aparecer por baixo ou por cima.
*/
.home31-visual .home30-ring,
.home31-visual .home30-speech,
.home31-visual .home30-side,
.home31-visual .home30-robot-wrap{
  display:none!important;
}

/* Segunda seção na proporção da referência */
.home30-impact{
  padding-top:36px;
}

.home30-heading{
  margin-bottom:30px;
}

.home30-heading h2{
  font-size:clamp(38px,3.45vw,56px);
  line-height:1.06;
}

/* Full HD */
@media(min-width:1500px){
  .home30-shell{
    min-height:560px;
  }

  .home31-visual{
    height:560px;
  }
}

/* Notebook */
@media(max-width:1250px){
  .home30-shell{
    grid-template-columns:minmax(520px,1fr) minmax(530px,.92fr);
  }

  .home31-visual{
    height:535px;
  }
}

/* Tablet */
@media(max-width:1080px){
  .home30-shell{
    grid-template-columns:1fr;
    max-height:none;
  }

  .home31-visual{
    width:100%;
    height:auto;
    min-height:0;
  }

  .home31-right-image{
    width:100%;
    height:auto;
    object-fit:contain;
  }
}

/* Mobile: mantém a imagem inteira, sem cortar o mascote */
@media(max-width:700px){
  .home30-copy{
    padding:28px 16px 18px;
  }

  .home31-visual{
    overflow:visible;
  }

  .home31-right-image{
    width:100%;
    height:auto;
  }
}


/* =========================================================
   FACILITY ONE — SPRINT 3.2
   Azul escuro unificado em todo o Hero
   ========================================================= */

/*
  Unifica o fundo do quadro inteiro com o azul mais escuro
  utilizado na composição visual da direita.
*/
.home30-shell{
  background:
    radial-gradient(circle at 68% 44%, rgba(16,125,235,.18), transparent 27%),
    linear-gradient(115deg,
      #0a3d99 0%,
      #0b49ad 38%,
      #0a48aa 62%,
      #09398f 100%);
}

/*
  Suaviza a transição visual com o componente da direita,
  eliminando a sensação de dois blocos de azuis diferentes.
*/
.home31-visual{
  background:
    linear-gradient(90deg,
      rgba(10,72,170,0) 0%,
      rgba(10,67,157,.18) 18%,
      rgba(9,57,143,.10) 100%);
}

/*
  Mantém o contraste de textos e controles sobre o novo fundo.
*/
.home30-copy h1,
.home30-copy>p,
.home30-badge,
.home30-label,
.home30-shortcuts button{
  text-shadow:0 1px 1px rgba(0,25,70,.08);
}

.home30-shortcuts button{
  background:rgba(255,255,255,.035);
  border-color:rgba(255,255,255,.22);
}

.home30-shortcuts button:hover{
  background:rgba(255,255,255,.085);
}


/* =========================================================
   FACILITY ONE — SPRINT 3.3
   HERO AZUL UNIFICADO — SEM EMENDA
   ========================================================= */

.hero33{
  width:100%;
  padding:14px 14px 28px;
}

.hero33-frame{
  position:relative;
  width:min(calc(100% - 0px),1640px);
  margin:0 auto;
  overflow:hidden;
  border-radius:20px;
  box-shadow:0 22px 60px rgba(8,64,154,.18);
  background:#063b97;
}

.hero33-image{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  border-radius:20px;
}

/* Área clicável sobre o CTA laranja da própria arte */
.hero33-trial{
  position:absolute;
  right:2.4%;
  top:72.5%;
  width:19.5%;
  height:11.8%;
  z-index:3;
  border-radius:14px;
}

/* Conteúdo semântico para acessibilidade/SEO, sem duplicar visualmente */
.hero33-semantic{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
}

/* O bloco seguinte sobe um pouco, como na referência */
.home30-impact,
.impact{
  padding-top:38px;
}

@media(max-width:700px){
  .hero33{
    padding:8px 8px 22px;
  }

  .hero33-frame,
  .hero33-image{
    border-radius:16px;
  }
}
\n\n/* Mascote piscando — CTA final */\n.final-mascot{\n  position:relative;\n  width:165px;\n  line-height:0;\n  justify-self:center;\n}\n.final-mascot img{\n  display:block;\n  width:100%;\n  height:auto;\n  object-fit:contain;\n  background:transparent;\n}\n.final-mascot .blink-eye{\n  position:absolute;\n  z-index:2;\n  top:37.7%;\n  width:8.2%;\n  height:8.4%;\n  border-radius:50%;\n  background:#06111d;\n  opacity:0;\n  transform:scaleY(.08);\n  transform-origin:center;\n  animation:oneBlink 4.8s infinite;\n  pointer-events:none;\n}\n.final-mascot .blink-left{left:41.1%;}\n.final-mascot .blink-right{left:59.2%;}\n@keyframes oneBlink{\n  0%,91%,95%,100%{opacity:0;transform:scaleY(.08)}\n  92%,94%{opacity:1;transform:scaleY(1)}\n}\n@media(max-width:1050px){\n  .final-mascot{width:140px;}\n}\n@media(max-width:720px){\n  .final-mascot{width:165px;margin:auto;}\n}\n
/* =========================================================
   FACILITY ONE — SPRINT 3.5
   CTA final: azul escuro + mascote piscando
   ========================================================= */
.final .box{
  background:
    radial-gradient(circle at 72% 28%, rgba(18,111,225,.18), transparent 34%),
    linear-gradient(115deg,#0a3d99 0%,#0b49ad 42%,#0a48aa 68%,#09398f 100%);
  box-shadow:0 35px 90px rgba(8,55,135,.26);
}

.final-mascot{
  width:185px;
}

/* Pálpebras calibradas sobre os olhos azuis do PNG oficial */
.final-mascot .blink-eye{
  top:36.2%;
  width:4.7%;
  height:8.2%;
  border-radius:55%;
  background:#02070d;
  opacity:0;
  transform:scaleY(.08);
  transform-origin:center center;
  animation:oneBlink35 4.4s infinite;
  box-shadow:0 0 3px rgba(0,0,0,.85);
}
.final-mascot .blink-left{left:48.5%;}
.final-mascot .blink-right{left:62.6%;}

@keyframes oneBlink35{
  0%,88%,91%,94%,100%{opacity:0;transform:scaleY(.08)}
  89%,90%,92%,93%{opacity:1;transform:scaleY(1)}
}

@media(max-width:1050px){.final-mascot{width:155px}}
@media(max-width:720px){.final-mascot{width:175px}}
