    *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

    :root{
      --green:#1ea34b;
      --green-dark:#156b32;
      --green-deep:#0d4a22;
      --green-light:#3dd870;
      --green-pale:#eef8f2;
      --white:#fff;
      --ink:#0f2318;
      --ink2:#2d4a37;
      --gray:#6b7a72;
    }

    html{scroll-behavior:smooth}
    body{font-family:'Barlow',sans-serif;color:var(--ink);background:var(--white);overflow-x:hidden}

    /* ══ NAVBAR ══ */
    /* hero inline nav */
    .hero-nav a{
      font-family:'Barlow Condensed',sans-serif;
      font-size:13px;font-weight:800;
      letter-spacing:0.12em;text-transform:uppercase;
      color:rgba(255,255,255,0.88);
      text-decoration:none;
      padding:9px 22px;
      border-radius:40px;
      border:1.5px solid rgba(255,255,255,0.28);
      background:rgba(0,0,0,0.22);
      transition:background 0.2s,color 0.2s,border-color 0.2s;
      display:inline-flex;align-items:center;gap:7px;
    }
    .hero-nav a svg{width:15px;height:15px;flex-shrink:0}
    .svc-icon{
      display:inline-block;
      vertical-align:middle;
      width:0.72em;height:0.72em;
      margin-right:0.12em;
      position:relative;top:-0.05em;
    }
    .hero-nav a:hover{
      background:var(--green);
      border-color:var(--green);
      color:#fff;
    }

    /* ══ HERO ══ */
    #hero{
      height:100vh;min-height:580px;
      position:relative;
      display:flex;align-items:center;justify-content:center;
      overflow:hidden;
    }
    .hero-img{
      position:absolute;inset:0;
      background:url('../img/hero-bg.png') center/cover no-repeat;
    }
    .hero-content{
      position:relative;z-index:2;
      padding:56px 64px;
      width:56%;
      max-width:900px;
      text-align:center;
      background:rgba(3,25,12,0.42);
      border-radius:24px;
      border:1px solid rgba(255,255,255,0.18);
      backdrop-filter:blur(12px);
      -webkit-backdrop-filter:blur(12px);
      box-shadow:0 24px 70px rgba(0,0,0,0.28);
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
    }
    .hero-logo-hero{
      width:min(420px,75%);
      display:block;
      filter:drop-shadow(0 2px 14px rgba(0,0,0,0.45));
      margin:0 auto 28px;
    }
    .hero-desc{
      font-size:17px;color:rgba(255,255,255,0.82);
      max-width:480px;line-height:1.75;margin:0 auto 36px;
    }
    .hero-nav{
      display:flex;flex-wrap:wrap;gap:8px;
      margin-bottom:36px;
      justify-content:center;
    }
    /* scroll chevron */
    .scroll-hint{
      position:absolute;bottom:28px;left:50%;transform:translateX(-50%);
      color:#fff;
      font-family:'Barlow Condensed',sans-serif;font-size:15px;letter-spacing:0.24em;text-transform:uppercase;
      display:flex;flex-direction:column;align-items:center;gap:7px;
      animation:bounce 2s infinite;
      text-shadow:0 2px 12px rgba(0,0,0,0.8),0 1px 3px rgba(0,0,0,0.9);
    }
    .scroll-hint svg{width:36px;height:36px;fill:currentColor;filter:drop-shadow(0 2px 8px rgba(0,0,0,0.8))}
    @keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(7px)}}



    /* ══ SECTION INTRO ══ */
    .section-intro{
      text-align:center;padding:72px 6% 0;
    }
    .section-intro h2{
      font-family:'Barlow Condensed',sans-serif;
      font-size:clamp(32px,4.5vw,52px);font-weight:900;
      color:var(--ink);margin-bottom:12px;
    }
    .section-intro h2 span{color:var(--green)}
    .section-intro p{font-size:16px;color:var(--gray);max-width:520px;margin:0 auto}

    /* ══ SERVICE BLOCKS ══ */
    .service{
      display:grid;
      grid-template-columns:1fr 1fr;
      align-items:center;
      gap:0;
      padding:72px 6%;
    }
    .service.reverse .service-img{order:2}
    .service.reverse .service-body{order:1}

    .service-img{
      border-radius:16px;overflow:hidden;
      aspect-ratio:4/3;position:relative;
    }
    .service-img img{
      width:100%;height:100%;object-fit:cover;
      display:block;
      transition:transform 0.5s ease;
    }
    .service-img:hover img{transform:scale(1.04)}
    .service-img-badge{
      position:absolute;bottom:16px;left:16px;
      background:var(--green);color:#fff;
      font-family:'Barlow Condensed',sans-serif;
      font-size:11px;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;
      padding:5px 13px;border-radius:40px;
    }

    .service-body{
      padding:0 52px;
      min-width:0;
    }
    .service.reverse .service-body{padding:0 52px 0 0}

    .service-tag{
      display:inline-flex;align-items:center;gap:8px;
      font-family:'Barlow Condensed',sans-serif;
      font-size:11px;font-weight:800;letter-spacing:0.25em;text-transform:uppercase;
      color:var(--green);margin-bottom:14px;
    }
    .service-tag::before{content:'';width:20px;height:2px;background:currentColor;border-radius:2px}

    .service-title{
      font-family:'Barlow Condensed',sans-serif;
      font-weight:900;font-size:clamp(34px,4vw,54px);line-height:0.95;
      color:var(--ink);margin-bottom:10px;letter-spacing:-0.01em;
    }
    .service-title span{color:var(--green)}

    .service-bar{width:36px;height:4px;background:var(--green);border-radius:3px;margin-bottom:22px}

    .service-text{font-size:16px;line-height:1.78;color:var(--ink2);margin-bottom:28px}

    /* feature list */
    .feature-list{
      list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:32px;
    }
    .feature-list li{
      display:flex;align-items:flex-start;gap:10px;
      font-size:15px;color:var(--ink2);line-height:1.5;
    }
    .feature-list li::before{
      content:'';flex-shrink:0;
      width:18px;height:18px;margin-top:2px;
      background:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='%231ea34b' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E") center/contain no-repeat;
    }

    /* ── BANK CAROUSEL ── */
    .bank-label{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--green);opacity:0.75;margin-bottom:10px}
    .bank-carousel{
      overflow:hidden;
      margin-bottom:32px;
      -webkit-mask-image:linear-gradient(to right,transparent 0%,black 12%,black 88%,transparent 100%);
      mask-image:linear-gradient(to right,transparent 0%,black 12%,black 88%,transparent 100%);
    }
    .bank-track{
      display:flex;
      align-items:center;
      gap:40px;
      width:max-content;
      transition:transform 0.85s cubic-bezier(0.4,0,0.2,1);
    }
    .bank-logo{
      display:inline-flex;align-items:center;justify-content:center;
      height:90px;flex-shrink:0;
    }
    .bank-logo img{
      display:block;width:auto;
      object-fit:contain;
      filter:grayscale(1) opacity(0.4);
      transition:filter 0.7s ease;
    }
    .bank-logo.active img{filter:grayscale(0) opacity(1)}
    /* altura calculada para 28px de desenho visível em cada logo */
    .bank-logo[data-bank="bb"]       img{height:88px}  /* visual 227/500 → 500×(40/227) */
    .bank-logo[data-bank="caixa"]    img{height:28px}  /* sem whitespace → direto */
    .bank-logo[data-bank="sicredi"]  img{height:28px}  /* SVG sem whitespace → direto */
    .bank-logo[data-bank="sicoob"]   img{height:75px}  /* visual 371/1000 → 1000×(28/371) */
    .bank-logo[data-bank="banestes"] img{height:38px}  /* visual 170/230 → 230×(28/170) */

    /* wa button */
    .wa-btn{
      display:inline-flex;align-items:center;gap:10px;
      background:#25D366;color:#fff;text-decoration:none;
      font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:15px;
      letter-spacing:0.06em;text-transform:uppercase;
      padding:14px 26px;border-radius:8px;
      box-shadow:0 4px 18px rgba(37,211,102,0.3);
      transition:background 0.2s,transform 0.18s,box-shadow 0.18s;
    }
    .wa-btn:hover{background:#1ebe5d;transform:translateY(-2px);box-shadow:0 8px 26px rgba(37,211,102,0.4)}
    .wa-btn svg{width:20px;height:20px;fill:#fff;flex-shrink:0}
    .wa-num{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;color:var(--green);opacity:0.7;margin-top:8px;display:block}

    /* divider */
    .divider{width:calc(100% - 12%);height:1px;background:rgba(30,163,75,0.1);margin:0 6%}

    /* dark service (licenciamento) */
    .service.s-dark{
      background:var(--green-deep);
      border-radius:20px;
      margin:0 3% 60px;
      padding:72px 5%;
    }
    .service.s-dark .service-title{color:#fff}
    .service.s-dark .service-title span{color:var(--green-light)}
    .service.s-dark .service-tag{color:var(--green-light)}
    .service.s-dark .service-bar{background:var(--green-light)}
    .service.s-dark .service-text{color:rgba(255,255,255,0.6)}
    .service.s-dark .feature-list li{color:rgba(255,255,255,0.7)}
    .service.s-dark .feature-list li::before{
      background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='%233dd870' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E");
    }

    /* ══ FOOTER ══ */
    footer{
      background:var(--green-deep);
      color:rgba(255,255,255,0.45);
      text-align:center;
      padding:44px 20px;
      font-size:14px;line-height:2;
    }
    footer strong{color:var(--green-light)}
    .footer-logo{height:56px;mix-blend-mode:screen;filter:brightness(1.1);margin-bottom:14px}

    /* ══ REVEAL ══ */
    .reveal{opacity:0;transform:translateY(28px);transition:opacity 0.65s ease,transform 0.65s ease}
    .reveal.visible{opacity:1;transform:none}
    .d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}

    /* ══ RESPONSIVE ══ */
    @media(max-width:1024px){
      .hero-content{width:75%;padding:44px 48px}
    }
    @media(max-width:900px){
      .service,.service.reverse{grid-template-columns:1fr;padding:52px 5%}
      .service-body,.service.reverse .service-body{padding:0;margin-top:32px}
      .service.reverse .service-img{order:unset}
      .service.reverse .service-body{order:unset}
      .service.s-dark{margin:0 0 40px;border-radius:0;padding:52px 5%}
    }
    @media(max-width:640px){
      #hero{height:auto;min-height:100svh}
      .hero-content{width:90%;padding:36px 24px}
      .section-intro{padding:52px 5% 0}
    }
