/* Public landing: independent from the legacy and legal page themes. */
:root {
  --ink:#182e2a;
  --muted:#61716a;
  --green:#075e50;
  --paper:#f8f9f5;
  --line:#dce3da;
  --radius:18px
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:104px
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:"Segoe UI",Arial,sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased
}
button,input,select {
  font:inherit
}
a {
  color:inherit;
  text-decoration:none
}
button {
  cursor:pointer
}
img {
  display:block;
  max-width:100%
}
p,h1,h2,h3,figure {
  margin:0
}
h1,h2,h3 {
  line-height:1.12;
  letter-spacing:-.045em
}
h1 {
  font-size:clamp(3.1rem,4.9vw,4.6rem);
  font-weight:650
}
h2 {
  font-size:clamp(2rem,3.15vw,3rem);
  font-weight:620
}
h3 {
  font-size:1.18rem;
  font-weight:650
}
em {
  color:var(--green);
  font-style:normal
}
:focus-visible {
  outline:3px solid #bc7222;
  outline-offset:4px
}
.section-shell {
  width:min(1200px,calc(100% - 96px));
  margin-inline:auto
}
.skip-link {
  position:fixed;
  top:-100px;
  left:16px;
  z-index:100;
  padding:12px 20px;
  background:var(--green);
  color:#fff;
  border-radius:8px
}
.skip-link:focus {
  top:12px
}
.eyebrow {
  font-size:.68rem;
  letter-spacing:.15em;
  font-weight:750;
  color:var(--green);
  margin-bottom:18px;
  text-transform:uppercase
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  min-height:48px;
  padding:13px 22px;
  border:1px solid transparent;
  border-radius:8px;
  font-size:.86rem;
  font-weight:650;
  line-height:1.3;
  transition:background .18s,transform .18s,box-shadow .18s
}
.button:hover {
  transform:translateY(-2px)
}
.button span {
  font-size:1.15rem
}
.button-primary {
  color:#fff;
  background:var(--green);
  box-shadow:0 3px 0 #042e2710
}
.button-primary:hover {
  background:#064b40;
  box-shadow:0 6px 16px #075e5020
}
.button-secondary {
  color:var(--ink);
  background:transparent;
  border-color:#c7d1c6
}
.button-secondary:hover {
  background:#edf1e9
}
.button:disabled {
  opacity:.65;
  cursor:wait;
  transform:none
}
.text-link {
  display:inline-flex;
  gap:18px;
  align-items:center;
  color:var(--green);
  font-size:.87rem;
  font-weight:650;
  text-decoration:underline;
  text-underline-offset:5px
}
.status-dot {
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#14745c;
  flex-shrink:0
}
.site-header {
  position:sticky;
  top:0;
  z-index:40;
  background:#f8f9f5f5;
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(12px)
}
.header-inner {
  width:min(1320px,calc(100% - 64px));
  height:84px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px
}
.brand {
  display:flex;
  align-items:center;
  gap:9px
}
.brand>span {
  font-size:1.55rem;
  font-weight:800;
  letter-spacing:-.06em;
  line-height:1
}
.brand i {
  display:block;
  font-size:.55rem;
  font-style:normal;
  letter-spacing:.24em;
  margin-top:5px
}
.main-nav {
  display:flex;
  align-items:center;
  gap:27px;
  font-size:.81rem;
  font-weight:550
}
.main-nav>a:not(.button) {
  padding:12px 0
}
.main-nav>a:not(.button):hover {
  color:var(--green);
  text-decoration:underline;
  text-underline-offset:6px
}
.main-nav .nav-login {
  border-left:1px solid var(--line);
  padding-left:27px
}
.nav-cta {
  min-height:42px;
  padding:10px 17px
}
.menu-toggle {
  display:none
}
.product-hero {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:50px;
  align-items:center;
  padding-block:76px;
  min-height:710px
}
.hero-tag {
  display:inline-flex;
  align-items:center;
  gap:9px;
  font-size:.6rem;
  font-weight:750;
  letter-spacing:.11em;
  margin-bottom:25px;
  padding:7px 10px;
  border:1px solid #d9e4d8;
  border-radius:5px;
  background:#eef2e9
}
.hero-copy h1 {
  max-width:580px
}
.hero-copy h1 em {
  display:block
}
.hero-text {
  max-width:435px;
  margin-top:26px;
  font-size:1.03rem;
  color:var(--muted);
  line-height:1.8
}
.hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:30px
}
.hero-proof {
  display:flex;
  gap:21px;
  margin-top:24px;
  font-size:.69rem;
  color:var(--muted)
}
.hero-proof b {
  color:var(--green);
  margin-right:4px
}
.hero-visual {
  position:relative;
  padding:30px 24px 32px;
  border-radius:26px;
  background:#e7ecdf;
  background-image:radial-gradient(ellipse at 100% 0,#f4dfc3 0,transparent 65%)
}
.visual-note {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:.68rem;
  color:#546250;
  margin-bottom:22px
}
.visual-note>span {
  font-size:1.3rem;
  color:var(--green)
}
.dashboard-demo {
  position:relative;
  background:#fff;
  border:1px solid #dae1d5;
  border-radius:12px;
  box-shadow:0 14px 35px #253c2910;
  overflow:hidden;
  transform:rotate(-1deg)
}
.dashboard-bar {
  display:flex;
  align-items:center;
  gap:18px;
  height:48px;
  padding:0 19px;
  border-bottom:1px solid #e9ede7;
  font-size:.67rem;
  color:var(--muted)
}
.mini-brand {
  font-weight:850;
  font-size:1.05rem;
  letter-spacing:-.05em;
  color:var(--green);
  padding-right:17px;
  border-right:1px solid var(--line)
}
.demo-avatar {
  margin-left:auto;
  display:grid;
  place-items:center;
  background:#f1e5d4;
  border-radius:50%;
  width:25px;
  height:25px;
  font-size:.55rem;
  color:#7c5d3c
}
.dashboard-body {
  padding:23px
}
.dashboard-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:19px
}
.dashboard-heading p {
  font-size:.47rem;
  letter-spacing:.11em;
  color:var(--muted);
  margin-bottom:7px
}
.dashboard-heading h2 {
  font-size:1.45rem;
  font-weight:650
}
.today-pill {
  border:1px solid var(--line);
  padding:4px 9px;
  border-radius:5px;
  font-size:.61rem
}
.metric-grid {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:10px
}
.metric {
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:16px 14px;
  background:#f4f6f0;
  border-radius:8px;
  font-size:.65rem
}
.metric>strong {
  font-size:1.65rem;
  letter-spacing:-.055em;
  line-height:1.3
}
.metric strong>span {
  font-size:.63rem;
  font-weight:450;
  letter-spacing:0
}
.primary-metric strong>span {
  font-size:1rem
}
.metric small {
  font-size:.57rem;
  opacity:.8
}
.metric small i {
  width:5px;
  height:5px;
  margin-right:3px
}
.primary-metric {
  background:var(--green);
  color:#fff
}
.demo-chart {
  padding-top:20px
}
.demo-chart>div:first-child {
  display:flex;
  justify-content:space-between;
  font-size:.57rem
}
.demo-chart>div:first-child>strong {
  font-weight:600
}
.demo-chart>div:first-child>span {
  color:var(--muted)
}
.chart-bars {
  height:92px;
  display:flex;
  align-items:end;
  justify-content:space-around;
  gap:14px;
  padding:9px 8px 0;
  margin-top:10px;
  border-bottom:1px solid var(--line);
  background:repeating-linear-gradient(to top,transparent 0,transparent 29px,#e9eee6 30px)
}
.chart-bars i {
  display:block;
  height:var(--bar);
  flex:1;
  background:#b7d7c1;
  border-radius:4px 4px 0 0
}
.chart-bars i:nth-last-child(2) {
  background:var(--green)
}
.chart-days {
  display:flex;
  justify-content:space-around;
  padding-top:5px;
  font-size:.49rem;
  color:var(--muted)
}
.demo-products {
  margin-top:15px;
  font-size:.57rem
}
.demo-products>div {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:7px 0;
  border-bottom:1px solid #edf0e9
}
.demo-products>div:first-child {
  color:var(--muted);
  font-size:.52rem
}
.demo-products>div:last-child {
  border-bottom:0
}
.demo-products>div>span {
  display:flex;
  align-items:center;
  gap:8px
}
.demo-products b {
  font-weight:500
}
.product-square {
  width:19px;
  height:22px;
  border-radius:4px;
  display:inline-block
}
.peach {
  background:#f1d8b7
}
.mint {
  background:#cee3c5
}
.demo-disclaimer {
  font-size:.58rem;
  color:#606d5c;
  margin-top:15px;
  padding-left:4px
}
.floating-receipt {
  position:absolute;
  display:flex;
  align-items:center;
  gap:11px;
  right:-15px;
  bottom:4px;
  background:#fff;
  padding:15px 20px;
  border:1px solid var(--line);
  border-radius:11px;
  box-shadow:0 9px 30px #16322210;
  transform:rotate(2deg)
}
.receipt-check {
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:50%;
  background:#e1f1e5;
  color:var(--green)
}
.floating-receipt strong,.floating-receipt div>span {
  display:block;
  font-size:.66rem
}
.floating-receipt div>span {
  color:var(--muted);
  font-size:.58rem;
  margin-top:2px
}
.trust-strip {
  border-block:1px solid var(--line)
}
.trust-strip>.section-shell {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-block:25px;
  gap:25px
}
.trust-strip p {
  font-size:.75rem;
  line-height:1.5;
  color:var(--muted)
}
.trust-strip p strong {
  font-weight:600;
  color:var(--ink)
}
.trust-strip>.section-shell>span {
  font-size:.94rem;
  font-weight:550;
  display:flex;
  align-items:center;
  gap:13px
}
.trust-strip i {
  font-size:.6rem;
  font-style:normal;
  color:var(--green);
  border:1px solid #cfdbc9;
  border-radius:50%;
  padding:5px 7px
}
.features-section,.systems-section {
  padding-block:88px
}
.section-heading {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:55px;
  margin-bottom:38px
}
.section-heading>p {
  font-size:.91rem;
  color:var(--muted);
  max-width:325px
}
.features-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:17px
}
.features-grid article {
  border-top:1px solid #c6d3c4;
  padding:26px 16px 6px 0
}
.feature-icon {
  display:grid;
  place-items:center;
  font-size:1.5rem;
  width:45px;
  height:45px;
  border-radius:10px;
  background:#e8eee2;
  color:var(--green);
  margin-bottom:22px
}
.features-grid h3 {
  margin-bottom:12px;
  font-size:1.13rem;
  letter-spacing:-.025em
}
.features-grid p {
  font-size:.83rem;
  line-height:1.75;
  color:var(--muted)
}
.feature-label {
  display:block;
  font-size:.53rem;
  font-weight:700;
  letter-spacing:.12em;
  color:#53684f;
  margin-top:25px
}
.plans-section {
  padding-block:80px;
  background:#edf1e8;
  border-block:1px solid #e1e6da
}
.section-heading.centered {
  display:block;
  text-align:center;
  margin-bottom:48px
}
.section-heading.centered>p:last-child {
  margin:20px auto 0;
  max-width:480px
}
.ventas-plan-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px
}
.ventas-plan-card {
  position:relative;
  display:flex;
  flex-direction:column;
  background:var(--paper);
  border:1px solid #d5dfd0;
  border-radius:var(--radius);
  padding:32px
}
.plan-kicker {
  font-size:.55rem;
  font-weight:750;
  letter-spacing:.095em;
  color:var(--muted);
  margin-bottom:18px
}
.ventas-plan-card h3 {
  font-size:1.65rem;
  margin-bottom:10px
}
.ventas-plan-card>p:not(.plan-price) {
  font-size:.83rem;
  color:var(--muted)
}
.plan-price {
  display:flex;
  align-items:baseline;
  gap:8px;
  margin-block:25px
}
.plan-price>strong {
  font-size:2.85rem;
  line-height:1.1;
  letter-spacing:-.065em;
  font-weight:650
}
.plan-price>span {
  font-size:.77rem;
  color:var(--muted)
}
.ventas-plan-card>.button {
  width:100%;
  margin-bottom:24px;
  justify-content:space-between
}
.ventas-plan-card ul {
  list-style:none;
  margin:0;
  padding:24px 0 0;
  border-top:1px solid var(--line);
  display:grid;
  gap:13px;
  font-size:.81rem
}
.ventas-plan-card li {
  position:relative;
  padding-left:21px
}
.ventas-plan-card li:before {
  content:"✓";
  position:absolute;
  left:0;
  color:var(--green)
}
.ventas-plan-card li strong {
  font-weight:650
}
.ventas-plan-card.is-featured {
  border:2px solid var(--green);
  background:#fff;
  box-shadow:0 10px 30px #284b2710
}
.plan-badge {
  position:absolute;
  top:-14px;
  left:50%;
  transform:translateX(-50%);
  background:var(--green);
  color:#fff;
  border-radius:20px;
  padding:6px 14px;
  white-space:nowrap;
  font-size:.55rem;
  letter-spacing:.08em;
  font-weight:700
}
.plan-help {
  font-size:.81rem;
  text-align:center;
  margin-top:30px;
  color:var(--muted)
}
.plan-help a {
  color:var(--green);
  font-weight:650;
  text-decoration:underline;
  text-underline-offset:4px
}
.ventas-plan-note {
  max-width:735px;
  margin:22px auto 0;
  font-size:.7rem;
  text-align:center;
  color:#63705d;
  line-height:1.7
}
.action-layout {
  border:1px solid #d5dfd0;
  border-radius:var(--radius);
  overflow:hidden;
  background:#fff
}
.action-tabs {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-bottom:1px solid var(--line);
  background:#f0f3ec
}
.action-tabs button {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:64px;
  padding:10px;
  border:0;
  border-bottom:3px solid transparent;
  color:var(--muted);
  background:transparent;
  font-size:.81rem;
  font-weight:600
}
.action-tabs button>span {
  font-size:1.1rem
}
.action-tabs button[aria-selected="true"] {
  background:#fff;
  color:var(--green);
  border-bottom-color:var(--green)
}
.action-tabs button:hover {
  color:var(--green);
  background:#e6eee1
}
.action-tabs button:focus-visible {
  outline-offset:-6px
}
.action-stage {
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:40px;
  padding:40px;
  align-items:center
}
.action-stage-copy h3 {
  font-size:1.8rem;
  margin-bottom:16px
}
.action-stage-copy>p:not(.eyebrow) {
  font-size:.85rem;
  color:var(--muted);
  margin-bottom:22px
}
.action-stage-copy .text-link {
  display:flex;
  font-size:.8rem
}
.secondary-link {
  margin-top:12px;
  font-size:.75rem!important;
  color:var(--muted)
}
.action-image-wrap {
  min-width:0
}
.action-image-wrap img {
  width:100%;
  height:auto;
  aspect-ratio:1366/768;
  object-fit:contain;
  background:#103b30;
  border:1px solid var(--line);
  border-radius:9px
}
.action-image-wrap figcaption {
  margin-top:9px;
  font-size:.61rem;
  color:var(--muted)
}
.solution-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px;
  margin-top:20px
}
.league-link {
  display:flex;
  align-items:center;
  gap:13px;
  padding:16px 20px;
  background:#edf1e8;
  border-radius:11px
}
.league-link img {
  object-fit:cover;
  border-radius:5px
}
.league-link strong,.league-link small {
  display:block;
  font-size:.8rem
}
.league-link small {
  font-size:.68rem;
  color:var(--muted);
  margin-top:3px
}
.league-link>span:last-child {
  margin-left:auto;
  color:var(--green)
}
.league-link:hover {
  background:#e3ebdc
}
.systems-access {
  padding:12px 0;
  align-self:center;
  font-size:.68rem;
  color:var(--muted)
}
.systems-access>div {
  display:flex;
  gap:17px;
  flex-wrap:wrap;
  margin-top:6px;
  color:var(--green);
  font-size:.72rem
}
.systems-access a:hover {
  text-decoration:underline
}
.implementation-section {
  background:#103f35;
  color:#fff;
  padding-block:72px
}
.implementation-section .eyebrow {
  color:#b8d9aa
}
.implementation-section h2 em {
  color:#c8e5b4
}
.implementation-section .button {
  border-color:#527369;
  color:#fff;
  flex-shrink:0
}
.implementation-section .button:hover {
  background:#285246
}
.implementation-line {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:30px;
  margin:45px 0 0;
  padding:0;
  list-style:none
}
.implementation-line li {
  border-top:1px solid #44675a;
  padding-top:21px
}
.implementation-line li>span {
  display:block;
  color:#bcd6aa;
  font-size:.73rem;
  margin-bottom:20px
}
.implementation-line h3 {
  font-size:1.13rem;
  margin-bottom:12px;
  font-weight:550
}
.implementation-line p {
  color:#c2d3cb;
  font-size:.81rem;
  line-height:1.7
}
.faq-section {
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:90px;
  padding-block:90px
}
.faq-section>div>p:not(.eyebrow) {
  max-width:310px;
  margin:22px 0;
  color:var(--muted);
  font-size:.88rem
}
.faq-list details {
  border-bottom:1px solid var(--line)
}
.faq-list details:first-child {
  border-top:1px solid var(--line)
}
.faq-list summary {
  position:relative;
  cursor:pointer;
  list-style:none;
  padding:20px 36px 20px 0;
  font-size:.9rem;
  font-weight:600
}
.faq-list summary::-webkit-details-marker {
  display:none
}
.faq-list summary:after {
  content:"+";
  position:absolute;
  right:4px;
  top:15px;
  color:var(--green);
  font-size:1.3rem;
  font-weight:400
}
.faq-list details[open] summary:after {
  content:"−"
}
.faq-list details p {
  font-size:.84rem;
  line-height:1.8;
  color:var(--muted);
  padding:0 20px 22px 0
}
.faq-list details[open] summary {
  color:var(--green)
}
.contact-section {
  padding-block:75px;
  background:#e7ecdf;
  border-block:1px solid #dce3d4
}
.contact-layout {
  display:grid;
  grid-template-columns:1fr .86fr;
  gap:95px;
  align-items:center
}
.contact-copy>p:not(.eyebrow):not(.contact-location) {
  margin-top:22px;
  color:var(--muted);
  font-size:.92rem;
  max-width:390px
}
.contact-benefits {
  list-style:none;
  display:grid;
  gap:9px;
  margin:26px 0;
  padding:0;
  font-size:.81rem
}
.contact-benefits li:before {
  content:"✓";
  color:var(--green);
  margin-right:10px
}
.button-whatsapp {
  border-color:#b9cdb4;
  background:transparent;
  color:var(--green)
}
.button-whatsapp:hover {
  background:#d8e5d1
}
.contact-location {
  font-size:.63rem;
  color:var(--muted);
  margin-top:22px
}
.lead-form {
  display:grid;
  gap:17px;
  padding:30px;
  background:#fff;
  border:1px solid #dbe2d4;
  border-radius:var(--radius);
  box-shadow:0 8px 24px #103f3508
}
.lead-form .eyebrow {
  margin-bottom:10px;
  font-size:.55rem
}
.lead-form h3 {
  font-size:1.4rem
}
.lead-form #form-demo>p:last-child {
  font-size:.74rem;
  color:var(--muted);
  margin-top:8px
}
.lead-form label {
  display:grid;
  gap:7px;
  min-width:0;
  font-size:.75rem;
  font-weight:600
}
.form-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px
}
.lead-form input:not([type=checkbox]):not([type=hidden]),.lead-form select {
  min-width:0;
  width:100%;
  height:44px;
  border:1px solid #d8dfd3;
  border-radius:6px;
  padding:10px 11px;
  background:#fcfdfa;
  color:var(--ink);
  font-size:.8rem
}
.lead-form input::placeholder {
  color:#75806d
}
.lead-form .lead-form__consent {
  display:flex;
  align-items:flex-start;
  gap:9px;
  font-size:.65rem;
  line-height:1.6;
  font-weight:400;
  color:var(--muted)
}
.lead-form__consent input {
  width:16px;
  height:16px;
  flex-shrink:0;
  margin:2px 0 0;
  accent-color:var(--green)
}
.lead-form__consent a {
  color:var(--green);
  text-decoration:underline
}
.lead-form>.button {
  width:100%;
  justify-content:space-between
}
.lead-form #requestMessage {
  font-size:.8rem;
  line-height:1.6
}
.lead-form #requestMessage:empty {
  display:none
}
.is-success {
  color:var(--green)
}
.is-error {
  color:#a43223
}
.is-error a {
  text-decoration:underline
}
.lead-form noscript {
  font-size:.8rem
}
.site-footer {
  padding-top:46px;
  padding-bottom:24px
}
.footer-top,.footer-bottom {
  display:flex;
  justify-content:space-between;
  gap:24px
}
.footer-top>div>p {
  margin-top:15px;
  font-size:.75rem;
  color:var(--muted)
}
.footer-links {
  display:flex;
  align-items:start;
  gap:25px;
  padding-top:12px;
  font-size:.76rem
}
.footer-links a:hover,.footer-bottom a:hover {
  color:var(--green);
  text-decoration:underline
}
.footer-bottom {
  border-top:1px solid var(--line);
  padding-top:20px;
  margin-top:35px;
  font-size:.66rem;
  color:var(--muted)
}
.footer-bottom>div {
  display:flex;
  gap:25px
}
.footer-bottom small {
  font-size:inherit
}
/* Compact help control with a scrollable panel for short mobile screens. */
.zow-refreshed .zow-assistant {
  right:18px;
  bottom:18px
}
.zow-refreshed .zow-assistant__trigger {
  min-width:0;
  background:#fff;
  color:var(--ink);
  border:1px solid #d1ddc9;
  border-radius:30px;
  box-shadow:0 4px 22px #163f3518;
  padding:7px 15px 7px 7px;
  grid-template-columns:36px auto
}
.zow-refreshed .zow-assistant__trigger>img {
  width:36px;
  height:36px;
  animation:none;
  border:0
}
.zow-refreshed .zow-assistant__trigger b {
  font-size:.7rem;
  letter-spacing:0
}
.zow-refreshed .zow-assistant__trigger i {
  font-size:.53rem;
  letter-spacing:.025em;
  color:var(--muted);
  text-transform:none
}
.zow-refreshed .zow-assistant__panel {
  border-radius:15px;
  box-shadow:0 14px 55px #123c3528;
  border-color:#355c50;
  max-height:calc(100dvh - 100px);
  overflow-y:auto
}
.zow-refreshed .zow-assistant__close {
  width:40px;
  height:40px;
  border-radius:7px
}
.zow-refreshed .zow-assistant__suggestions button {
  min-height:40px;
  border-radius:6px
}
.zow-refreshed .zow-assistant__human {
  background:var(--green);
  min-height:44px
}
.zow-refreshed .zow-assistant__messages {
  min-height:130px;
  max-height:230px
}
@media(min-width:1500px) {
  .product-hero {
    min-height:750px
  }

}
@media(max-width:1100px) {
  .section-shell {
    width:calc(100% - 64px)
  }
  .main-nav {
    gap:18px
  }
  .main-nav .nav-login {
    padding-left:18px
  }
  .product-hero {
    gap:32px;
    padding-block:55px;
    min-height:640px
  }
  .hero-visual {
    padding:22px 17px 32px
  }
  .hero-proof {
    gap:12px;
    font-size:.64rem
  }
  .dashboard-body {
    padding:17px
  }
  .metric>strong {
    font-size:1.4rem
  }
  .features-grid {
    gap:14px
  }
  .ventas-plan-card {
    padding:26px
  }
  .contact-layout {
    gap:45px
  }
  .faq-section {
    gap:50px
  }
  .footer-links {
    gap:18px
  }

}
@media(max-width:900px) {
  .header-inner {
    height:72px
  }
  .main-nav {
    gap:14px;
    font-size:.72rem
  }
  .main-nav>a[href="#preguntas"] {
    display:none
  }
  .nav-cta {
    font-size:.73rem;
    padding:10px 12px;
    gap:8px
  }
  .hero-tag {
    font-size:.5rem;
    letter-spacing:.08em
  }
  h1 {
    font-size:3.2rem
  }
  .hero-actions .button {
    padding:12px 14px;
    font-size:.78rem;
    gap:12px
  }
  .hero-text {
    font-size:.94rem
  }
  .hero-proof {
    flex-direction:column;
    gap:5px
  }
  .hero-visual {
    padding:18px 13px 28px
  }
  .visual-note {
    font-size:.55rem
  }
  .dashboard-body {
    padding:13px
  }
  .metric {
    padding:12px 9px
  }
  .metric>strong {
    font-size:1.2rem
  }
  .floating-receipt {
    right:-6px;
    padding:12px 14px
  }
  .section-heading {
    gap:25px
  }
  .section-heading>p {
    max-width:240px;
    font-size:.84rem
  }
  .features-grid {
    grid-template-columns:repeat(2,1fr);
    gap:25px
  }
  .features-grid article {
    padding-right:24px
  }
  .ventas-plan-card {
    padding:25px 19px
  }
  .plan-kicker {
    font-size:.47rem
  }
  .plan-price>strong {
    font-size:2.4rem
  }
  .ventas-plan-card>.button {
    font-size:.73rem;
    padding:12px;
    gap:6px
  }
  .ventas-plan-card ul {
    font-size:.74rem
  }
  .action-stage {
    gap:25px;
    padding:27px;
    grid-template-columns:1fr 1fr
  }
  .action-stage-copy h3 {
    font-size:1.45rem
  }
  .action-stage-copy>p:not(.eyebrow) {
    font-size:.78rem
  }
  .solution-grid {
    grid-template-columns:1fr
  }
  .implementation-section .section-heading {
    align-items:start
  }
  .implementation-section .section-heading .button {
    font-size:.76rem;
    gap:10px;
    padding:12px
  }
  .implementation-line {
    gap:22px
  }
  .implementation-line h3 {
    font-size:1rem
  }
  .contact-layout {
    grid-template-columns:1fr 1fr;
    gap:30px
  }
  .contact-copy h2 {
    font-size:2rem
  }
  .lead-form {
    padding:23px
  }
  .form-row {
    grid-template-columns:1fr
  }
  .footer-links {
    flex-wrap:wrap;
    max-width:350px;
    justify-content:end
  }
  .faq-section {
    gap:35px;
    grid-template-columns:.8fr 1.2fr
  }

}
@media(max-width:760px) {
  html {
    scroll-padding-top:90px
  }
  .section-shell {
    width:calc(100% - 40px)
  }
  .header-inner {
    width:calc(100% - 40px);
    height:70px
  }
  .brand>span {
    font-size:1.4rem
  }
  .brand img {
    width:33px;
    height:33px
  }
  .menu-toggle {
    display:flex;
    position:relative;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:5px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:8px;
    width:44px;
    height:44px
  }
  .menu-toggle span {
    width:19px;
    height:2px;
    background:var(--ink);
    transition:transform .2s,opacity .2s
  }
  .menu-toggle.is-open span:first-child {
    transform:translateY(7px) rotate(45deg)
  }
  .menu-toggle.is-open span:nth-child(2) {
    opacity:0
  }
  .menu-toggle.is-open span:last-child {
    transform:translateY(-7px) rotate(-45deg)
  }
  .main-nav {
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:70px;
    max-height:calc(100dvh - 70px);
    overflow-y:auto;
    background:var(--paper);
    border-bottom:1px solid var(--line);
    padding:15px 20px 22px;
    box-shadow:0 20px 30px #13332615
  }
  .main-nav.is-open {
    display:grid;
    gap:0
  }
  .main-nav>a[href="#preguntas"] {
    display:block
  }
  .main-nav>a:not(.button) {
    font-size:.9rem;
    padding:14px 10px;
    border-bottom:1px solid var(--line)
  }
  .main-nav .nav-login {
    border-left:0;
    padding-left:10px
  }
  .main-nav .nav-cta {
    margin-top:15px;
    font-size:.86rem;
    min-height:46px
  }
  .product-hero {
    grid-template-columns:1fr;
    gap:38px;
    padding-block:44px;
    min-height:0
  }
  .hero-copy {
    max-width:530px
  }
  .hero-tag {
    font-size:.55rem;
    margin-bottom:23px
  }
  h1 {
    font-size:clamp(2.9rem,8.5vw,4.2rem)
  }
  .hero-text {
    margin-top:20px;
    max-width:450px;
    font-size:.97rem
  }
  .hero-actions {
    margin-top:25px
  }
  .hero-actions .button {
    font-size:.8rem;
    min-height:49px;
    padding-inline:18px
  }
  .hero-proof {
    flex-direction:row;
    gap:20px;
    font-size:.64rem;
    margin-top:20px
  }
  .hero-visual {
    width:min(520px,100%);
    justify-self:center;
    padding:22px 22px 32px
  }
  .visual-note {
    font-size:.65rem
  }
  .dashboard-body {
    padding:20px
  }
  .metric {
    padding:15px 13px
  }
  .metric>strong {
    font-size:1.6rem
  }
  .floating-receipt {
    right:-5px;
    bottom:2px
  }
  .trust-strip>.section-shell {
    display:grid;
    grid-template-columns:1fr 1fr;
    padding-block:23px;
    gap:19px
  }
  .trust-strip>.section-shell>span {
    font-size:.8rem
  }
  .trust-strip p {
    font-size:.73rem
  }
  .features-section,.systems-section {
    padding-block:55px
  }
  .section-heading {
    display:block;
    margin-bottom:30px
  }
  .section-heading>p {
    max-width:480px;
    margin-top:20px
  }
  .section-heading h2 br {
    display:none
  }
  h2 {
    font-size:2.1rem
  }
  .features-grid {
    gap:22px 15px
  }
  .features-grid article {
    padding:20px 7px 0 0
  }
  .features-grid h3 {
    font-size:1rem
  }
  .features-grid p {
    font-size:.8rem
  }
  .feature-icon {
    margin-bottom:18px
  }
  .feature-label {
    font-size:.48rem;
    letter-spacing:.06em
  }
  .plans-section {
    padding-block:55px
  }
  .ventas-plan-grid {
    grid-template-columns:1fr;
    gap:29px;
    width:min(440px,100%);
    margin:auto
  }
  .ventas-plan-card {
    padding:28px
  }
  .plan-kicker {
    font-size:.56rem
  }
  .plan-price>strong {
    font-size:2.8rem
  }
  .ventas-plan-card>.button {
    font-size:.85rem;
    padding:13px 18px
  }
  .ventas-plan-card ul {
    font-size:.83rem;
    gap:10px
  }
  .plan-help {
    display:grid;
    gap:5px
  }
  .action-tabs button {
    flex-direction:column;
    gap:3px;
    font-size:.66rem;
    min-height:70px;
    padding:9px 3px
  }
  .action-tabs button>span {
    font-size:1rem
  }
  .action-stage {
    grid-template-columns:1fr;
    padding:24px;
    gap:24px
  }
  .action-stage-copy h3 {
    font-size:1.6rem
  }
  .action-stage-copy>p:not(.eyebrow) {
    font-size:.83rem
  }
  .action-stage-copy .eyebrow {
    margin-bottom:13px
  }
  .action-image-wrap figcaption {
    font-size:.6rem
  }
  .league-link {
    padding:15px 13px;
    gap:11px
  }
  .league-link img {
    width:55px;
    height:43px
  }
  .league-link strong {
    font-size:.75rem
  }
  .league-link small {
    font-size:.62rem
  }
  .implementation-section {
    padding-block:55px
  }
  .implementation-section .section-heading .button {
    margin-top:25px
  }
  .implementation-line {
    grid-template-columns:1fr 1fr;
    gap:27px 22px;
    margin-top:30px
  }
  .implementation-line li>span {
    margin-bottom:15px
  }
  .faq-section {
    grid-template-columns:1fr;
    gap:30px;
    padding-block:55px
  }
  .faq-section>div>p:not(.eyebrow) {
    margin:18px 0
  }
  .faq-list summary {
    font-size:.88rem
  }
  .contact-section {
    padding-block:50px
  }
  .contact-layout {
    grid-template-columns:1fr;
    gap:32px
  }
  .contact-copy h2 {
    font-size:2.2rem
  }
  .contact-copy>p:not(.eyebrow):not(.contact-location) {
    max-width:450px
  }
  .lead-form {
    width:min(490px,100%);
    padding:25px
  }
  .form-row {
    grid-template-columns:1fr 1fr
  }
  .footer-top {
    flex-direction:column
  }
  .footer-links {
    justify-content:start;
    max-width:100%;
    gap:15px 24px
  }
  .footer-bottom {
    flex-wrap:wrap;
    gap:15px;
    padding-bottom:54px
  }
  .zow-refreshed .zow-assistant__trigger {
    padding:7px;
    display:block
  }
  .zow-refreshed .zow-assistant__trigger b,.zow-refreshed .zow-assistant__trigger i {
    display:none
  }
  .zow-refreshed .zow-assistant {
    right:12px;
    bottom:12px
  }
  .zow-refreshed .zow-assistant__panel {
    width:min(390px,calc(100vw - 24px))
  }

}
@media(max-width:380px) {
  .hero-tag {
    font-size:.49rem
  }
  .hero-actions {
    display:grid;
    grid-template-columns:1fr
  }
  .hero-actions .button {
    justify-content:space-between
  }
  .hero-proof {
    gap:12px;
    font-size:.59rem
  }
  .hero-visual {
    padding:16px 13px 30px
  }
  .visual-note {
    font-size:.58rem
  }
  .dashboard-body {
    padding:14px
  }
  .metric>strong {
    font-size:1.4rem
  }
  .features-grid {
    grid-template-columns:1fr
  }
  .features-grid article {
    padding-bottom:10px
  }
  .form-row {
    grid-template-columns:1fr
  }
  .lead-form {
    padding:21px
  }
  .league-link img {
    display:none
  }

}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important
  }

}
@media(max-width:760px) {
  .hero-actions {
    display:grid;
    grid-template-columns:1fr
  }
  .hero-actions .button {
    justify-content:space-between
  }
  .form-row {
    grid-template-columns:1fr
  }
  .lead-form input:not([type=checkbox]):not([type=hidden]),.lead-form select {
    font-size:16px
  }
  .lead-form .lead-form__consent {
    font-size:.75rem
  }
  .lead-form label {
    font-size:.8rem
  }

}

