/* Evonnis · home "A estrada". Cores: CORES-DA-MARCA.md (evonnis-marketing).
   A home usa só este arquivo; as páginas internas somam internas.css. */

/* Fontes auto-hospedadas, sem chamada externa (LGPD + LCP).
   Archivo variável com eixo de largura (62% a 125%): a estrada usa o estreito
   nas placas e o normal no texto. */
@font-face {
  font-family: 'Archivo'; font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap;
  src: url('../fonts/Archivo-var-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Archivo'; font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap;
  src: url('../fonts/Archivo-var-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Archivo Narrow'; font-style: normal; font-weight: 400 700; font-display: swap;
  src: url('../fonts/ArchivoNarrow-500-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Archivo Narrow'; font-style: normal; font-weight: 400 700; font-display: swap;
  src: url('../fonts/ArchivoNarrow-500-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Spline Sans Mono'; font-style: normal; font-weight: 400 700; font-display: swap;
  src: url('../fonts/SplineSansMono-var-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Spline Sans Mono'; font-style: normal; font-weight: 400 700; font-display: swap;
  src: url('../fonts/SplineSansMono-var-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{
  --p50:#EFF8F8;--p100:#E0EEEF;--p200:#C5DFE1;--p300:#A4C9CC;--p400:#81B0B4;--p500:#5F959A;
  --p600:#427B7F;--p700:#296266;--p800:#114A4E;--p900:#02363A;--p950:#002527;
  --nevoa:#F1F3F2;--rust:#E2703A;--rust300:#FDAE8D;--rust700:#9A4B26;
  --tinta:#14201F;--suave:#485554;--apagado:#7A8685;--borda:#DEE4E3;--branco:#FFFFFF;
  --ease-out:cubic-bezier(0.23,1,0.32,1);
  --narrow:"Archivo Narrow","Archivo",system-ui,sans-serif;
  --sans:"Archivo",system-ui,sans-serif;
  --mono:"Spline Sans Mono",ui-monospace,monospace;
  --wrap:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--p950);color:var(--tinta);font-family:var(--sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;text-wrap:pretty}
a{color:inherit}
img{max-width:100%}
:focus-visible{outline:3px solid var(--rust);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 40px;position:relative}

/* pular para o conteúdo */
.skip{position:absolute;left:-9999px;top:0;background:var(--rust);color:var(--tinta);padding:12px 18px;font-weight:600;z-index:99}
.skip:focus{left:12px;top:12px}

/* nav */
.nav{position:absolute;top:0;left:0;right:0;z-index:20}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:88px}
.nav img{height:28px;width:auto;display:block}
.nav a.link{font:600 14px/1 var(--narrow);letter-spacing:.1em;text-transform:uppercase;color:var(--p100);text-decoration:none;padding:12px 16px;border:1px solid rgba(164,201,204,.3);border-radius:999px;transition:background-color 200ms var(--ease-out),border-color 200ms var(--ease-out)}
.nav a.link:hover{background:rgba(164,201,204,.1);border-color:rgba(164,201,204,.55)}

/* viagem */
.trip{position:relative}
#road{position:absolute;left:0;top:0;width:100%;pointer-events:none;z-index:2;overflow:visible}
.band{position:relative}
.band > .wrap{z-index:3}
.dark{background:var(--p950);color:var(--p50)}
.deep{background:var(--p800);color:var(--p50)}
.fog{background:var(--nevoa);color:var(--tinta)}

/* herói */
.hero{padding:170px 0 150px;min-height:min(100vh,960px)}
.hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:64px;align-items:end}
.eyebrow{font:600 13px/1.2 var(--narrow);letter-spacing:.18em;text-transform:uppercase;color:var(--rust300)}
.fog .eyebrow{color:var(--rust700)}
.hero h1{font-weight:750;font-stretch:88%;font-size:clamp(46px,6.6vw,96px);line-height:.98;letter-spacing:-.025em;margin:22px 0 28px;color:var(--branco);text-wrap:balance}
.hero h1 em{font-style:normal;color:var(--rust300)}
.lede{font-size:20px;line-height:1.55;color:var(--p200);max-width:40ch}
.ctas{margin-top:40px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.btn{display:inline-flex;align-items:center;gap:12px;background:var(--rust);color:var(--p950);font:700 17px/1.2 var(--sans);padding:20px 26px;border-radius:12px;text-decoration:none;transition:transform 160ms var(--ease-out),background-color 200ms var(--ease-out)}
.btn:hover{background:#EA7F4B}
.btn:active{transform:scale(.97)}
.btn svg{width:18px;height:18px;flex:none}
.micro{font-size:14px;color:var(--p300);max-width:42ch}
.fog .micro{color:var(--suave)}

/* placa de rodovia do herói */
.sign{position:relative;background:var(--p800);border:3px solid var(--p100);border-radius:14px;padding:26px 28px 24px;color:var(--branco);box-shadow:0 0 0 6px var(--p800),0 30px 60px -20px rgba(0,0,0,.6);transform:rotate(-1.2deg)}
.sign .top{display:flex;justify-content:space-between;align-items:center;gap:12px;font:700 13px/1 var(--narrow);letter-spacing:.16em;text-transform:uppercase;color:var(--p200)}
.sign .exit{white-space:nowrap;background:var(--rust);color:var(--p950);padding:6px 10px;border-radius:6px;font-weight:800}
.sign .dest{font:800 64px/.9 var(--sans);font-stretch:62%;letter-spacing:.01em;text-transform:uppercase;margin:22px 0 6px}
.sign .dest small{display:block;font-size:22px;letter-spacing:.08em;color:var(--p200);margin-top:10px;font-weight:700}
.sign .rows{border-top:2px solid rgba(224,238,239,.35);margin-top:20px;padding-top:14px;display:grid;gap:8px}
.sign .row{display:flex;justify-content:space-between;font:700 18px/1 var(--sans);font-stretch:70%;text-transform:uppercase;letter-spacing:.04em}
.sign .row span:last-child{font-family:var(--mono);font-stretch:100%;font-weight:500;color:var(--rust300);font-size:15px}
.sign .arrow{position:absolute;left:50%;bottom:-54px;transform:translateX(-50%);width:28px;height:40px;color:var(--p300)}

/* paradas */
.stop{padding:210px 0 70px;position:relative}
.stop.first{padding-top:150px}
.stop .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0 32px}
.lane{grid-row:1;position:relative;display:flex;justify-content:center;align-items:flex-start}
.stop.r .lane{grid-column:10 / span 3}
.stop.r .content{grid-column:1 / span 9;grid-row:1}
.stop.l .lane{grid-column:1 / span 3}
.stop.l .content{grid-column:4 / span 9;grid-row:1}
.lane-end{position:absolute;bottom:0;left:50%;width:1px;height:1px}

/* marco quilométrico */
.km{position:relative;z-index:4;width:76px;margin-top:-6px;background:var(--branco);color:var(--p900);border:3px solid var(--p900);border-radius:10px 10px 4px 4px;text-align:center;padding:9px 0 10px;box-shadow:0 12px 30px -12px rgba(0,37,39,.55);transition:background-color 400ms var(--ease-out),color 400ms var(--ease-out),border-color 400ms var(--ease-out),transform 400ms var(--ease-out)}
.km .k{font:700 12px/1 var(--narrow);letter-spacing:.18em}
.km .n{font:800 30px/1 var(--sans);font-stretch:62%;margin-top:4px;font-variant-numeric:tabular-nums}
.km.passed{background:var(--rust);color:var(--p950);border-color:var(--p950);transform:translateY(-2px)}
.dark .km,.deep .km{border-color:var(--p100)}
.dark .km.passed,.deep .km.passed{border-color:var(--p50)}

.plate{display:inline-flex;align-items:center;gap:10px;font:700 13px/1.2 var(--narrow);letter-spacing:.16em;text-transform:uppercase;padding:9px 12px;border-radius:6px;border:2px solid currentColor}
.fog .plate{color:var(--p800)}
.dark .plate,.deep .plate{color:var(--p200)}
.plate i{font-style:normal;background:var(--rust);color:var(--p950);padding:3px 6px;border-radius:3px;margin:-3px 0}
.stop h2{font-weight:750;font-stretch:88%;font-size:clamp(34px,4.4vw,60px);line-height:1.02;letter-spacing:-.02em;margin:22px 0 18px;text-wrap:balance}
.stop-h{font-weight:750;font-stretch:88%;font-size:clamp(28px,3.2vw,42px);line-height:1.05;letter-spacing:-.02em;margin:22px 0 18px;text-wrap:balance}
.dark h2,.deep h2,.dark .stop-h,.deep .stop-h{color:var(--branco)}
.fog h2,.fog .stop-h{color:var(--p900)}
.body{font-size:18px;max-width:48ch}
.body + .body{margin-top:14px}
.fog .body{color:var(--suave)}
.dark .body,.deep .body{color:var(--p200)}
.body strong{font-weight:650}
.fog .body strong{color:var(--tinta)}
.dark .body strong,.deep .body strong{color:var(--branco)}
.pair{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
.after{margin-top:56px}

/* reveal sutil a partir de estado visível */
.rv{transition:transform 700ms var(--ease-out)}
.js .rv:not(.in){transform:translateY(14px)}

/* mockups do produto */
.mock{background:var(--branco);color:var(--tinta);border-radius:16px;border:1px solid var(--borda);box-shadow:0 1px 0 rgba(0,0,0,.02),0 30px 60px -30px rgba(0,37,39,.35);overflow:hidden;font-size:14px}
.dark .mock,.deep .mock{border-color:rgba(255,255,255,.08);box-shadow:0 40px 80px -30px rgba(0,0,0,.7)}
.mbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--borda);font:600 12px/1 var(--mono);color:var(--apagado)}
.mbar b{font-family:var(--sans);font-weight:700;font-size:14px;color:var(--tinta)}
.dots{display:flex;gap:6px}.dots i{width:9px;height:9px;border-radius:50%;background:var(--borda)}
.tag{display:inline-block;font:600 11px/1 var(--mono);padding:4px 7px;border-radius:5px;background:var(--p50);color:var(--p700);white-space:nowrap}
.tag.warn{background:#FCEDE4;color:var(--rust700)}
.stack-mocks{position:relative;display:grid;gap:18px}

/* planilha */
.sheet table{width:100%;border-collapse:collapse;font:500 12.5px/1.2 var(--mono)}
.sheet th{background:#F6F8F7;color:var(--apagado);font-weight:500;text-align:left;padding:8px 10px;border-bottom:1px solid var(--borda);border-right:1px solid var(--borda)}
.sheet td{padding:9px 10px;border-bottom:1px solid var(--borda);border-right:1px solid var(--borda);white-space:nowrap;color:var(--tinta)}
.sheet td.miss{background:#FCEDE4;color:var(--rust700)}
.sheet th:first-child,.sheet td:first-child{color:var(--apagado);width:34px;text-align:center}
.sheet .scroll{overflow:hidden}

/* whatsapp */
.wa-list .it{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 16px;border-bottom:1px solid var(--borda)}
.wa-list .it:last-child{border-bottom:0}
.av{width:36px;height:36px;border-radius:50%;background:var(--p100);color:var(--p700);display:grid;place-items:center;font:700 13px/1 var(--sans)}
.wa-list .nm{font-weight:650;font-size:14px}
.wa-list .msg{color:var(--suave);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wa-list .meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px;font:500 11px/1 var(--mono);color:var(--apagado)}
.badge{min-width:20px;height:20px;border-radius:10px;background:var(--p600);color:#fff;display:grid;place-items:center;font:700 11px/1 var(--sans);padding:0 6px}
.hot .badge{background:var(--rust)}
.unread{background:var(--rust);color:var(--p950);font:700 12px/1 var(--sans);padding:6px 9px;border-radius:999px}

/* sexta-feira: a pilha do caos */
.chaos{display:grid;gap:12px;margin-top:6px}
.chaos li{list-style:none;display:grid;grid-template-columns:10px 1fr;gap:16px;font-size:17px;line-height:1.55;color:var(--p100)}
.chaos li::before{content:"";width:10px;height:10px;margin-top:8px;border-radius:2px;background:var(--p600)}
.chaos li.hot::before{background:var(--rust)}
.losses{display:grid}
.losses h3{font-weight:750;font-stretch:88%;font-size:clamp(26px,3vw,38px);line-height:1.1;letter-spacing:-.015em;color:var(--branco);padding-bottom:22px;border-bottom:1px solid rgba(164,201,204,.2);max-width:26ch;text-wrap:balance}
.loss{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid rgba(164,201,204,.2)}
.loss b{font-weight:700;font-size:17px;color:var(--branco);line-height:1.35}
.loss span{font-size:16px;color:var(--p200)}
.quote{margin-top:30px;font-weight:650;font-stretch:90%;font-size:24px;line-height:1.3;color:var(--branco);max-width:32ch}
.fog .quote{color:var(--p900)}

/* painel da viagem */
.trip-panel .kpis{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--borda)}
.trip-panel .kpis div{padding:14px 16px;border-right:1px solid var(--borda)}
.trip-panel .kpis div:last-child{border-right:0}
.kpis small{display:block;font:600 11px/1.2 var(--narrow);letter-spacing:.12em;text-transform:uppercase;color:var(--apagado)}
.kpis strong{display:block;font:700 22px/1.2 var(--sans);font-stretch:85%;margin-top:6px;color:var(--p900);white-space:nowrap}
.seats{display:grid;grid-template-columns:repeat(11,1fr);gap:5px;padding:16px;border-bottom:1px solid var(--borda)}
.seats i{aspect-ratio:1;border-radius:4px;background:var(--p700)}
.seats i.f{background:var(--p100)}
.pax .it{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--borda);font-size:13.5px}
.pax .it:last-child{border-bottom:0}
.pax .seat{font:500 12px/1 var(--mono);color:var(--apagado)}

/* conversa com a IA */
.chat{padding:18px 16px;background:#F6F8F7;display:grid;gap:10px}
.bub{max-width:84%;padding:10px 13px;border-radius:14px;font-size:14px;line-height:1.45;background:#fff;border:1px solid var(--borda)}
.bub.me{justify-self:end;background:var(--p800);color:#fff;border-color:var(--p800)}
.bub small{display:block;margin-top:6px;font:500 11px/1 var(--mono);opacity:.75}
.feed .it{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid var(--borda);font-size:13.5px}
.feed .it:last-child{border-bottom:0}
.feed .v{font:600 13px/1 var(--mono);color:var(--p700);white-space:nowrap}
.feed .it.total{background:var(--p50)}
.feed .it.total .v{font-size:15px;color:var(--p900)}

/* acompanhamento */
.bars{padding:18px 16px;display:grid;gap:12px;border-bottom:1px solid var(--borda)}
.bar{display:grid;grid-template-columns:96px 1fr 60px;gap:12px;align-items:center;font-size:13px}
.bar .t{height:12px;border-radius:6px;background:var(--p50);overflow:hidden}
.bar .t i{display:block;height:100%;background:var(--p700);border-radius:6px;transform-origin:left;transition:transform 900ms var(--ease-out)}
.bar:first-child .t i{background:var(--rust)}
.js .bar .t i{transform:scaleX(.001)}
.js .in .bar .t i{transform:scaleX(1)}
.bar .v{font:600 12px/1 var(--mono);text-align:right;color:var(--p800)}
.note{display:grid;grid-template-columns:4px 1fr;gap:12px;padding:16px;background:#FFF6F1;font-size:13.5px;line-height:1.55}
.note::before{content:"";background:var(--rust);border-radius:2px}
.note strong{font-weight:700}

.layers-intro{max-width:780px;margin-bottom:64px}

/* prova */
.proof-card{background:var(--p800);color:var(--p50);border-radius:16px;overflow:hidden}
.proof-card .hd{padding:18px 24px;border-bottom:1px solid rgba(164,201,204,.2);font:600 12px/1.3 var(--narrow);letter-spacing:.16em;text-transform:uppercase;color:var(--rust300)}
.proof-card .n{padding:22px 24px;border-bottom:1px solid rgba(164,201,204,.2)}
.proof-card strong{display:block;font:750 48px/1 var(--sans);font-stretch:75%;color:#fff}
.proof-card strong small{font-size:20px;font-stretch:100%;font-weight:600;color:var(--p300);margin-left:8px}
.proof-card .n span{display:block;margin-top:8px;font:500 14px/1.45 var(--narrow);color:var(--p300)}
.proof-card .ft{padding:16px 24px;background:var(--p900);font:500 13px/1.5 var(--narrow);color:var(--p300)}
.said{margin:28px 0;padding:4px 0 4px 22px;border-left:4px solid var(--rust);font-weight:750;font-stretch:88%;font-size:28px;line-height:1.2;color:var(--p900)}
.closing{margin-top:44px;padding-top:28px;border-top:1px solid var(--borda);max-width:78ch}

/* implantação: trechos da estrada */
.legs{margin-top:40px;display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
.leg{position:relative;padding:22px 20px 0 0}
.leg::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:var(--p800)}
.leg::after{content:"";position:absolute;left:0;right:0;top:4px;height:2px;background:repeating-linear-gradient(90deg,var(--rust) 0 12px,transparent 12px 20px)}
.leg:first-child::before{border-radius:5px 0 0 5px}
.leg:last-child::before{border-radius:0 5px 5px 0}
.leg .pin{position:absolute;top:-7px;left:0;width:24px;height:24px;border-radius:50%;background:var(--p50);border:3px solid var(--p800);z-index:1}
.leg:last-child .pin{background:var(--rust)}
.leg .d{font:700 13px/1 var(--narrow);letter-spacing:.14em;text-transform:uppercase;color:var(--rust300);margin-top:18px}
.leg h3{font-weight:700;font-stretch:85%;font-size:22px;line-height:1.15;color:#fff;margin:8px 0 6px}
.leg p{font-size:15px;color:var(--p200);max-width:26ch}

/* para quem é */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px}
.fit > div{background:var(--branco);border:1px solid var(--borda);border-radius:16px;padding:30px 28px}
.fit h3{font:700 13px/1.2 var(--narrow);letter-spacing:.16em;text-transform:uppercase;color:var(--rust700);margin-bottom:22px}
.fit .no h3{color:var(--apagado)}
.fit ul{list-style:none;display:grid;gap:16px}
.fit li{display:grid;grid-template-columns:20px 1fr;gap:14px;font-size:16px;line-height:1.55;color:var(--suave)}
.fit li svg{margin-top:3px}

/* a call de 45 minutos */
.call-panel .big{padding:24px 20px;border-bottom:1px solid var(--borda)}
.call-panel .big strong{display:block;font:800 64px/1 var(--sans);font-stretch:70%;color:var(--p900)}
.call-panel .big strong small{font-size:22px;margin-left:6px}
.call-panel .big span{display:block;margin-top:8px;font-size:14px;color:var(--suave)}
.call-panel ol{list-style:none;counter-reset:q}
.call-panel li{counter-increment:q;display:grid;grid-template-columns:28px 1fr;gap:10px;padding:13px 20px;border-bottom:1px solid var(--borda);font-size:14.5px}
.call-panel li::before{content:counter(q,decimal-leading-zero);font:600 12px/1.6 var(--mono);color:var(--apagado)}

/* perguntas */
.faq{margin-top:36px;border-top:1px solid var(--borda)}
.faq-i{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;padding:24px 0;border-bottom:1px solid var(--borda)}
.faq-i h3{font-weight:700;font-stretch:90%;font-size:19px;line-height:1.3;color:var(--p900)}
.faq-i p{font-size:16px;color:var(--suave)}

/* chegada */
.arrive{padding:220px 0 130px;text-align:center}
.arrive .wrap{display:block}
.terminal{position:relative;z-index:4;display:inline-flex;flex-direction:column;align-items:center;margin-bottom:34px}
.terminal .plateT{background:var(--rust);color:var(--p950);border:3px solid var(--p50);border-radius:10px;padding:10px 18px;font:800 22px/1 var(--sans);font-stretch:62%;letter-spacing:.08em;text-transform:uppercase}
.arrive h2{font-weight:750;font-stretch:86%;font-size:clamp(40px,6vw,84px);line-height:1;letter-spacing:-.025em;color:#fff;margin:14px auto 22px;max-width:16ch;text-wrap:balance}
.arrive .lede{margin:0 auto;max-width:46ch}
.arrive .ctas{align-items:center}
.proof{margin:90px auto 0;max-width:900px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(164,201,204,.22)}
.proof div{padding:26px 10px 0}
.proof strong{display:block;font:750 44px/1 var(--sans);font-stretch:75%;color:#fff}
.proof span{display:block;margin-top:10px;font:600 13px/1.3 var(--narrow);letter-spacing:.12em;text-transform:uppercase;color:var(--p300)}

/* rodapé */
.foot{background:var(--p950);color:var(--p400);border-top:1px solid rgba(164,201,204,.12);padding-block:48px 40px;font:500 13px/1.8 var(--narrow)}
.foot .cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px}
.foot img{height:24px;width:auto;display:block;margin-bottom:14px}
.foot h2{font:600 11px/1 var(--narrow);letter-spacing:.18em;text-transform:uppercase;color:var(--p500);margin-bottom:14px}
.foot a{color:var(--p300);text-decoration:none}
.foot a:hover{color:var(--rust300)}
.foot .copy{margin-top:32px;padding-top:20px;border-top:1px solid rgba(164,201,204,.12);font-size:12px;color:var(--p600)}

/* contador de passageiros */
.odo{position:fixed;right:22px;bottom:96px;z-index:50;background:var(--p950);color:var(--p50);border:1px solid rgba(164,201,204,.28);border-radius:14px;padding:12px 16px;width:218px;box-shadow:0 20px 40px -18px rgba(0,0,0,.55)}
.odo .lbl{display:flex;justify-content:space-between;font:600 11px/1 var(--narrow);letter-spacing:.16em;text-transform:uppercase;color:var(--p300)}
.odo .num{font:600 38px/1 var(--mono);font-variant-numeric:tabular-nums;margin-top:8px;color:#fff;display:flex;align-items:baseline;gap:8px}
.odo .num small{font:600 12px/1 var(--narrow);letter-spacing:.14em;color:var(--p300);text-transform:uppercase}
.odo .trk{height:4px;border-radius:2px;background:rgba(164,201,204,.2);margin:10px 0 8px;overflow:hidden}
.odo .trk i{display:block;height:100%;background:var(--rust);transform-origin:left;transform:scaleX(0)}
.odo .st{font:500 12px/1.3 var(--sans);color:var(--p200);min-height:16px}
.odo .st b{color:var(--rust300);font-weight:600}

/* WhatsApp e consentimento (mesmo comportamento das páginas internas) */
.zap{position:fixed;right:22px;bottom:22px;z-index:60;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:#0C3F43;color:#F1F3F2;border:2px solid #2C6367;border-radius:14px;transition:background .2s,transform .2s,border-color .2s}
.zap:hover{background:var(--rust);color:var(--tinta);border-color:var(--rust);transform:translateY(-2px)}
.cookies{position:fixed;left:22px;bottom:22px;z-index:60;max-width:440px;background:var(--p900);border:1px solid #2C6367;border-radius:14px;padding:20px 22px;display:flex;flex-direction:column;gap:16px}
.cookies[hidden]{display:none}
.cookies p{font:500 13px/1.6 var(--narrow);color:var(--p300)}
.cookies a{color:var(--rust300)}
.cookies-b{display:flex;gap:10px;flex-wrap:wrap}
.btn-cookie{font:600 12px/1 var(--narrow);letter-spacing:.1em;text-transform:uppercase;padding:12px 18px;min-height:44px;cursor:pointer;background:transparent;color:var(--p300);border:1px solid #2C6367;border-radius:8px}
.btn-cookie:hover{border-color:var(--p300);color:var(--nevoa)}
.btn-cookie.is-sim{background:var(--rust);color:var(--tinta);border-color:var(--rust)}
.btn-cookie.is-sim:hover{background:#F28E62}

/* tablet */
@media (max-width:1060px){
  .pair{grid-template-columns:minmax(0,1fr);gap:32px}
  .hero .wrap{grid-template-columns:minmax(0,1fr);gap:80px}
  .sign{max-width:420px}
  .legs{grid-template-columns:repeat(2,1fr);row-gap:40px}
  .fit{grid-template-columns:1fr}
  .loss{grid-template-columns:1fr;gap:4px}
}
/* mobile: a estrada continua em curva, trocando de lado entre as paradas */
@media (max-width:760px){
  body{font-size:16px}
  .wrap{padding:0 18px}
  .stop.l .wrap{padding-left:58px}
  .stop.r .wrap{padding-right:58px}
  .nav .wrap{height:72px}
  .nav img{height:24px}
  .nav a.link{padding:10px 12px;font-size:12px}
  .hero{padding:120px 0 110px;min-height:0}
  .hero h1{font-size:44px;margin:18px 0 22px}
  .lede{font-size:17px}
  .sign{padding:20px 20px 18px;transform:none}
  .sign .dest{font-size:40px}
  .sign .arrow{display:none}
  .btn{font-size:16px;padding:18px;gap:8px}
  .content,.pair>*,.stack-mocks>*{min-width:0}
  .sheet td,.sheet th{padding:8px 7px}
  .mbar{flex-wrap:wrap}
  .stop{padding:200px 0 40px}
  .stop.first{padding-top:170px}
  .stop .wrap{display:block}
  .lane{position:absolute;left:0;top:0;bottom:0;width:44px;display:block}
  .stop.r .lane{left:auto;right:0}
  .lane .km{position:absolute;left:22px;top:-4px;transform:translateX(-50%);width:44px;padding:6px 0 7px;border-width:2px;border-radius:7px 7px 3px 3px;margin:0}
  .lane .km.passed{transform:translateX(-50%) translateY(-2px)}
  .km .k{font-size:9px;letter-spacing:.12em}
  .km .n{font-size:20px;margin-top:2px}
  .lane-end{left:22px}
  .stop h2{font-size:34px}
  .stop-h{font-size:28px}
  .losses h3{font-size:26px}
  .body{font-size:16.5px}
  .chaos li{font-size:16px}
  .quote{font-size:20px}
  .said{font-size:23px}
  .kpis strong{font-size:18px}
  .trip-panel .kpis div{padding:12px 10px}
  .bar{grid-template-columns:78px 1fr 48px}
  .legs{grid-template-columns:1fr;row-gap:0}
  .leg{padding:0 0 28px 30px}
  .leg::before{left:0;right:auto;top:0;bottom:0;width:10px;height:auto;border-radius:0!important}
  .leg::after{left:4px;right:auto;top:0;bottom:0;width:2px;height:auto;background:repeating-linear-gradient(180deg,var(--rust) 0 12px,transparent 12px 20px)}
  .leg .pin{top:0;left:-7px}
  .leg .d{margin-top:2px}
  .fit > div{padding:24px 20px}
  .faq-i{grid-template-columns:1fr;gap:8px}
  .proof-card strong{font-size:40px}
  .arrive{padding:130px 0 110px;text-align:left}
  .arrive .wrap{padding-left:58px}
  .arrive h2{margin-left:0;font-size:42px}
  .arrive .lede{margin:0}
  .arrive .ctas{align-items:flex-start}
  .terminal{position:absolute;left:22px;top:-6px;transform:translateX(-50%);margin:0}
  .terminal .plateT{font-size:14px;padding:7px 8px;border-width:2px;writing-mode:vertical-rl;transform:rotate(180deg)}
  .proof{grid-template-columns:1fr;margin-top:60px}
  .proof div{padding:20px 0;border-bottom:1px solid rgba(164,201,204,.22)}
  .proof strong{font-size:38px}
  .foot .cols{grid-template-columns:1fr;gap:28px}
  /* contador vira uma faixa fina no topo, que aparece depois do herói */
  .odo{top:0;bottom:auto;left:0;right:0;width:auto;border-radius:0;border-width:0 0 1px;padding:8px 18px 10px;padding-top:calc(8px + env(safe-area-inset-top,0px));display:flex;align-items:center;gap:12px;background:rgba(0,37,39,.94);box-shadow:none;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity 260ms var(--ease-out),transform 260ms var(--ease-out)}
  .odo.on{opacity:1;transform:none}
  .odo .num{font-size:17px;margin:0;gap:6px;flex:none}
  .odo .num small{font-size:10px}
  .odo .st{order:1;flex:1;min-width:0;min-height:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
  .odo .lbl{order:2;flex:none}
  .odo .lbl span:first-child{display:none}
  .odo .trk{position:absolute;left:0;right:0;bottom:0;height:2px;margin:0;border-radius:0}
  .cookies{left:12px;right:12px;bottom:88px;max-width:none}
  .zap{right:14px;bottom:14px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .rv,.km,.bar .t i,.btn,.odo{transition:none!important}
  .js .rv:not(.in){transform:none}
  .js .bar .t i{transform:scaleX(1)}
  #bus{display:none}
}
