/* ---- intapp-managed-services.php line 13 ---- */
    /* =====================================================
      ALL PAGE CSS — CONSOLIDATED
      ===================================================== */

    /* ---------- Stat box + counter ---------- */
    .stat-box {
      position: relative;
      overflow: hidden;
      background: linear-gradient(180deg, #E0EFFF, #ffffff);
    }
    .stat-box::before {
      content: '';
      position: absolute;
      top: -50%;
      left: -50%;
      width: 200%;
      height: 200%;
      background-size: 200% 200%;
      z-index: 0;
    }
    .stat-box > * {
      position: relative;
      z-index: 1;
    }
    .stat {
      background: -webkit-linear-gradient(0deg, #0859B7 -41%, #007EFF 43%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      text-fill-color: transparent;
      line-height: 1.2;
      padding: 2px 0;
      display: inline-block;
      min-width: 4ch;
      text-align: center;
    }
    .stat-box span + div {
      font-size: 16px !important;
      color: #121313ff;
      font-weight: 600;
    }

    /* ---------- Nav tabs (Boomi key features) ---------- */
    #key_features_boomi .nav-tabs .nav-link.active,
    #key_features_boomi .nav-tabs .nav-link:focus,
    #key_features_boomi .nav-tabs .nav-link:hover {
      color: #0a0a0a !important;
      background: #ffffff !important;
      border: none !important;
      border-radius: 38px !important;
    }

    /* ---------- Agentic AI cards ---------- */
    .new-card {
      border: 2px solid #ffffffff;
    }
    .new-card:hover {
      box-shadow: 0 4px 24px #8a38f536;
      background:
        linear-gradient(1deg, #ffffffff, #ffffffff) padding-box,
        linear-gradient(95deg, #1B8AFC, #7970FE, #B560FF) border-box !important;
      border: 2px solid transparent;
      border-radius: 12px;
      padding: 20px;
    }

    /* ---------- Case study section ---------- */
    .case-study-section h2:after {
      background: none !important;
    }
    .case-study-section a {
      color: #ffffff !important;
    }

    /* ---------- Accordion / feature card text states ---------- */
    #accordionExample button.accordion-button {
      color: #000000 !important;
    }
    #section2 p {
      color: #000000c2 !important;
      transition: all 0.3s ease-in-out;
    }
    #section2 .feature-card:hover p {
      color: #ffffff !important;
      transition: all 0.3s ease-in-out;
    }
    .feature-card:hover {
      box-shadow: 0 4px 16px #5CB8FF, 0 4px 16px #35A65C !important;
      background: transparent !important;
      color: #000000ff !important;
      border: none !important;
    }
    #section2 .feature-card:hover p,
    #section2 .feature-card:hover h5 {
      color: #000000 !important;
    }

    /* ---------- Sticky navbar ---------- */
    .sticky-navbar.stuck {
      position: fixed;
      top: 90px;
      left: 0;
      right: 0;
      box-shadow: 0 4px 16px rgb(0 0 0 / .08);
      animation: stickyFadeIn 0.3s;
      z-index: 98;
    }

    /* ---------- Buttons / misc ---------- */
    .intapp-button {
      text-decoration: none;
      padding: 15px 25px;
      border: 1px solid #fff;
      border-radius: 100px;
      margin-left: 0;
      margin-top: 20px !important;
      display: inline-block;
      background: #fff;
      color: #000 !important;
      font-weight: 600;
    }
    .intapp-button:hover {
      background: transparent !important;
    }
    div.ms-auto div {
      width: 30px;
      height: 30px;
      border-radius: 100%;
      background: #fff;
      text-align: center;
    }
    div.ms-auto > div > i {
      line-height: 30px;
      color: #1B8AFC;
    }
    /* Cloud Tabs */
    .cloud-tabs .nav-link {
        border-radius: 30px;
        padding: 10px 20px;
        background: #ffffff00 !important;
        color: #ffffff;
        border-radius: 40px;
        border: 1px solid #1B8AFC;
        }

    .cloud-tabs .nav-link.active {
    background: #007EFF !important ;
    color: #ffffff;
    
    }

        /* Feature cards */
    .cloud-feature {
        background: #f0f0f0;
        border-radius: 10px;
        padding: 16px;
        font-size: 13px;
        height: 100%;        
        min-height: 240px;  
        display: flex;
        flex-direction: column;
    }
    @media (max-width: 767px) {
    .cloud-tabs .nav-item {
        width: 100%;
    }

    .cloud-tabs .nav-link {
        display: block;
        width: 100%;
        text-align: center;
    }
    }

    /* ---------- Benefits cards ---------- */
    .benefits-card {
      background-color: #ffffff;
      border-radius: 20px;
    }
    .benefits-card > img {
      width: 50px;
      height: 50px;
    }
    .benefits-card:hover {
      box-shadow: 0 0 40px 5px #0078d485 !important;
    }

    /* ---------- Migration card / solution button ---------- */
    .migration-card {
      background-color: #003966;
      border-radius: 15px;
      min-height: 400px;
      text-align: center;
    }
    .solution-btn {
      border-radius: 30px;
      padding: 10px 35px 10px 35px;
      background: linear-gradient(to right, #09599A, #10E0D0);
      border: 0;
    }
    .solution-btn:hover {
      background: linear-gradient(to right, #39A8FF, #2b82c9);
    }

    /* ---------- Boomi solutions tabs ---------- */
    #boomiSolutionsTabs.boomi-solutions-tabs .nav-link.active {
      background: transparent !important;
      color: #2e2e2eff !important;
      border-bottom: 2px solid #1B8AFC !important;
    }
    #boomiSolutionsTabs {
      border-bottom: 1px solid #707070ff !important;
    }
    #boomiSolutionsTabs.boomi-solutions-tabs .nav-link:hover {
      background: transparent !important;
      color: #000000 !important;
    }
    .challenge-section{        
        background:#F5FBFF;
    }

    .challenge-grid{
        display:grid;
        grid-template-columns:repeat(3,1fr);
        gap:24px;
    }

    .challenge-card {
        position: relative;
        border-radius: 16px;
        overflow: visible; /* ← change this */
        transition: .35s;
        padding: 2px;
        background: #fff;
    }

    .challenge-card::before {
        content: '';
        position: absolute;
        inset: 0;
        border-radius: 8px;
        padding: 2px;
        background: linear-gradient(138deg,
        #003966 0%,
        #207CEC 52%,
        #22EBCF 100%);
        -webkit-mask: 
             linear-gradient(#fff 0 0) content-box,
             linear-gradient(#fff 0 0);
        -webkit-mask-composite: xor;
        mask-composite: exclude;
        opacity: 0;
        transition: opacity .35s;
    }


    .challenge-card-inner {
        position: relative;
        background: #fff;
        border-radius: 8px; /* ← slightly less than card to stay inside */
        padding: 20px 17px;
        height: 100%;
        text-align: center;
        transition: .35s;
        overflow: hidden; /* ← move it here */
    }

    .challenge-card:hover::before{
        opacity:1;
    }

    .challenge-card:hover{
        box-shadow: 0 20px 40px rgba(0, 57, 102, .12);
    }
    

    .challenge-card h4
    {
      font-size: 19px;
    }
    .challenge-card p{
        margin:0;
        font-size:16px;
        line-height:1.8;
        color:#666;
    }

    @media(max-width:991px){

        .challenge-grid{
            grid-template-columns:repeat(2,1fr);
        }

    }

    @media(max-width:767px){

        .challenge-grid{
            grid-template-columns:1fr;
        }

    }
   
    /* ---------- Data & Integration platforms grid ---------- */
    .di-platforms {
      padding: 70px 20px;
      background: #ffffff;
      text-align: center;
    }
    .di-platforms-container {
      max-width: 1200px;
      margin: auto;
    }
    .di-platforms-title {
      font-size: 30px;
      font-weight: 700;
      margin-bottom: 40px;
      color: #000;
    }
    .di-platforms-grid {
      display: grid;
      grid-template-columns: repeat(6, 1fr);
      gap: 20px;
    }
    .di-platform-card {
      border-radius: 12px;
      padding: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: 0.3s ease;
    }
    .di-platform-card:hover {
      transform: translateY(-5px);
    }
    .di-platform-card img {
      object-fit: contain;
    }
    h6 {
      font-weight: 500;
    }
    .di-features-grid h6 {
      font-weight: 600 !important;
    }

    /* ---------- Sticky nav links ---------- */
    #stickyNav .nav-link.active,
    #stickyNav .nav-link:focus,
    #stickyNav .nav-link:hover {
      background: #39A8FF;
    }

    /* ---------- Integration card grid (unused section retained) ---------- */
    .integration-card-section {
      background: #f5f5f5;
    }
    .integration-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 28px;
    }
    .integration-card {
      padding: 20px;
      border-radius: 16px;
      background: #ffffff;
      transition: all .3s ease;
      position: relative;
    }
    .integration-card.active,
    .integration-card:hover {
      background: #003D84;
    }
    .integration-card:hover h5,
    .integration-card.active p,
    .integration-card.active h5,
    .integration-card:hover p {
      color: #ffffff;
    }
    .integration-icon {
      width: 52px;
      height: 52px;
      margin-bottom: 10px;
    }
    .integration-card h3 {
      font-size: 34px;
      line-height: 1.3;
      font-weight: 700;
      color: #111;
      margin-bottom: 22px;
    }
    .integration-card p {
      color: #333;
      margin: 0;
    }
    @media (max-width: 992px) {
      .integration-grid { grid-template-columns: repeat(2, 1fr); }
      .integration-card h3 { font-size: 28px; }
    }
    @media (max-width: 767px) {
      .integration-grid { grid-template-columns: 1fr; }
      .integration-card { padding: 30px; }
      .integration-card h3 { font-size: 24px; }
      .integration-card p { font-size: 15px; line-height: 1.8; }
    }

    
    /* ---------- Why choose section ---------- */
    .why-choose-section {
      background: #003F8A;
      padding: 80px 0;
      overflow: hidden;
    }
    .integration-stats {
      padding-bottom: 60px;
    }
    .stat-item {
      position: relative;
    }
    .stat-item::after {
      content: "";
      position: absolute;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      width: 1px;
      height: 60px;
      background: rgba(255, 255, 255, .15);
    }
    .stat-item.last::after {
      display: none;
    }
    .stat-number {
      font-size: 28px;
      line-height: 1;
      font-weight: 500;
      color: #fff;
      margin-bottom: 14px;
    }
    .stat-text {
      color: #fff;
      font-size: 14px;
      line-height: 1.7;
    }
    .why-card {
      border: 1px solid rgba(91, 161, 255, 0.45);
      border-radius: 20px;
      padding: 36px;
      height: 100%;
      transition: .3s ease;
      background: transparent;
    }
    .why-card:hover {
      transform: translateY(-4px);
      border: 1px solid #ffffff;
    }
    .why-card h3 {
      color: #fff;
      font-size: 36px;
      line-height: 1.35;
      font-weight: 700;
      margin-bottom: 22px;
    }
    .why-card p {
      color: #D8E7FF;
      margin: 0;
    }
    @media (max-width: 992px) {
      .stat-number { font-size: 44px; }
      .why-card h3 { font-size: 28px; }
    }
    @media (max-width: 767px) {
      .why-choose-section { padding: 60px 0; }
      .integration-stats { padding-bottom: 30px; margin-bottom: 40px; }
      .stat-item { margin-bottom: 30px; }
      .stat-item::after { display: none; }
      .stat-number { font-size: 38px; }
      .stat-text { font-size: 15px; }
      .why-card { padding: 28px; }
      .why-card h3 { font-size: 24px; }
      .why-card p { font-size: 15px; line-height: 1.8; }
    }

    /* Tablet */
    @media (max-width: 991.98px) {

        .integration-expertise {
            padding: 60px 0;
        }


        .sticky-box h2 {
            margin-bottom: 20px;
        }

        .sticky-box p {
            max-width: 100%;
        }

       
    }

    /* Mobile */
    @media (max-width: 767px) {

        .integration-expertise {
            padding: 40px 0;
        }

        .expertise-layout {
            gap: 30px;
        }

        .expertise-item {
            padding: 24px 0;
        }

        .expertise-item h4 {
            font-size: 22px;
            line-height: 1.4;
        }

        .expertise-item p {
            font-size: 15px;
            line-height: 1.8;
        }

        .sticky-box h2 {
            font-size: 30px;
            line-height: 38px;
        }
    }
    /* ---------- Customer success (tabbed case studies) ---------- */
    .cs-header {
      text-align: center;
      margin-bottom: 50px;
    }
    .cs-tabs {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
      margin-bottom: 18px;
    }
    .cs-tab {
      position: relative;
      background: #fafafa !important;
      border: none;
      height: 88px;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: box-shadow .3s ease;
      opacity: .55;
    }
    .cs-tab:hover {
      background: #f0f0f0 !important;
      box-shadow: 0 12px 28px rgba(0, 0, 0, .08);
    }
    .cs-tab img {
      max-width: 160px;
      max-height: 42px;
      object-fit: contain;
    }
    .cs-tab::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 4px;
      background: #0f62fe;
      transform: scaleX(0);
      transform-origin: left;
      transition: transform .35s cubic-bezier(.2, .8, .2, 1);
    }
    .cs-tab.active {
      opacity: 1;
      background: #fff;
      box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
    }
    .cs-tab.active::after {
      transform: scaleX(1);
    }
    .cs-content-wrap {
      position: relative;
      overflow: hidden;
      border-radius: 20px;
      background: #fff;
      box-shadow: 0 18px 40px rgba(0, 0, 0, .08);
    }
    .cs-content {
      display: none;
      grid-template-columns: 1fr 1fr;
      min-height: 420px;
      animation: fadeSlide .45s ease;
    }
    .cs-content.active {
      display: grid;
    }
    .cs-left {
      padding: 42px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }
    .cs-logo {
      margin-bottom: 40px;
    }
    .cs-logo img {
      max-width: 180px;
      max-height: 52px;
      object-fit: contain;
    }
    .cs-stats {
      display: flex;
      align-items: center;
      gap: 14px;
      margin-bottom: 36px;
      position: relative;
    }
    .cs-stats::before {
      content: "";
      position: absolute;
      bottom: -10px;
      left: 0;
      width: 100%;
      border-bottom: 1px solid #e0e0e0;
    }
    .cs-stat {
      display: flex;
      align-items: center;
      gap: 14px;
    }
    .cs-stat strong {
      font-size: 34px;
      line-height: 1;
      font-weight: 500;
      color: #000;
    }
    .cs-stat span {
      font-size: 15px;
      line-height: 1.5;
      color: #262626;
    }
    .cs-divider {
      width: 1px;
      height: 54px;
      background: #d9d9d9;
    }
    .cs-desc {
      font-size: 15px;
      line-height: 1.9;
      color: #525252;
      margin-bottom: 40px;
    }
    .cs-link {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      color: #0f62fe;
      text-decoration: none;
      font-size: 16px;
      font-weight: 500;
    }
    .cs-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    @keyframes fadeSlide {
      from { opacity: 0; transform: translateY(10px); }
      to { opacity: 1; transform: translateY(0); }
    }
    @media (max-width: 992px) {
      .cs-tabs { grid-template-columns: repeat(2, 1fr); }
      .cs-content { grid-template-columns: 1fr; }
    }
    @media (max-width: 640px) {
      .cs-tabs { grid-template-columns: 1fr; }
      .cs-header h2 { font-size: 34px; }
      .cs-left { padding: 28px; }
      .cs-stats { flex-direction: column; align-items: flex-start; }
      .cs-divider { display: none; }
    }

    /* ---------- Tech stack / platforms tabs ---------- */
    .tech-stack-section {
      background: linear-gradient(180deg, #ffffff 0%, #EAF7FF 100%);
    }
    .tech-stack-section h2 {
      color: #083d77;
      font-size: 42px;
      font-weight: 700;
    }
    .tech-stack-section .section-desc {
      max-width: 760px;
      margin: 0 auto 35px;
      color: #555;
    }
    .tech-tabs {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 14px;
      margin-bottom: 45px;
    }
    .tech-tabs button {
      border: 1px solid #d7dfe9;
      color: #083d77;
      background: #fff;
      border-radius: 50px;
      padding: 11px 24px;
      font-size: 15px;
      font-weight: 600;
      transition: .3s;
      cursor: pointer;
      color: #000000;
    }
    .tech-tabs button.active,
    .tech-tabs button:hover {
      background: #0B4EA2;
      color: #fff;
      border-color: #0B4EA2;
    }
    .tech-grid {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 18px;
    }
    .tech-card {
       flex: 0 0 calc((100% - 90px) / 6); /* 6 columns */
       max-width: calc((100% - 90px) / 6);
    }
    .tech-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 12px 30px rgba(0, 0, 0, .08);
    }
    .tech-card a {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      text-decoration: none;
      color: #222;
      height: 100%;
      padding: 18px;
    }
    .tech-card img {  
      object-fit: contain;  
    }
    .tech-card span {
      font-size: 15px;
      font-weight: 600;
      text-align: center;
      line-height: 1.4;
    }
    @media (max-width: 1200px) {      
      .tech-card {
          flex: 0 0 calc((100% - 54px) / 4);
          max-width: calc((100% - 54px) / 4);
      }
    }
    @media (max-width: 768px) {
      .tech-card {
        flex: 0 0 calc((100% - 18px) / 2);
        max-width: calc((100% - 18px) / 2);
      }
      .tech-stack-section h2 { font-size: 30px; }
      .tech-tabs { gap: 10px; }
      .tech-tabs button { font-size: 14px; padding: 10px 18px; }
    }
    @media (max-width: 480px) {
      
      .tech-card {
        
        max-width: 100%;
      }

    }

    /* ---------- Industry cards ---------- */
    .industry-card {
      position: relative;
      overflow: hidden;
      border-radius: 18px;
      cursor: pointer;
      min-height: 180px;
    }
    .industry-card img {
      width: 100%;
      object-fit: cover;
      transition: transform 0.8s cubic-bezier(.2, .8, .2, 1);
    }
    .overlay {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: flex-end;
      padding: 25px;
      background: linear-gradient(to top, rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.15));
      transition: background 0.5s ease;
    }
    .content {
      color: #fff;
      width: 100%;
      transform:translateY(30px);
      transition:transform .55s cubic-bezier(.22,.61,.36,1);
    }
    .title {
      font-weight: 600;
      margin-bottom: 0;
      
    }
    .desc,
    .arrow {
      opacity: 0;
      transform: translateY(20px);
      transition: all 0.5s ease;
    }
    .arrow {
      display: inline-block;
      margin-bottom: 20px;
      font-size: 22px;
    }
    .overlay .desc {
      max-height:0;
      opacity:0;
      overflow:hidden;
      transform:translateY(15px);
      transition:
          max-height .5s ease,
          opacity .4s ease,
          transform 1s ease;
    }
    .industry-card:hover .desc {
     max-height:180px;
    opacity:1;
    transform:translateY(0);
    }
    .industry-card:hover img {
      transform: scale(1.08);
    }
    .industry-card:hover .overlay {
      background: linear-gradient(to top, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.3));
    }
   
    .industry-card:hover .desc,
    .industry-card:hover .arrow {
      opacity: 1;
      transform: translateY(0);
    }

    /* ---------- FAQ ---------- */
    .faq-section,
    .faq-section .container,
    .faq-layout,
    .faq-left,
    .faq-right {
      overflow: visible !important;
    }
    .faq-layout {
      display: grid;
      grid-template-columns: 320px 1fr;
      gap: 60px;
      align-items: stretch;
    }
    .faq-left .sticky-box {
      position: sticky;
      top: 120px;
    }
    .faq-accordion .accordion-item {
      border: none;
      border-bottom: 1px solid #ddd;
      background: transparent;
      padding: 10px;
    }
    .faq-accordion .accordion-button {
      background: none !important;
      box-shadow: none;
      padding: 0px 0;
      font-size: 18px;
      font-weight: 600;
      color: #111;
      white-space: normal;
      text-align: left;
    }
    .faq-accordion .accordion-button:not(.collapsed) {
      color: #111;
      background: transparent;
    }
    .faq-accordion .accordion-button:focus {
      box-shadow: none;
    }
    .faq-accordion .accordion-body {
      padding: 0 0 28px 0;
      color: #555;
      font-size: 16px;
      line-height: 1.8;
      max-width: 900px;
      margin-top: 10px;
    }
    .faq-accordion .accordion-button {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
      width: 100%;
    }
    .faq-left {
      align-self: stretch;
      position: relative;
    }
    .faq-sticky-box {
      position: sticky;
      top: 120px;
    }
    .faq-sticky-box.is-pinned {
      position: fixed;
      top: 300px;
    }
    .faq-sticky-box.is-bottom {
      position: absolute;
      top: auto;
      bottom: 0;
    }
    @media (max-width: 992px) {
      .faq-layout { grid-template-columns: 1fr; gap: 40px; }
      .faq-left .sticky-box { position: static; }
      .faq-left h2 { font-size: 36px; }
      .sticky-box {
        position: static;
        top: auto;
      }
    }
    .faq-accordion .accordion-button::after {
      content: '+';
      background-image: none !important;
      display: flex !important;
      align-items: center;
      justify-content: center;
      width: 32px;
      height: 32px;
      font-size: 30px;
      font-weight: 300;
      color: #003D84;
      margin-left: auto;
      flex-shrink: 0;
      transform: none !important;
      font-size: 16px;
    }
    .faq-accordion .accordion-button:not(.collapsed)::after {
      content: '−';
    }

    /* ---------- QA hero-specific overrides ---------- */
    @media (max-width: 767px) {
      .di-platforms-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
    }
    .services-section {
        background: #f4f4f4;
    }

    .service-card {
        border-radius: 12px;
        overflow: hidden;
        background: #fafafa;
        transition: 0.3s ease;
        display: flex;
        flex-direction: column;
    }

    .service-card:hover {
        transform: translateY(-5px);
    }

    .service-content {
        padding: 25px;
    }

    .service-content h5 {
        font-weight: 600;
        margin-bottom: 12px;
    }

    .service-content p {
        
        line-height: 1.7;
        color: #555;
    }
    @media (max-width: 767px) {
        .cta-center img {
            display: block;
            margin-left: auto;
            margin-right: auto;
        }
    }
      /* ---------- Problem / capabilities flip cards ---------- */
    .button.accordion-button {
      white-space: normal !important;
    }
    .problem-section {
      background: #ffffff;
      padding: 60px 0;
    }
    .problem-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 15px;        
      margin-top: 48px;
    }
    .problem-card {
      position: relative;
      background: #ffffff;
      min-height: 260px;
      overflow: hidden;
      cursor: pointer;
    }
    .problem-card::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 0;
      height: 0;
      transition: width .25s ease 0s, height .25s ease .25s;
      z-index: 20;
    }
    .problem-card::after {
      content: '';
      position: absolute;
      bottom: 0;
      right: 0;
      width: 0;
      height: 0;
      transition: width .25s ease 0s, height .25s ease .25s;
      z-index: 20;
    }
    .problem-card:hover::before,
    .problem-card:hover::after {
      width: 100%;
      height: 100%;
    }
    .card-default {
      position: absolute;
      inset: 0;
      padding: 32px;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      z-index: 2;
      transition: opacity .25s ease;
    }
    .problem-card:hover .card-default {
      opacity: 0;
    }
    .card-default h3 {
      font-size: 19px;
      line-height: 1.35;
      font-weight: 500;
      color: #161616;
      max-width: 240px;
      margin: 0;
    }
    .card-arrow {
      position: absolute;
      top: 28px;
      right: 28px;
      width: 20px;
      height: 20px;
    }
    .card-icon {
      position: absolute;
      bottom: 32px;
      left: 32px;
      width: 42px;
      height: 42px;
    }
    .problem-card:hover .card-default h3 {
      transition: 1s ease;
      transform: translateY(-100px);
    }
    .card-icon img {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
    .card-hover {
      position: absolute;
      inset: 0;
      background: #003D84;
      padding: 32px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      z-index: 10;
      transform: translateY(-100%);
      transition: transform 1s cubic-bezier(.2, .8, .2, 1);
    }
    .problem-card:hover .card-hover {
      transform: translateY(0);
    }
    .card-hover p {
      font-size: 16px;
      line-height: 1.75;
      color: #ffffff;
      margin-bottom: 24px;
      opacity: 0;
      transform: translateY(12px);
      transition: opacity .3s ease .2s, transform .4s ease .2s;
    }
    .problem-card:hover .card-hover p {
      opacity: 1;
      transform: translateY(0);
    }
    .card-hover h3 {
      font-size: 20px;
      line-height: 1.35;
      font-weight: 400;
      color: #fff;
      max-width: 240px;
      margin: 0;
      opacity: 0;
      transform: translateY(8px);
      transition: opacity .25s ease .1s, transform .35s ease .1s;
    }
    .problem-card:hover .card-hover h3 {
      opacity: 1;
      transform: translateY(0);
    }
    .card-hover .card-arrow {
      opacity: 0;
      transition: opacity .2s ease .15s;
    }
    .problem-card:hover .card-hover .card-arrow {
      opacity: 1;
    }
    @media (max-width: 992px) {
      .problem-grid { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 640px) {
      .problem-grid { grid-template-columns: 1fr; }
      .problem-section h2 { font-size: 24px; }
      .problem-card { min-height: 260px; }
    }
