/* Landing publica canonica. Mantem o restante do sistema fora deste escopo. */
.public-landing-page{
  --landing-blue:#3f56b5;
  --landing-blue-dark:#263d93;
  --landing-cyan:#55c7ee;
  --landing-ink:#101a31;
  --landing-muted:#64728e;
  --landing-line:#dce3f0;
  --landing-surface:#fff;
  --landing-page:#f2f5fa;
  --landing-radius:8px;
}
.public-landing-page .landing-view{background:var(--landing-page)!important;color:var(--landing-ink);padding:0!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
.public-landing-page .landing-shell{max-width:1240px!important;padding:0 20px 34px!important}
.public-landing-page .landing-shell>.public-site-header{margin-top:0!important}
.public-landing-page .public-site-header{
  min-height:76px;
  background:var(--landing-blue-dark);
  border-bottom:0;
  box-shadow:0 12px 32px rgba(33,53,124,.18);
}
.public-landing-page .public-site-header .public-brand strong,
.public-landing-page .public-site-header .landing-nav summary{color:#fff!important}
.public-landing-page .public-site-header .public-brand em{opacity:.78}
.public-landing-page .public-site-header .landing-nav summary:hover,
.public-landing-page .public-site-header .landing-nav details[open] summary{background:rgba(255,255,255,.13);color:#fff}
.public-landing-page .public-site-header .public-login{
  background:#fff!important;
  border-color:rgba(255,255,255,.9)!important;
  border-radius:8px!important;
  color:var(--landing-blue-dark)!important;
  text-shadow:none!important;
  box-shadow:0 10px 24px rgba(17,31,82,.22);
}
.public-landing-page .public-site-header .public-login:hover{
  background:#eef3ff!important;
  border-color:#c9d5ff!important;
  color:#172b79!important;
}
.public-landing-page .public-login-short{display:none}
.public-landing-page .public-menu-toggle{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:#fff}
.public-landing-page .landing-video-hero{
  min-height:min(650px,calc(100vh - 76px));
  margin-top:0!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  align-items:stretch!important;
  padding:0!important;
  overflow:hidden!important;
}
.public-landing-page .landing-hero-overlay{background:linear-gradient(90deg,rgba(6,16,39,.92) 0%,rgba(8,22,47,.76) 48%,rgba(8,18,36,.20) 100%)}
.public-landing-page .landing-video-hero .landing-copy{
  position:relative!important;
  inset:auto!important;
  z-index:2!important;
  grid-area:1 / 1!important;
  align-self:stretch!important;
  width:min(1180px,calc(100% - 48px));
  max-width:none;
  min-height:0!important;
  margin:0 auto!important;
  padding:64px 0!important;
  display:grid!important;
  align-content:center!important;
  transform:none!important;
}
.public-landing-page .landing-video-hero .landing-copy>*{max-width:690px}
.public-landing-page .landing-video-hero h1{font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:0;max-width:780px}
.public-landing-page .landing-video-hero .eyebrow{color:#77d9f7!important;letter-spacing:0!important}
.public-landing-page .landing-video-hero .landing-copy>p:not(.eyebrow){max-width:680px;font-size:18px;line-height:1.6}
.landing-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.landing-cta{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:12px 19px;border:1px solid transparent;border-radius:8px;text-decoration:none;font:inherit;font-size:14px;font-weight:900;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.landing-cta:hover{transform:translateY(-2px)}
.public-landing-page .landing-cta-primary{background:#fff!important;color:#273d92!important;box-shadow:0 12px 30px rgba(0,0,0,.22)}
.public-landing-page .landing-cta-secondary{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.5)!important;color:#fff!important}
.public-landing-page .landing-proof{margin-top:2px}
.public-landing-page .landing-proof span{border-color:rgba(255,255,255,.3);background:rgba(5,14,32,.35);color:#fff}
.landing-trust-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:32px 0 72px;background:#fff;border:1px solid var(--landing-line);border-radius:var(--landing-radius);box-shadow:0 12px 28px rgba(31,49,98,.06)}
.landing-trust-strip>div{min-height:120px;display:grid;align-content:center;gap:7px;padding:24px 30px;border-right:1px solid var(--landing-line)}
.landing-trust-strip>div:last-child{border-right:0}
.landing-trust-strip strong{font-size:17px;color:var(--landing-ink)}
.landing-trust-strip span{font-size:13px;line-height:1.55;color:var(--landing-muted)}
.landing-section-heading{max-width:760px;margin:0 auto 32px;text-align:center}
.landing-section-heading .eyebrow,.public-landing-page .landing-pricing .eyebrow,.public-landing-page .landing-driver-app .eyebrow,.landing-final-cta .eyebrow{color:var(--landing-blue);font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:0}
.landing-section-heading h2,.public-landing-page .pricing-head h2{margin:8px 0 10px;font-size:clamp(30px,4vw,44px);line-height:1.1;letter-spacing:0;color:var(--landing-ink)}
.landing-section-heading>p:last-child,.public-landing-page .pricing-head p:last-child{margin:0;color:var(--landing-muted);font-size:16px;line-height:1.65}
.public-landing-page .landing-feature-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:72px}
.public-landing-page .landing-feature-row{min-height:225px;grid-template-columns:58px minmax(0,1fr);align-items:start;padding:28px;border:1px solid var(--landing-line);border-radius:8px;background:#fff;box-shadow:0 12px 30px rgba(31,49,98,.06);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.public-landing-page .landing-feature-row:hover{transform:translateY(-3px);border-color:#b8c7ee;box-shadow:0 18px 38px rgba(31,49,98,.10)}
.public-landing-page .landing-feature-icon{width:50px;height:50px;border-radius:8px;background:#edf1ff;color:var(--landing-blue);box-shadow:none}
.public-landing-page .landing-feature-row h2{margin:7px 0 8px;font-size:23px;line-height:1.18;color:var(--landing-ink)}
.public-landing-page .landing-feature-row p:last-child{font-size:14px;line-height:1.62;color:var(--landing-muted)}
.public-landing-page .landing-driver-app{margin:0 calc(50% - 50vw) 72px;padding:70px max(24px,calc((100vw - 1200px)/2));border:0;border-radius:0;background:#314aa8;color:#fff;box-shadow:none}
.public-landing-page .landing-driver-app::after{display:none}
.public-landing-page .landing-driver-app-inner{max-width:1200px;margin:auto;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);gap:80px}
.public-landing-page .landing-driver-app-copy{max-width:610px}
.public-landing-page .landing-driver-app-copy>.eyebrow{color:#8bdcff!important}
.public-landing-page .landing-driver-app-copy h2{color:#fff!important;font-size:clamp(32px,4vw,48px);line-height:1.08}
.public-landing-page .landing-driver-app-lead{color:#dce7ff!important;font-size:16px}
.public-landing-page .landing-app-benefit{padding:16px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.public-landing-page .landing-app-benefit h3{color:#fff!important}
.public-landing-page .landing-app-benefit p{color:#cedaf7!important}
.public-landing-page .landing-app-benefit-icon{border-radius:8px;background:rgba(255,255,255,.12);color:#8bdcff}
.public-landing-page .landing-app-proof span{border-radius:7px;border-color:rgba(255,255,255,.25);background:rgba(9,24,68,.32);color:#fff}
.public-landing-page .landing-driver-app-frame{border-radius:8px;background:#fff!important;border:1px solid #fff!important;box-shadow:0 24px 54px rgba(10,25,75,.24)!important;backdrop-filter:none!important}
.public-landing-page .landing-pricing{padding:0 0 72px;gap:26px}
.public-landing-page .pricing-head{align-items:end}
.public-landing-page .pricing-head>div{max-width:800px}
.landing-text-link{flex:0 0 auto;color:var(--landing-blue-dark);font-size:13px;font-weight:900;text-decoration:none;border-bottom:2px solid #b9c8f5;padding-bottom:4px}
.public-landing-page .pricing-grid{gap:14px}
.public-landing-page .price-card{min-height:380px!important;padding:24px!important;border:1px solid var(--landing-line)!important;border-radius:8px!important;background:#fff!important;box-shadow:0 12px 28px rgba(31,49,98,.07)!important;overflow:hidden!important;text-align:left!important;justify-items:stretch!important;transition:transform .18s ease,box-shadow .18s ease!important}
.public-landing-page .price-card:hover{transform:translateY(-5px)!important;box-shadow:0 20px 40px rgba(31,49,98,.12)!important}
.public-landing-page .price-card:after{display:none}
.public-landing-page .price-card.featured{border:2px solid var(--landing-blue)!important;background:#f7f9ff!important}
.public-landing-page .price-card.featured:before{top:13px;right:13px;border-radius:6px;background:var(--landing-blue)!important}
.public-landing-page .plan-title{justify-items:start;min-height:54px}
.public-landing-page .plan-title h3{font-size:18px;color:var(--landing-ink)}
.public-landing-page .price-ribbon{width:auto;min-height:auto;margin:3px 0 12px;padding:0;clip-path:none;justify-content:flex-start;background:transparent!important;color:var(--landing-ink);box-shadow:none}
.public-landing-page .price-ribbon strong{font-size:28px;color:var(--landing-ink)!important}
.public-landing-page .price-ribbon span{color:var(--landing-muted)}
.public-landing-page .price-card ul{margin:0 0 18px!important}
.public-landing-page .price-card li{color:#4c5a74}
.public-landing-page .price-card button.soft{justify-self:stretch!important;border-radius:7px!important;background:var(--landing-blue)!important;color:#fff!important;box-shadow:none!important}
.public-landing-page .pricing-note{border-radius:8px;background:#e9eefb;border-color:#d3dcf3;box-shadow:none}
.public-landing-page .landing-module-sections{
  display:grid!important;
  gap:26px!important;
  padding:0 0 72px!important;
}
.public-landing-page .module-story-head{
  display:grid!important;
  gap:8px!important;
  max-width:760px!important;
  margin:0 auto!important;
  text-align:center!important;
}
.public-landing-page .module-story-head h2{
  margin:0!important;
  color:var(--landing-ink)!important;
  font-size:clamp(30px,4vw,44px)!important;
  line-height:1.1!important;
  letter-spacing:0!important;
}
.public-landing-page .module-story-head p{
  max-width:720px!important;
  margin:0!important;
  color:var(--landing-muted)!important;
  font-size:16px!important;
  font-weight:500!important;
  line-height:1.65!important;
}
.public-landing-page .module-story-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
}
.public-landing-page .module-story-item{
  min-height:170px!important;
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  align-items:start!important;
  gap:18px!important;
  padding:26px!important;
  border:1px solid var(--landing-line)!important;
  border-radius:var(--landing-radius)!important;
  background:#fff!important;
  box-shadow:0 12px 30px rgba(31,49,98,.06)!important;
  backdrop-filter:none!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.public-landing-page .module-story-item:last-child:nth-child(odd){grid-column:1/-1!important}
.public-landing-page .module-story-item:hover{
  transform:translateY(-3px)!important;
  border-color:#b8c7ee!important;
  box-shadow:0 18px 38px rgba(31,49,98,.10)!important;
}
.public-landing-page .module-story-item>.module-story-icon{
  width:50px!important;
  height:50px!important;
  border:0!important;
  border-radius:8px!important;
  background:#edf1ff!important;
  color:var(--landing-blue)!important;
  box-shadow:none!important;
}
.public-landing-page .module-story-item>.module-story-icon svg{width:25px!important;height:25px!important;filter:none!important}
.public-landing-page .module-story-item h3{
  margin:4px 0 8px!important;
  color:var(--landing-ink)!important;
  font-size:20px!important;
  line-height:1.2!important;
}
.public-landing-page .module-story-item p{
  margin:0!important;
  color:var(--landing-muted)!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1.6!important;
}
.public-landing-page .module-story-cta{
  display:none!important;
}
.public-landing-page .module-story-cta strong{color:#fff!important;font-size:21px!important}
.public-landing-page .module-story-cta span{color:#dce6ff!important;font-size:14px!important;font-weight:500!important}
.public-landing-page .module-story-cta .primary{
  min-height:44px!important;
  border:1px solid #fff!important;
  border-radius:7px!important;
  background:#fff!important;
  color:var(--landing-blue-dark)!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.landing-final-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;margin:0 0 34px;padding:38px 42px;border-radius:var(--landing-radius);background:var(--landing-blue-dark);color:#fff;box-shadow:0 16px 34px rgba(38,61,147,.16)}
.public-landing-page .landing-final-cta .eyebrow{color:#8bdcff!important}
.public-landing-page .landing-final-cta h2{max-width:760px;margin:7px 0 8px;color:#fff!important;font-size:clamp(28px,4vw,40px);line-height:1.12}
.landing-final-cta p:last-child{max-width:700px;margin:0;color:#dce6ff!important;line-height:1.55}
.landing-cta-light{background:#fff;color:var(--landing-blue-dark);white-space:nowrap}
.public-landing-page .landing-driver-app h2,
.public-landing-page .landing-driver-app h3,
.public-landing-page .landing-driver-app p,
.public-landing-page .landing-final-cta h2,
.public-landing-page .landing-final-cta p{opacity:1}
.public-landing-page .landing-footer{padding:26px 10px;color:#60708a}
@media(max-width:900px){
  .landing-trust-strip{grid-template-columns:1fr;margin-bottom:58px}.landing-trust-strip>div{min-height:94px;border-right:0;border-bottom:1px solid var(--landing-line)}.landing-trust-strip>div:last-child{border-bottom:0}
  .public-landing-page .landing-feature-sections{grid-template-columns:1fr;margin-bottom:58px}
  .public-landing-page .landing-driver-app{padding-block:54px;margin-bottom:58px}.public-landing-page .landing-driver-app-inner{grid-template-columns:1fr;gap:36px}.public-landing-page .landing-driver-app-visual{order:2}
  .public-landing-page .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .public-landing-page .module-story-list{grid-template-columns:1fr!important}
  .public-landing-page .module-story-item:last-child:nth-child(odd){grid-column:auto!important}
}
@media(max-width:620px){
  .public-landing-page .landing-shell{padding-inline:14px!important}
  .public-landing-page .public-site-header{position:sticky;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;column-gap:8px;row-gap:0;min-height:58px;margin-bottom:0;padding:7px 10px;background:linear-gradient(110deg,var(--landing-blue-dark),var(--landing-blue));overflow:visible}
  .public-landing-page .public-site-header .public-brand{grid-column:1;grid-row:1;justify-self:start;min-width:0;gap:6px;overflow:visible}
  .public-landing-page .public-site-header .public-brand-logo{width:42px!important;height:42px!important;flex-basis:42px}
  .public-landing-page .public-site-header .public-brand strong{display:inline-flex!important;min-width:0;font-size:13px!important}
  .public-landing-page .public-site-header .public-login{grid-column:2;grid-row:1;justify-self:end;min-height:36px;padding:8px 14px;font-size:11px;white-space:nowrap;border-radius:10px!important;box-shadow:0 7px 16px rgba(17,31,82,.18)}
  .public-landing-page .public-login-full{display:none}
  .public-landing-page .public-login-short{display:inline}
  .public-landing-page .public-menu-toggle{position:static;z-index:auto;grid-column:3;grid-row:1;justify-self:end;display:grid;place-items:center;width:36px;height:36px;margin:0;padding:0;border:1px solid rgba(255,255,255,.3)!important;border-radius:10px!important;background:rgba(255,255,255,.12)!important;color:#fff!important;box-shadow:none!important;transform:none}
  .public-landing-page .public-menu-toggle::before{content:none}
  .public-landing-page .public-menu-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s ease}
  .public-landing-page .public-site-header.is-menu-open .public-menu-toggle svg{transform:rotate(180deg)}
  .public-landing-page .public-site-header .landing-nav{grid-column:1/-1;grid-row:2;padding:10px 0 4px;animation:landingMenuDrop .2s ease both}
  .public-landing-page .public-site-header .landing-nav summary{background:rgba(255,255,255,.1);color:#fff!important}
  .public-landing-page .public-site-header+.landing-video-hero{margin-top:-30px!important}
  .public-landing-page .landing-video-hero{min-height:590px}.public-landing-page .landing-video-hero .landing-copy{width:calc(100% - 32px);padding:48px 0}.public-landing-page .landing-video-hero h1{font-size:39px}.public-landing-page .landing-video-hero .landing-copy>p:not(.eyebrow){font-size:15px}
  .landing-hero-actions{display:grid}.landing-cta{width:100%}.public-landing-page .landing-proof{display:grid;grid-template-columns:1fr}
  .landing-section-heading{text-align:left}.landing-section-heading h2,.public-landing-page .pricing-head h2{font-size:31px}
  .public-landing-page .landing-feature-row{grid-template-columns:46px minmax(0,1fr);padding:20px}.public-landing-page .landing-feature-icon{width:42px;height:42px}.public-landing-page .landing-feature-row h2{font-size:20px}
  .public-landing-page .landing-driver-app{padding-inline:18px}.public-landing-page .landing-driver-app-copy h2{font-size:32px}
  .public-landing-page .pricing-head{display:grid;gap:16px}.public-landing-page .pricing-grid{grid-template-columns:1fr}.public-landing-page .price-card{min-height:350px!important}
  .public-landing-page .module-story-head{text-align:left!important;margin:0!important}.public-landing-page .module-story-head h2{font-size:31px!important}
  .public-landing-page .module-story-item{min-height:0!important;grid-template-columns:46px minmax(0,1fr)!important;padding:20px!important;gap:14px!important}.public-landing-page .module-story-item>.module-story-icon{width:42px!important;height:42px!important}.public-landing-page .module-story-item h3{font-size:19px!important}
  .public-landing-page .module-story-cta{display:grid!important;padding:24px 22px!important}.public-landing-page .module-story-cta .primary{width:100%!important}
  .landing-final-cta{grid-template-columns:1fr;padding:28px 22px;gap:24px}.landing-final-cta h2{font-size:30px}.landing-cta-light{width:100%}
}
@keyframes landingMenuDrop{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:380px){.public-landing-page .public-site-header{column-gap:6px;padding-inline:8px}.public-landing-page .public-site-header .public-brand-logo{width:36px!important;height:36px!important;flex-basis:36px}.public-landing-page .public-site-header .public-brand strong{font-size:10.5px!important}.public-landing-page .public-site-header .public-login{min-height:34px;padding:7px 10px;font-size:10px}.public-landing-page .public-menu-toggle{width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){.public-landing-page *{scroll-behavior:auto!important}.public-landing-page .landing-feature-row,.public-landing-page .price-card,.landing-cta{transition:none!important}}

/* Immersive zoom for each complete landing-page section. */
.public-landing-page .landing-scroll-scene{
  --scene-scale:1;
  --scene-shift:0px;
  --scene-opacity:1;
  position:relative;
  transform:translate3d(0,var(--scene-shift),0) scale(var(--scene-scale));
  transform-origin:center center;
  opacity:var(--scene-opacity);
  will-change:transform,opacity;
  backface-visibility:hidden;
}
.public-landing-page .landing-scroll-scene::after{
  content:"";
  position:absolute;
  z-index:8;
  right:7%;
  bottom:-13px;
  left:7%;
  height:24px;
  pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(25,55,122,.22) 0%,rgba(25,55,122,.08) 44%,rgba(25,55,122,0) 74%);
  filter:blur(6px);
}
.public-landing-page .landing-video-hero .landing-hero-video{
  transform:none!important;
}
@media(prefers-reduced-motion:reduce){
  .public-landing-page .landing-scroll-scene{transform:none!important;opacity:1!important;will-change:auto}
}
@media(max-width:720px){
  .public-landing-page .landing-scroll-scene::after{
    right:5%;
    bottom:-9px;
    left:5%;
    height:18px;
    filter:blur(5px);
  }
}
