/* Landing premium — body.landing-studio.
   Rollback: /?landing=classic */

body.landing-studio{
  --lx-line: hsl(var(--border) / 0.85);
  --lx-surface: hsl(var(--panel) / 0.55);
  --lx-ink: hsl(var(--text));
  --lx-muted: hsl(var(--muted));
  background: hsl(var(--bg));
}
[data-theme="light"] body.landing-studio{
  --lx-surface: hsl(0 0% 100%);
  background: hsl(210 25% 98%);
}

body.landing-studio .container{
  max-width: min(1520px, 100%);
  padding: 8px 16px 56px;
}
@media (max-width: 720px){
  body.landing-studio .container{ padding: 4px 16px 40px; }
}

body.landing-studio .ls [id]{
  scroll-margin-top: max(92px, calc(8px + env(safe-area-inset-top, 0px) + 72px));
}
/* Produto, Planos e FAQ têm padding-top grande; a âncora sobe esse respiro para o título ficar sob a barra. */
body.landing-studio #recursos,
body.landing-studio #planos,
body.landing-studio #faq{
  scroll-margin-top: calc(var(--landing-topbar-h, 68px) + 20px - 88px);
}
@media (max-width: 900px){
  body.landing-studio #recursos,
  body.landing-studio #planos,
  body.landing-studio #faq{
    scroll-margin-top: calc(var(--landing-topbar-h, 72px) + 20px - 64px);
  }
}

html:not([data-ui="liquid-glass"]) body.landing-studio .landingNavMenu a.btn.landingNavLink:not(.btnPrimary):not(.btnDanger):not(.btnExcel):not(.btnPdf),
html:not([data-ui="liquid-glass"])[data-theme="light"] body.landing-studio .landingNavMenu a.btn.landingNavLink:not(.btnPrimary):not(.btnDanger):not(.btnExcel):not(.btnPdf){
  background: transparent;
  color: hsl(var(--muted));
  border-color: transparent;
  box-shadow: none;
  font-weight: 600;
}
html:not([data-ui="liquid-glass"]) body.landing-studio .landingNavMenu a.btn.landingNavLink:not(.btnPrimary):not(.btnDanger):not(.btnExcel):not(.btnPdf):hover,
html:not([data-ui="liquid-glass"])[data-theme="light"] body.landing-studio .landingNavMenu a.btn.landingNavLink:not(.btnPrimary):not(.btnDanger):not(.btnExcel):not(.btnPdf):hover{
  color: hsl(var(--text));
  background: hsl(var(--text) / 0.05);
  border-color: transparent;
  box-shadow: none;
  filter: none;
}
@media (max-width: 768px){
  html:not([data-ui="liquid-glass"]) body.landing-studio .landingNavMenu a.btn.landingNavLink:not(.btnPrimary):not(.btnDanger):not(.btnExcel):not(.btnPdf),
  html:not([data-ui="liquid-glass"])[data-theme="light"] body.landing-studio .landingNavMenu a.btn.landingNavLink:not(.btnPrimary):not(.btnDanger):not(.btnExcel):not(.btnPdf){
    border-color: hsl(var(--border));
    color: hsl(var(--text));
    justify-content: flex-start;
    padding-left: 16px;
    background: transparent;
  }
}

.ls{
  color: var(--lx-ink);
}
.ls :focus-visible{
  outline: 2px solid hsl(var(--blue));
  outline-offset: 3px;
}

.ls-kicker{
  margin: 0 0 14px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: hsl(var(--blue));
}
.ls-h{
  margin: 0;
  font-weight: 700;
  letter-spacing: -0.038em;
  line-height: 1.08;
}
.ls-lead{
  margin: 18px 0 0;
  color: var(--lx-muted);
  font-size: 1.05rem;
  line-height: 1.55;
  text-wrap: pretty;
}
.ls-section{ padding: 88px 0 0; }
.ls-section .ls-h{ font-size: clamp(1.7rem, 2.4vw, 2.5rem); }

