@font-face{
        font-family: "Lemon Milk";
        src: url("/fontes/lemonmilk-bold.woff2")
          format("woff2");
        font-weight: 700;
        font-style: normal;
        font-display: swap;
      }

      @font-face{
        font-family: "Ekster";
        src: url("/fontes/ekster-regular.woff2")
          format("woff2");
        font-weight: 400;
        font-style: normal;
        font-display: swap;
      }

      @font-face{
        font-family: "Ekster";
        src: url("/fontes/ekster-medium.woff2")
          format("woff2");
        font-weight: 500;
        font-style: normal;
        font-display: swap;
      }

      @font-face{
        font-family: "Ekster";
        src: url("/fontes/ekster-bold.woff2")
          format("woff2");
        font-weight: 700;
        font-style: normal;
        font-display: swap;
      }

      #block-solucoes{
        /* CORES PADRONIZADAS (SISTEMA 360) */
        --cor-primaria-navy: #253064;
        --cor-primaria-amarelo: #d89a14;
        --white: #ffffff;
        --gray-light: #f5f5f5;

        /* DIMENSÕES E ESPAÇAMENTOS */
        --gap-externo: 3vh;
        --padding-lateral-conteudo: 80px;
        --largura-maxima-conteudo: 1200px;
        --margin-alinhada: calc(
          var(--gap-externo) + var(--padding-lateral-conteudo)
        );
      }

      #block-solucoes #sol-section *{
        box-sizing: border-box;
        /* Garante que padding não estoure a largura */
      }

      #block-solucoes #sol-section{
        width: 100%;
        padding: 80px 0;
        background: var(--white);
        position: relative;
        overflow: hidden;
        font-family: "Ekster", sans-serif;
        color: var(--cor-primaria-navy);
      }

      /* Removidos seletores globais body e * para evitar vazamento de cor */

      #block-solucoes .sol-container{
        width: 100%;
        padding: 0 var(--margin-alinhada);
        position: relative;
      }

      #block-solucoes .solucoes-header{
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        margin-bottom: 50px;
        width: 100%;
        /* Spans the full container padding */
      }

      #block-solucoes .sol-header-text{
        display: flex;
        flex-direction: column;
        gap: 0;
      }

      #block-solucoes .solucoes-tag{
        font-size: 18px;
        font-weight: 700;
        color: var(--cor-primaria-amarelo);
        text-transform: uppercase;
        letter-spacing: 2px;
        line-height: 1;
        display: block;
        margin-bottom: 12px;
        /* Reduzido para aproximar do título azul */
      }

      #block-solucoes .solucoes-title{
        font-family: "Lemon Milk", sans-serif;
        font-weight: 700;
        font-size: 34px;
        /* Tamanho ajustado para premium */
        color: var(--cor-primaria-navy);
        text-transform: uppercase;
        line-height: 1;
        margin: 0;
        /* Remove margens para alinhar perfeitamente com os botões */
      }

      #block-solucoes .sol-nav-controls{
        display: flex;
        gap: 15px;
        user-select: none;
        -webkit-user-select: none;
      }

      #block-solucoes .sol-nav-btn{
        width: 44px;
        height: 44px;
        border-radius: 50%;
        background: var(--cor-primaria-amarelo);
        border: none;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        color: #ffffff;
        transition: all 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        user-select: none;
        -webkit-user-select: none;
        touch-action: manipulation;
        /* Previne zoom no duplo clique rápido */
        -webkit-tap-highlight-color: transparent;
      }

      #block-solucoes .sol-nav-btn:active{
        transform: scale(0.85);
        /* Feedback de clique tátil */
      }

      #block-solucoes .sol-nav-btn:hover{
        background: #c28a12;
        transform: scale(1.03);
      }

      #block-solucoes .sol-nav-btn svg{
        width: 30px !important;
        min-width: 30px !important;
        height: 30px !important;
        min-height: 30px !important;
        stroke-width: 2 !important;
        pointer-events: none;
        display: block;
        margin: auto;
      }

      #block-solucoes .sol-nav-btn.is-clicking{
        animation: solucoes__nav-click-soft 0.22s ease-out;
      }

      @keyframes solucoes__nav-click-soft{
        0% {
          transform: scale(1);
        }

        45% {
          transform: scale(0.92);
        }

        100% {
          transform: scale(1);
        }
      }

      /* PADRÃO REVEAL SURGICAL */
      #block-solucoes .reveal-item{
        opacity: 0;
        transform: translate3d(0, 30px, 0);
        filter: blur(10px);
        transition:
          opacity 0.32s cubic-bezier(0.23, 1, 0.32, 1),
          transform 0.32s cubic-bezier(0.23, 1, 0.32, 1),
          filter 0.32s ease;
        transition-delay: var(--reveal-delay, 0s);
        will-change: transform, opacity, filter;
      }

      #block-solucoes .reveal-item.is-visible{
        opacity: 1;
        transform: translate3d(0, 0, 0);
        filter: blur(0);
      }

      #block-solucoes .solucoes-slider{
        width: 100%;
        overflow: visible;
        margin-right: calc(-1 * var(--margin-alinhada));
      }

      #block-solucoes .solucoes-track{
        display: flex;
        gap: 25px;
        transition: transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
        will-change: transform;
      }

      #block-solucoes .sol-card{
        flex: 0 0 660px;
        height: 42vh;
        min-height: 340px;
        display: flex;
        border-radius: 12px;
        overflow: hidden;
        background: var(--cor-primaria-navy);
        transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
      }

      #block-solucoes .sol-card:hover{
        box-shadow: 0 15px 40px rgba(37, 48, 100, 0.25);
      }

      #block-solucoes .sol-card-img{
        flex: 0 0 45%;
        position: relative;
        overflow: hidden;
      }

      #block-solucoes .sol-card-img img{
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.5s ease;
      }

      #block-solucoes .sol-card:hover .sol-card-img img{
        transform: scale(1.1);
      }

      #block-solucoes .sol-card-img img{
        user-select: none;
        -webkit-user-drag: none;
        pointer-events: none;
        /* Imagem não recebe clique direto, o link pai recebe */
      }

      #block-solucoes .sol-card-content{
        flex: 1;
        padding: 24px 34px;
        color: var(--white);
        display: flex;
        flex-direction: column;
        justify-content: center;
      }

      #block-solucoes .sol-card-title{
        font-family: "Lemon Milk", sans-serif;
        font-size: 20px;
        font-weight: bold;
        text-transform: uppercase;
        margin-bottom: 12px;
        line-height: 1.2;
        letter-spacing: 0.5px;
      }

      #block-solucoes .sol-card-desc{
        font-size: 15px;
        line-height: 1.6;
        opacity: 0.85;
        margin-bottom: 16px;
        font-weight: 400;
      }

      #block-solucoes .sol-saiba-mais{
        display: flex;
        /* Flex para melhor alinhamento com a flecha */
        align-items: center;
        gap: 4px;
        margin-top: 24px;
        /* Fixado para ficar próximo ao texto, não jogado no fundo */
        color: #ffffff;
        text-decoration: none;
        font-weight: 700;
        font-size: 12px;
        text-transform: uppercase;
        letter-spacing: 1px;
        position: relative;
        width: fit-content;
        transition: color 0.3s ease;
      }

      #block-solucoes .sol-saiba-mais:hover{
        color: #d89a14;
        /* Dourado oficial no hover */
      }

      #block-solucoes .sol-saiba-mais svg{
        width: 12px;
        /* Reduzido para bater com o padrão 360 */
        height: 12px;
        stroke: #ffffff;
        stroke-width: 3;
        transition: stroke 0.3s ease;
      }

      #block-solucoes .sol-saiba-mais:hover svg{
        stroke: #d89a14;
        animation: solucoes__arrow-loop 0.8s infinite;
      }

      @keyframes solucoes__arrow-loop{
        0% {
          transform: translate(0, 0);
          opacity: 1;
        }

        45% {
          transform: translate(4px, -4px);
          opacity: 0;
        }

        46% {
          transform: translate(-4px, 4px);
          opacity: 0;
        }

        100% {
          transform: translate(0, 0);
          opacity: 1;
        }
      }

      /* Traçado logo abaixo do texto (mais fino conforme referência 360) */
      #block-solucoes .sol-saiba-mais::after{
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        /* Mais fino como no padrão resolvido */
        background: #ffffff;
        transition: all 0.3s ease;
      }

      #block-solucoes .sol-saiba-mais:hover::after{
        background: #d89a14;
      }

      @media (max-width: 1024px){
        #block-solucoes{
          --padding-lateral-conteudo: 20px;
          --gap-externo: 0px;
        }

        #block-solucoes #sol-section{
          padding: 60px 0;
          overflow: visible; /* libera reveal animation que era cortada na base */
        }

        #block-solucoes .sol-container{
          display: flex;
          flex-direction: column;
          align-items: center;
          padding: 0 !important;
        }

        #block-solucoes .solucoes-header{
          display: contents;
        }

        #block-solucoes .sol-header-text{
          order: 1;
          width: 100%;
          text-align: center;
          margin-bottom: 24px;
          padding: 0 20px;
        }

        #block-solucoes .solucoes-tag{
          margin-bottom: 8px;
        }

        #block-solucoes .solucoes-title{
          font-size: 28px;
          max-width: 15ch;
          margin: 0 auto;
        }

        /* Mobile: scroll controlado apenas por JS, sem snap CSS (evita conflito com scrollBy) */
        #block-solucoes .solucoes-slider{
          order: 2;
          overflow: hidden;
          width: 100%;
          margin: 20px 0 0;
          padding: 0;
        }

        #block-solucoes .solucoes-track{
          display: flex;
          flex-direction: row;
          gap: 0;
          padding: 0;
          transition: transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
          will-change: transform;
        }

        /* Cada card = 1 página do slider, com respiro simétrico (34px = padrão de margem mobile do site) */
        #block-solucoes .sol-card{
          flex: 0 0 calc(100% - 68px);
          margin: 0 34px;
          flex-direction: column;
          min-height: auto;
          height: auto;
          border-radius: 24px;
        }

        #block-solucoes .sol-card-img{
          flex: none;
          height: 320px;
        }

        #block-solucoes .sol-card-content{
          padding: 32px 26px;
          text-align: center;
          align-items: center;
        }

        #block-solucoes .sol-card-title{
          font-size: 24px;
          max-width: 14ch;
        }

        #block-solucoes .sol-saiba-mais{
          margin: 24px auto 0;
        }

        #block-solucoes .sol-nav-controls{
          order: 3;
          margin-top: 28px;
          justify-content: center;
          width: 100%;
          display: flex;
          gap: 10px;
          padding: 0 20px;
        }

        /* Blur mais suave no mobile */
        #block-solucoes .reveal-item{
          filter: blur(4px);
          transform: translate3d(0, 16px, 0);
        }
      }

      @media (max-width: 1024px){
        #block-solucoes .sol-nav-btn{
          width: 44px;
          height: 44px;
        }
      }

      @media (max-width: 640px){
        #block-solucoes .solucoes-slider{
          margin-top: 16px;
        }

        #block-solucoes .solucoes-track{
          gap: 0;
          padding: 0;
        }

        /* Card = 100% do slider menos margem simétrica (34px = padrão de margem mobile do site) */
        #block-solucoes .sol-card{
          flex: 0 0 calc(100% - 68px);
          margin: 0 34px;
          border-radius: 22px;
        }

        #block-solucoes .sol-card-img{
          height: clamp(220px, 58vw, 280px);
        }

        #block-solucoes .sol-card-content{
          padding: 28px 22px 30px;
        }

        #block-solucoes .sol-card-title{
          font-size: 20px;
          max-width: 13ch;
          margin-bottom: 14px;
        }

        #block-solucoes .sol-card-desc{
          max-width: 28ch;
          line-height: 1.5;
          margin-left: auto;
          margin-right: auto;
        }

        #block-solucoes .sol-nav-controls{
          margin-top: 30px;
          gap: 14px;
        }

        /* Setas maiores no mobile */
        #block-solucoes .sol-nav-btn{
          width: 52px;
          height: 52px;
        }

        #block-solucoes .sol-nav-btn svg{
          width: 26px !important;
          min-width: 26px !important;
          height: 26px !important;
          min-height: 26px !important;
        }
      }