/* ============================================================
   HOME: interface de entrada para diferentes intenções.
   Fluxo contínuo: escuro (sinais) → claro (prova, contexto) →
   glass leitoso (conhecimento) → escuro (conversa).
   Na Home o visitante percebe: sinais discretos, sem hotspots.
   ============================================================ */
:root{
  --v-accent:#EC1A5E;
  --v-accent-soft:#FCE4EC;
  --v-accent-deep:#9E1442;
  --v-accent-rgb:236,26,94;
  --hm-ease:cubic-bezier(.22,1,.36,1);
}
.hm-kicker{display:inline-block; font-size:12.5px; font-weight:700; letter-spacing:.95px; text-transform:uppercase; color:var(--logos-blue);}
.hm-head{max-width:760px; margin-bottom:48px;}
.hm-head .hm-kicker{margin-bottom:16px;}
.hm-head h2{font-size:clamp(30px, 3.4vw, 46px); font-weight:800; letter-spacing:-1.1px; line-height:1.08; margin-bottom:18px;}
.hm-head p{font-size:17px; line-height:1.7; color:var(--ink);}
.hm-head-split{max-width:none; display:grid; grid-template-columns:1.1fr .9fr; gap:56px; align-items:end;}
.hm-head-split h2{margin-bottom:0;}
.hm-head-center{margin-left:auto; margin-right:auto; text-align:center;}
.hm-link{display:inline-flex; align-items:center; gap:8px; font-weight:700; font-size:15px; color:var(--pink); transition:gap .25s var(--hm-ease);}
.hm-link:hover{gap:13px;}

/* ================= HERO ================= */
.hm-hero{position:relative; min-height:100vh; min-height:100svh; background:#15151d; color:#fff; overflow:hidden; display:flex; align-items:flex-end;}
.hm-scene{position:absolute; inset:0; margin:0; pointer-events:none;}
.hm-scene img,.hm-video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:var(--fx) var(--fy);}
/* modo vídeo: a imagem (quadro final) fica por baixo até o vídeo começar */
.hm-video{opacity:0; transition:opacity .8s ease;}
.hm-hero.is-playing .hm-video{opacity:1;}
.hm-hero.is-video:not(.is-settled) .hm-scene img{opacity:0;}
.hm-hero.is-video .hm-scene img{transition:opacity .8s ease;}
.hm-hero-wash{position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(90deg, rgba(16,16,24,.88) 0%, rgba(16,16,24,.62) 34%, rgba(16,16,24,.08) 64%, rgba(16,16,24,0) 100%),
             linear-gradient(0deg, rgba(16,16,24,.85) 0%, rgba(16,16,24,0) 38%),
             linear-gradient(180deg, rgba(16,16,24,.55) 0%, rgba(16,16,24,0) 22%);}
.hm-hero-copy{position:relative; z-index:3; width:100%; padding-top:170px; padding-bottom:120px;}
.hm-hero-copy .hm-kicker{color:var(--logos-blue-ink); margin-bottom:22px;}
.hm-hero h1{font-size:clamp(38px, 5vw, 66px); font-weight:800; letter-spacing:-1.8px; line-height:1.04; max-width:780px; margin-bottom:24px;}
.hm-hero h1 span{color:rgba(255,255,255,.62);}
.hm-hero-lead{font-size:18.5px; line-height:1.6; color:rgba(255,255,255,.82); max-width:540px; margin-bottom:34px;}
.hm-illu{position:absolute; left:24px; bottom:18px; z-index:3; font-size:11px; color:rgba(255,255,255,.42);}
.hm-replay{position:absolute; right:96px; bottom:40px; z-index:4; display:inline-flex; align-items:center; gap:7px; padding:7px 12px 7px 10px; border-radius:999px;
  border:1px solid rgba(255,255,255,.16); background:rgba(20,20,30,.35); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  color:rgba(255,255,255,.62); font:600 12px/1 'Plus Jakarta Sans',sans-serif; cursor:pointer; opacity:0; transition:opacity .6s ease 2.8s, color .2s ease, border-color .2s ease;}