/* Hero */
.ls-hero{
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(320px, 1.08fr);
  gap: 56px;
  align-items: center;
  padding: 48px 0 12px;
  overflow: hidden;
}
.ls-hero h1{
  font-size: clamp(2.35rem, 3.5vw, 4rem);
}
.ls-hero h1 br{ display: none; }
.ls-hero-actions{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 18px;
  margin-top: 28px;
}
.ls-hero-actions .btnPrimary{
  height: 46px;
  padding: 0 18px;
  border-radius: 999px;
}
html:not([data-ui="liquid-glass"]) body.landing-studio .ls a.btn:not(.btnPrimary):not(.btnDanger):not(.btnExcel):not(.btnPdf),
html:not([data-ui="liquid-glass"])[data-theme="light"] body.landing-studio .ls a.btn:not(.btnPrimary):not(.btnDanger):not(.btnExcel):not(.btnPdf){
  height: 46px;
  padding: 0 16px;
  border-radius: 999px;
  background: transparent;
  color: hsl(var(--text));
  border: 1px solid hsl(var(--border));
  box-shadow: none;
}
html:not([data-ui="liquid-glass"]) body.landing-studio .ls a.btn:not(.btnPrimary):not(.btnDanger):not(.btnExcel):not(.btnPdf):hover,
html:not([data-ui="liquid-glass"])[data-theme="light"] body.landing-studio .ls a.btn:not(.btnPrimary):not(.btnDanger):not(.btnExcel):not(.btnPdf):hover{
  background: hsl(var(--blue) / 0.08);
  border-color: hsl(var(--blue) / 0.45);
  color: hsl(var(--text));
  box-shadow: none;
  filter: none;
}
.ls-fine{
  margin: 18px 0 0;
  color: hsl(var(--muted2));
  font-size: 13px;
  line-height: 1.45;
}

