:root{
  --navy:#06172c;
  --navy2:#08223e;
  --panel:#0b2b4a;
  --blue:#16c7ff;
  --green:#20e477;
  --green2:#36f18b;
  --text:#f8fbff;
  --muted:#c9daea;
  --line:rgba(70,210,255,.34);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#071a31;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
a{color:inherit}
.content-width{width:min(1360px,calc(100% - 48px));margin:auto}

/* v4 — cabeçalho transparente sobre a arte do hero, como no layout de referência */
.site-header{
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:60;
  background:transparent;
  border-bottom:none;
}
.nav-wrap{min-height:74px;width:min(1360px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:270px 1fr auto;gap:28px;align-items:center}
.brand{display:flex;align-items:center;height:64px}
.brand img{width:225px;max-height:58px;object-fit:contain;object-position:left center;filter:drop-shadow(0 2px 10px rgba(0,0,0,.24))}
.nav-links{display:flex;align-items:center;justify-content:center;gap:42px;font-size:14px;font-weight:800}
.nav-links a{text-decoration:none;color:#e6f1fa;padding:10px 16px;position:relative;white-space:nowrap;border-radius:999px;transition:background .18s ease,color .18s ease,box-shadow .18s ease}
.nav-links a:hover{color:#fff;background:rgba(9,50,84,.28)}
.nav-links a.active{color:#fff;background:rgba(10,70,117,.35);box-shadow:inset 0 0 0 1px rgba(52,223,255,.32),0 0 18px rgba(0,214,255,.12)}
.nav-links a.active:after{content:"";position:absolute;left:18px;right:18px;bottom:4px;height:3px;border-radius:4px;background:linear-gradient(90deg,#00d9ff,#20ef7e)}
.nav-login{border:1px solid #42cdf4;padding:11px 21px;border-radius:12px;text-decoration:none;font-weight:900;background:rgba(5,32,60,.42);box-shadow:inset 0 0 18px rgba(0,209,255,.08),0 8px 18px rgba(0,0,0,.16);backdrop-filter:blur(6px)}
.menu-toggle{display:none;border:1px solid rgba(70,210,255,.48);background:rgba(10,49,85,.74);color:#fff;border-radius:10px;width:44px;height:42px;font-size:22px}

.hero{
  position:relative;
  min-height:clamp(620px,46vw,760px);
  overflow:hidden;
  background-color:#061b32;
  background-image:url('../img/hero-cidade-elo-v3.png');
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  border-bottom:1px solid rgba(27,161,221,.45);
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,
    rgba(2,16,34,.98) 0%,
    rgba(4,27,54,.95) 14%,
    rgba(7,39,72,.88) 23%,
    rgba(8,43,76,.73) 30%,
    rgba(6,34,62,.46) 36%,
    rgba(5,26,48,.16) 43%,
    rgba(4,19,36,0) 51%
  );
  pointer-events:none;
}
.hero-overlay:before{
  content:"";
  position:absolute;
  top:-5%;
  bottom:-5%;
  left:-4%;
  width:47%;
  background:rgba(5,38,72,.34);
  -webkit-backdrop-filter:blur(13px);
  backdrop-filter:blur(13px);
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 66%,rgba(0,0,0,.80) 80%,rgba(0,0,0,.28) 92%,transparent 100%);
  mask-image:linear-gradient(90deg,#000 0%,#000 66%,rgba(0,0,0,.80) 80%,rgba(0,0,0,.28) 92%,transparent 100%);
}
.hero:after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:92px;
  background:linear-gradient(180deg,rgba(6,24,45,0),rgba(6,24,45,.43));
  pointer-events:none;
}
.hero-inner{
  position:relative;
  z-index:2;
  width:min(1360px,calc(100% - 48px));
  min-height:clamp(620px,46vw,760px);
  margin:auto;
  display:flex;
  align-items:center;
  padding-top:58px;
}
.hero-copy{
  width:min(555px,43vw);
  padding:46px 0 52px;
  filter:drop-shadow(0 4px 14px rgba(0,0,0,.42));
}
.hero h1{
  font-size:clamp(48px,4.12vw,66px);
  line-height:1.00;
  letter-spacing:-2.7px;
  margin:0 0 22px;
  font-weight:950;
  text-wrap:balance;
}
.hero h1 strong{color:#27e678;font-weight:950}
.hero-copy>p{
  max-width:535px;
  margin:0 0 25px;
  font-size:17px;
  line-height:1.55;
  color:#edf7ff;
  text-shadow:0 2px 12px rgba(0,0,0,.86);
}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;max-width:590px}
.btn{min-height:48px;border-radius:11px;padding:0 18px;display:inline-flex;gap:10px;align-items:center;justify-content:center;text-decoration:none;font-weight:900;font-size:14px;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}
.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}
.btn b{font-size:24px;line-height:1}
.btn-primary{background:linear-gradient(180deg,#2af07c,#13cb63);color:#042c18;box-shadow:0 10px 30px rgba(21,224,109,.22)}
.btn-outline{border:1px solid rgba(100,214,255,.72);background:rgba(5,33,61,.82);color:#fff;box-shadow:0 8px 22px rgba(0,0,0,.16)}
.btn-admin{background:rgba(9,34,58,.82)}
.hero-benefits{display:flex;gap:26px;flex-wrap:wrap;margin-top:24px;font-size:12px;font-weight:700;color:#eef9ff}
.hero-benefits span{white-space:nowrap}
.hero-benefits span:before{content:none}

.steps-wrap{position:relative;z-index:10;background:#071a31;padding:0 0 18px;margin-top:0}
.steps-panel{width:min(1420px,calc(100% - 60px));margin:0 auto;border:1px solid rgba(74,206,255,.36);border-radius:18px;background:linear-gradient(180deg,rgba(10,42,74,.97),rgba(5,27,51,.99));box-shadow:0 18px 38px rgba(0,0,0,.23);padding:18px 20px}
.steps-heading{display:flex;gap:18px;align-items:center;margin-bottom:14px}.steps-heading b{font-size:22px}.steps-heading span{font-size:13px;color:#b7ccdf}
.steps-grid{display:grid;grid-template-columns:1fr 30px 1fr 30px 1fr 195px;gap:12px;align-items:center}
.step{display:grid;grid-template-columns:42px 58px 1fr;gap:13px;align-items:center}.step-num{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-weight:950;color:#07172c;background:linear-gradient(#29e8ff,#12a9f2);box-shadow:0 0 18px rgba(0,213,255,.35)}
.step-ico{width:55px;height:55px;display:grid;place-items:center;border:1px solid rgba(61,205,255,.42);border-radius:12px;background:#0b2d51;font-size:27px}.step h3{font-size:15px;margin:0 0 4px}.step p{font-size:12px;line-height:1.4;margin:0;color:#c8dae9}.step-arrow{font-size:42px;color:#5bcdf1;text-align:center;font-weight:200}.process-note{font-family:"Segoe Print","Comic Sans MS",cursive;font-size:19px;line-height:1.25;text-align:center;color:#e9f7ff;transform:rotate(-4deg);border-left:1px solid rgba(133,213,244,.25);padding-left:10px}.process-note strong{color:#37f485}

.why{padding:15px 0 16px;background:#071a31}.why h2{font-size:20px;margin:0 0 16px}.why-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.why-grid>div{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:10px}.why-grid span{grid-row:1/3;width:45px;height:45px;display:grid;place-items:center;border:1px solid rgba(51,220,255,.4);border-radius:50%;background:#0a3157;font-size:21px}.why-grid b{font-size:13px}.why-grid small{color:#b8cfe1;font-size:12px}

.profiles{padding:8px 0 20px;background:#071a31}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.profile-card{height:190px;border:1px solid;border-radius:16px;overflow:hidden;display:grid;grid-template-columns:44% 56%;align-items:stretch;position:relative}.profile-card.seller{border-color:#22e373;background:linear-gradient(120deg,rgba(14,99,68,.68),rgba(4,40,48,.88))}.profile-card.rider{border-color:#17cfff;background:linear-gradient(120deg,rgba(7,77,107,.7),rgba(5,36,62,.92))}.profile-card.manager{border-color:#9f69ff;background:linear-gradient(120deg,rgba(71,44,122,.7),rgba(25,33,72,.92))}.profile-img{position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}.profile-img:after{content:"";position:absolute;inset:auto 0 0;height:55%;background:linear-gradient(transparent,rgba(0,0,0,.25))}.profile-img img{max-width:100%;max-height:100%;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 8px 12px rgba(0,0,0,.25))}.bike-mini img{max-width:140%;width:140%;transform:translateX(-5%)}.profile-text{padding:23px 22px 18px 4px;position:relative;z-index:3}.profile-text h3{font-size:17px;margin:0 0 8px}.profile-text p{font-size:13px;line-height:1.45;color:#d4e3ee;margin:0 0 12px}.profile-text a{display:inline-flex;gap:10px;align-items:center;border:1px solid currentColor;border-radius:10px;padding:7px 14px;text-decoration:none;font-size:12px;font-weight:900;color:#62e7ff}.seller .profile-text a{color:#5ff49e}.manager .profile-text a{color:#c5a8ff}.profile-text a span{font-size:19px;line-height:1}

/* v4 — base do rodapé com imagem/atmosfera, aproximando do layout aprovado */
.cta{
  position:relative;
  padding:22px 0 0;
  background:
    linear-gradient(180deg,rgba(4,18,35,0) 0%,rgba(4,18,35,.18) 100%),
    radial-gradient(circle at 0% 50%,rgba(29,182,255,.10),transparent 30%),
    #071a31;
  overflow:hidden;
}
.cta:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:185px;
  background-image:url('../img/footer-bg-v4.png');
  background-size:cover;
  background-position:center bottom;
  opacity:.82;
  pointer-events:none;
}
.cta:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:185px;
  background:linear-gradient(180deg,rgba(7,26,49,0) 0%,rgba(7,26,49,.24) 16%,rgba(7,26,49,.48) 100%);
  pointer-events:none;
}
.cta-inner{position:relative;z-index:2;min-height:90px;border-top:1px solid rgba(66,204,255,.32);border-bottom:1px solid rgba(66,204,255,.24);display:grid;grid-template-columns:1fr 250px 1fr;align-items:center;gap:30px;background:radial-gradient(circle at 95% 100%,rgba(25,236,113,.10),transparent 34%),linear-gradient(90deg,rgba(8,35,64,.88),rgba(6,48,82,.82),rgba(8,35,64,.88));border-radius:14px;padding:16px 28px;box-shadow:0 18px 34px rgba(0,0,0,.18)}
.cta strong{font-size:18px;line-height:1.25}.cta-message span{display:block;color:#2ff180;font-weight:950;font-size:17px}.cta p{font-size:12px;line-height:1.5;color:#bcd2e2;margin:0}.cta-btn{min-width:230px}
footer{
  position:relative;
  background:transparent;
  border-top:1px solid rgba(68,191,236,.14);
  padding:14px 0 16px;
  color:#b7cad9;
  font-size:12px;
}
.footer-inner{position:relative;z-index:2;width:min(1360px,calc(100% - 48px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand img{width:145px;height:48px;object-fit:contain;object-position:left}.footer-brand span{border-left:1px solid #274765;padding-left:14px}

@media(max-width:1220px){
  .nav-links{gap:25px}
  .hero{background-position:center center}
  .hero-copy{width:min(520px,46vw)}
  .hero h1{font-size:52px}
  .steps-grid{grid-template-columns:1fr 24px 1fr 24px 1fr}.process-note{display:none}
  .profile-card{grid-template-columns:40% 60%}
}
@media(max-width:950px){
  .site-header{position:relative;background:rgba(5,22,40,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(68,200,245,.14)}
  .nav-wrap{grid-template-columns:1fr auto auto;gap:12px;padding:6px 0}
  .brand img{width:205px}
  .menu-toggle{display:block;grid-column:2;grid-row:1}
  .nav-login{grid-column:3;grid-row:1}
  .nav-links{display:none;grid-column:1/-1;grid-row:2;flex-direction:column;align-items:stretch;gap:0;padding:5px 0 12px}
  .nav-links.is-open{display:flex}
  .nav-links a{padding:12px 10px;border-top:1px solid rgba(100,210,245,.11);border-radius:10px}
  .nav-links a.active:after{display:none}
  .hero{min-height:760px;background-size:auto 760px;background-position:66% top;background-color:#061b32}
  .hero-overlay{background:linear-gradient(180deg,rgba(4,17,33,.04) 0%,rgba(4,17,33,.12) 35%,rgba(4,17,33,.88) 58%,rgba(4,17,33,.99) 72%,rgba(4,17,33,1) 100%)}
  .hero-inner{min-height:760px;align-items:flex-end;padding-top:0;padding-bottom:34px}
  .hero-copy{width:100%;padding:0;max-width:680px}
  .hero h1{font-size:47px}
  .hero-copy>p{max-width:650px}
  .steps-panel{width:min(100% - 24px,760px)}
  .steps-grid{grid-template-columns:1fr;gap:12px}.step-arrow{display:none}
  .why-grid{grid-template-columns:repeat(2,1fr);gap:18px}
  .profile-grid{grid-template-columns:1fr}.profile-card{height:205px}
  .cta-inner{grid-template-columns:1fr auto}.cta p{grid-column:1/-1}
  .footer-inner{flex-direction:column;align-items:flex-start}.footer-brand span{display:none}
}
@media(max-width:620px){
  .content-width,.hero-inner,.nav-wrap,.footer-inner{width:min(100% - 28px,1360px)}
  .brand img{width:168px}
  .nav-login{padding:10px 12px}.nav-login span{display:none}
  .hero{min-height:720px;background-size:auto 520px;background-position:65% top}
  .hero-inner{min-height:720px}
  .hero h1{font-size:39px;letter-spacing:-1.7px}
  .hero-copy>p{font-size:15px}
  .hero-actions{display:grid;grid-template-columns:1fr}
  .hero-actions .btn{width:100%}
  .hero-benefits{gap:10px 18px}
  .steps-heading{display:block}.steps-heading span{display:block;margin-top:5px}
  .step{grid-template-columns:40px 52px 1fr}
  .why h2{font-size:18px}.why-grid{grid-template-columns:1fr 1fr}.why-grid>div:last-child{grid-column:1/-1}
  .profile-card{grid-template-columns:42% 58%;height:220px}.profile-text{padding:20px 15px 15px 0}.profile-text p{font-size:12px}
  .cta-inner{grid-template-columns:1fr;padding:20px}.cta-btn{width:100%}
  .cta:before,.cta:after{height:150px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* =========================================================
   V6 — refinamento da faixa de passos, cards de perfis e CTA
   ========================================================= */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Mantém todas as áreas inferiores no mesmo plano visual, sem faixas horizontais de corte */
.steps-wrap,.why,.profiles{background:#071a31;border:0!important;box-shadow:none!important}
.steps-wrap{padding-bottom:8px}
.why{padding-top:12px}
.profiles{padding-top:12px;padding-bottom:26px;overflow:visible}

/* Passos 1 / 2 / 3 com ícones vetoriais próprios, mais próximos da arte de referência */
.steps-panel{border-color:rgba(75,211,255,.30);box-shadow:none;background:linear-gradient(180deg,rgba(10,43,74,.93),rgba(5,27,51,.96))}
.steps-grid{align-items:center}
.step-ico{width:60px;height:60px;border-radius:13px;background:linear-gradient(180deg,rgba(16,65,101,.96),rgba(6,43,73,.98));border:1px solid rgba(93,220,255,.42);box-shadow:inset 0 0 18px rgba(20,190,255,.06)}
.step-svg{width:38px;height:38px;fill:none;stroke:#7eeaff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 6px rgba(36,214,255,.38))}
.bike-svg{width:41px;height:41px}
.step-num{width:42px;height:42px;background:radial-gradient(circle at 35% 30%,#62f2ff 0%,#20c8ff 42%,#0a98e3 100%);box-shadow:0 0 20px rgba(0,213,255,.42);font-size:16px}
.step-arrow{color:#65d8fa;opacity:.95}

/* Cards: o personagem pode sair do quadro como na referência */
.profile-grid{gap:18px;overflow:visible}
.profile-card{overflow:visible;height:198px;isolation:isolate}
.profile-card:before{content:"";position:absolute;inset:0;border-radius:15px;z-index:-2}
.profile-card.seller:before{background:linear-gradient(120deg,rgba(10,108,71,.78),rgba(3,42,47,.94));box-shadow:inset 0 0 0 1px rgba(34,227,115,.94)}
.profile-card.rider:before{background:linear-gradient(120deg,rgba(6,83,116,.78),rgba(4,38,65,.95));box-shadow:inset 0 0 0 1px rgba(23,207,255,.92)}
.profile-card.manager:before{background:linear-gradient(120deg,rgba(72,45,126,.78),rgba(28,34,77,.95));box-shadow:inset 0 0 0 1px rgba(159,105,255,.92)}
.profile-card.seller,.profile-card.rider,.profile-card.manager{border-color:transparent;background:transparent}
.profile-img{overflow:visible;z-index:3}
.profile-img:after{display:none}
.seller .profile-img img{position:absolute;width:222px;max-width:none;max-height:none;left:-5px;bottom:-14px;filter:drop-shadow(0 10px 14px rgba(0,0,0,.32))}
.rider .profile-img img{position:absolute;width:255px;max-width:none;max-height:none;left:-22px;bottom:-2px;transform:none;filter:drop-shadow(0 10px 14px rgba(0,0,0,.34))}
.manager .profile-img img{max-width:112%;max-height:112%;transform:translateY(7px)}
.profile-text{padding-left:10px}

/* Faixa de cidade/efeito: usa a própria arte de referência já aprovada, sem caixa/linhas extras */
.cta-visual{position:relative;width:100%;height:clamp(90px,6.22vw,118px);background:#06192f url('../img/cta-strip-v6.png') center center/100% 100% no-repeat;overflow:hidden;border:0;margin:0;padding:0}
.cta-hotspot{position:absolute;left:41.2%;top:20%;width:18%;height:48%;border-radius:14px;z-index:2;text-decoration:none}
.cta-hotspot:focus-visible{outline:3px solid #65eaff;outline-offset:3px}
footer{background:#06172c;border-top:0!important;padding-top:13px}

@media(max-width:1220px){
  .seller .profile-img img{width:205px;left:-8px}
  .rider .profile-img img{width:235px;left:-26px}
}
@media(max-width:950px){
  .profile-grid{gap:24px}
  .profile-card{overflow:hidden;height:215px}
  .seller .profile-img img{width:230px;left:0;bottom:-12px}
  .rider .profile-img img{width:255px;left:-10px;bottom:0}
  .cta-visual{height:132px;background-size:auto 100%;background-position:center}
  .cta-hotspot{left:36%;width:28%}
}
@media(max-width:620px){
  .step-ico{width:54px;height:54px}.step-svg{width:33px;height:33px}
  .profile-card{height:225px;overflow:hidden}
  .seller .profile-img img{width:210px;left:-22px}
  .rider .profile-img img{width:220px;left:-28px}
  .cta-visual{height:145px;background-size:auto 100%;background-position:center}
  .cta-hotspot{left:30%;width:40%;top:18%;height:52%}
}

/* =========================================================
   V7 — distribuição da faixa de benefícios, CTA responsivo
   e remoção da linha entre hero e conteúdo
   ========================================================= */

/* Remove a linha horizontal que cortava a transição do hero para o quadro "Como funciona?" */
.hero{border-bottom:0!important}

/* Título ocupa ~1/4 e os cinco benefícios os ~3/4 restantes */
.why{padding-top:16px;padding-bottom:17px}
.why-row{
  display:grid;
  grid-template-columns:minmax(245px,25%) minmax(0,75%);
  align-items:center;
  column-gap:26px;
}
.why-row h2{
  margin:0;
  font-size:20px;
  line-height:1.2;
  white-space:normal;
}
.why-row .why-grid{
  min-width:0;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
}
.why-row .why-grid>div{
  grid-template-columns:48px minmax(0,1fr);
  column-gap:11px;
}
.why-row .why-grid b{
  font-size:13px;
  line-height:1.2;
}
.why-row .why-grid small{
  color:#d0deea;
  font-size:13px;
  line-height:1.2;
}

/*
  CTA v7: textos e botão são HTML reais (responsivos).
  A imagem antiga é usada somente como decoração nas extremidades:
  - esquerda: cidade + feixe azul
  - direita: cidade + marcador + feixe verde
  Assim nenhum texto funcional depende da imagem.
*/
.cta-visual{display:none!important}
.cta-final{
  position:relative;
  min-height:118px;
  overflow:hidden;
  background:linear-gradient(90deg,#06192f 0%,#07233b 42%,#07304a 67%,#06192f 100%);
  border:0;
  isolation:isolate;
}
.cta-final:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(circle at 18% 55%,rgba(0,201,255,.12),transparent 24%),
    radial-gradient(circle at 82% 55%,rgba(17,245,137,.11),transparent 30%);
  pointer-events:none;
}
.cta-decor{
  position:absolute;
  top:0;
  bottom:0;
  z-index:0;
  background-image:url('../img/cta-strip-v6.png');
  background-repeat:no-repeat;
  background-size:auto 100%;
  pointer-events:none;
}
.cta-decor-left{
  left:0;
  width:min(18vw,270px);
  background-position:left center;
}
.cta-decor-right{
  right:0;
  width:min(43vw,650px);
  background-position:right center;
}
.cta-final-inner{
  position:relative;
  z-index:2;
  min-height:118px;
  display:grid;
  grid-template-columns:minmax(280px,1fr) minmax(330px,.95fr) minmax(230px,.8fr);
  align-items:center;
  gap:28px;
  padding:16px 34px;
}
.cta-final-message{
  padding-left:18px;
  text-shadow:0 2px 8px rgba(0,0,0,.45);
}
.cta-final-message strong{
  display:block;
  font-size:19px;
  line-height:1.22;
  color:#fff;
}
.cta-final-message span{
  display:block;
  margin-top:2px;
  color:#2cf37f;
  font-size:20px;
  line-height:1.15;
  font-weight:950;
}
.cta-final-action{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
}
.cta-final-btn{
  min-width:245px;
  min-height:50px;
  font-size:15px;
}
.cta-final-action small{
  font-size:11px;
  color:#d3e0e9;
  text-align:center;
  text-shadow:0 2px 6px rgba(0,0,0,.45);
}
.cta-final-side{min-height:1px}
footer{border-top:0!important}

@media(max-width:1220px){
  .why-row{grid-template-columns:minmax(220px,23%) minmax(0,77%);column-gap:20px}
  .why-row .why-grid{gap:10px}
  .why-row .why-grid small{font-size:12.5px}
  .cta-final-inner{grid-template-columns:1fr 1fr .55fr;padding-left:26px;padding-right:26px}
  .cta-decor-right{width:37vw}
}

@media(max-width:950px){
  .why-row{grid-template-columns:1fr;row-gap:15px}
  .why-row h2{font-size:19px}
  .why-row .why-grid{grid-template-columns:repeat(5,minmax(130px,1fr));overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
  .why-row .why-grid>div{min-width:135px}
  .why-row .why-grid small{font-size:13px}

  .cta-final{min-height:150px}
  .cta-final-inner{min-height:150px;grid-template-columns:1fr 1fr;gap:20px;padding:18px 24px}
  .cta-final-side{display:none}
  .cta-final-message{padding-left:0}
  .cta-decor-left{width:23vw;opacity:.70}
  .cta-decor-right{width:42vw;opacity:.72}
}

@media(max-width:620px){
  .why{padding-top:14px}
  .why-row .why-grid{grid-template-columns:1fr 1fr;overflow:visible;gap:13px 14px}
  .why-row .why-grid>div{min-width:0;grid-template-columns:42px 1fr}
  .why-row .why-grid>div:last-child{grid-column:auto}
  .why-row .why-grid span{width:40px;height:40px}
  .why-row .why-grid b{font-size:12.5px}
  .why-row .why-grid small{font-size:12.5px}

  .cta-final{min-height:205px}
  .cta-final-inner{min-height:205px;grid-template-columns:1fr;text-align:center;gap:14px;padding:22px 18px}
  .cta-final-message{order:1}
  .cta-final-action{order:2}
  .cta-final-message strong{font-size:18px}
  .cta-final-message span{font-size:19px}
  .cta-final-btn{width:min(100%,320px);min-width:0}
  .cta-final-action small{font-size:11px}
  .cta-decor-left{width:42%;opacity:.35}
  .cta-decor-right{width:58%;opacity:.38}
  .cta-final:after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:rgba(5,24,45,.32);
    pointer-events:none;
  }
}

/* =========================================================
   V8 — correção específica do HERO em celulares
   No desktop a composição permanece exatamente como na V7.
   Em telas estreitas, a arte panorâmica passa a caber inteira
   na largura, sem o corte agressivo provocado por background-size:auto.
   ========================================================= */
@media(max-width:760px){
  .hero{
    min-height:0!important;
    background-size:100% auto!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
    background-color:#061b32!important;
  }

  /* A imagem fica limpa no topo e o azul cresce somente na transição
     para o conteúdo textual, evitando esconder/cortar o Elo e os cards. */
  .hero-overlay{
    background:linear-gradient(180deg,
      rgba(4,17,33,0) 0%,
      rgba(4,17,33,0) 30vw,
      rgba(4,17,33,.12) 35vw,
      rgba(4,20,38,.64) 41vw,
      rgba(4,20,38,.94) 47vw,
      #061b32 55vw,
      #061b32 100%
    )!important;
  }
  .hero-overlay:before{display:none!important}
  .hero:after{display:none!important}

  /* A proporção da arte é aproximadamente 1895x830 (43,8% de altura).
     O conteúdo começa logo após a visualização integral da imagem. */
  .hero-inner{
    min-height:0!important;
    display:block!important;
    padding-top:clamp(174px,43.8vw,333px)!important;
    padding-bottom:34px!important;
    align-items:initial!important;
  }
  .hero-copy{
    width:100%!important;
    max-width:none!important;
    padding:22px 0 0!important;
    filter:drop-shadow(0 3px 11px rgba(0,0,0,.35))!important;
  }
  .hero h1{
    margin-top:0!important;
    font-size:clamp(37px,10vw,45px)!important;
    line-height:1.02!important;
    letter-spacing:-1.7px!important;
  }
  .hero-copy>p{
    max-width:none!important;
    font-size:15.5px!important;
    line-height:1.52!important;
  }

  /* Mantém os botões confortáveis no celular sem empurrar a arte. */
  .hero-actions{margin-top:2px!important}
  .hero-benefits{margin-top:20px!important}
}

/* =========================================================
   3.13.1 — assets modernos e responsivos
   Mantém PNG como fallback e usa AVIF/WebP quando suportados.
   ========================================================= */
.asset-picture{display:contents}
.hero{
  background-image:url('../img/hero-cidade-elo-v3.png');
  background-image:image-set(
    url('../img/hero-cidade-elo-v3.avif') type('image/avif') 1x,
    url('../img/hero-cidade-elo-v3.webp') type('image/webp') 1x,
    url('../img/hero-cidade-elo-v3.png') type('image/png') 1x
  );
}
.cta-decor{
  background-image:url('../img/cta-strip-v6.png');
  background-image:image-set(
    url('../img/cta-strip-v6.avif') type('image/avif') 1x,
    url('../img/cta-strip-v6.webp') type('image/webp') 1x,
    url('../img/cta-strip-v6.png') type('image/png') 1x
  );
}
@media(max-width:760px){
  .hero{
    background-image:url('../img/hero-cidade-elo-v3.png');
    background-image:image-set(
      url('../img/hero-cidade-elo-v3-1280.avif') type('image/avif') 1x,
      url('../img/hero-cidade-elo-v3-1280.webp') type('image/webp') 1x,
      url('../img/hero-cidade-elo-v3.png') type('image/png') 1x
    );
  }
}

/* =========================================================
   3.13.7 — BLOCO CANÔNICO DA HOMEPAGE
   Substitui os ajustes acumulados 3.13.2–3.13.6 por uma única regra.
   ========================================================= */

/* Hero dedicado no celular */
@media(max-width:760px){
  .hero{
    min-height:0!important;
    background-image:url('../img/hero-cidade-elo-mobile-v1.png')!important;
    background-image:image-set(
      url('../img/hero-cidade-elo-mobile-v1.avif') type('image/avif') 1x,
      url('../img/hero-cidade-elo-mobile-v1.webp') type('image/webp') 1x,
      url('../img/hero-cidade-elo-mobile-v1.png') type('image/png') 1x
    )!important;
    background-size:100% auto!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
    background-color:#061b32!important;
  }
  .hero-overlay{
    background:linear-gradient(180deg,
      rgba(4,17,33,0) 0%,
      rgba(4,17,33,0) 52vw,
      rgba(4,20,38,.18) 60vw,
      rgba(4,20,38,.56) 67vw,
      rgba(4,20,38,.90) 74vw,
      #061b32 82vw,
      #061b32 100%
    )!important;
  }
  .hero-overlay:before,.hero:after{display:none!important}
  .hero-inner{
    min-height:0!important;
    display:block!important;
    padding-top:clamp(245px,72vw,500px)!important;
    padding-bottom:34px!important;
  }
  .hero-copy{
    width:100%!important;
    max-width:none!important;
    padding:22px 0 0!important;
    margin:0 auto!important;
    text-align:center!important;
    filter:drop-shadow(0 3px 11px rgba(0,0,0,.35))!important;
  }
  .hero h1{
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
    font-size:clamp(37px,10vw,45px)!important;
    line-height:1.02!important;
    letter-spacing:-1.7px!important;
  }
  .hero-copy>p{
    max-width:660px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    font-size:15.5px!important;
    line-height:1.52!important;
  }
  .hero-actions,.hero-benefits{justify-content:center!important}
}

/* PERFIS — desktop: duas metades iguais, imagem inteira, texto com recuo */
.profiles{overflow:visible!important}
.profiles .profile-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  overflow:visible!important;
}
.profiles .profile-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  height:198px!important;
  min-height:198px!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
.profiles .profile-card .profile-img{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  padding:8px!important;
  min-width:0!important;
}
.profiles .profile-card .profile-img:after{display:none!important}
.profiles .profile-card .profile-img picture{display:contents!important}
.profiles .profile-card .profile-img img{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  width:auto!important;
  height:auto!important;
  max-width:96%!important;
  max-height:96%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 12px rgba(0,0,0,.28))!important;
}
.profiles .profile-text{
  position:relative!important;
  z-index:3!important;
  min-width:0!important;
  padding:20px 20px 18px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
}
.profiles .profile-text h3{
  margin:0 0 8px!important;
  font-size:17px!important;
  line-height:1.18!important;
}
.profiles .profile-text p{
  margin:0 0 13px!important;
  font-size:12.8px!important;
  line-height:1.46!important;
}
.profiles .profile-text a{
  align-self:flex-start!important;
  padding:8px 16px!important;
  font-size:12px!important;
}

@media(max-width:1100px){
  .profiles .profile-grid{gap:14px!important}
  .profiles .profile-card{height:194px!important;min-height:194px!important}
  .profiles .profile-text{padding:18px 16px 16px 14px!important}
  .profiles .profile-text h3{font-size:16px!important}
  .profiles .profile-text p{font-size:12.1px!important}
}

/* PERFIS — celular: mais faixa para a imagem e sem o vazio superior */
@media(max-width:950px){
  .profiles .profile-grid{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .profiles .profile-card{
    grid-template-columns:48% 52%!important;
    height:208px!important;
    min-height:208px!important;
    border-radius:18px!important;
  }
  .profiles .profile-card .profile-img{
    align-items:center!important;
    justify-content:center!important;
    padding:4px 4px 4px 4px!important;
  }
  .profiles .profile-card .profile-img img{
    max-width:98%!important;
    max-height:94%!important;
  }
  .profiles .seller .profile-img img,
  .profiles .manager .profile-img img{
    transform:translateY(-14px)!important;
  }
  .profiles .rider .profile-img img{
    transform:translateY(-18px)!important;
  }
  .profiles .profile-text{
    padding:14px 14px 14px 12px!important;
    justify-content:center!important;
  }
  .profiles .profile-text h3{
    font-size:17px!important;
    margin-bottom:9px!important;
  }
  .profiles .profile-text p{
    font-size:12.2px!important;
    line-height:1.50!important;
    margin-bottom:13px!important;
  }
  .profiles .profile-text a{
    font-size:12px!important;
    padding:9px 15px!important;
  }
}

@media(max-width:430px){
  .profiles .profile-card{
    grid-template-columns:49% 51%!important;
    height:204px!important;
    min-height:204px!important;
  }
  .profiles .profile-card .profile-img img{
    max-width:100%!important;
    max-height:92%!important;
  }
  .profiles .seller .profile-img img,
  .profiles .manager .profile-img img{
    transform:translateY(-13px)!important;
  }
  .profiles .rider .profile-img img{
    transform:translateY(-17px)!important;
  }
  .profiles .profile-text{
    padding:13px 12px 13px 9px!important;
  }
  .profiles .profile-text h3{font-size:16px!important;margin-bottom:8px!important}
  .profiles .profile-text p{font-size:11.5px!important;line-height:1.47!important;margin-bottom:11px!important}
  .profiles .profile-text a{font-size:11px!important;padding:8px 13px!important}
}

/* Rodapé centralizado somente no celular */
@media(max-width:760px){
  .footer-inner{
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    gap:12px!important;
  }
  .footer-brand{
    width:100%!important;
    justify-content:center!important;
  }
  .footer-brand img{
    object-position:center!important;
  }
  .footer-inner>div:last-child{
    width:100%!important;
    text-align:center!important;
  }
}
