/* Mônaco — Logística do Futuro 2026 | Stand 513 */
:root{
  --roxo:#3E2D58;
  --amarelo:#FBBF00;
  --cinza-claro:#F6F4FB;
  --cinza-roxo:#5B5178;
  --fundo:#EDE9F5;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--fundo);
  font-family:'Rubik',system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:var(--roxo);text-decoration:none}
a:hover{color:var(--cinza-roxo)}
input,select,button{font-family:inherit}
.page{max-width:1180px;margin:0 auto;background:#fff;min-height:100vh;overflow:hidden;box-shadow:0 0 80px rgba(62,45,88,.14)}

/* ---------- hero ---------- */
.hero{position:relative;background:var(--roxo);padding:22px 22px 30px;overflow:hidden}
.hero-grid,.hero-ring{position:absolute;pointer-events:none}
.hero-grid{inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:34px 34px}
.hero-ring{top:-90px;right:-70px;width:240px;height:240px;border:2px solid rgba(251,191,0,.22);border-radius:50%}
.hero>*{position:relative}
.hero>.hero-grid,.hero>.hero-ring{position:absolute}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.logo{width:86px;height:auto;filter:brightness(0) invert(1)}
.badge{display:flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid rgba(251,191,0,.45);border-radius:999px}
.badge i{width:7px;height:7px;border-radius:50%;background:var(--amarelo);animation:pulse 2.2s ease-in-out infinite}
.badge span{color:var(--amarelo);font-size:10.5px;font-weight:600;letter-spacing:.1em;white-space:nowrap}
@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.85}}
.eyebrow{margin:30px 0 0;color:rgba(255,255,255,.62);font-size:12px;font-weight:600;letter-spacing:.2em}
h1{margin:10px 0 0;color:#fff;font-size:38px;line-height:1.04;font-weight:700;letter-spacing:-.02em;text-wrap:balance}
.stand{margin-top:24px;background:var(--amarelo);border-radius:20px;padding:20px 22px 22px}
.stand p{margin:0;color:var(--roxo);font-size:13px;font-weight:600;letter-spacing:.05em;opacity:.85}
.stand div{display:flex;align-items:baseline;gap:10px;margin-top:2px}
.stand .w{color:var(--roxo);font-size:26px;font-weight:700}
.stand .n{color:var(--roxo);font-size:66px;line-height:.9;font-weight:800;letter-spacing:-.04em}
.lead{margin:22px 0 0;color:rgba(255,255,255,.82);font-size:15.5px;line-height:1.55;text-wrap:pretty}
.facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.facts span{padding:8px 13px;border-radius:10px;background:rgba(255,255,255,.09);color:#fff;font-size:12.5px;font-weight:500}
.cta{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:24px;min-height:60px;background:var(--amarelo);color:var(--roxo);border-radius:16px;font-size:17px;font-weight:700;box-shadow:0 10px 26px rgba(251,191,0,.28)}
.cta:hover{background:#ffca2b;color:var(--roxo)}
.cta-sub{margin:12px 0 0;text-align:center;color:rgba(255,255,255,.6);font-size:13px}

/* ---------- seções ---------- */
section{padding:38px 22px}
.sec-light{background:var(--cinza-claro)}
.sec-white{background:#fff}
h2{margin:0;color:var(--roxo);font-size:24px;line-height:1.25;font-weight:700;letter-spacing:-.02em;text-wrap:pretty}
.perfis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}
.perfil{background:#fff;border-radius:14px;padding:16px 14px 18px;border:1px solid rgba(62,45,88,.07)}
.perfil i{display:block;width:22px;height:3px;background:var(--amarelo);border-radius:2px}
.perfil p{margin:12px 0 0;color:var(--roxo);font-size:15px;font-weight:600;line-height:1.3}
.servicos{display:flex;flex-direction:column;gap:10px;margin-top:22px}
.servico{display:flex;gap:14px;padding:18px;border-radius:16px;background:var(--cinza-claro)}
.servico b{flex:0 0 auto;width:32px;height:32px;border-radius:9px;background:var(--roxo);color:var(--amarelo);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}
.servico h3{margin:0;color:var(--roxo);font-size:16.5px;font-weight:600}
.servico p{margin:5px 0 0;color:var(--cinza-roxo);font-size:14px;line-height:1.5}

/* ---------- mapa ---------- */
.sec-mapa{background:var(--roxo);padding-bottom:40px}
.kicker{margin:0;color:var(--amarelo);font-size:12px;font-weight:600;letter-spacing:.2em}
.sec-mapa h2{margin:10px 0 0;color:#fff;font-size:26px;line-height:1.2}
.sec-mapa .sub{margin:8px 0 0;color:rgba(255,255,255,.6);font-size:14px;line-height:1.5}
.mapa-card{margin-top:20px;background:rgba(255,255,255,.06);border:1px solid rgba(251,191,0,.34);border-radius:22px;padding:12px}
.mapa-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 8px 12px}
.mapa-head .l{color:rgba(255,255,255,.72);font-size:10.5px;font-weight:600;letter-spacing:.16em}
.mapa-head .r{color:var(--amarelo);font-size:10.5px;font-weight:700;letter-spacing:.14em}
.mapa-frame{position:relative;background:#fff;border-radius:16px;padding:10px;box-shadow:inset 0 0 0 1px rgba(62,45,88,.08)}
.mapa-frame .c{position:absolute;width:20px;height:20px}
.c1{left:10px;top:10px;border-left:2px solid var(--amarelo);border-top:2px solid var(--amarelo);border-radius:4px 0 0 0}
.c2{right:10px;top:10px;border-right:2px solid var(--amarelo);border-top:2px solid var(--amarelo);border-radius:0 4px 0 0}
.c3{left:10px;bottom:10px;border-left:2px solid var(--amarelo);border-bottom:2px solid var(--amarelo);border-radius:0 0 0 4px}
.c4{right:10px;bottom:10px;border-right:2px solid var(--amarelo);border-bottom:2px solid var(--amarelo);border-radius:0 0 4px 0}
.mapa-img{position:relative;display:block}
.mapa-img img{display:block;width:100%;height:auto;border-radius:6px}
.pin{position:absolute;left:20.8%;top:70.1%;width:0;height:0}
.pin .ring{position:absolute;left:-27px;top:-27px;width:54px;height:54px;border-radius:50%;border:3px solid var(--amarelo);background:rgba(251,191,0,.14);animation:pulse 2.4s ease-in-out infinite}
.pin .line{position:absolute;left:26px;top:-2px;width:34px;height:2px;background:var(--amarelo)}
.pin .chip{position:absolute;left:58px;top:-17px;display:flex;align-items:center;gap:7px;padding:7px 11px;border-radius:10px;background:var(--roxo);box-shadow:0 8px 18px rgba(0,0,0,.3);white-space:nowrap}
.pin .chip b{color:var(--amarelo);font-size:10.5px;font-weight:700;letter-spacing:.1em}
.pin .chip span{color:#fff;font-size:14px;font-weight:800}
.legend{display:flex;flex-wrap:wrap;gap:8px 16px;padding:14px 8px 4px}
.legend span{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.78);font-size:12px}
.legend .dot{width:9px;height:9px;border-radius:50%;background:var(--amarelo)}
.legend .dash{width:22px;height:0;border-top:2px dashed #8b6fd4}
.mapa-note{margin:6px 8px 0;color:rgba(255,255,255,.76);font-size:12px;line-height:1.45}
.cta-white{display:flex;align-items:center;justify-content:center;margin-top:20px;min-height:58px;border-radius:16px;background:#fff;color:var(--roxo);font-size:16.5px;font-weight:700}
.cta-white:hover{background:var(--cinza-claro);color:var(--roxo)}

/* ---------- formulário ---------- */
.sec-form{background:var(--cinza-claro);padding-bottom:46px}
.sec-form .sub{margin:8px 0 0;color:var(--cinza-roxo);font-size:15px;line-height:1.55}
form{margin-top:20px;display:flex;flex-direction:column;gap:12px}
label{display:flex;flex-direction:column;gap:6px}
label>span{color:var(--roxo);font-size:13px;font-weight:600}
input,select{min-height:54px;padding:0 16px;border-radius:14px;border:1px solid rgba(62,45,88,.15);background:#fff;color:var(--roxo);font-size:16px}
.select-wrap{position:relative;display:block}
.select-wrap select{width:100%;padding-right:44px;appearance:none;-webkit-appearance:none}
.select-wrap i{position:absolute;right:18px;top:50%;transform:translateY(-50%);color:var(--cinza-roxo);font-size:12px;font-style:normal;pointer-events:none}
button[type=submit]{min-height:60px;margin-top:4px;border:0;border-radius:16px;background:var(--roxo);color:#fff;font-size:17px;font-weight:700;box-shadow:0 10px 26px rgba(62,45,88,.22)}
button[type=submit]:hover{background:#4a3768}
.disclaimer{margin:2px 0 0;color:var(--cinza-roxo);font-size:12px;line-height:1.5;text-align:center}
.box{margin-top:20px;background:#fff;border-radius:18px;padding:26px 20px;text-align:center;border:1px solid rgba(62,45,88,.08)}
.box .check{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--amarelo);color:var(--roxo);font-size:20px;font-weight:800}
.box h3{margin:14px 0 0;color:var(--roxo);font-size:17px;font-weight:600}
.box p{margin:6px 0 0;color:var(--cinza-roxo);font-size:14px;line-height:1.5}
.box a{display:inline-flex;align-items:center;justify-content:center;margin-top:16px;min-height:52px;padding:0 22px;border-radius:14px;background:var(--roxo);color:#fff;font-size:15.5px;font-weight:600}
.erro{padding:14px 16px;border-radius:14px;background:#fff;border:1px solid rgba(62,45,88,.15)}
.erro p:first-child{margin:0;color:var(--roxo);font-size:14px;font-weight:600}
.erro p+p{margin:5px 0 0;color:var(--cinza-roxo);font-size:13.5px;line-height:1.5}
.erro a{display:inline-flex;align-items:center;justify-content:center;margin-top:12px;min-height:48px;padding:0 18px;border-radius:12px;background:var(--amarelo);color:var(--roxo);font-size:15px;font-weight:700}
[hidden]{display:none!important}

/* ---------- rodapé + barra fixa ---------- */
footer{background:#fff;padding:26px 22px 96px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid rgba(62,45,88,.08)}
footer img{width:66px;height:auto}
footer p{margin:0;color:var(--cinza-roxo);font-size:12px;line-height:1.5;text-align:right}
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;justify-content:center;pointer-events:none;transform:translateY(140%);transition:transform .28s ease}
.sticky.on{transform:translateY(0)}
.sticky-inner{pointer-events:auto;width:100%;max-width:560px;margin:0 10px 10px;background:var(--roxo);border-radius:18px;padding:10px 10px 10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 14px 34px rgba(62,45,88,.34)}
.sticky-inner span{color:#fff;font-size:14px;font-weight:600;white-space:nowrap}
.sticky-inner a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:13px;background:var(--amarelo);color:var(--roxo);font-size:15px;font-weight:700;white-space:nowrap}
.sticky-inner a:hover{background:#ffca2b;color:var(--roxo)}
.section-intro{margin:10px 0 0;color:var(--cinza-roxo);font-size:15px;line-height:1.6;max-width:760px}
.kicker.dark{color:var(--roxo);margin-bottom:8px}
.lumon{margin-top:18px;padding:22px;border-radius:18px;background:var(--roxo);display:flex;gap:18px;align-items:flex-start}
.lumon>span{flex:0 0 auto;padding:8px 12px;border-radius:10px;background:var(--amarelo);color:var(--roxo);font-size:15px;font-weight:800}
.lumon h3{margin:0;color:#fff;font-size:17px}.lumon p{margin:6px 0 0;color:rgba(255,255,255,.72);font-size:14px;line-height:1.55}

@media (min-width:768px){
  .hero{padding:38px 64px 52px}.eyebrow{margin-top:44px}h1{font-size:58px;max-width:760px}.stand{max-width:520px}.lead{max-width:850px;font-size:18px}.cta{max-width:420px}
  section{padding:58px 64px}h2{font-size:34px;max-width:900px}.perfis{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.perfil{padding:22px 18px}
  .servicos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.servico{padding:22px;min-height:150px}.servico h3{font-size:18px}.servico p{font-size:15px}
  .mapa-card{max-width:900px}.cta-white{max-width:420px}.sec-form>h2,.sec-form>.sub,.sec-form>form,.sec-form>.box{max-width:720px;margin-left:auto;margin-right:auto}.sec-form>h2,.sec-form>.sub{text-align:center}
  footer{padding:30px 64px 100px}.sticky-inner{max-width:920px}.lumon{padding:26px}
}
@media (max-width:767px){.page{max-width:560px}.lumon{flex-direction:column}.section-intro{font-size:14px}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