/* Product stage */
.ls-stage{
  position: relative;
  margin: 0;
  isolation: isolate;
}
.ls-stage::before{
  content: "";
  position: absolute;
  z-index: 0;
  left: 8%;
  top: 6%;
  width: 84%;
  height: 78%;
  background: radial-gradient(closest-side, hsl(var(--blue) / 0.2), transparent 72%);
  pointer-events: none;
}
[data-theme="light"] .ls-stage::before{
  background: radial-gradient(closest-side, hsl(var(--blue) / 0.14), transparent 70%);
}
.ls-stage-main{
  position: relative;
  z-index: 1;
  border: 1px solid var(--lx-line);
  border-radius: 22px;
  background: var(--lx-surface);
  box-shadow: 0 30px 70px hsl(var(--shadow) / 0.16);
  overflow: hidden;
}
[data-theme="light"] .ls-stage-main{
  background: #fff;
  box-shadow: 0 18px 40px hsl(215 30% 20% / 0.07);
}
.ls-floats{
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 12px;
}
.ls-float{
  width: 168px;
  padding: 11px 13px 12px;
  border-radius: 14px;
  border: 1px solid var(--lx-line);
  background: hsl(var(--panel));
  box-shadow: 0 14px 34px hsl(var(--shadow) / 0.16);
}
[data-theme="light"] .ls-float{
  background: #fff;
  box-shadow: 0 10px 24px hsl(215 30% 20% / 0.08);
}
.ls-float small{
  display: block;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: hsl(var(--muted2));
}
.ls-float strong{
  display: block;
  margin-top: 4px;
  font-size: 14px;
  letter-spacing: -0.03em;
}
.ls-stage-split{
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  align-items: stretch;
}
.ls-stage-focus{
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 0;
  padding: 22px 22px 20px;
  border-right: 1px solid var(--lx-line);
  background: hsl(var(--bg) / 0.35);
}
.ls-stage-tag{
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: hsl(var(--muted2));
}
.ls-stage-k{
  display: block;
  margin-top: 28px;
  font-size: 12px;
  color: var(--lx-muted);
}
.ls-stage-num{
  display: block;
  margin-top: 6px;
  font-size: clamp(2.4rem, 3.4vw, 3.4rem);
  letter-spacing: -0.05em;
  line-height: 0.95;
  font-weight: 700;
}
.ls-stage-focus em{
  display: block;
  margin-top: 8px;
  font-style: normal;
  font-size: 13px;
  color: hsl(var(--muted2));
}
.ls-stage-facts{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin: 22px 0 0;
}
.ls-stage-facts div{
  padding-top: 10px;
  border-top: 1px solid var(--lx-line);
}
.ls-stage-facts dt{
  font-size: 11px;
  color: var(--lx-muted);
}
.ls-stage-facts dd{
  margin: 4px 0 0;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: -0.03em;
}
.ls-stage-facts .is-alert dd{ color: hsl(28 80% 48%); }
[data-theme="light"] .ls-stage-facts .is-alert dd{ color: hsl(20 75% 38%); }
.ls-viz{
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
}
.ls-viz-head{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px 0;
}
.ls-viz-head span{
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: hsl(var(--muted2));
}
.ls-viz-head b{
  font-size: 12px;
  font-weight: 600;
  color: var(--lx-muted);
}
.ls-bars{
  flex: 1 1 auto;
  display: flex;
  align-items: stretch;
  gap: 8px;
  min-height: 0;
  margin: 10px 16px 0;
  padding-top: 4px;
}
.ls-bars > span{
  flex: 1;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  min-width: 0;
  height: 100%;
}
.ls-bars i{
  align-self: end;
  height: var(--h);
  border-radius: 6px 6px 3px 3px;
  background: hsl(var(--text) / 0.16);
}
.ls-bars b{
  margin-top: 6px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-align: center;
  color: hsl(var(--muted2));
}
.ls-bars .is-soft i{ background: hsl(28 80% 48% / 0.8); }
.ls-bars .is-now i{
  background: linear-gradient(180deg, hsl(var(--blue)), hsl(var(--blue) / 0.72));
  box-shadow: 0 8px 16px hsl(var(--blue) / 0.28);
}
.ls-bars .is-now b{ color: hsl(var(--blue)); }
.ls-viz .ls-sheet{ margin-top: auto; }
.ls-viz .ls-sheet td{
  padding: 8px 16px;
  font-size: 13px;
}
.ls-viz .ls-sheet td.is-up{
  color: hsl(var(--green));
  font-weight: 700;
}
.ls-stage-main .ls-sheet th,
.ls-stage-main .ls-sheet td{
  padding: 13px 18px;
}
.ls-ui-label{
  display: block;
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--lx-muted);
}
.ls-sheet{
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.ls-sheet th,
.ls-sheet td{
  padding: 10px 16px;
  text-align: left;
  border-top: 1px solid var(--lx-line);
  font-weight: 500;
}
.ls-sheet th{
  font-size: 11px;
  font-weight: 600;
  color: hsl(var(--muted2));
  letter-spacing: 0.04em;
}
.ls-sheet td:last-child,
.ls-sheet th:last-child{ text-align: right; }
.ls-sheet tr.ls-low td:last-child{ color: hsl(28 80% 48%); font-weight: 700; }
[data-theme="light"] .ls-sheet tr.ls-low td:last-child{ color: hsl(20 75% 38%); }
.ls-stage-caption{
  caption-side: bottom;
  padding: 8px 16px 12px;
  text-align: left;
  font-size: 12px;
  color: hsl(var(--muted2));
}
.ls-plan-name{
  margin: 0;
  font-size: 1.25rem;
  letter-spacing: -0.03em;
}
.ls-api{ margin-top: 14px; }
.ls-faq-list{
  margin-top: 8px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 48px;
}
.ls-stage figcaption{
  margin: 10px 2px 0;
  font-size: 12px;
  color: hsl(var(--muted2));
}

/* Rail */
.ls-rail{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}
.ls-rail li{
  padding: 4px 32px 0 0;
}
.ls-rail li + li{
  padding-left: 32px;
  border-left: 1px solid var(--lx-line);
}
.ls-rail strong{
  display: block;
  margin-bottom: 8px;
  font-size: 1.65rem;
  letter-spacing: -0.04em;
  font-weight: 700;
}
.ls-rail span{
  color: var(--lx-muted);
  font-size: 15px;
  line-height: 1.5;
}

/* Journeys */
.ls-journey{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 48px;
  align-items: center;
  padding-top: 72px;
}
.ls-journey--flip .ls-journey-copy{ order: 2; }
.ls-journey h3{
  margin: 0 0 10px;
  font-size: clamp(1.45rem, 2vw, 1.85rem);
  letter-spacing: -0.035em;
  line-height: 1.15;
}
.ls-journey p{
  margin: 0;
  color: var(--lx-muted);
  font-size: 16px;
  line-height: 1.55;
  text-wrap: pretty;
}
.ls-journey a{
  color: hsl(var(--blue));
  font-weight: 600;
}
.ls-more{
  display: inline-block;
  margin-top: 16px;
  color: hsl(var(--text));
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid hsl(var(--text) / 0.35);
}
.ls-more:hover{ border-bottom-color: hsl(var(--blue)); color: hsl(var(--blue)); }

.ls-ui{
  border: 1px solid var(--lx-line);
  border-radius: 16px;
  background: var(--lx-surface);
  overflow: hidden;
}
.ls-ui-pad{ padding: 16px 18px 18px; }
.ls-pdv{
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 0;
  border-top: 1px solid var(--lx-line);
  font-size: 14px;
}
.ls-pdv b{ font-variant-numeric: tabular-nums; }
.ls-money{
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.ls-money div{ padding: 18px; }
.ls-money div + div{ border-left: 1px solid var(--lx-line); }
.ls-money strong{
  display: block;
  margin-top: 8px;
  font-size: 1.35rem;
  letter-spacing: -0.04em;
}
#campo{ align-items: stretch; }
.ls-route-top{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px 14px;
}
.ls-route-top strong{
  display: block;
  margin-top: 4px;
  font-size: 1.35rem;
  letter-spacing: -0.03em;
}
.ls-route-top > b{
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: hsl(var(--blue));
}
.ls-route-stats{
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  border-top: 1px solid var(--lx-line);
}
.ls-route-stats div{
  padding: 14px 16px 12px;
}
.ls-route-stats div + div{ border-left: 1px solid var(--lx-line); }
.ls-route-stats span,
.ls-route-stats small{
  display: block;
  color: var(--lx-muted);
  font-size: 12px;
}
.ls-route-stats strong{
  display: block;
  margin: 4px 0 2px;
  font-size: 1.15rem;
  letter-spacing: -0.03em;
  font-variant-numeric: tabular-nums;
}
.ls-route-stats .is-late strong{ color: hsl(28 80% 48%); }
[data-theme="light"] .ls-route-stats .is-late strong{ color: hsl(20 75% 38%); }
.ls-route-list{
  flex: 1;
  display: flex;
  flex-direction: column;
  border-top: 1px solid var(--lx-line);
}
.ls-route-row{
  flex: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 16px;
  min-height: 58px;
  padding: 10px 18px;
  border-top: 1px solid var(--lx-line);
  font-size: 14px;
}
.ls-route-row:first-child{ border-top: 0; }
.ls-route-row span{ color: var(--lx-ink); }
.ls-route-row small{
  display: block;
  margin-top: 2px;
  color: var(--lx-muted);
  font-size: 12px;
}
.ls-route-row b{
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--lx-muted);
}
.ls-route-row > strong{
  font-variant-numeric: tabular-nums;
  font-size: 14px;
}
.ls-route-row.is-late b{ color: hsl(28 80% 48%); }
[data-theme="light"] .ls-route-row.is-late b{ color: hsl(20 75% 38%); }
.ls-route-row.is-done b{ color: hsl(var(--green)); }
.ls-stores{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
}
.ls-stores a{
  display: block;
  line-height: 0;
  border-radius: 7px;
}
.ls-stores a:hover{ opacity: 0.92; }
.ls-stores img{ display: block; height: 40px; width: auto; }

.ls-journey--stock .ls-ui{
  border: 0;
  border-radius: 0;
  background: transparent;
  border-top: 1px solid var(--lx-line);
  border-bottom: 1px solid var(--lx-line);
}
.ls-ui--tape{
  background: hsl(var(--text));
  color: hsl(var(--bg));
  border-color: transparent;
}
.ls-ui--tape .ls-ui-label,
.ls-ui--tape .ls-pdv span{
  color: hsl(var(--bg) / 0.62);
}
.ls-ui--tape .ls-pdv{
  border-top-color: hsl(var(--bg) / 0.16);
}
.ls-ui--tape .ls-pdv b{ color: hsl(var(--bg)); }
.ls-ui--figures{
  border: 0;
  background: transparent;
  border-radius: 0;
  overflow: visible;
}
.ls-ui--figures .ls-money strong{
  font-size: clamp(1.8rem, 2.6vw, 2.5rem);
}
.ls-ui--figures .ls-ui-pad{ padding-left: 0; padding-right: 0; }
.ls-ui--route{
  display: flex;
  flex-direction: column;
  height: 100%;
  background: transparent;
}
.ls-roles{
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}
.ls-roles li{
  color: var(--lx-muted);
  font-size: 14px;
  line-height: 1.45;
}
.ls-roles strong{ color: var(--lx-ink); font-weight: 600; }

/* Intelligence */
.ls-intel{
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
  gap: 48px;
  align-items: center;
  margin: 96px -16px 0;
  padding: 56px 16px 52px;
  border-radius: 0;
  border: 0;
  border-top: 1px solid var(--lx-line);
  border-bottom: 1px solid var(--lx-line);
  background: hsl(var(--panel) / 0.45);
}
[data-theme="light"] .ls-intel{ background: hsl(210 20% 96%); }
.ls-intel .ls-h{ font-size: clamp(1.55rem, 2vw, 2rem); max-width: 18em; }
.ls-points{
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 16px;
}
.ls-points strong{ display: block; font-size: 14.5px; margin-bottom: 2px; }
.ls-points span{ color: var(--lx-muted); font-size: 14.5px; line-height: 1.45; }
.ls-note{
  margin: 18px 0 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--lx-muted);
}
.ls-note a{ color: hsl(var(--blue)); }
.ls-chat{
  border: 1px solid var(--lx-line);
  border-radius: 22px;
  background: var(--lx-surface);
  box-shadow: 0 24px 60px hsl(var(--shadow) / 0.14);
  overflow: hidden;
}
[data-theme="light"] .ls-chat{
  background: #fff;
  box-shadow: 0 18px 40px hsl(215 30% 20% / 0.07);
}
.ls-chat-top{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--lx-line);
}
.ls-chat-top strong{
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -0.02em;
}
.ls-chat-top span{
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: hsl(var(--muted2));
}
.ls-chat-thread{
  display: grid;
  gap: 12px;
  padding: 16px;
}
.ls-bubble{
  max-width: 92%;
  padding: 10px 12px;
  border-radius: 16px;
  font-size: 14px;
  line-height: 1.45;
}
.ls-bubble small{
  display: block;
  margin-bottom: 3px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: hsl(var(--muted2));
}
.ls-bubble--user{
  justify-self: end;
  border-bottom-right-radius: 6px;
  background: hsl(var(--blue) / 0.16);
}
.ls-bubble--user small{ color: hsl(var(--blue)); }
.ls-bubble--ai{
  justify-self: start;
  border: 1px solid var(--lx-line);
  border-bottom-left-radius: 6px;
  background: hsl(var(--panel) / 0.55);
}
[data-theme="light"] .ls-bubble--ai{ background: hsl(210 20% 97%); }
.ls-chat-compose{
  margin: 0 16px 16px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid var(--lx-line);
  color: hsl(var(--muted2));
  font-size: 13.5px;
}