/* Visual stories, guided plan selection, and progressively enhanced motion. */
[hidden] { display: none !important; }
.business-section { padding-bottom: 88px; }
.business-grid { display: grid; grid-template-columns: 1.15fr 1fr; grid-template-rows: 230px 230px; gap: 20px; }
.business-card { position: relative; display: block; overflow: hidden; border-radius: 18px; isolation: isolate; background: #173d32; color: #fff; }
.business-card-main { grid-row: span 2; }
.business-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.65,.25,1); }
.business-card::after { content: ""; position: absolute; inset: 0; z-index: 0; background: linear-gradient(0deg,rgba(5,28,21,.94),rgba(5,28,21,.3) 52%,transparent 85%); pointer-events: none; }
.business-card > div { position: absolute; z-index: 1; bottom: 0; left: 0; width: 100%; padding: 28px 32px; }
.business-card-main > div { padding: 36px; }
.business-card > div > span { display: block; font-size: .61rem; font-weight: 650; letter-spacing: .14em; margin-bottom: 10px; color: #d5ebcd; }
.business-card h3 { font-size: 1.6rem; font-weight: 600; letter-spacing: -.035em; }
.business-card-main h3 { font-size: 2rem; }
.business-card p { display: flex; justify-content: space-between; align-items: center; font-size: .76rem; margin-top: 15px; }
.business-card p b { display: grid; place-items: center; height: 32px; width: 32px; border: 1px solid #b9d3bc80; border-radius: 50%; font-size: 1.1rem; font-weight: 400; transition: background .2s, transform .2s; }
.business-card:hover img { transform: scale(1.045); }
.business-card:hover p b { background: #ffffff25; transform: rotate(10deg); }
.business-card:focus-visible { outline-offset: 5px; }
.features-section { padding-bottom: 72px; }

.plan-finder { margin: 30px auto 0; border: 1px solid #cdd9c5; background: #f8faf5; border-radius: 14px; }
.plan-finder > summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 22px 28px; cursor: pointer; list-style: none; }
.plan-finder > summary::-webkit-details-marker { display: none; }
.plan-finder > summary b { display: block; font-size: .92rem; font-weight: 650; }
.plan-finder > summary small { display: block; margin-top: 4px; font-size: .75rem; color: var(--muted); }
.finder-toggle { display: grid; place-items: center; width: 32px; height: 32px; flex-shrink: 0; border: 1px solid #cad7c2; border-radius: 50%; font-size: 1.3rem; color: var(--green); transition: transform .2s; }
.plan-finder[open] .finder-toggle { transform: rotate(45deg); }
.finder-layout { display: grid; grid-template-columns: 1.25fr 1fr; gap: 40px; padding: 8px 28px 28px; }
.finder-layout fieldset { border: 0; padding: 0; min-width: 0; margin: 0; }
.finder-layout legend { font-size: .8rem; font-weight: 600; margin-bottom: 15px; }
.finder-inputs { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.finder-inputs label { display: grid; gap: 7px; font-size: .75rem; color: var(--muted); }
.finder-inputs input { width: 100%; min-width: 0; height: 46px; padding: 10px 12px; border: 1px solid #c8d4bf; border-radius: 7px; color: var(--ink); background: #fff; font-size: 16px; }
.finder-layout fieldset > p { font-size: .68rem; color: var(--muted); margin-top: 15px; }
.finder-result { padding: 22px; background: #e8f0e1; border-radius: 10px; }
.finder-result .eyebrow { margin-bottom: 8px; font-size: .57rem; }
.finder-result output { display: block; font-size: 1.3rem; line-height: 1.3; letter-spacing: -.035em; font-weight: 650; }
.finder-result > p:not(.eyebrow) { font-size: .72rem; margin-top: 9px; color: var(--muted); }
.finder-result .button { margin-top: 17px; width: 100%; justify-content: space-between; font-size: .76rem; }

.action-image-wrap { position: relative; }
.preview-expand { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 13px; min-height: 44px; margin-top: 10px; border: 1px solid #ced8c7; border-radius: 7px; color: var(--green); background: #f7f9f3; font-size: .72rem; font-weight: 600; transition: background .2s; }
.preview-expand:hover { background: #e4eddd; }
.preview-dialog { width: min(1100px,calc(100% - 48px)); max-height: calc(100dvh - 48px); margin: auto; padding: 26px; border: 1px solid #d3decd; border-radius: 18px; background: var(--paper); color: var(--ink); overflow-y: auto; box-shadow: 0 35px 100px #0005; }
.preview-dialog::backdrop { background: #08241bcc; backdrop-filter: blur(5px); }
.preview-dialog[open] { animation: dialog-entrance .22s ease-out; }
.preview-dialog-header { display: flex; align-items: start; justify-content: space-between; gap: 25px; margin-bottom: 20px; }
.preview-dialog-header .eyebrow { margin-bottom: 8px; }
.preview-dialog h2 { font-size: 1.5rem; }
.preview-close { display: grid; place-items: center; flex-shrink: 0; width: 44px; height: 44px; border: 1px solid #c6d3c0; border-radius: 50%; color: var(--ink); background: transparent; font-size: 1.6rem; }
.preview-close:hover { background: #e4ecdd; }
.preview-dialog > img { display: block; max-height: 70dvh; width: 100%; object-fit: contain; border-radius: 9px; background: #123c30; }
.preview-dialog > p { font-size: .77rem; color: var(--muted); margin-top: 13px; }
body:has(.preview-dialog[open]) { overflow: hidden; }

@media(prefers-reduced-motion:no-preference) {
  .has-entered { animation: section-entrance .65s cubic-bezier(.2,.65,.25,1) both; animation-delay: var(--reveal-delay,0ms); }
  .hero-animated .dashboard-demo { animation: dashboard-entrance .85s ease-out both; }
  .hero-animated .chart-bars i { transform-origin: bottom; animation: bar-entrance .9s cubic-bezier(.2,.7,.25,1) both; animation-delay: .35s; }
  .hero-animated .chart-bars i:nth-child(even) { animation-delay: .5s; }
  .hero-animated .floating-receipt { animation: receipt-entrance 1s ease-out both; animation-delay: .2s; }
  .button > span { transition: transform .2s; }
  .button:hover > span { transform: translate(2px,-2px); }
  .ventas-plan-card { transition: box-shadow .25s, border-color .25s; }
  .ventas-plan-card:hover { box-shadow: 0 15px 35px #183b2713; border-color: #78a087; }
  .features-grid article .feature-icon { transition: background .25s, transform .25s; }
  .features-grid article:hover .feature-icon { background: #d6e7cc; transform: translateY(-3px); }
}
@keyframes section-entrance { from { opacity: .15; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@keyframes dashboard-entrance { from { opacity: .3; transform: translateY(15px) rotate(1deg); } to { opacity: 1; transform: translateY(0) rotate(-1deg); } }
@keyframes bar-entrance { from { transform: scaleY(.1); } to { transform: scaleY(1); } }
@keyframes receipt-entrance { from { opacity: 0; transform: translateY(14px) rotate(0); } to { opacity: 1; transform: translateY(0) rotate(2deg); } }
@keyframes dialog-entrance { from { opacity: 0; transform: scale(.975); } to { opacity: 1; transform: scale(1); } }
@media(max-width:900px) {
  .business-grid { grid-template-rows: 210px 210px; gap: 15px; }
  .business-card > div { padding: 22px; }
  .business-card-main > div { padding: 28px; }
  .business-card-main h3 { font-size: 1.75rem; }
  .business-card h3 { font-size: 1.45rem; }
  .finder-layout { gap: 22px; }
}
@media(max-width:760px) {
  .business-section { padding-bottom: 55px; }
  .business-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 390px 250px; gap: 13px; }
  .business-card-main { grid-row: auto; grid-column: span 2; }
  .business-card > div { padding: 17px; }
  .business-card-main > div { padding: 27px; }
  .business-card > div > span { font-size: .51rem; letter-spacing: .07em; }
  .business-card h3 { font-size: 1.14rem; }
  .business-card-main h3 { font-size: 1.8rem; }
  .business-card p { font-size: .65rem; gap: 7px; }
  .business-card p b { width: 26px; height: 26px; flex-shrink: 0; }
  .features-section { padding-bottom: 50px; }
  .plan-finder > summary { padding: 20px; }
  .plan-finder > summary b { font-size: .85rem; }
  .plan-finder > summary small { font-size: .68rem; }
  .finder-layout { grid-template-columns: 1fr; gap: 22px; padding: 0 20px 22px; }
  .finder-inputs { gap: 9px; }
  .finder-inputs input { padding-inline: 8px; }
  .finder-inputs label { font-size: .72rem; }
  .preview-dialog { width: calc(100% - 24px); max-height: calc(100dvh - 24px); padding: 18px; }
  .preview-dialog h2 { font-size: 1.25rem; }
  .preview-dialog-header .eyebrow { font-size: .54rem; }
}
@media(max-width:380px) {
  .business-grid { grid-template-columns: 1fr; grid-template-rows: 340px 235px 235px; }
  .business-card-main { grid-column: auto; }
  .business-card h3 { font-size: 1.4rem; }
  .business-card-main h3 { font-size: 1.6rem; }
}
@media(prefers-reduced-motion:reduce) {
  .business-card img, .business-card p b { transition: none; }
  .has-entered, .hero-animated .dashboard-demo, .hero-animated .chart-bars i, .hero-animated .floating-receipt, .preview-dialog[open] { animation: none; }
}
