
  :root{
    --tf-bg:#A9528A;
    --tf-soft:#0f1a33;
    --tf-card:#111c36;
    --tf-text:#e8eefc;
    --tf-muted:#b7c2da;
    --tf-border:rgba(255,255,255,.10);
    --tf-primary:#3b82f6;
    --tf-primary-2:#2563eb;
  }
  .tf-container{max-width:1100px;margin:0 auto;padding:0 16px;}
  .tf-section{padding:56px 0;background:#fff;}
  .tf-section--soft{background:#f6f8ff;}
  .tf-section__header{margin-bottom:22px;}
  .tf-h2{font-size:28px;line-height:1.2;margin:0 0 8px;}
  .tf-h3{font-size:18px;margin:0 0 6px;}
  .tf-p{margin:0;color:#4a5568;}
.tf-hero{
  padding:64px 0;
  background: linear-gradient(
    180deg,
    #C05FA0 0%,
    #A9528A 40%,
    #7D3666 75%,
    #5C2448 100%
  );
  color:#fff;
}
  .tf-hero__grid{display:grid;grid-template-columns:1.25fr .75fr;gap:22px;align-items:stretch;}
  .tf-title{font-size:40px;line-height:1.1;margin:10px 0;}
  .tf-subtitle{color:var(--tf-muted);max-width:56ch;}
  .tf-badge{display:inline-block;border:1px solid var(--tf-border);padding:6px 10px;border-radius:999px;color:var(--tf-text);font-size:13px;}
  .tf-hero__cta{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap;}
  .tf-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:600;border:1px solid transparent;}
  .tf-btn--primary{background:var(--tf-primary);color:#fff;}
  .tf-btn--primary:hover{background:var(--tf-primary-2);}
  .tf-btn--ghost{background:transparent;border-color:var(--tf-border);color:var(--tf-text);}
  .tf-hero__meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px;}
  .tf-metaItem{border:1px solid var(--tf-border);border-radius:14px;padding:12px;background:rgba(255,255,255,.03);}
  .tf-metaItem strong{display:block;font-size:14px;}
  .tf-metaItem span{display:block;color:var(--tf-muted);font-size:13px;margin-top:3px;}

  .tf-card{background:rgba(255,255,255,.04);border:1px solid var(--tf-border);border-radius:16px;padding:18px;}
  .tf-card__title{margin:0 0 10px;font-size:18px;}
  .tf-list{margin:0;padding-left:18px;color:var(--tf-muted);}
  .tf-list li{margin:8px 0;}
  .tf-card__footer{margin-top:12px;}
  .tf-link{color:#93c5fd;text-decoration:none;font-weight:600;}
  .tf-link:hover{text-decoration:underline;}

  .tf-grid{display:grid;gap:14px;}
  .tf-grid--3{grid-template-columns:repeat(3,1fr);}
  .tf-grid--2{grid-template-columns:repeat(2,1fr);}
  .tf-box{border:1px solid #e5e7eb;border-radius:14px;padding:16px;background:#fff;}
  .tf-feature{border:1px solid #e5e7eb;border-radius:14px;padding:16px;background:#fff;}

  .tf-steps{display:grid;gap:12px;}
  .tf-step{display:flex;gap:12px;align-items:flex-start;border:1px solid #e5e7eb;border-radius:14px;padding:14px;background:#fff;}
  .tf-step__num{width:34px;height:34px;border-radius:10px;background:#e8efff;display:flex;align-items:center;justify-content:center;font-weight:800;color:#1d4ed8;}
  .tf-step__content .tf-p{color:#4a5568;}

  .tf-cta{padding:46px 0;background: linear-gradient(
    180deg,
    #C05FA0 0%,
    #A9528A 40%,
    #7D3666 75%,
    #5C2448 100%
  );
  color:#fff;}
  
  .tf-cta__box{border:1px solid var(--tf-border);border-radius:18px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(255,255,255,.03);}
  .tf-cta__actions{display:flex;gap:10px;flex-wrap:wrap;}

  .tf-faq{display:grid;gap:10px;}
  .tf-faq__item{border:1px solid #e5e7eb;border-radius:14px;padding:12px;background:#fff;}
  .tf-faq__item summary{cursor:pointer;font-weight:700;}
  .tf-faq__body{margin-top:8px;color:#4a5568;}

  @media (max-width: 900px){
    .tf-hero__grid{grid-template-columns:1fr;}
    .tf-hero__meta{grid-template-columns:1fr; }
    .tf-grid--3{grid-template-columns:1fr;}
    .tf-grid--2{grid-template-columns:1fr;}
    .tf-title{font-size:34px;}
    .tf-cta__box{flex-direction:column;align-items:flex-start;}
  }

  
  .rest-img-banner{
    position:relative;
    width:100%;
    height:380px;
    background-image:url('../img/software_restaurante.jpg');
    background-size:cover;
    background-position:center;
}

.rest-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        rgba(0,0,0,0.25),
        rgba(0,0,0,0.45)
    );
}

/*punto de venta*/