.ls-services{
  margin-top: 88px;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 28px 48px;
  align-items: start;
}
.ls-services h2{
  margin: 0;
  font-size: clamp(1.5rem, 2.2vw, 2.15rem);
  letter-spacing: -0.035em;
  line-height: 1.15;
}
.ls-services .ls-lead{ margin-top: 12px; }
.ls-services-list{
  margin: 0;
  padding: 0;
  list-style: none;
}
.ls-services-list li{
  padding: 14px 0;
  border-top: 1px solid var(--lx-line);
}
.ls-services-list li:first-child{ border-top: 0; padding-top: 0; }
.ls-services-list strong{ display: block; margin-bottom: 4px; }
.ls-services-list span{ color: var(--lx-muted); font-size: 14.5px; line-height: 1.45; }
.ls-services-note{
  grid-column: 1 / -1;
  margin: 8px 0 0;
  color: var(--lx-muted);
  font-size: 14px;
  line-height: 1.5;
}
.ls-services-note code{
  font-size: 0.92em;
}
.ls-also{
  margin-top: 72px;
  padding-top: 28px;
  border-top: 1px solid var(--lx-line);
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  gap: 12px 48px;
  align-items: start;
}
.ls-also h2{
  margin: 0;
  grid-column: 1;
  grid-row: 1;
  font-size: clamp(1.35rem, 2vw, 1.7rem);
  letter-spacing: -0.03em;
  line-height: 1.2;
}
.ls-also p{ margin: 0; color: var(--lx-muted); line-height: 1.55; text-wrap: pretty; }
.ls-also > p:not(.ls-api){ grid-column: 1; grid-row: 2; }
.ls-also .ls-api{
  grid-column: 2;
  grid-row: 1 / span 2;
  margin-top: 0;
  align-self: end;
}
.ls-fiscal{
  margin-top: 72px;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 36px;
  align-items: start;
}
.ls-fiscal h2{
  margin: 0;
  font-size: clamp(1.5rem, 2.2vw, 2.15rem);
  letter-spacing: -0.035em;
  line-height: 1.15;
}
.ls-fiscal .ls-lead{ margin-top: 12px; }
.ls-fiscal-packs{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 18px;
}
.ls-fiscal-pack{
  min-width: 0;
  padding: 12px 10px 11px;
  border: 1px solid var(--lx-line);
  border-radius: 12px;
}
.ls-fiscal-pack strong{
  display: block;
  margin-top: 6px;
  font-size: 1.05rem;
  letter-spacing: -0.03em;
  font-variant-numeric: tabular-nums;
}
.ls-fiscal-pack strong span{
  margin-left: 2px;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0;
  color: var(--lx-muted);
}
.ls-fiscal-pack small{
  display: block;
  margin-top: 4px;
  color: var(--lx-muted);
  font-size: 12px;
  line-height: 1.35;
}
@media (max-width: 640px){
  .ls-fiscal-packs{ grid-template-columns: 1fr; }
  .ls-fiscal-pack{
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 12px;
    align-items: baseline;
    padding: 10px 12px;
  }
  .ls-fiscal-pack .ls-ui-label{ grid-column: 1; }
  .ls-fiscal-pack strong{
    grid-column: 2;
    grid-row: 1;
    margin-top: 0;
    text-align: right;
  }
  .ls-fiscal-pack small{ grid-column: 1 / -1; }
}
.ls-fiscal-list{ margin: 0; padding: 0; list-style: none; }
.ls-fiscal-list li{
  padding: 14px 0;
  border-top: 1px solid var(--lx-line);
}
.ls-fiscal-list li:first-child{ border-top: 0; padding-top: 0; }
.ls-fiscal-list strong{ display: block; margin-bottom: 4px; }
.ls-fiscal-list span{ color: var(--lx-muted); font-size: 14.5px; line-height: 1.45; }
.ls-fiscal-note{
  grid-column: 1 / -1;
  margin: 0;
  color: var(--lx-muted);
  font-size: 14px;
  line-height: 1.5;
}
.ls-fiscal-note strong{ color: var(--lx-ink); }

