      .verifactu-section {
        position: relative;

        overflow: hidden;

        padding: 130px 0 120px;

        background: radial-gradient(circle at 10% 10%, rgba(126, 103, 205, 0.08), transparent 28%), radial-gradient(circle at 90% 70%, rgba(70, 150, 210, 0.07), transparent 28%), #fff;
      }

      /* BACKGROUND ORBS */

      .vf-bg-orb {
        position: absolute;

        border-radius: 50%;

        pointer-events: none;

        filter: blur(2px);
      }

      .vf-bg-orb-1 {
        width: 360px;
        height: 360px;

        left: -220px;
        top: 22%;

        background: rgba(126, 103, 205, 0.055);
      }

      .vf-bg-orb-2 {
        width: 300px;
        height: 300px;

        right: -170px;
        bottom: 18%;

        background: rgba(85, 155, 210, 0.05);
      }


      .vf-eyebrow {
        display: inline-flex;

        align-items: center;

        gap: 9px;

        padding: 7px 13px;

        border-radius: 100px;

        background: #f0ecfb;

        color: #7259c6;

        font-size: 0.72rem;

        font-weight: 700;

        letter-spacing: 0.07em;

        margin-bottom: 24px;
      }

      .vf-eyebrow-icon {
        width: 24px;
        height: 24px;

        display: flex;

        align-items: center;
        justify-content: center;

        border-radius: 7px;

        background: #fff;

        font-size: 0.7rem;
      }

      .vf-title {
        max-width: 850px;

        margin: 0 auto 25px;

        font-size: clamp(2.8rem, 5vw, 4.5rem);

        line-height: 1.02;

        letter-spacing: -0.05em;

        font-weight: 700;
      }

      .vf-title span {
        display: block;

        color: #765bcf;
      }

      .vf-intro {
        max-width: 800px;

        margin: 0 auto;

        color: #6f6c72;

        font-size: 1.12rem;

        line-height: 1.7;
      }

      .vf-intro strong {
        color: #454249;
      }

      .vf-intro-secondary {
        max-width: 690px;

        margin: 18px auto 0;

        color: #89858c;

        font-size: 0.95rem;

        line-height: 1.65;
      }


      .vf-deadlines {
        max-width: 720px;

        margin: 55px auto 0;

        padding: 18px;

        display: flex;

        align-items: center;

        justify-content: center;

        gap: 20px;

        background: #faf9fc;

        border: 1px solid rgba(60, 50, 80, 0.07);

        border-radius: 17px;
      }

      .vf-deadline {
        display: flex;

        align-items: center;

        gap: 11px;

        flex: 1;
      }

      .vf-deadline-icon {
        width: 40px;
        height: 40px;

        flex: 0 0 40px;

        display: flex;

        align-items: center;
        justify-content: center;

        border-radius: 11px;

        background: #ece7fc;

        color: #765bcf;
      }

      .vf-deadline-icon.blue {
        background: #e7f2fa;

        color: #4b8ebd;
      }

      .vf-deadline span {
        display: block;

        color: #99949e;

        font-size: 0.62rem;
      }

      .vf-deadline strong {
        display: block;

        margin-top: 2px;

        font-size: 0.85rem;
      }

      .vf-deadline-line {
        width: 1px;

        height: 40px;

        background: #dfdce2;
      }


      .vf-carousel-wrapper {
        position: relative;

        margin-top: 90px;
      }

      .vf-navigation {
        display: flex;

        max-width: 800px;

        margin: 0 auto 45px;

        border-bottom: 1px solid #e9e6eb;
      }

      .vf-nav-item {
        position: relative;

        flex: 1;

        border: 0;

        background: none;

        padding: 0 10px 18px;

        color: #aaa6ae;

        cursor: pointer;

        transition: 0.3s ease;
      }

      .vf-nav-item:hover {
        color: #7560bb;
      }

      .vf-nav-item.active {
        color: #2f2c32;
      }

      .vf-nav-item.active:after {
        content: "";

        position: absolute;

        left: 10%;

        right: 10%;

        bottom: -1px;

        height: 2px;

        background: #775bd0;

        border-radius: 10px;
      }

      .vf-nav-number {
        display: block;

        font-size: 0.62rem;

        font-weight: 700;

        letter-spacing: 0.05em;

        margin-bottom: 6px;
      }

      .vf-nav-text {
        font-size: 0.78rem;

        font-weight: 600;
      }


      .vf-carousel {
        position: relative;
        min-height: 470px;
        max-width: 1180px;
        margin: 0 auto;

      }

      .vf-slide {
        position: absolute;
        inset: 0;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 80px;
        align-items: center;
        opacity: 0;
        visibility: hidden;
        transform: translateX(35px);
        transition:
          opacity 0.55s ease,
          transform 0.65s cubic-bezier(0.22, 1, 0.36, 1),
          visibility 0.55s ease;
      }

      .vf-slide.active {
        position: relative;

        opacity: 1;

        visibility: visible;

        transform: translateX(0);
      }

      .vf-slide-copy {
        max-width: 470px;
      }

      .vf-slide-label {
        display: block;

        color: #8b83a0;

        font-size: 0.68rem;

        font-weight: 700;

        letter-spacing: 0.08em;

        margin-bottom: 16px;
      }

      .vf-slide-copy h3 {
        font-size: clamp(2.2rem, 4vw, 3.5rem);

        line-height: 1.04;

        letter-spacing: -0.045em;

        margin-bottom: 22px;
      }

      .vf-slide-copy h3 span {
        color: #765bcf;
      }

      .vf-slide-copy p {
        color: #76727a;

        font-size: 1rem;

        line-height: 1.7;
      }

      .vf-feature-pill {
        display: inline-flex;

        align-items: center;

        gap: 8px;

        margin-top: 20px;

        padding: 9px 12px;

        background: #f1edfb;

        border-radius: 9px;

        color: #7058bf;

        font-size: 0.68rem;

        font-weight: 700;
      }

      .vf-feature-pill.success {
        background: #edf7f0;

        color: #59966c;
      }


      .vf-slide-visual {
        position: relative;

        min-height: 450px;

        display: flex;

        align-items: center;

        justify-content: center;
      }

      .vf-visual-glow {
        position: absolute;

        width: 430px;
        height: 300px;

        background: radial-gradient(ellipse, rgba(120, 93, 210, 0.15), transparent 65%);

        filter: blur(15px);
      }


      .vf-invoice-card {
        position: relative;

        width: 390px;

        min-height: 360px;

        padding: 28px;

        background: #fff;

        border: 1px solid rgba(50, 40, 60, 0.08);

        border-radius: 18px;

        box-shadow:
          0 30px 70px rgba(45, 38, 60, 0.12),
          0 5px 20px rgba(45, 38, 60, 0.05);

        transform: rotate(-1deg);

        animation: vfFloat 5s ease-in-out infinite;
      }

      .vf-invoice-header {
        display: flex;

        justify-content: space-between;

        align-items: center;

        padding-bottom: 22px;

        border-bottom: 1px solid #eeeaf0;
      }

      .vf-brand {
        display: flex;

        align-items: center;

        gap: 9px;
      }

      .vf-brand-logo {
        width: 30px;
        height: 30px;

        display: flex;

        align-items: center;
        justify-content: center;

        border-radius: 8px;

        background: #765bd0;

        color: #fff;

        font-size: 0.72rem;

        font-weight: 700;
      }

      .vf-brand strong {
        display: block;

        font-size: 0.72rem;
      }

      .vf-brand small {
        display: block;

        color: #aaa6ae;

        font-size: 0.51rem;
      }

      .vf-invoice-status {
        display: flex;

        align-items: center;

        gap: 5px;

        color: #59966c;

        font-size: 0.58rem;

        font-weight: 700;

        background: #edf7f0;

        padding: 6px 8px;

        border-radius: 20px;
      }

      .vf-invoice-number {
        margin-top: 25px;
      }

      .vf-invoice-number small {
        display: block;

        color: #aaa6ae;

        font-size: 0.52rem;

        letter-spacing: 0.08em;
      }

      .vf-invoice-number strong {
        display: block;

        font-size: 1.15rem;

        margin-top: 4px;
      }

      .vf-invoice-client {
        margin-top: 27px;

        padding: 13px;

        background: #faf9fb;

        border-radius: 9px;
      }

      .vf-invoice-client span {
        display: block;

        color: #aaa6ae;

        font-size: 0.48rem;

        letter-spacing: 0.08em;
      }

      .vf-invoice-client strong {
        display: block;

        font-size: 0.7rem;

        margin-top: 5px;
      }

      .vf-invoice-client small {
        display: block;

        color: #99949e;

        font-size: 0.55rem;

        margin-top: 3px;
      }

      .vf-invoice-total {
        display: flex;

        justify-content: space-between;

        align-items: end;

        margin-top: 30px;
      }

      .vf-invoice-total span {
        color: #8d8991;

        font-size: 0.65rem;
      }

      .vf-invoice-total strong {
        font-size: 1.45rem;

        letter-spacing: -0.04em;
      }

      .vf-qr {
        display: flex;

        align-items: center;

        gap: 9px;

        margin-top: 20px;
      }

      .vf-qr-pattern {
        width: 42px;
        height: 42px;

        display: grid;

        grid-template-columns: repeat(3, 1fr);

        gap: 2px;
      }

      .vf-qr-pattern span {
        background: #29262d;

        border-radius: 1px;
      }

      .vf-qr-pattern span:nth-child(2),
      .vf-qr-pattern span:nth-child(4),
      .vf-qr-pattern span:nth-child(8) {
        background: #fff;

        border: 1px solid #29262d;
      }

      .vf-qr small {
        display: block;

        color: #aaa6ae;

        font-size: 0.5rem;
      }

      .vf-qr strong {
        display: block;

        font-size: 0.6rem;

        margin-top: 2px;
      }


      .vf-verification {
        position: relative;

        width: 500px;

        display: flex;

        align-items: center;

        justify-content: center;

        gap: 20px;
      }

      .vf-mini-invoice {
        width: 180px;

        min-height: 235px;

        padding: 20px;

        background: #fff;

        border-radius: 14px;

        box-shadow: 0 20px 45px rgba(45, 38, 60, 0.1);

        transform: rotate(-3deg);
      }

      .vf-mini-top {
        display: flex;

        justify-content: space-between;

        font-size: 0.55rem;
      }

      .vf-mini-top span {
        color: #aaa6ae;
      }

      .vf-mini-lines {
        margin-top: 25px;
      }

      .vf-mini-lines span {
        display: block;

        height: 5px;

        margin-bottom: 9px;

        border-radius: 5px;

        background: #ece9ee;
      }

      .vf-mini-lines span:nth-child(1) {
        width: 80%;
      }

      .vf-mini-lines span:nth-child(2) {
        width: 100%;
      }

      .vf-mini-lines span:nth-child(3) {
        width: 65%;
      }

      .vf-mini-lines span:nth-child(4) {
        width: 88%;
      }

      .vf-mini-bottom {
        display: flex;

        justify-content: space-between;

        align-items: end;

        margin-top: 30px;
      }

      .vf-mini-bottom strong {
        font-size: 0.75rem;
      }

      .vf-mini-qr {
        width: 35px;
        height: 35px;

        background: linear-gradient(90deg, #222 25%, transparent 25% 50%, #222 50% 75%, transparent 75%), linear-gradient(#222 25%, transparent 25% 50%, #222 50% 75%, transparent 75%);

        background-size: 10px 10px;
      }

      .vf-verification-connector {
        display: flex;

        align-items: center;

        gap: 5px;

        color: #8168d0;
      }

      .vf-connector-line {
        width: 45px;

        height: 1px;

        background: #cfc7e5;
      }

      .vf-connector-dot {
        width: 7px;
        height: 7px;

        border-radius: 50%;

        background: #7c63cb;

        animation: vfPulse 2s infinite;
      }

      .vf-aeat-card {
        position: relative;

        width: 210px;

        min-height: 190px;

        padding: 23px;

        background: #faf9fb;

        border: 1px solid #e9e5ec;

        border-radius: 16px;

        box-shadow: 0 20px 45px rgba(45, 38, 60, 0.08);
      }

      .vf-aeat-logo {
        display: inline-flex;

        padding: 6px 8px;

        border-radius: 6px;

        background: #fff;

        border: 1px solid #e5e1e8;

        color: #62606a;

        font-size: 0.6rem;

        font-weight: 800;

        margin-bottom: 25px;
      }

      .vf-aeat-card strong {
        display: block;

        font-size: 0.78rem;
      }

      .vf-aeat-card>span {
        display: block;

        color: #9b969f;

        font-size: 0.58rem;

        margin-top: 4px;
      }

      .vf-aeat-check {
        position: absolute;

        right: 18px;

        bottom: 18px;

        width: 35px;
        height: 35px;

        display: flex;

        align-items: center;
        justify-content: center;

        border-radius: 50%;

        background: #eaf6ed;

        color: #59996d;
      }


      .vf-records {
        width: 500px;

        padding: 25px;

        background: #fff;

        border-radius: 18px;

        box-shadow: 0 25px 60px rgba(45, 38, 60, 0.1);

        border: 1px solid rgba(50, 40, 60, 0.06);
      }

      .vf-record-header {
        display: flex;

        justify-content: space-between;

        align-items: center;

        padding-bottom: 20px;

        border-bottom: 1px solid #eeeaf0;
      }

      .vf-record-header small {
        display: block;

        color: #aaa6ae;

        font-size: 0.5rem;

        letter-spacing: 0.08em;
      }

      .vf-record-header strong {
        display: block;

        margin-top: 4px;

        font-size: 0.82rem;
      }

      .vf-live {
        display: flex;

        align-items: center;

        gap: 5px;

        padding: 5px 8px;

        border-radius: 20px;

        background: #edf7f0;

        color: #59966c;

        font-size: 0.52rem;

        font-weight: 700;
      }

      .vf-live i {
        width: 5px;
        height: 5px;

        border-radius: 50%;

        background: #5b9c70;

        animation: vfPulse 1.7s infinite;
      }

      .vf-record {
        display: grid;

        grid-template-columns: 38px 1fr auto;

        gap: 11px;

        align-items: center;

        padding: 16px 0;

        border-bottom: 1px solid #f0edf2;
      }

      .vf-record-icon {
        width: 38px;
        height: 38px;

        display: flex;

        align-items: center;
        justify-content: center;

        border-radius: 10px;
      }

      .vf-record-icon.purple {
        background: #eee9fc;
        color: #765bd0;
      }

      .vf-record-icon.blue {
        background: #e8f3fa;
        color: #518fba;
      }

      .vf-record-icon.peach {
        background: #fbece6;
        color: #c07d64;
      }

      .vf-record-data strong {
        display: block;

        font-size: 0.67rem;
      }

      .vf-record-data span {
        display: block;

        margin-top: 3px;

        color: #aaa6ae;

        font-size: 0.55rem;
      }

      .vf-record-state {
        display: flex;

        align-items: center;

        gap: 4px;

        color: #5b996d;

        font-size: 0.54rem;

        font-weight: 600;
      }

      .vf-record-progress {
        display: flex;

        align-items: center;

        gap: 10px;

        margin-top: 18px;

        padding: 12px;

        border-radius: 10px;

        background: #faf9fb;
      }

      .vf-record-progress>span {
        width: 27px;
        height: 27px;

        border-radius: 8px;

        background: #ece7fb;

        position: relative;
      }

      .vf-record-progress>span:after {
        content: "✓";

        position: absolute;

        inset: 0;

        display: flex;

        align-items: center;
        justify-content: center;

        color: #765bd0;

        font-size: 0.65rem;

        font-weight: 700;
      }

      .vf-record-progress strong {
        display: block;

        font-size: 0.6rem;
      }

      .vf-record-progress small {
        display: block;

        color: #aaa6ae;

        font-size: 0.5rem;

        margin-top: 2px;
      }


      .vf-matfy-flow {
        position: relative;

        width: 620px;

        display: flex;

        align-items: center;

        justify-content: center;

        gap: 15px;
      }

      .vf-flow-node {
        position: relative;

        z-index: 2;

        width: 150px;

        min-height: 150px;

        padding: 20px;

        background: #fff;

        border-radius: 17px;

        box-shadow: 0 20px 45px rgba(45, 38, 60, 0.09);

        border: 1px solid rgba(50, 40, 60, 0.06);

        text-align: center;
      }

      .vf-flow-icon {
        width: 45px;
        height: 45px;

        margin: 0 auto 13px;

        display: flex;

        align-items: center;
        justify-content: center;

        border-radius: 13px;

        font-size: 1rem;
      }

      .vf-flow-icon.purple {
        background: #eee9fc;
        color: #765bd0;
      }

      .vf-flow-icon.blue {
        background: #e8f3fa;
        color: #518fba;
      }

      .vf-flow-icon.green {
        background: #eaf6ed;
        color: #5a996d;
      }

      .vf-flow-node strong {
        display: block;

        font-size: 0.72rem;
      }

      .vf-flow-node span {
        display: block;

        margin-top: 5px;

        color: #aaa6ae;

        font-size: 0.51rem;
      }

      .vf-flow-arrow {
        position: relative;

        z-index: 3;

        color: #a49ab9;

        font-size: 0.8rem;
      }

      .vf-flow-line {
        position: absolute;

        left: 70px;
        right: 70px;

        top: 75px;

        height: 1px;

        background: #dcd6e8;

        z-index: 1;
      }


      .vf-progress {
        display: flex;

        align-items: center;

        gap: 20px;

        max-width: 900px;

        margin: 35px auto 0;
      }

      .vf-progress-track {
        flex: 1;

        height: 2px;

        background: #e7e3e9;

        overflow: hidden;
      }

      .vf-progress-fill {
        display: block;

        width: 25%;

        height: 100%;

        background: #795fd0;

        transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1);
      }

      .vf-progress-meta {
        display: flex;

        gap: 4px;

        color: #aaa6ae;

        font-size: 0.6rem;

        font-weight: 700;
      }

      .vf-progress-current {
        color: #765bd0;
      }


      .vf-controls {
        display: flex;

        justify-content: flex-end;

        gap: 8px;

        margin-top: 25px;
      }

      .vf-control {
        width: 40px;
        height: 40px;

        border: 1px solid #e4e0e7;

        background: #fff;

        border-radius: 10px;

        display: flex;

        align-items: center;
        justify-content: center;

        color: #625e67;

        cursor: pointer;

        transition: 0.25s ease;
      }

      .vf-control:hover {
        background: #765bd0;

        border-color: #765bd0;

        color: #fff;

        transform: translateY(-2px);
      }


      .vf-bottom {
        display: flex;

        align-items: center;

        justify-content: space-between;

        gap: 30px;

        margin-top: 100px;

        padding: 40px 45px;

        background: #f7f4ee;

        border-radius: 22px;
      }

      .vf-bottom-eyebrow {
        display: block;

        color: #8069c5;

        font-size: 0.62rem;

        font-weight: 700;

        letter-spacing: 0.08em;
      }

      .vf-bottom h3 {
        margin: 7px 0 0;

        font-size: 1.9rem;

        letter-spacing: -0.035em;
      }

      .vf-bottom h3 span {
        color: #8069c5;
      }

      .vf-cta {
        white-space: nowrap;
      }


      @keyframes vfFloat {

        0%,
        100% {
          transform: translateY(0) rotate(-1deg);
        }

        50% {
          transform: translateY(-8px) rotate(-1deg);
        }
      }

      @keyframes vfPulse {

        0%,
        100% {
          transform: scale(1);

          opacity: 1;
        }

        50% {
          transform: scale(1.5);

          opacity: 0.45;
        }
      }

      @media (max-width: 991px) {
        .vf-slide {
          grid-template-columns: 1fr;

          gap: 40px;
        }

        .vf-slide-copy {
          max-width: 650px;

          margin: auto;

          text-align: center;
        }

        .vf-feature-pill {
          margin-left: auto;
          margin-right: auto;
        }

        .vf-slide-visual {
          min-height: 400px;
        }

        .vf-navigation {
          max-width: 100%;
        }
      }

      @media (max-width: 767px) {
        .verifactu-section {
          padding: 85px 15px;
        }

        .vf-title {
          font-size: 2.65rem;
        }

        .vf-intro {
          font-size: 1rem;
        }

        .vf-deadlines {
          flex-direction: column;

          align-items: stretch;

          gap: 14px;
        }

        .vf-deadline-line {
          width: 100%;
          height: 1px;
        }

        .vf-navigation {
          overflow-x: auto;
        }

        .vf-nav-item {
          min-width: 100px;
        }

        .vf-nav-text {
          font-size: 0.68rem;
        }

        .vf-carousel {
          min-height: 700px;
        }

        .vf-slide-visual {
          min-height: 330px;

          overflow: hidden;
        }

        .vf-invoice-card {
          width: 310px;

          min-height: 330px;
        }

        .vf-verification {
          transform: scale(0.75);
        }

        .vf-records {
          width: 100%;
        }

        .vf-matfy-flow {
          transform: scale(0.6);
        }

        .vf-bottom {
          flex-direction: column;

          align-items: flex-start;

          padding: 30px;
        }

        .vf-bottom h3 {
          font-size: 1.6rem;
        }
      }

      @media (prefers-reduced-motion: reduce) {

        .vf-invoice-card,
        .vf-connector-dot,
        .vf-live i {
          animation: none !important;
        }
      }