.site-header{position:fixed;inset:0 0 auto;z-index:100;background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(218,224,229,.72);transition:box-shadow .25s ease}.site-header.is-scrolled{box-shadow:0 8px 30px rgba(13,43,77,.08)}.nav-shell{height:72px;display:flex;align-items:center;gap:34px}.brand{display:block;width:146px;flex:0 0 auto}.desktop-nav{display:flex;align-items:center;gap:30px;margin-inline:auto;font-size:14px;color:#525c66}.desktop-nav a,.text-link{transition:color .2s ease}.desktop-nav a:hover,.text-link:hover{color:var(--blue)}.nav-actions{display:flex;align-items:center;gap:20px;font-size:14px}.menu-toggle{display:none;width:42px;height:42px;place-items:center}.menu-toggle span{display:block;width:22px;height:2px;background:var(--ink);margin:4px auto}.mobile-menu{position:fixed;inset:0;background:var(--navy-deep);color:#fff;transform:translateY(-102%);transition:transform .45s cubic-bezier(.72,0,.2,1);z-index:200}.mobile-menu.is-open{transform:none}.mobile-menu__inner{min-height:100%;padding:24px;display:flex;flex-direction:column}.mobile-menu__top{display:flex;align-items:center;justify-content:space-between}.brand--mobile{width:150px}.menu-close{font-size:34px;color:#fff}.mobile-nav{display:grid;gap:6px;margin-top:70px}.mobile-nav a{font-size:clamp(34px,9vw,54px);font-weight:700;letter-spacing:-.04em;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1)}.mobile-menu__footer{margin-top:auto;display:grid;gap:16px;padding-top:40px}.mobile-menu__footer p{color:#9fb0c2;max-width:340px}.mobile-login{font-size:14px;color:#b9c7d2}.menu-open{overflow:hidden}

.hero{position:relative;min-height:760px;padding:152px 0 86px;overflow:hidden;background:linear-gradient(110deg,#fff 0%,#fff 54%,#f8fbfc 100%)}.hero-grid{position:absolute;right:-190px;top:10px;width:min(72vw,1000px);height:auto;pointer-events:none}.hero-grid-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);align-items:center;gap:70px;position:relative;z-index:2}.hero-copy h1{font-size:clamp(66px,7vw,106px);line-height:.88;letter-spacing:-.07em;font-weight:800}.muted-word{color:#b5b8bc}.accent-word{color:var(--blue)}.hero-lead{margin-top:34px;max-width:560px;color:var(--ink-soft);font-size:17px}.hero-actions{display:flex;gap:14px;margin-top:34px}.hero-trust{display:flex;gap:26px;flex-wrap:wrap;margin-top:26px;font-family:"Space Mono",monospace;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#929aa3}.hero-product{position:relative;min-height:500px}.invoice-card{background:#fff;border:1px solid #edf0f2;box-shadow:var(--shadow);padding:24px}.invoice-card--hero{position:absolute;right:0;top:36px;width:360px}.invoice-card__head{display:flex;justify-content:space-between;align-items:center;gap:18px;font-family:"Space Mono",monospace;font-size:14px;letter-spacing:.08em;color:#8d959d}.status-dot{color:#00af80;font-size:14px}.status-dot::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#0fd79b;margin-right:7px}.invoice-meta{display:grid;gap:10px;margin-top:22px}.invoice-meta div,.invoice-lines>div{display:flex;justify-content:space-between;gap:22px}.invoice-meta dt,.invoice-lines span{color:#848d96;font-size:14px}.invoice-meta dd,.invoice-lines strong{font-size:14px;font-weight:700}.invoice-lines{display:grid;gap:12px;margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}.invoice-total{padding-top:14px;margin-top:2px;border-top:1px solid var(--line)}.invoice-total span,.invoice-total strong{font-size:14px;color:var(--ink)}.metric-card{background:#0f151c;color:#fff;padding:24px;box-shadow:var(--shadow)}.metric-card--hero{position:absolute;left:6px;bottom:30px;width:300px}.metric-card p{font-size:14px;color:#8fa0af}.metric-card strong{display:block;margin-top:8px;font-size:28px;letter-spacing:-.04em}.metric-card>span{font-size:14px;color:#55d8cf}.mini-bars{display:flex;align-items:end;gap:7px;height:74px;margin-top:20px}.mini-bars i{flex:1;background:linear-gradient(#11d4c6,#1a6cff);height:28%}.mini-bars i:nth-child(2){height:45%}.mini-bars i:nth-child(3){height:38%}.mini-bars i:nth-child(4){height:62%}.mini-bars i:nth-child(5){height:54%}.mini-bars i:nth-child(6){height:76%}.mini-bars i:nth-child(7){height:88%}

.proof-strip{padding:52px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.micro-label{text-align:center;font-family:"Space Mono",monospace;font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:#a8afb6}.company-row{display:grid;grid-template-columns:repeat(6,1fr);gap:30px;margin-top:34px;color:#b1b6bb;text-align:center;font-size:14px;font-weight:600}

.split-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.split-layout--wide{grid-template-columns:.9fr 1.1fr}.mode-list{display:grid;margin-top:44px;max-width:470px}.mode-item{display:flex;justify-content:space-between;align-items:center;padding:15px 16px;border:1px solid var(--line);border-top:0;text-align:left;font-size:14px;transition:background .2s ease,color .2s ease}.mode-item:first-child{border-top:1px solid var(--line)}.mode-item small{font-family:"Space Mono",monospace;font-size:14px;color:#a0a8b0}.mode-item.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.document-stage{position:relative;min-height:480px;display:grid;place-items:center}.invoice-card--large{position:relative;z-index:3;width:min(100%,530px);padding:34px}.invoice-meta--large{gap:15px}.invoice-meta--large dt,.invoice-meta--large dd,.invoice-card--large .invoice-lines span,.invoice-card--large .invoice-lines strong{font-size:14px}.invoice-card--large .invoice-total span,.invoice-card--large .invoice-total strong{font-size:18px}.document-shadow{position:absolute;width:490px;height:350px;border:1px solid #edf0f2;background:#fafcfc}.document-shadow--1{transform:translate(28px,24px)}.document-shadow--2{transform:translate(52px,46px);opacity:.7}

.capabilities{background:linear-gradient(90deg,#f4f6f7 1px,transparent 1px),linear-gradient(#f4f6f7 1px,transparent 1px),#f7f8f9;background-size:102px 102px}.capabilities-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:74px}.capabilities-intro h2{font-size:clamp(44px,5vw,68px);line-height:.98;letter-spacing:-.055em}.capabilities-intro>p:not(.eyebrow){margin-top:24px;max-width:470px;color:var(--ink-soft)}.capabilities-intro img{margin-top:44px;width:100%;border-radius:6px;box-shadow:0 30px 70px rgba(13,43,77,.12)}.capability-list{display:grid;align-content:start;gap:0;padding-top:40px}.capability-list article{display:grid;grid-template-columns:42px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid #dde2e6}.cap-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid #dce2e6;font-family:"Space Mono",monospace;font-size:14px;color:#9ca5ad;background:#fff}.capability-list h3{font-size:14px}.capability-list p{margin-top:6px;color:#6e7882;font-size:14px;max-width:520px}

.scale-section{padding:108px 0;background:#080b0e;color:#fff;position:relative;overflow:hidden}.scale-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 10%,rgba(20,207,193,.11),transparent 35%),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px);background-size:auto,120px 120px,120px 120px}.scale-inner{position:relative;text-align:center}.scale-inner h2{font-size:clamp(42px,5vw,66px);line-height:.95;letter-spacing:-.055em}.scale-inner h2 span{color:#565b60}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:78px}.stats-grid article{padding:0 30px;border-right:1px solid rgba(255,255,255,.12)}.stats-grid article:last-child{border-right:0}.stats-grid strong{display:block;font-size:30px}.stats-grid span{display:block;margin-top:9px;color:#858e96;font-size:14px;text-transform:uppercase;letter-spacing:.08em}

.payments-layout{display:grid;grid-template-columns:1fr .9fr;gap:100px;align-items:center}.payments-visual{position:relative;min-height:620px}.phone-shell{position:absolute;left:55px;top:0;width:300px;height:600px;padding:16px;border:1px solid #dfe5e9;border-radius:44px;background:#f9fbfc;box-shadow:0 28px 80px rgba(13,43,77,.15)}.phone-top{width:92px;height:18px;border-radius:20px;background:#0c1117;margin:2px auto 26px}.payment-screen{height:510px;border-radius:28px;background:linear-gradient(180deg,#0c2b4e,#07111b);padding:46px 28px;color:#fff;text-align:center}.payment-screen img{width:64px;margin:0 auto 40px}.payment-screen p{color:#97aabd;font-size:14px}.payment-screen strong{display:block;font-size:36px;letter-spacing:-.05em;margin-top:10px}.payment-screen span{display:block;color:#7e91a3;font-size:14px;margin-top:8px}.payment-screen button{width:100%;height:48px;margin-top:110px;background:var(--teal);color:#042826;font-size:14px;font-weight:800}.collection-card{position:absolute;right:0;bottom:60px;width:300px;padding:26px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.collection-card>span{font-family:"Space Mono",monospace;font-size:14px;color:var(--blue)}.collection-card strong{display:block;font-size:30px;margin-top:12px}.collection-card p{color:#7e8790;font-size:14px}.collection-card div{height:8px;background:#eef1f3;margin-top:26px}.collection-card i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--teal))}.check-list{display:grid;gap:14px;margin-top:34px;color:#303840}.check-list li{position:relative;padding-left:26px}.check-list li::before{content:"";position:absolute;left:0;top:.42em;width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px rgba(8,207,193,.12)}.inline-arrow{display:inline-flex;align-items:center;gap:18px;margin-top:34px;font-size:14px;font-weight:800}.inline-arrow span{color:var(--blue)}

.automation-section{background:var(--paper-soft)}.automation-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:stretch;margin-top:64px}.automation-flow article{padding:28px;border:1px solid var(--line);background:#fff;min-height:210px}.automation-flow article>span{font-family:"Space Mono",monospace;font-size:14px;color:var(--blue)}.automation-flow h3{font-size:18px;margin-top:36px}.automation-flow p{font-size:14px;color:#6d7781;margin-top:10px}.flow-arrow{align-self:center;padding:0 12px;color:#aeb6bd}

.integrations-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.module-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.module-pills span{padding:9px 13px;border:1px solid var(--line);font-size:14px;color:#57616b;background:#fff}.integration-orbit{position:relative;min-height:560px}.orbit-center{position:absolute;left:50%;top:50%;width:128px;height:128px;border-radius:50%;display:grid;place-items:center;transform:translate(-50%,-50%);background:#fff;box-shadow:0 25px 70px rgba(13,43,77,.14);z-index:3}.orbit-center img{width:74px}.integration-orbit::before,.integration-orbit::after{content:"";position:absolute;left:50%;top:50%;border:1px solid #e3e8ec;border-radius:50%;transform:translate(-50%,-50%)}.integration-orbit::before{width:350px;height:350px}.integration-orbit::after{width:500px;height:500px}.orbit-card{position:absolute;z-index:4;width:200px;filter:drop-shadow(0 18px 30px rgba(13,43,77,.08))}.orbit-card--one{left:0;top:70px}.orbit-card--two{right:0;top:180px}.orbit-card--three{left:40px;bottom:30px}.orbit-line{position:absolute;height:1px;background:#d9e0e5;transform-origin:left center;z-index:1}.orbit-line--one{width:190px;left:150px;top:178px;transform:rotate(22deg)}.orbit-line--two{width:185px;left:325px;top:280px;transform:rotate(-13deg)}.orbit-line--three{width:150px;left:198px;top:415px;transform:rotate(-47deg)}

.pricing{background:#f5f6f7}.pricing-head{display:flex;align-items:end;justify-content:space-between;gap:40px}.billing-toggle{display:flex;padding:4px;background:#fff;border:1px solid var(--line)}.billing-toggle button{padding:10px 16px;font-size:14px;color:#747e87}.billing-toggle button.is-active{background:var(--ink);color:#fff}.billing-toggle small{margin-left:6px;color:var(--teal)}.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:60px;max-width:920px;margin-left:auto;margin-right:auto}.price-card{position:relative;padding:38px;background:#fff;border:1px solid var(--line)}.price-card--featured{border-color:#0d2b4d;box-shadow:0 25px 70px rgba(13,43,77,.08)}.featured-label{position:absolute;top:0;right:0;padding:8px 12px;background:var(--navy);color:#fff;font-family:"Space Mono",monospace;font-size:14px;letter-spacing:.08em}.price-card__top{display:flex;align-items:center;justify-content:space-between}.price-card__top span{font-size:22px;font-weight:800}.price-card__top small{font-size:14px;color:#8e979f}.price-card>p{min-height:52px;margin-top:20px;color:#6d7781;font-size:14px}.price{display:flex;align-items:baseline;gap:8px;margin:30px 0}.price strong{font-size:35px;letter-spacing:-.05em}.price span{font-size:14px;color:#8a939b}.price-card ul{display:grid;gap:0;margin-top:28px}.price-card li{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.price-card li span{color:#69737d}.price-card li strong{font-size:14px}

.testimonials{background:#eef0f2}.section-heading span{color:#acb2b8}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:56px}.testimonial-grid blockquote{min-height:280px;padding:30px;background:#fff;display:flex;flex-direction:column}.testimonial-grid blockquote p{font-size:15px;line-height:1.65}.testimonial-grid footer{margin-top:auto;padding-top:40px}.testimonial-grid footer strong,.testimonial-grid footer span{display:block}.testimonial-grid footer strong{font-size:14px}.testimonial-grid footer span{margin-top:4px;font-size:14px;color:#929aa2}

.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px;align-items:start}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-item button{width:100%;display:flex;justify-content:space-between;gap:30px;align-items:center;padding:22px 0;text-align:left;font-weight:700}.faq-item i{font-style:normal;font-size:20px;color:#89929b}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}.faq-answer>p{overflow:hidden;color:#69737d;font-size:14px;padding-right:50px}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.faq-item.is-open .faq-answer>p{padding-bottom:24px}

.final-cta{padding:115px 0;text-align:center}.final-cta__inner{max-width:760px}.final-cta h2{font-size:clamp(46px,6vw,76px);line-height:.95;letter-spacing:-.06em}.final-cta>div>p:not(.eyebrow){margin-top:20px;color:#7a848d}.signup-form{display:grid;grid-template-columns:1fr auto;gap:8px;max-width:620px;margin:34px auto 0}.signup-form input{width:100%;height:50px;border:1px solid var(--line);padding:0 16px;outline:none}.signup-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(23,103,255,.1)}.form-message{min-height:24px;margin-top:12px;font-size:14px;color:var(--teal-dark)}.security-row{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:26px;font-family:"Space Mono",monospace;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:#9aa2aa}

.site-footer{padding:74px 0 24px;background:#080a0c;color:#fff}.footer-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:50px}.footer-brand img{width:170px}.footer-brand p{max-width:310px;margin-top:24px;color:#7e8992;font-size:14px}.footer-grid h3{font-family:"Space Mono",monospace;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:#7b858e;margin-bottom:18px}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;gap:10px}.footer-grid a{font-size:14px;color:#a5adb5}.footer-grid a:hover{color:#fff}.footer-bottom{display:flex;align-items:center;gap:12px;margin-top:58px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);color:#5e6871;font-size:14px}.footer-bottom img{width:18px;height:18px;object-fit:contain}

/* =========================================================
   CORRECCIONES CRÍTICAS — MENÚ SUPERPUESTO + IMÁGENES ACHATADAS
   ========================================================= */

/* 1) Mantener siempre la proporción real de logos e imágenes de interfaz */
.brand,
.brand--mobile,
.footer-brand {
  line-height: 0;
}

.brand img,
.brand--mobile img,
.footer-brand img,
.orbit-center img,
.payment-screen img,
.footer-bottom img,
.orbit-card,
.capabilities-intro img {
  display: block;
  max-width: 100%;
  height: auto !important;
  min-height: 0;
  object-fit: contain;
  object-position: center;
  aspect-ratio: auto !important;
}

/* El logo usa su proporción natural 500 × 148 / 300 × 89 */
.brand {
  width: 146px;
  height: auto !important;
  flex: 0 0 auto;
}

.brand img {
  width: 100% !important;
}

.brand--mobile {
  width: 150px;
  height: auto !important;
}

.footer-brand img {
  width: 170px !important;
}

/* Iconos cuadrados de Tribuno */
.orbit-center img {
  width: 74px !important;
  height: 74px !important;
}

.payment-screen img {
  width: 64px !important;
  height: 64px !important;
}

.footer-bottom img {
  width: 18px !important;
  height: 18px !important;
}

/* Tarjetas SVG de integraciones: respetar su proporción horizontal */
.orbit-card {
  width: 200px;
  height: auto !important;
}

/* 2) El menú móvil NO existe visualmente en escritorio */
.mobile-menu {
  display: none !important;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-102%);
}

/* Evita que una clase is-open residual deje el overlay visible en escritorio */
@media (min-width: 901px) {
  .mobile-menu,
  .mobile-menu.is-open {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(-102%) !important;
  }

  .menu-toggle {
    display: none !important;
  }

  body.menu-open {
    overflow: auto !important;
  }
}

/* 3) El menú móvil solo se activa bajo 900 px */
@media (max-width: 900px) {
  .mobile-menu {
    display: block !important;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-102%);
    transition:
      transform .45s cubic-bezier(.72,0,.2,1),
      opacity .2s ease,
      visibility 0s linear .45s;
  }

  .mobile-menu.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    transition:
      transform .45s cubic-bezier(.72,0,.2,1),
      opacity .2s ease,
      visibility 0s linear 0s;
  }

  .brand img,
  .brand--mobile img {
    width: 100% !important;
    height: auto !important;
  }
}

/* 4) Seguridad adicional para cualquier imagen que reciba una altura forzada */
img[src$=".webp"],
img[src$=".svg"],
img[src$=".png"],
img[src$=".jpg"],
img[src$=".jpeg"] {
  object-fit: contain;
}

/* No aplicar altura global fija a logos ni iconos */
.site-header img,
.mobile-menu img,
.site-footer img,
.integration-orbit img,
.payment-screen img {
  flex-shrink: 0;
}

/* =========================================================
   MEJORA TIPOGRÁFICA Y DE LEGIBILIDAD
   - textos más grandes
   - menos letter-spacing
   - mejor line-height
   - corrección de textos montados en la zona inferior
   ========================================================= */

/* Base tipográfica más legible */
html {
  font-size: 16px;
}

body {
  line-height: 1.6;
  letter-spacing: 0;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

p,
li,
a,
button,
input,
span,
small,
dt,
dd {
  letter-spacing: 0;
}

/* Navegación */
.desktop-nav,
.nav-actions {
  font-size: 14px;
}

.desktop-nav {
  gap: 28px;
}

.mobile-login {
  font-size: 15px;
}

.mobile-nav a {
  letter-spacing: -0.025em;
  line-height: 1.08;
}

/* Hero */
.hero-copy h1 {
  letter-spacing: -0.045em;
  line-height: .94;
}

.hero-lead {
  font-size: 18px;
  line-height: 1.65;
}

.hero-trust {
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: .02em;
}

/* Etiquetas pequeñas: siguen siendo técnicas, pero ya no microscópicas */
.micro-label,
.eyebrow {
  font-size: 14px;
  line-height: 1.45;
  letter-spacing: .06em;
}

.invoice-card__head {
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: .02em;
}

.status-dot {
  font-size: 14px;
}

.invoice-meta dt,
.invoice-lines span,
.invoice-meta dd,
.invoice-lines strong {
  font-size: 14px;
  line-height: 1.5;
}

.invoice-total span,
.invoice-total strong {
  font-size: 16px;
}

.metric-card p {
  font-size: 14px;
  line-height: 1.5;
}

.metric-card strong {
  font-size: 30px;
  letter-spacing: -0.025em;
}

.metric-card > span {
  font-size: 14px;
}

/* Logos de empresas */
.company-row {
  font-size: 14px;
  line-height: 1.45;
}

/* Selectores de documento */
.mode-item {
  font-size: 14px;
  line-height: 1.4;
}

.mode-item small {
  font-size: 14px;
  letter-spacing: 0;
}

/* Títulos principales */
.capabilities-intro h2,
.scale-inner h2,
.final-cta h2,
.section-heading h2 {
  letter-spacing: -0.035em;
}

.capabilities-intro > p:not(.eyebrow),
.section-copy,
.final-cta > div > p:not(.eyebrow) {
  font-size: 17px;
  line-height: 1.7;
}

/* Capacidades */
.cap-icon {
  font-size: 14px;
}

.capability-list h3 {
  font-size: 17px;
  line-height: 1.35;
}

.capability-list p {
  font-size: 14px;
  line-height: 1.65;
}

/* Estadísticas */
.stats-grid strong {
  font-size: 34px;
  line-height: 1.1;
}

.stats-grid span {
  font-size: 14px;
  line-height: 1.45;
  letter-spacing: .02em;
}

/* Cobranza y pagos */
.payment-screen p {
  font-size: 14px;
}

.payment-screen strong {
  letter-spacing: -0.03em;
}

.payment-screen span {
  font-size: 14px;
}

.payment-screen button {
  font-size: 14px;
}

.collection-card > span {
  font-size: 14px;
  letter-spacing: .02em;
}

.collection-card p {
  font-size: 14px;
  line-height: 1.55;
}

.check-list {
  font-size: 15px;
  line-height: 1.6;
}

.inline-arrow {
  font-size: 15px;
}

/* Automatización */
.automation-flow article > span {
  font-size: 14px;
  letter-spacing: .02em;
}

.automation-flow h3 {
  font-size: 20px;
  line-height: 1.3;
}

.automation-flow p {
  font-size: 14px;
  line-height: 1.65;
}

/* Integraciones */
.module-pills span {
  font-size: 14px;
  line-height: 1.35;
}

/* Precios */
.billing-toggle button {
  font-size: 14px;
}

.featured-label {
  font-size: 14px;
  letter-spacing: .02em;
}

.price-card__top small {
  font-size: 14px;
}

.price-card > p {
  min-height: 0;
  font-size: 15px;
  line-height: 1.6;
}

.price strong {
  letter-spacing: -0.03em;
}

.price span {
  font-size: 14px;
}

.price-card li,
.price-card li strong {
  font-size: 14px;
  line-height: 1.4;
}

/* Testimonios */
.testimonial-grid blockquote p {
  font-size: 16px;
  line-height: 1.7;
}

.testimonial-grid footer strong {
  font-size: 14px;
  line-height: 1.4;
}

.testimonial-grid footer span {
  font-size: 14px;
  line-height: 1.45;
}

/* FAQ */
.faq-item button {
  font-size: 16px;
  line-height: 1.4;
}

.faq-answer > p {
  font-size: 15px;
  line-height: 1.7;
}

/* CTA final */
.final-cta h2 {
  line-height: 1.02;
}

.form-message {
  font-size: 14px;
  line-height: 1.5;
}

/* La fila inferior estaba demasiado pequeña y podía montarse */
.security-row {
  gap: 14px 24px;
  font-size: 14px;
  line-height: 1.55;
  letter-spacing: .02em;
}

.security-row span,
.security-row a {
  white-space: normal;
}

/* Footer: más grande, con alturas de línea seguras */
.footer-grid {
  align-items: start;
}

.footer-grid > * {
  min-width: 0;
}

.footer-brand p {
  font-size: 14px;
  line-height: 1.7;
}

.footer-grid h3 {
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: .05em;
}

.footer-grid a {
  font-size: 14px;
  line-height: 1.5;
}

.footer-bottom {
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 10px 14px;
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0;
  white-space: normal;
}

.footer-bottom > * {
  min-width: 0;
}

.footer-bottom p,
.footer-bottom span,
.footer-bottom a {
  line-height: 1.6;
  overflow-wrap: anywhere;
}

/* Evita solapamientos por line-height demasiado cerrado */
h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

p {
  text-wrap: pretty;
}

/* Responsive: legibilidad móvil */
@media (max-width: 900px) {
  .desktop-nav,
  .nav-actions {
    font-size: 14px;
  }

  .hero-copy h1 {
    line-height: .98;
    letter-spacing: -0.035em;
  }

  .hero-lead {
    font-size: 17px;
  }

  .company-row {
    font-size: 14px;
  }

  .capability-list h3 {
    font-size: 16px;
  }

  .capability-list p,
  .automation-flow p,
  .price-card > p,
  .faq-answer > p {
    font-size: 14px;
  }

  .footer-grid a {
    font-size: 14px;
  }

  .footer-bottom {
    display: grid;
    grid-template-columns: auto 1fr;
    width: 100%;
  }
}

@media (max-width: 640px) {
  .micro-label,
  .eyebrow {
    font-size: 14px;
    letter-spacing: .04em;
  }

  .hero-trust,
  .security-row {
    font-size: 14px;
  }

  .footer-bottom {
    grid-template-columns: 1fr;
    font-size: 14px;
  }

  .footer-bottom img {
    margin-bottom: 2px;
  }
}

/* =========================================================
   LEGIBILIDAD FINAL + CONTRATACIÓN
   ========================================================= */
:root { --readable-small: 13px; }

/* Ningún texto informativo importante debe quedar microscópico */
.eyebrow,
.micro-label,
.hero-trust,
.invoice-card__head,
.status-dot,
.mode-item small,
.cap-icon,
.stats-grid span,
.collection-card > span,
.automation-flow article > span,
.featured-label,
.footer-grid h3,
.security-row {
  font-size: var(--readable-small);
  line-height: 1.5;
}

.price-card__top small,
.price span,
.testimonial-grid footer span,
.footer-bottom,
.metric-card > span {
  font-size: 14px;
}

.price-card > p,
.price-card li,
.price-card li strong,
.module-category-card p,
.module-category-card__items span,
.pricing-intro,
.pricing-modules-note p {
  font-size: 15px;
  line-height: 1.65;
}

.price-card .button { margin-bottom: 4px; }

.contract-section {
  padding: 110px 0;
  background: #0d1117;
  color: #fff;
}
.contract-layout {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(520px, 1.1fr);
  gap: clamp(50px, 8vw, 120px);
  align-items: start;
}
.contract-copy { position: sticky; top: 120px; }
.contract-copy h2 {
  margin: 18px 0 24px;
  font-size: clamp(46px, 5vw, 76px);
  line-height: .98;
  letter-spacing: -.045em;
}
.contract-copy h2 span { color: #8ee8cf; }
.contract-copy > p:not(.eyebrow) {
  max-width: 620px;
  color: rgba(255,255,255,.72);
  font-size: 18px;
  line-height: 1.7;
}
.contract-points {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 34px;
}
.contract-points span {
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  color: rgba(255,255,255,.82);
  font-size: 14px;
}
.contract-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  padding: clamp(24px, 4vw, 42px);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 28px;
  background: rgba(255,255,255,.06);
  box-shadow: 0 30px 70px rgba(0,0,0,.22);
}
.form-field { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.form-field--full { grid-column: 1 / -1; }
.form-field label {
  font-size: 14px;
  font-weight: 700;
  color: rgba(255,255,255,.88);
}
.form-field label span { font-weight: 400; color: rgba(255,255,255,.5); }
.contract-form input,
.contract-form select,
.contract-form textarea {
  width: 100%;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 14px;
  background: rgba(255,255,255,.08);
  color: #fff;
  font: inherit;
  font-size: 16px;
  line-height: 1.4;
  outline: none;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.contract-form input,
.contract-form select { min-height: 54px; padding: 0 16px; }
.contract-form textarea { padding: 14px 16px; resize: vertical; min-height: 120px; }
.contract-form input::placeholder,
.contract-form textarea::placeholder { color: rgba(255,255,255,.38); }
.contract-form select option { color: #111; }
.contract-form input:focus,
.contract-form select:focus,
.contract-form textarea:focus {
  border-color: #8ee8cf;
  background: rgba(255,255,255,.11);
  box-shadow: 0 0 0 4px rgba(142,232,207,.12);
}
.contract-form .button { grid-column: 1 / -1; min-height: 56px; font-size: 16px; }
.contract-form__privacy {
  grid-column: 1 / -1;
  margin: -4px 0 0;
  color: rgba(255,255,255,.5);
  font-size: 14px;
  line-height: 1.55;
  text-align: center;
}
.contract-form .form-message {
  grid-column: 1 / -1;
  min-height: 0;
  margin: 0;
  font-size: 15px;
  line-height: 1.5;
}
.contract-form .form-message.is-success { color: #8ee8cf; }
.contract-form .form-message.is-error { color: #ffaaaa; }
.hp-field { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

@media (max-width: 980px) {
  .contract-layout { grid-template-columns: 1fr; }
  .contract-copy { position: static; }
}
@media (max-width: 640px) {
  :root { --readable-small: 12px; }
  .contract-section { padding: 78px 0; }
  .contract-copy h2 { font-size: clamp(42px, 13vw, 58px); }
  .contract-copy > p:not(.eyebrow) { font-size: 16px; }
  .contract-form { grid-template-columns: 1fr; padding: 22px; border-radius: 22px; }
  .form-field--full, .contract-form .button, .contract-form .form-message, .contract-form__privacy { grid-column: 1; }
}