/* Plans */
.ls-plans .ls-h{ max-width: none; }
.ls-trial,
.ls-plans .landingFiscalPlanCallout{
  margin-top: 16px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--lx-muted);
  font-size: 15px;
  line-height: 1.5;
}
.ls-trial p{ margin: 0; }
.ls-trial strong,
.ls-plans .landingFiscalPlanCallout strong{ color: var(--lx-ink); }
.ls-plans .ls-plan-grid + .landingFiscalPlanCallout{ margin-top: 28px; }
.ls-plan-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 22px;
  align-items: stretch;
}
.ls-plan{
  display: flex;
  flex-direction: column;
  padding: 26px 22px 22px;
  border-radius: 20px;
  border: 1px solid var(--lx-line);
  background: transparent;
  overflow: hidden;
  transition: border-color 0.15s ease;
}
.ls-plan:hover{ border-color: hsl(var(--text) / 0.28); }
.ls-plan--pick{
  background: hsl(var(--blue) / 0.08);
  border-color: hsl(var(--blue) / 0.65);
  box-shadow: none;
}
.ls-plan--pick:hover{ border-color: hsl(var(--blue)); }
body.landing-studio .plansGridSaaS .planCardFeatured{
  transform: none;
  box-shadow: none;
}
.ls-plan--pick{ overflow: visible; }
.ls-recommend{
  position: absolute;
  top: -12px;
  left: 50%;
  z-index: 1;
  transform: translateX(-50%);
  margin: 0;
  padding: 5px 14px;
  border-radius: 999px;
  background: linear-gradient(135deg, hsl(var(--green)), hsl(var(--green) / 0.85));
  box-shadow: 0 4px 12px hsl(var(--green) / 0.3);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.2;
  white-space: nowrap;
}
.ls-plan .ls-plan-name{ order: 1; }
.ls-plan .planPrice{
  order: 2;
  margin: 12px 0 0;
  font-size: clamp(2.5rem, 3vw, 3.1rem);
  font-weight: 700;
  letter-spacing: -0.05em;
  line-height: 1;
}
.ls-plan--pick .planPrice{ color: hsl(var(--blue)); }
.ls-plan .planPeriod{
  margin-left: 2px;
  font-size: 0.95rem;
  font-weight: 500;
  letter-spacing: 0;
  color: var(--lx-muted);
}
.ls-plan .planTierTagline{
  order: 3;
  min-height: 0;
  margin: 10px 0 0;
}
.ls-plan .planSeatRow{ order: 4; }
.ls-plan-points{ order: 5; }
.ls-plan .planCta{ order: 6; }
.ls-plan-points{
  margin: 14px 0 18px;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
  color: var(--lx-muted);
  font-size: 14px;
  line-height: 1.4;
}
.ls-plan-points li{
  padding-left: 14px;
  position: relative;
}
.ls-plan-points li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: hsl(var(--blue));
}
.ls-plan-points li:first-child{
  color: var(--lx-ink);
  font-weight: 600;
}
.ls-plan-points li:first-child::before{ background: hsl(var(--text)); }
.ls-plan .planCta{
  margin-top: auto;
  width: 100%;
  border-radius: 999px;
}
.ls-compare{
  margin-top: 28px;
  border-top: 1px solid var(--lx-line);
}
.ls-compare summary{
  cursor: pointer;
  list-style: none;
  padding: 16px 0;
  font-weight: 600;
  letter-spacing: -0.02em;
}
.ls-compare summary::-webkit-details-marker{ display: none; }
.ls-compare summary::after{
  content: "+";
  float: right;
  color: hsl(var(--muted2));
  font-weight: 500;
}
.ls-compare[open] summary::after{ content: "–"; }
.ls-compare .planCompareTitle{ margin: 8px 0 10px; font-size: 14px; }
.ls-compare .planTableWrap{
  border-radius: 12px;
  overflow: auto;
  border: 1px solid var(--lx-line);
  margin-bottom: 18px;
}
.ls-compare .landingSlaCompareTitle{ margin-top: 8px; }