.hm-hero.is-settled .hm-replay{opacity:1;}
.hm-replay[hidden]{display:none;}
.hm-replay:hover{color:#fff; border-color:rgba(255,255,255,.35);}
.hm-replay:focus-visible{outline:2px solid var(--logos-blue-ink); outline-offset:2px; color:#fff;}
.hm-replay svg{width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round;}

/* sinais: glass operacional mínimo, sem interação */
.hm-sig{position:absolute; z-index:2; left:0; top:0; transform:translate(-7px,-7px); display:flex; align-items:flex-start; gap:10px;
  opacity:0; transition:opacity .9s ease .1s, translate .9s var(--hm-ease) .1s; translate:0 8px; pointer-events:none;}
/* contemplar → perceber → explorar: assentou a câmera, os pulsos surgem um a um;
   o conteúdo só abre no hover/foco e volta ao mínimo ao sair */
.hm-sig.hm-sig-1{transition-delay:.6s;} .hm-sig.hm-sig-2{transition-delay:1.6s;} .hm-sig.hm-sig-3{transition-delay:2.6s;}
.hm-hero.is-settled .hm-sig.is-placed{opacity:1; translate:0 0; pointer-events:auto;}
.hm-sig{cursor:default; outline:none;}
.hm-dot{position:relative;}
.hm-dot::after{content:""; position:absolute; inset:-14px; border-radius:50%;}
.hm-box{opacity:0; visibility:hidden; transform:translateX(-6px) scale(.97); transform-origin:left top;
  transition:opacity .35s ease, transform .45s var(--hm-ease), visibility 0s linear .45s;}
.hm-sig[style*="row-reverse"] .hm-box{transform:translateX(6px) scale(.97); transform-origin:right top;}
.hm-sig:hover .hm-box,.hm-sig:focus-visible .hm-box,.hm-sig.is-open .hm-box{opacity:1; visibility:visible; transform:none; transition:opacity .3s ease, transform .45s var(--hm-ease), visibility 0s;}
.hm-sig:focus-visible .hm-dot{outline:2px solid #fff; outline-offset:4px;}
.hm-sig.is-open,.hm-sig:hover,.hm-sig:focus-visible{z-index:5;}
/* glass rico do caminhão: um veículo, várias leituras (temperatura + câmera de cabine) */
.hm-sig-rich .hm-box{width:300px; padding:12px; gap:10px; border-radius:16px; background:rgba(20,22,32,.56);}
.hm-rich-head{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:2px 4px 0;}
.hm-rich-row em{grid-column:1/-1;}
.hm-rich-row{display:grid; grid-template-columns:auto 1fr; align-items:baseline; gap:2px 10px; padding:10px 10px 11px; border-radius:11px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08);}
.hm-rich-row small{grid-column:1/-1; font-size:10.5px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:rgba(255,255,255,.55);}
.hm-rich-row strong{font-size:24px;}
.hm-rich-row .hm-band{grid-column:1/-1;}
.hm-rich-cam{position:relative; display:block; border-radius:11px; overflow:hidden; aspect-ratio:16/9; border:1px solid rgba(255,255,255,.12);}
.hm-rich-cam img{display:block; width:100%; height:100%; object-fit:cover;}
.hm-rich-cam::after{content:""; position:absolute; inset:0; background:linear-gradient(0deg, rgba(10,10,16,.7), rgba(10,10,16,0) 55%);}
.hm-rich-tag{position:absolute; left:8px; bottom:8px; z-index:1; display:flex; align-items:center; gap:6px; font-size:11.5px; font-weight:600; color:#fff;}
.hm-rich-cam img{object-position:70% 40%;}
.hm-rich-cam::before{content:"Câmera de cabine"; position:absolute; left:8px; top:8px; z-index:1; padding:3px 7px; border-radius:6px; font-size:10px; font-weight:700; letter-spacing:.5px; text-transform:uppercase; background:rgba(12,12,18,.55); color:rgba(255,255,255,.9);}
.hm-rich-tag i{width:7px; height:7px; border-radius:50%; background:#F2A33A; box-shadow:0 0 0 3px rgba(242,163,58,.25);}
.hm-rich-foot{font-size:11px; color:rgba(255,255,255,.5); padding:0 2px;}
.hm-hero-copy{pointer-events:none;} .hm-hero-copy > *{pointer-events:auto;}
.hm-dot{flex:none; width:14px; height:14px; border-radius:50%; background:var(--logos-blue); border:2px solid #fff; box-shadow:0 0 0 0 rgba(var(--logos-blue-rgb),.55); animation:hmPulse 2.8s ease-out infinite; margin-top:2px;}
.hm-sig-ev .hm-dot{background:#F2A33A; box-shadow:0 0 0 0 rgba(242,163,58,.55); animation-name:hmPulseW;}
.hm-sig-area .hm-dot{border-radius:3px; width:12px; height:12px; background:transparent; border:2px dashed rgba(255,255,255,.9); animation:none;}
@keyframes hmPulse{0%{box-shadow:0 0 0 0 rgba(var(--logos-blue-rgb),.55);} 70%,100%{box-shadow:0 0 0 14px rgba(var(--logos-blue-rgb),0);}}
@keyframes hmPulseW{0%{box-shadow:0 0 0 0 rgba(242,163,58,.55);} 70%,100%{box-shadow:0 0 0 14px rgba(242,163,58,0);}}
.hm-box{display:flex; flex-direction:column; gap:4px; padding:13px 16px 14px; border-radius:16px; min-width:200px;
  background:rgba(22,24,34,.48); backdrop-filter:blur(14px) saturate(140%); -webkit-backdrop-filter:blur(14px) saturate(140%);
  border:1px solid rgba(255,255,255,.16); box-shadow:0 14px 34px -18px rgba(0,0,0,.6);}
.hm-box b{font-family:'Switzer',sans-serif; font-size:10.5px; font-weight:700; letter-spacing:1.1px; color:rgba(255,255,255,.66);}
.hm-box strong{font-family:'Switzer',sans-serif; font-size:22px; font-weight:700; letter-spacing:-.4px; line-height:1.1;}
.hm-box em{font-style:normal; white-space:nowrap; font-size:12.5px; color:rgba(255,255,255,.9); display:flex; align-items:center; gap:6px;}
.hm-box em i{width:6px; height:6px; border-radius:50%; background:#5ED38C;}
.hm-box em.is-warn i{background:#F2A33A;}
/* glass do Hero: o sinal aberto mostra o contexto, não só o rótulo */
.hm-sig.is-open .hm-dot,.hm-sig:hover .hm-dot,.hm-sig:focus-visible .hm-dot{transform:scale(1.18);}
.hm-dot{transition:transform .3s ease;}
.hm-sig.is-open{z-index:3;}
.hm-box strong{font-size:26px;}
.hm-box strong.hm-st{font-size:17px; letter-spacing:-.2px; line-height:1.25;}
.hm-mini-route{display:block; margin-top:6px; width:150px; height:32px;}
.hm-mini-route svg{width:100%; height:100%; overflow:visible;}
.hm-mini-route path{fill:none; stroke:rgba(108,196,245,.9); stroke-width:1.8; stroke-dasharray:4 5; stroke-linecap:round;}
.hm-mini-route circle{fill:var(--logos-blue); stroke:#fff; stroke-width:1.5;}
.hm-metric{font-size:13.5px; font-weight:600; font-variant-numeric:tabular-nums;}
.hm-band{position:relative; display:block; height:4px; border-radius:4px; margin-top:5px; background:rgba(255,255,255,.16);}
.hm-band i{position:absolute; left:22%; width:46%; top:0; bottom:0; border-radius:4px; background:rgba(94,211,140,.55);}
.hm-band::after{content:""; position:absolute; left:40%; top:-3px; width:2px; height:10px; border-radius:2px; background:#fff;}
.hm-trace{position:absolute; inset:0; width:100%; height:100%; z-index:1; overflow:visible; pointer-events:none;}
.hm-trace path{fill:none; stroke:rgba(108,196,245,.85); stroke-width:2.2; stroke-linecap:round; stroke-dasharray:5 7;
  opacity:0; transition:opacity 1.2s ease .4s;}
.hm-hero.is-settled .hm-trace.is-placed path{opacity:.35; animation:hmDash 2.4s linear infinite; transition-delay:1.6s;}
.hm-scene:has(.hm-sig-2:hover, .hm-sig-2:focus-visible, .hm-sig-2.is-open) .hm-trace.is-placed path{opacity:1; transition-delay:0s;}
@keyframes hmDash{to{stroke-dashoffset:-24;}}

/* ================= INTENÇÃO ================= */
.hm-intent{background:#15151d; color:#fff; padding:110px 0 120px; position:relative;}
.hm-intent .hm-head p{color:rgba(255,255,255,.7);}
.hm-doors{display:grid; grid-template-columns:300px 1fr; gap:28px; align-items:start;}
.hm-door-tabs{display:flex; flex-direction:column; gap:4px;}
.hm-door-tabs button{display:flex; align-items:baseline; gap:8px; text-align:left; padding:15px 18px; border-radius:14px; border:1px solid transparent; background:transparent;
  color:rgba(255,255,255,.62); font:700 17px/1.2 'Switzer',sans-serif; cursor:pointer; transition:background .25s ease, color .25s ease, border-color .25s ease;}
.hm-door-tabs button small{font:500 13px/1 'Plus Jakarta Sans',sans-serif; color:rgba(255,255,255,.42);}
.hm-door-tabs button:hover{color:#fff; background:rgba(255,255,255,.04);}
.hm-door-tabs button[aria-selected="true"]{color:#fff; background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.12);}
.hm-door-tabs button[aria-selected="true"]::before{content:""; align-self:center; width:6px; height:6px; border-radius:50%; background:var(--pink); margin-right:2px;}
.hm-door-tabs button:focus-visible{outline:2px solid var(--logos-blue-ink); outline-offset:2px;}
.hm-door-panels{position:relative; min-height:340px; padding:26px; border-radius:22px;
  background:linear-gradient(160deg, rgba(255,255,255,.07), rgba(255,255,255,.025)); border:1px solid rgba(255,255,255,.1);
  backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);}
.hm-door{display:none; grid-template-columns:1fr 1fr; gap:10px; align-content:start;}
.hm-door.is-on{display:grid; animation:hmIn .5s var(--hm-ease);}
@keyframes hmIn{from{opacity:0; transform:translateY(8px);} to{opacity:1; transform:none;}}
.hm-door a{display:flex; align-items:center; gap:12px; padding:16px 18px; border-radius:14px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08);
  font-size:15.5px; line-height:1.45; color:rgba(255,255,255,.9); transition:background .25s ease, border-color .25s ease, transform .25s var(--hm-ease);}
.hm-door a:hover{background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.2); transform:translateY(-2px);}
.hm-door a i{flex:none; width:12px; height:12px; border-radius:50%; background:var(--pc); box-shadow:0 0 0 5px color-mix(in srgb, var(--pc) 22%, transparent);}
.hm-door a.hm-door-all{grid-column:1/-1; background:transparent; border-color:transparent; color:#FF7CA3; font-weight:700; padding:12px 4px 0;}
.hm-door a.hm-door-all:hover{transform:none; background:transparent;}

/* ================= RESULTADO / Pilares ================= */
.hm-pillars{background:linear-gradient(180deg, #15151d 0%, #1d1d28 100%); color:#fff; padding:40px 0 120px; position:relative;}
.hm-pillars .hm-head p{color:rgba(255,255,255,.7);}
.hm-pil{list-style:none; display:grid; grid-template-columns:repeat(5,1fr); gap:0; margin:0 0 40px; position:relative;}
.hm-pil::before{content:""; position:absolute; left:0; right:0; top:7px; height:2px; background:linear-gradient(90deg,#E94D35,#2C8FE8,#EC1A5E,#9F8CE9,#0FA8C4); opacity:.6;}
.hm-pil a{display:flex; flex-direction:column; gap:12px; padding:0 22px 0 0; position:relative;}
.hm-pil a i{width:16px; height:16px; border-radius:50%; background:#1b1b26; border:2px solid var(--pc); transition:background .3s ease, box-shadow .35s ease;}
.hm-pil a b{font-family:'Switzer',sans-serif; font-size:19px; font-weight:700; margin-top:10px;}
.hm-pil a span{font-size:14.5px; line-height:1.55; color:rgba(255,255,255,.62); font-style:italic; transition:color .3s ease;}
.hm-pil a:hover i,.hm-pil a:focus-visible i{background:var(--pc); box-shadow:0 0 0 7px color-mix(in srgb, var(--pc) 22%, transparent);}
.hm-pil a:hover span{color:#fff;}
.hm-pillars .hm-link{color:#FF7CA3;}

/* ================= PROVA ================= */
.hm-proof{background:var(--offwhite); padding:120px 0 110px;}
.hm-case{display:grid; grid-template-columns:1.25fr .75fr; align-items:center; gap:0; border-radius:26px; overflow:hidden; background:#15151d; color:#fff; box-shadow:0 40px 80px -50px rgba(20,20,30,.6);}
.hm-case-media{position:relative; margin:0; aspect-ratio:16/9; background:#000; overflow:hidden;}
.hm-case-media video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 48%;}
/* o vídeo é vertical (reel): o recorte mostra só a faixa aérea, sem os letreiros */
.hm-case-tag{position:absolute; left:20px; top:20px; padding:7px 12px; border-radius:999px; font-size:11.5px; font-weight:700; letter-spacing:.6px; text-transform:uppercase;
  background:rgba(20,20,30,.5); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.16);}
.hm-case-copy{padding:40px 42px; display:flex; flex-direction:column; justify-content:center; gap:16px;}
.hm-case-big{font-family:'Switzer',sans-serif; font-size:clamp(30px, 3.2vw, 44px); font-weight:800; letter-spacing:-1px; line-height:1.02; text-transform:uppercase;
  background:linear-gradient(90deg,#FF7A59,#EC1A5E 60%,#B98CF0); -webkit-background-clip:text; background-clip:text; color:transparent;}
.hm-case-copy h2{font-size:21px; font-weight:700; line-height:1.35; letter-spacing:-.2px;}
.hm-case-copy p{font-size:15.5px; line-height:1.65; color:rgba(255,255,255,.72);}
.hm-case-copy small{font-size:13px; color:rgba(255,255,255,.5);}
.hm-case-copy .hm-link{color:#FF7CA3; margin-top:6px;}
.hm-proof-row{margin-top:44px; display:grid; grid-template-columns:200px 1fr; gap:28px; align-items:start;}
.hm-proof-row > .hm-kicker{padding-top:20px; color:rgba(36,36,48,.55);}
.hm-proof-items{display:grid; grid-template-columns:repeat(4,1fr); gap:14px;}
.hm-proof-items .ev{margin:0; padding:20px 20px 18px; border-radius:18px; background:#fff; border:1px solid rgba(36,36,48,.07); display:flex; flex-direction:column; gap:6px;}
.hm-proof-items .ev b{font-family:'Switzer',sans-serif; font-size:32px; font-weight:800; letter-spacing:-1px; color:var(--pink);}
.hm-proof-items .ev span{font-size:14px; line-height:1.45; color:var(--ink);}
.hm-proof-items .ev cite{font-style:normal; font-size:11.5px; color:rgba(36,36,48,.45); margin-top:auto; padding-top:6px;}

/* ================= CONTEXTO ================= */
.hm-context{background:var(--offwhite); padding:20px 0 120px;}
.hm-ctx-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px;}
.hm-ctx{position:relative; display:flex; flex-direction:column; justify-content:flex-end; gap:12px; aspect-ratio:4/3; padding:20px; border-radius:22px; overflow:hidden; color:#fff; isolation:isolate;}
.hm-ctx img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; transition:transform 1.2s var(--hm-ease);}
.hm-ctx-shade{position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg, rgba(16,16,24,.88) 0%, rgba(16,16,24,.2) 55%, rgba(16,16,24,.05) 100%);}
.hm-ctx:hover img{transform:scale(1.05);}
.hm-ctx-live{grid-column:span 2; grid-row:span 2; aspect-ratio:auto; padding:28px;}
.hm-ctx-live video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2;}
.hm-ctx-live b{font-size:30px !important;}
.hm-ctx-go{font-size:14px; font-weight:700; color:#fff; opacity:.85; transition:opacity .25s ease;}
.hm-ctx-live:hover .hm-ctx-go{opacity:1;}
.hm-ctx b{font-family:'Switzer',sans-serif; font-size:20px; font-weight:700; line-height:1.2;}
.hm-chip{align-self:flex-start; display:inline-flex; align-items:center; gap:7px; padding:7px 11px; border-radius:10px; font-size:12px; font-weight:600;
  background:rgba(22,24,34,.45); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border:1px solid rgba(255,255,255,.18);}
.hm-chip i{width:7px; height:7px; border-radius:50%; background:var(--logos-blue-ink); box-shadow:0 0 0 3px rgba(108,196,245,.25);}
.hm-ctx-more{display:flex; flex-wrap:wrap; align-items:center; gap:8px 10px; margin-top:24px; font-size:14px; color:rgba(36,36,48,.55);}
.hm-ctx-more a:not(.hm-link){padding:8px 14px; border-radius:999px; background:#fff; border:1px solid rgba(36,36,48,.1); color:var(--chumbo); font-weight:600; transition:border-color .25s ease;}
.hm-ctx-more a:not(.hm-link):hover{border-color:var(--pink);}
.hm-ctx-more .hm-link{margin-left:auto;}

/* ================= CAPACIDADES ================= */
.hm-caps{background:#fff; padding:120px 0;}
.hm-layers{list-style:none; margin:0; padding:0; border-top:1px solid rgba(36,36,48,.1);}
.hm-layers a{display:grid; grid-template-columns:70px 300px 1fr 40px; gap:24px; align-items:center; padding:28px 8px; border-bottom:1px solid rgba(36,36,48,.1); position:relative; transition:padding .35s var(--hm-ease), background .35s ease;}
.hm-layers a::before{content:""; position:absolute; left:0; top:-1px; bottom:-1px; width:3px; background:var(--c); transform:scaleY(0); transform-origin:center; transition:transform .35s var(--hm-ease);}
.hm-layers a:hover{padding-left:22px; background:linear-gradient(90deg, color-mix(in srgb, var(--c) 6%, transparent), transparent 60%);}
.hm-layers a:hover::before{transform:scaleY(1);}
.hm-l-n{font-family:'Switzer',sans-serif; font-size:13px; font-weight:700; color:var(--c); letter-spacing:1px;}
.hm-layers b{font-family:'Switzer',sans-serif; font-size:24px; font-weight:700; letter-spacing:-.4px;}
.hm-layers p{font-size:15.5px; line-height:1.6; color:var(--ink);}
.hm-l-arr{font-size:20px; color:rgba(36,36,48,.3); transition:color .3s ease, transform .3s var(--hm-ease);}
.hm-layers a:hover .hm-l-arr{color:var(--c); transform:translateX(4px);}
.hm-enterprise{position:relative; overflow:hidden; display:grid; grid-template-columns:1fr auto; gap:16px 48px; align-items:end; margin-top:48px; padding:44px 48px 42px; border-radius:26px; color:#fff;
  background:radial-gradient(90% 140% at 100% 0%, rgba(14,165,233,.32), transparent 60%), linear-gradient(135deg,#1B2A4E 0%,#0D1526 100%); transition:transform .35s var(--hm-ease), box-shadow .35s ease;}
.hm-enterprise:hover{transform:translateY(-3px); box-shadow:0 30px 60px -36px rgba(14,30,50,.85);}
.hm-ent-brands{grid-column:1/-1; display:flex; align-items:center; gap:16px; margin-bottom:12px;}
.hm-ent-brands > span{font-size:22px; font-weight:300; color:rgba(255,255,255,.5);}
.hm-ent-logos{height:30px; width:auto;}
.hm-ent-geotab{height:44px; width:auto; border-radius:6px;}
.hm-enterprise .hm-kicker{grid-column:1/-1; color:var(--geotab-accent); margin-bottom:0;}
.hm-enterprise b{font-family:'Switzer',sans-serif; font-size:clamp(26px, 2.8vw, 38px); font-weight:800; letter-spacing:-.9px; line-height:1.1; max-width:760px;}
.hm-enterprise .hm-link{color:#7FD0F7; white-space:nowrap;}
/* porta "grande ou complexa" (Enterprise) */
.hm-door-scale{grid-template-columns:1fr;}
.hm-door-note{font-size:16px; line-height:1.65; color:rgba(255,255,255,.75); max-width:560px; padding:6px 4px 10px;}
.hm-door-note b{display:block; font-family:'Switzer',sans-serif; font-size:22px; letter-spacing:-.4px; color:#fff; margin-bottom:8px;}
.hm-door a.hm-door-cta{justify-self:start; background:rgba(14,165,233,.14); border-color:rgba(14,165,233,.45); color:#BFE8FB; font-weight:700;}
.hm-door a.hm-door-cta:hover{background:rgba(14,165,233,.24);}

/* ================= CONHECIMENTO — glass claro/leitoso ================= */
.hm-know{position:relative; padding:120px 0; overflow:hidden; background:#EEF2F6;}
.hm-know-bg{position:absolute; inset:-40px; z-index:0;}
.hm-know-bg img{width:100%; height:100%; object-fit:cover; filter:blur(38px) saturate(115%); opacity:.55; transform:scale(1.1);}
.hm-know-bg::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(248,245,239,.55), rgba(238,242,246,.75));}
.hm-know .wrap{position:relative; z-index:1;}
.hm-know-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-bottom:36px;}
.hm-paper{display:flex; flex-direction:column; gap:12px; padding:28px 26px 24px; border-radius:22px; min-height:280px;
  background:rgba(255,255,255,.58); backdrop-filter:blur(22px) saturate(150%); -webkit-backdrop-filter:blur(22px) saturate(150%);
  border:1px solid rgba(255,255,255,.85); box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 24px 50px -36px rgba(36,40,60,.45);
  transition:transform .35s var(--hm-ease), background .35s ease, box-shadow .35s ease;}
.hm-paper:hover{transform:translateY(-4px); background:rgba(255,255,255,.76); box-shadow:0 1px 0 #fff inset, 0 30px 60px -36px rgba(36,40,60,.5);}
.hm-paper-type{font-size:11.5px; font-weight:700; letter-spacing:.9px; text-transform:uppercase; color:rgba(36,36,48,.5);}
.hm-paper b{font-family:'Switzer',sans-serif; font-size:20px; font-weight:700; line-height:1.3; letter-spacing:-.2px;}
.hm-paper p{font-size:14.5px; line-height:1.6; color:var(--ink);}
.hm-tags{display:flex; flex-wrap:wrap; gap:6px; margin-top:auto; padding-top:8px;}
.hm-tags i{font-style:normal; font-size:11.5px; font-weight:600; padding:5px 10px; border-radius:999px; background:rgba(36,36,48,.06); color:rgba(36,36,48,.7);}

/* ================= AUTORIDADE ================= */
.hm-auth{background:var(--offwhite); padding:120px 0;}
.hm-auth-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:64px; align-items:center;}
.hm-auth-copy .hm-kicker{margin-bottom:16px;}
.hm-auth-copy h2{font-size:clamp(30px, 3.4vw, 46px); font-weight:800; letter-spacing:-1.1px; line-height:1.08; margin-bottom:20px;}
.hm-auth-copy p{font-size:17px; line-height:1.7; color:var(--ink); margin-bottom:24px;}
.hm-auth-quotes{display:grid; gap:16px;}
.hm-auth-quotes .ev{margin:0; padding:28px 30px; border-radius:20px; background:#fff; border:1px solid rgba(36,36,48,.07); position:relative;}
.hm-auth-quotes .ev::before{content:"“"; position:absolute; right:24px; top:4px; font:800 72px/1 'Switzer',sans-serif; color:rgba(236,26,94,.14);}
.hm-auth-quotes blockquote{font-size:18px; line-height:1.55; letter-spacing:-.1px; margin-bottom:14px;}
.hm-auth-quotes cite{font-style:normal; font-size:13px; color:rgba(36,36,48,.55);}

/* ================= CONVERSÃO ================= */
.hm-convert{background:#15151d; color:#fff; padding:120px 0 130px;}
.hm-convert .hm-head p{color:rgba(255,255,255,.7);}
.hm-paths{display:grid; grid-template-columns:1fr 1fr; gap:18px; max-width:980px; margin:0 auto;}
.hm-path{display:flex; flex-direction:column; gap:12px; padding:34px 32px; border-radius:22px; background:linear-gradient(150deg, rgba(236,26,94,.28), rgba(236,26,94,.06)); border:1px solid rgba(236,26,94,.35);
  transition:transform .35s var(--hm-ease), border-color .35s ease;}
.hm-path.is-alt{background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.12);}
.hm-path:hover{transform:translateY(-4px); border-color:rgba(255,255,255,.35);}
.hm-path .hm-kicker{color:#FF9DBB;}
.hm-path.is-alt .hm-kicker{color:var(--logos-blue-ink);}
.hm-path b{font-family:'Switzer',sans-serif; font-size:25px; font-weight:800; letter-spacing:-.5px; line-height:1.15;}
.hm-path p{font-size:15px; line-height:1.65; color:rgba(255,255,255,.72);}
.hm-convert-alt{text-align:center; margin-top:34px; font-size:15px; color:rgba(255,255,255,.6);}
.hm-convert-alt .hm-link{color:#FF7CA3; margin-left:6px;}
.hm-path-cta{margin-top:auto; padding-top:10px; font-weight:700; font-size:15px;}

/* ================= RESPONSIVO ================= */
@media (max-width:1080px){
  .hm-pil{grid-template-columns:repeat(3,1fr); row-gap:36px;}
  .hm-pil::before{display:none;}
  .hm-proof-items{grid-template-columns:repeat(2,1fr);}
  .hm-ctx-grid{grid-template-columns:repeat(2,1fr);}
  .hm-ctx{aspect-ratio:4/3;}
  .hm-ctx-live{grid-row:auto; aspect-ratio:16/9;}
  .hm-layers a{grid-template-columns:50px 220px 1fr 30px;}
  .hm-enterprise{grid-template-columns:1fr;}
}
@media (max-width:860px){
  .hm-head-split,.hm-auth-grid,.hm-case,.hm-proof-row,.hm-doors{grid-template-columns:1fr; gap:24px;}
  .hm-head-split{gap:16px;}
  .hm-case-copy{padding:32px 26px;}
  .hm-proof-row > .hm-kicker{padding-top:0;}
  .hm-door-tabs{flex-direction:row; overflow-x:auto; scrollbar-width:none; margin:0 -20px; padding:0 20px;}
  .hm-door-tabs::-webkit-scrollbar{display:none;}
  .hm-door-tabs button{flex:none; flex-direction:column; gap:4px; padding:11px 14px; font-size:15px;}
  .hm-door-tabs button[aria-selected="true"]::before{display:none;}
  .hm-door-panels{min-height:0; padding:14px;}
  .hm-door{grid-template-columns:1fr;}
  .hm-know-grid{grid-template-columns:1fr;}
  .hm-paper{min-height:0;}
  .hm-paths{grid-template-columns:1fr;}
  .hm-layers a{grid-template-columns:40px 1fr 24px; gap:4px 14px; padding:22px 4px;}
  .hm-layers a p{grid-column:2/3;}
  .hm-layers a .hm-l-arr{grid-row:1; grid-column:3;}
}
@media (max-width:760px){
  .wrap{padding:0 20px;}
  .hm-hero{align-items:flex-end;}
  .hm-hero-copy{padding-top:120px; padding-bottom:64px;}
  .hm-hero h1{letter-spacing:-1.1px;}
  .hm-hero-lead{font-size:16.5px; margin-bottom:26px;}
  .hm-hero-wash{background:linear-gradient(0deg, rgba(16,16,24,.94) 0%, rgba(16,16,24,.72) 48%, rgba(16,16,24,.2) 78%, rgba(16,16,24,.45) 100%);}
  .hm-sig-2,.hm-sig-3,.hm-trace{display:none;}
  /* mobile: um sinal só, numa faixa livre acima do texto (legibilidade primeiro) */
  .hm-sig{left:auto !important; top:112px !important; right:20px; transform:none !important; flex-direction:row !important;}
  .hm-sig .hm-dot{display:none;}
  .hm-sig .hm-box{opacity:1; visibility:visible; transform:none;}
  .hm-sig-rich .hm-box{width:auto; padding:9px 12px 10px; gap:4px;}
  .hm-rich-cam,.hm-rich-foot,.hm-rich-head em{display:none;}
  .hm-rich-row{padding:0; background:none; border:0;}
  .hm-rich-row strong{font-size:18px;}
  .hm-replay{display:none;}
  .hm-band,.hm-mini-route,.hm-rich-cam,.hm-rich-foot{display:none;}
  .hm-box{min-width:0;}
  .hm-box{min-width:0; padding:7px 10px 8px;}
  .hm-box strong{font-size:18px;}
  .hm-illu{display:none;}
  .hm-intent,.hm-proof,.hm-caps,.hm-know,.hm-auth,.hm-convert{padding:80px 0;}
  .hm-pillars{padding:10px 0 80px;} .hm-context{padding:10px 0 80px;}
  .hm-pil{grid-template-columns:1fr; row-gap:22px;}
  .hm-pil a{flex-direction:row; flex-wrap:wrap; align-items:center; gap:4px 12px; padding:0;}
  .hm-pil a b{margin-top:0;}
  .hm-pil a span{flex-basis:100%; padding-left:28px;}
  .hm-proof-items{grid-template-columns:1fr 1fr; gap:10px;}
  .hm-proof-items .ev b{font-size:26px;}
  .hm-ctx-grid{grid-template-columns:1fr 1fr; gap:10px;}
  .hm-ctx{aspect-ratio:3/4; padding:14px; border-radius:18px;}
  .hm-ctx-live{aspect-ratio:4/3; padding:18px;}
  .hm-ctx-live b{font-size:22px !important;}
  .hm-ctx b{font-size:16px;}
  .hm-chip{font-size:10.5px; padding:6px 8px;}
  .hm-ctx-more .hm-link{margin-left:0; flex-basis:100%;}
  .hm-enterprise{padding:30px 24px;} .hm-ent-geotab{height:36px;} .hm-ent-logos{height:24px;}
}

/* ================= MOVIMENTO REDUZIDO ================= */
@media (prefers-reduced-motion: reduce){
  .hm-scene img,.hm-sig,.hm-trace path{transition:none !important;}
  .hm-dot,.hm-trace path{animation:none !important;}
  .hm-video{display:none;}
}
