/* ============ CONTRATAÇÃO ============ */
  .contract-table-wrap{overflow-x:auto; margin-bottom:44px; border:1px solid var(--border); border-radius:var(--radius); background:var(--surface);}
  .contract-table{width:100%; border-collapse:collapse; min-width:760px; font-size:13.5px;}
  .contract-table th{
    text-align:left; padding:18px 18px; font-family:'Poppins',sans-serif; font-size:13px; font-weight:700;
    text-transform:uppercase; letter-spacing:.03em; color:var(--text); background:var(--surface-2);
    border-bottom:2px solid var(--green); white-space:nowrap;
  }
  .contract-table td{padding:16px 18px; border-bottom:1px solid var(--border-soft); vertical-align:top; color:var(--text-muted); line-height:1.5;}
  .contract-table tr:last-child td{border-bottom:none;}
  .ct-plan{font-weight:700; color:var(--text); white-space:nowrap;}
  .ct-no, .ct-yes{display:flex; align-items:flex-start; gap:8px; min-width:220px;}
  .ct-no svg{color:#ef4444; width:16px;height:16px; flex-shrink:0; margin-top:1px;}
  .ct-yes svg{color:var(--green); width:16px;height:16px; flex-shrink:0; margin-top:1px;}

  .contract-cards{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .contract-card{
    background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--radius); padding:28px 26px; position:relative; overflow:hidden;
    transition:box-shadow .4s ease, border-color .35s ease, transform .5s cubic-bezier(.34,1.2,.64,1);
  }
  .contract-card::after{
    content:''; position:absolute; inset:0; z-index:-1; opacity:0; pointer-events:none;
    background:radial-gradient(circle at 50% -10%, rgba(63,125,100,.16), transparent 65%);
    transition:opacity .45s ease;
  }
  .contract-card:hover{
    transform:translateY(-8px) !important;
    box-shadow:0 30px 60px -28px rgba(22,33,31,.35);
    border-color:var(--green-soft);
  }
  .contract-card:hover::after{opacity:1;}
  .cc-letter-bg{
    position:absolute; z-index:-1; right:-8%; bottom:-12%; width:62%; height:auto;
    opacity:.07; filter:brightness(0) invert(1); pointer-events:none;
    transition:opacity .4s ease, transform .5s ease;
  }
  .contract-card:hover .cc-letter-bg{opacity:.12; transform:scale(1.05);}
  .cc-label{font-family:var(--font-mono); font-size:11px; color:var(--green-soft); letter-spacing:.05em; text-transform:uppercase;}
  .cc-logo-row{display:flex; align-items:center; gap:8px; margin:10px 0 4px;}
  .cc-logo-mark{width:46px;height:46px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; box-shadow:0 4px 12px -2px rgba(0,0,0,.25); overflow:hidden; transition:transform .5s cubic-bezier(.34,1.56,.64,1);}
  .contract-card:hover .cc-logo-mark{transform:scale(1.12) rotate(-8deg);}
  .cc-logo-plus{font-size:15px; color:var(--text-faint); font-weight:600;}
  .contract-card h3{font-size:19px; font-weight:700; margin:8px 0 2px;}
  .cc-sub{font-size:12.5px; color:var(--text-faint); margin-bottom:16px;}
  .cc-model{font-size:13px; color:var(--text-muted); margin-bottom:10px;}
  .cc-model strong{color:var(--text);}
  .cc-desc{font-size:13px; color:var(--text-muted); line-height:1.6; margin-bottom:18px;}
  .cc-desc strong{color:var(--text);}
  .cc-heading{display:block; font-family:var(--font-mono); font-size:10.5px; text-transform:uppercase; letter-spacing:.04em; color:var(--text-faint); margin-bottom:12px;}
  .cc-list{display:flex; flex-direction:column; gap:8px; margin-bottom:20px;}
  .cc-list li{position:relative; padding-left:20px; font-size:13px; color:var(--text-muted); line-height:1.5; transition:transform .25s ease, color .25s ease;}
  .cc-list li:hover{transform:translateX(5px); color:var(--text);}
  .cc-list li::before{content:'✓'; position:absolute; left:0; color:var(--green-soft); font-weight:700; display:inline-block; transition:transform .3s cubic-bezier(.34,1.56,.64,1);}
  .cc-list li:hover::before{transform:scale(1.35);}
  .cc-important{
    background:rgba(245,158,11,.07); border:1px solid rgba(245,158,11,.22); border-radius:10px;
    padding:14px 16px; font-size:12.5px; color:var(--text-muted); line-height:1.6;
    transition:background-color .35s ease, border-color .35s ease;
  }
  .contract-card:hover .cc-important{background:rgba(245,158,11,.12); border-color:rgba(245,158,11,.35);}
  .cc-important strong{color:var(--amber-soft);}

  @media (max-width:900px){
    .contract-cards{grid-template-columns:1fr;}
  }

  /* ============ TESTIMONIAL PREMIUM CARDS ============ */
  .testi-premium-card{
    background:radial-gradient(ellipse 140% 100% at 0% 0%, #12253f 0%, #0a1524 55%, #060d18 100%);
    border-radius:20px; padding:24px 22px; position:relative; overflow:hidden;
    box-shadow:0 24px 60px -20px rgba(0,0,0,.45); border:1px solid rgba(255,255,255,.06);
  }
  .tp-header{display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:10px;}
  .tp-logo{display:flex; align-items:center; gap:7px; font-family:var(--font-display); font-weight:700; font-size:16px; color:#fff;}
  .tp-logo-mark{
    width:30px;height:30px; border-radius:50%; flex-shrink:0;
    display:flex; align-items:center; justify-content:center; overflow:hidden;
  }
  .tp-dotapp{color:#4ade80;}
  .tp-chart{width:56px; height:36px; opacity:.85; flex-shrink:0;}
  .tp-tagline{
    font-size:10.5px; font-weight:700; letter-spacing:.03em; color:rgba(255,255,255,.55);
    line-height:1.5; margin-bottom:16px; text-transform:uppercase;
  }
  .tp-tagline span{color:#4ade80;}
  .tp-body{position:relative; margin-bottom:14px;}
  .tp-avatar{width:78px;height:78px; border-radius:50%; object-fit:cover; border:2.5px solid #4ade80; display:block;}
  .tp-quote-mark{
    position:absolute; top:-14px; left:56px; font-family:Georgia,serif; font-size:52px; font-weight:700;
    color:#4ade80; opacity:.9; line-height:1;
  }
  .tp-quote{font-size:13px; color:rgba(255,255,255,.82); line-height:1.6; margin-bottom:14px;}
  .tp-quote span{display:block; color:#4ade80; font-weight:700; margin-top:8px;}
  .tp-stars{display:flex; align-items:center; gap:4px; margin-bottom:12px;}
  .tp-stars svg{display:inline-block; opacity:0; transform:scale(.4) rotate(-20deg); transition:opacity .35s ease, transform .35s cubic-bezier(.34,1.56,.64,1);}
  .testi-premium-card.stagger-in .tp-stars svg{opacity:1; transform:scale(1) rotate(0);}
  .testi-premium-card.stagger-in .tp-stars svg:nth-child(1){transition-delay:.15s;}
  .testi-premium-card.stagger-in .tp-stars svg:nth-child(2){transition-delay:.25s;}
  .testi-premium-card.stagger-in .tp-stars svg:nth-child(3){transition-delay:.35s;}
  .testi-premium-card.stagger-in .tp-stars svg:nth-child(4){transition-delay:.45s;}
  .testi-premium-card.stagger-in .tp-stars svg:nth-child(5){transition-delay:.55s;}
  .tp-who{margin-bottom:18px;}
  .tp-name{font-size:15px; font-weight:700; color:#4ade80;}
  .tp-company{font-size:12.5px; color:rgba(255,255,255,.5);}
  .tp-footer{
    display:flex; align-items:center; gap:10px; background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.08); border-radius:12px; padding:12px 14px;
  }
  .tp-footer svg{width:17px;height:17px; flex-shrink:0;}
  .tp-footer span{font-size:11px; color:rgba(255,255,255,.65); line-height:1.4;}
  .tp-footer-right{margin-left:auto; text-align:right; color:#4ade80 !important; font-weight:700;}
  .placeholder-flag{
    display:inline-block; margin-top:16px; font-family:var(--font-mono); font-size:10.5px;
    color:var(--amber); border:1px solid rgba(245,158,11,.3); background:rgba(245,158,11,.06);
    padding:3px 8px; border-radius:6px;
  }