/* FAQ */
.ls-faq details{
  border-top: 1px solid var(--lx-line);
}
.ls-faq details:last-child{ border-bottom: 1px solid var(--lx-line); }
.ls-faq summary{
  cursor: pointer;
  list-style: none;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 0;
  font-weight: 600;
  letter-spacing: -0.02em;
}
.ls-faq summary::-webkit-details-marker{ display: none; }
.ls-faq summary::after{
  content: "+";
  color: hsl(var(--muted2));
  font-weight: 500;
}
.ls-faq details[open] summary::after{ content: "–"; }
.ls-faq details p{
  margin: 0 0 16px;
  color: var(--lx-muted);
  font-size: 15px;
  line-height: 1.55;
  text-wrap: pretty;
}

/* SEO */
.ls-seo{
  margin-top: 72px;
  padding-top: 28px;
  border-top: 1px solid var(--lx-line);
}
.ls-seo .sectionTitle{
  font-size: clamp(1.35rem, 2vw, 1.85rem);
  letter-spacing: -0.03em;
  line-height: 1.2;
}
.ls-seo .landingToc{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 16px 0 0;
  padding: 0;
  background: transparent;
  border: 0;
}
.ls-seo .landingTocLabel{
  width: 100%;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: hsl(var(--muted2));
}
.ls-seo .landingToc a{
  text-decoration: none;
  font-size: 13px;
  color: var(--lx-muted);
  border-bottom: 1px solid transparent;
}
.ls-seo .landingToc a:hover{ color: hsl(var(--text)); border-bottom-color: hsl(var(--blue)); }
.ls-seo .landingSeoArticle{
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 8px 0 0;
  columns: 2;
  column-gap: 56px;
}
.ls-seo .landingSeoH3{
  margin: 26px 0 8px;
  font-size: 1.05rem;
  letter-spacing: -0.02em;
  break-after: avoid;
}
.ls-seo .landingSeoArticle p{
  margin: 0 0 4px;
  color: var(--lx-muted);
  font-size: 15px;
  line-height: 1.65;
  break-inside: avoid;
  text-wrap: pretty;
}
.ls-seo .landingSeoArticle a{ color: hsl(var(--blue)); }
.ls-seo .landingSeoLinks{
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-top: 20px;
  font-size: 14px;
  column-span: all;
}
.ls-seo .landingSeoLinksLabel{ color: hsl(var(--muted2)); }

/* Close */
.ls-close{
  margin-top: 72px;
  padding: 36px 0 8px;
  border-top: 1px solid var(--lx-line);
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
}
.ls-close h2{
  margin: 0 0 8px;
  font-size: clamp(1.7rem, 2.4vw, 2.5rem);
  letter-spacing: -0.04em;
  line-height: 1.12;
}
.ls-close p{ margin: 0; color: var(--lx-muted); text-wrap: pretty; }
.ls-close > div:first-child{ flex: 1; min-width: 0; }
.ls-close-actions{ display: flex; flex-wrap: wrap; gap: 10px; }
.ls-close-actions .btn{ border-radius: 999px; height: 46px; }
.ls-foot{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 16px 28px;
  margin-top: 36px;
  padding-top: 18px;
  border-top: 1px solid var(--lx-line);
  color: hsl(var(--muted2));
  font-size: 13px;
}
.ls-foot nav{
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
}
.ls-foot a{
  color: var(--lx-muted);
  text-decoration: none;
}
.ls-foot a:hover{ color: hsl(var(--text)); }

@keyframes ls-in{
  from{ transform: translateY(10px); }
  to{ transform: none; }
}
@keyframes ls-stage-in{
  from{ opacity: 0; transform: translateY(16px) scale(0.985); }
  to{ opacity: 1; transform: none; }
}
@keyframes ls-bar{
  from{ transform: scaleY(0.2); }
  to{ transform: scaleY(1); }
}
html.ls-motion .ls-bars i{
  transform-origin: bottom;
  animation: ls-bar 0.7s cubic-bezier(.2,.7,.2,1) both;
}
html.ls-motion .ls-bars > span:nth-child(2) i{ animation-delay: 0.04s; }
html.ls-motion .ls-bars > span:nth-child(3) i{ animation-delay: 0.08s; }
html.ls-motion .ls-bars > span:nth-child(4) i{ animation-delay: 0.12s; }
html.ls-motion .ls-bars > span:nth-child(5) i{ animation-delay: 0.16s; }
html.ls-motion .ls-bars > span:nth-child(6) i{ animation-delay: 0.2s; }
html.ls-motion .ls-bars > span:nth-child(7) i{ animation-delay: 0.24s; }
html.ls-motion .ls-bubble{
  animation: ls-in 0.55s cubic-bezier(.2,.7,.2,1) both;
}
html.ls-motion .ls-chat-thread .ls-bubble:nth-child(2){ animation-delay: 0.12s; }
html.ls-motion .ls-chat-thread .ls-bubble:nth-child(3){ animation-delay: 0.24s; }
html.ls-motion .ls-chat-thread .ls-bubble:nth-child(4){ animation-delay: 0.36s; }
@keyframes ls-drift{
  0%, 100%{ transform: translateY(0); }
  50%{ transform: translateY(-6px); }
}
html.ls-motion .ls-hero-copy > *{
  animation: ls-in 0.55s cubic-bezier(.2,.7,.2,1) both;
}
html.ls-motion .ls-hero-copy > *:nth-child(2){ animation-delay: 0.05s; }
html.ls-motion .ls-hero-copy > *:nth-child(3){ animation-delay: 0.1s; }
html.ls-motion .ls-hero-copy > *:nth-child(4){ animation-delay: 0.14s; }
html.ls-motion .ls-hero-copy > *:nth-child(5){ animation-delay: 0.18s; }
html.ls-motion .ls-stage-main{
  animation: ls-stage-in 0.7s cubic-bezier(.2,.7,.2,1) both;
}
html.ls-motion .ls-float--pdv{
  animation: ls-drift 7s ease-in-out 1.1s infinite;
}
html.ls-reveal [data-ls-reveal]{
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.6s ease, transform 0.6s cubic-bezier(.2,.7,.2,1);
}
html.ls-reveal [data-ls-reveal].is-in{
  opacity: 1;
  transform: none;
}
html.ls-reveal [data-ls-d="1"]{ transition-delay: 0.08s; }
html.ls-reveal [data-ls-d="2"]{ transition-delay: 0.16s; }
body.landing-studio .topbar{
  transition: background-color 0.25s ease, box-shadow 0.25s ease;
}
html.is-scrolled body.landing-studio .topbar{
  background: hsl(var(--bg) / 0.92);
  box-shadow: 0 8px 24px hsl(var(--shadow) / 0.1);
}
html.ls-theme body.landing-studio,
html.ls-theme body.landing-studio .topbar,
html.ls-theme body.landing-studio .ls-stage-main,
html.ls-theme body.landing-studio .ls-float,
html.ls-theme body.landing-studio .ls-plan,
html.ls-theme body.landing-studio .ls-intel{
  transition: background-color 0.35s ease, color 0.35s ease, border-color 0.35s ease;
}
@media (hover: hover) and (pointer: fine){
  body.landing-studio .ls .btn{
    transition: transform 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
  }
  body.landing-studio .ls .btn:hover{ transform: translateY(-1px); }
  body.landing-studio .ls .btn:active{ transform: translateY(0) scale(0.98); }
  body.landing-studio .ls-plan{
    transition: border-color 0.18s ease, transform 0.18s ease, background-color 0.18s ease;
  }
  body.landing-studio .ls-plan:hover{ transform: translateY(-3px); }
}
@media (prefers-reduced-motion: reduce){
  html.ls-motion .ls-hero-copy > *,
  html.ls-motion .ls-stage-main,
  html.ls-motion .ls-float--pdv,
  html.ls-motion .ls-bars i,
  html.ls-motion .ls-bubble,
  html.ls-reveal [data-ls-reveal]{
    animation: none;
    opacity: 1;
    transform: none;
    transition: none;
  }
  body.landing-studio .ls .btn,
  body.landing-studio .ls-plan,
  body.landing-studio .ls-plan:hover,
  body.landing-studio .topbar{
    transition: none;
    transform: none;
  }
}

@media (max-width: 900px){
  .ls-hero h1 br{ display: inline; }
  .ls-hero,
  .ls-journey,
  .ls-journey--flip,
  .ls-intel,
  .ls-services,
  .ls-fiscal,
  .ls-plan-grid,
  .ls-also{
    grid-template-columns: 1fr;
  }
  .ls-seo .landingSeoArticle{ columns: 1; }
  .ls-also .ls-api,
  .ls-also > p:not(.ls-api),
  .ls-also h2{
    grid-column: auto;
    grid-row: auto;
  }
  .ls-also .ls-api{ align-self: auto; margin-top: 14px; }
  .ls-journey--flip .ls-journey-copy{ order: 0; }
  .ls-hero{ gap: 28px; align-items: start; padding-top: 28px; }
  .ls-floats{ display: grid; grid-template-columns: 1fr 1fr; }
  .ls-float{ width: auto; }
  .ls-hero-actions .btn{ min-height: 48px; }
  .ls-plan .planCta{ min-height: 48px; }
  html:not(.is-past-hero) body.landing-studio .landingWhatsappFab{
    opacity: 0;
    visibility: hidden;
  }
  .ls-stage-split,
  .ls-faq-list{
    grid-template-columns: 1fr;
  }
  .ls-stage-focus{
    border-right: 0;
    border-bottom: 1px solid var(--lx-line);
  }
  .ls-bars{
    flex: none;
    height: 84px;
  }
  .ls-rail li,
  .ls-rail li + li{
    padding: 0;
    border-left: 0;
  }
  .ls-rail li + li{
    padding-top: 16px;
    border-top: 1px solid var(--lx-line);
  }
  .ls-rail{ grid-template-columns: 1fr; gap: 0; }
  .ls-section{ padding-top: 64px; }
  .ls-close{ flex-direction: column; align-items: flex-start; }
  .ls-intel{
    margin: 64px -16px 0;
    padding: 36px 16px;
  }
}
@media (max-width: 900px) and (prefers-reduced-motion: reduce){
  html body.landing-studio .landingWhatsappFab{
    opacity: 1;
    visibility: visible;
  }
}
