

.hover-shadow:hover {
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
    transform: translateY(-3px);
}
.transition {
    transition: all .3s ease;
}
.internal-link {
    color: #002f5b;
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: rgba(0, 47, 91, 0.3);
}
.internal-link:hover {
    color: #0056b3;
    text-decoration-color: #0056b3;
}

.bso-mobile-hero,
.bso-mobile-section,
.bso-mobile-light-section,
.bso-mobile-white-section,
.bso-mobile-dark-cta {
position: relative !important;
overflow: hidden !important;
isolation: isolate !important;
}
 .bso-mobile-hero,
 .bso-mobile-light-section {
     background:
         radial-gradient(780px 360px at 8% 4%, rgba(20, 92, 255, .11), transparent 62%),
         radial-gradient(660px 320px at 92% 6%, rgba(255, 235, 55, .18), transparent 58%),
         linear-gradient(180deg, #f8fbff 0%, #eef5fb 100%) !important;
 }

 .bso-mobile-white-section {
     background: #ffffff !important;
 }

 .bso-mobile-hero,
 .bso-mobile-light-section,
 .bso-mobile-white-section {
     padding: 78px 0 !important;
 }

 .bso-mobile-hero::before,
 .bso-mobile-light-section::before,
 .bso-mobile-dark-cta::before {
     content: "" !important;
     position: absolute !important;
     inset: 0 !important;
     background-image:
         linear-gradient(rgba(13, 51, 113, .04) 1px, transparent 1px),
         linear-gradient(90deg, rgba(13, 51, 113, .04) 1px, transparent 1px) !important;
     background-size: 46px 46px !important;
     pointer-events: none !important;
 }

 .bso-mobile-hero-shell,
 .bso-mobile-soft-shell {
     position: relative !important;
     border-radius: 34px !important;
     background: rgba(255, 255, 255, .88) !important;
     border: 1px solid rgba(13, 51, 113, .10) !important;
     box-shadow: 0 28px 80px rgba(13, 51, 113, .09) !important;
     backdrop-filter: blur(12px) !important;
 }

 .bso-mobile-hero-shell {
     max-width: 980px !important;
     margin: 0 auto !important;
     padding: 42px !important;
     text-align: center !important;
 }

 .bso-mobile-soft-shell {
     padding: 34px !important;
 }

 .bso-mobile-kicker {
     display: inline-flex !important;
     align-items: center !important;
     gap: 8px !important;
     padding: 8px 14px !important;
     margin-bottom: 16px !important;
     border-radius: 999px !important;
     background: rgba(13, 51, 113, .08) !important;
     color: #0d3371 !important;
     font-size: 13px !important;
     font-weight: 650 !important;
 }

 .bso-mobile-dot {
     width: 8px !important;
     height: 8px !important;
     border-radius: 50% !important;
     background: #15b8a6 !important;
     box-shadow: 0 0 0 5px rgba(21, 184, 166, .13) !important;
     flex: 0 0 auto !important;
 }

 .bso-mobile-title {
     color: #111653 !important;
     font-size: clamp(34px, 4vw, 54px) !important;
     line-height: 1.08 !important;
     letter-spacing: -.04em !important;
     margin-bottom: 16px !important;
     font-weight: 700 !important;
 }

 .bso-mobile-heading {
     color: #111653 !important;
     font-size: clamp(30px, 3.3vw, 44px) !important;
     line-height: 1.1 !important;
     letter-spacing: -.035em !important;
     margin-bottom: 14px !important;
     font-weight: 700 !important;
 }

 .bso-mobile-text {
     color: #4b5477 !important;
     font-size: 15px !important;
     line-height: 1.78 !important;
 }

 .bso-mobile-hero-text {
     max-width: 820px !important;
     margin: 0 auto 28px !important;
     color: #3f4772 !important;
     font-size: 17px !important;
     line-height: 1.75 !important;
 }

 .bso-mobile-text a,
 .bso-mobile-card p a,
 .bso-mobile-usecase-panel a,
 .bso-mobile-step-panel a,
 .bso-mobile-trust-card a,
 .bso-mobile-related-card {
     color: #145cff !important;
     text-decoration: none !important;
     font-weight: 650 !important;
 }

 .bso-mobile-text a:hover,
 .bso-mobile-card p a:hover,
 .bso-mobile-usecase-panel a:hover,
 .bso-mobile-step-panel a:hover,
 .bso-mobile-trust-card a:hover,
 .bso-mobile-related-card:hover {
     text-decoration: underline !important;
 }

 .bso-mobile-actions {
     display: flex !important;
     justify-content: center !important;
     align-items: center !important;
     gap: 14px !important;
     flex-wrap: wrap !important;
     margin-top: 26px !important;
 }

 .bso-mobile-primary,
 .bso-mobile-secondary,
 .bso-mobile-yellow-btn {
     min-height: 54px !important;
     display: inline-flex !important;
     align-items: center !important;
     justify-content: center !important;
     padding: 0 28px !important;
     border-radius: 16px !important;
     text-decoration: none !important;
     font-size: 15px !important;
     transition: all .22s ease !important;
 }

 .bso-mobile-primary {
     background: linear-gradient(135deg, #0d3371, #081f4b) !important;
     color: #ffeb37 !important;
     border: 1px solid rgba(255, 255, 255, .18) !important;
     font-weight: 700 !important;
     box-shadow: 0 18px 36px rgba(13, 51, 113, .24) !important;
 }

 .bso-mobile-primary:hover {
     color: #ffeb37 !important;
     transform: translateY(-2px) !important;
     box-shadow: 0 22px 44px rgba(13, 51, 113, .30) !important;
 }

 .bso-mobile-secondary {
     background: #ffffff !important;
     color: #145cff !important;
     border: 1px solid rgba(20, 92, 255, .28) !important;
     font-weight: 650 !important;
     box-shadow: 0 14px 30px rgba(15, 23, 42, .06) !important;
 }

 .bso-mobile-secondary:hover {
     background: #145cff !important;
     color: #ffffff !important;
     border-color: #145cff !important;
     transform: translateY(-2px) !important;
     text-decoration: none !important;
 }

 .bso-mobile-image-frame {
     position: relative !important;
     display: inline-block !important;
     padding: 16px !important;
     border-radius: 34px !important;
     background: linear-gradient(135deg, #0d3371, #081f4b) !important;
     box-shadow: 0 24px 60px rgba(13, 51, 113, .18) !important;
     overflow: hidden !important;
 }

 .bso-mobile-image-frame::after {
     content: "" !important;
     position: absolute !important;
     width: 190px !important;
     height: 190px !important;
     right: -80px !important;
     top: -80px !important;
     border-radius: 50% !important;
     background: rgba(255, 235, 55, .18) !important;
 }

 .bso-mobile-image-frame img {
     position: relative !important;
     z-index: 2 !important;
     border-radius: 24px !important;
     box-shadow: 0 20px 44px rgba(0, 0, 0, .16) !important;
 }

 .bso-mobile-store-box {
     display: flex !important;
     align-items: center !important;
     gap: 16px !important;
     margin-top: 24px !important;
     padding: 16px !important;
     border-radius: 22px !important;
     background: #ffffff !important;
     border-left: 4px solid #145cff !important;
     box-shadow: 0 16px 42px rgba(13, 51, 113, .075) !important;
 }

 .bso-mobile-soon {
     display: inline-flex !important;
     padding: 7px 12px !important;
     border-radius: 999px !important;
     background: #ffeb37 !important;
     color: #0d3371 !important;
     font-size: 12px !important;
     font-weight: 700 !important;
     margin-bottom: 5px !important;
 }

 .bso-mobile-card {
     height: 100% !important;
     padding: 26px !important;
     border-radius: 26px !important;
     background: rgba(255, 255, 255, .92) !important;
     border: 1px solid rgba(13, 51, 113, .10) !important;
     box-shadow: 0 18px 48px rgba(13, 51, 113, .07) !important;
     text-align: left !important;
     transition: all .22s ease !important;
 }

 .bso-mobile-card:hover,
 .bso-mobile-trust-card:hover,
 .bso-mobile-related-card:hover {
     transform: translateY(-4px) !important;
     box-shadow: 0 26px 66px rgba(13, 51, 113, .11) !important;
 }

 .bso-mobile-card-icon,
 .bso-mobile-number-icon {
     width: 50px !important;
     height: 50px !important;
     min-width: 50px !important;
     display: inline-flex !important;
     align-items: center !important;
     justify-content: center !important;
     border-radius: 17px !important;
     background: linear-gradient(135deg, #0d3371, #081f4b) !important;
     color: #ffeb37 !important;
     font-size: 14px !important;
     font-weight: 700 !important;
     box-shadow: 0 16px 30px rgba(13, 51, 113, .18) !important;
 }

 .bso-mobile-card-icon {
     margin-bottom: 16px !important;
 }

 .bso-mobile-card h4,
 .bso-mobile-card p.h3 {
     color: #141951 !important;
     font-size: 20px !important;
     line-height: 1.28 !important;
     margin-bottom: 9px !important;
     font-weight: 650 !important;
 }

 .bso-mobile-card p {
     color: #505a7b !important;
     font-size: 14px !important;
     line-height: 1.72 !important;
     margin-bottom: 0 !important;
 }

 .bso-mobile-usecase-panel,
 .bso-mobile-step-panel {
     position: relative !important;
     height: 100% !important;
     padding: 32px !important;
     border-radius: 32px !important;
     background:
         radial-gradient(520px 250px at 10% 0%, rgba(255, 235, 55, .16), transparent 62%),
         linear-gradient(135deg, #0d3371, #081f4b) !important;
     color: #ffffff !important;
     box-shadow: 0 24px 60px rgba(13, 51, 113, .18) !important;
     overflow: hidden !important;
 }

 .bso-mobile-usecase-panel h5,
 .bso-mobile-step-panel h6 {
     color: #ffffff !important;
     font-size: clamp(28px, 3.2vw, 42px) !important;
     line-height: 1.12 !important;
     letter-spacing: -.035em !important;
     margin-bottom: 16px !important;
     font-weight: 700 !important;
 }

 .bso-mobile-usecase-panel p,
 .bso-mobile-step-panel p {
     color: rgba(255, 255, 255, .78) !important;
     font-size: 15px !important;
     line-height: 1.72 !important;
 }

 .bso-mobile-usecase-list,
 .bso-mobile-step-list {
     list-style: none !important;
     padding: 0 !important;
     margin: 0 !important;
 }

 .bso-mobile-usecase-list li,
 .bso-mobile-step-list li {
     display: flex !important;
     gap: 12px !important;
     padding: 14px !important;
     margin-bottom: 12px !important;
     border-radius: 18px !important;
     background: rgba(255, 255, 255, .10) !important;
     border: 1px solid rgba(255, 255, 255, .14) !important;
 }

 .bso-mobile-usecase-list li:last-child,
 .bso-mobile-step-list li:last-child {
     margin-bottom: 0 !important;
 }

 .bso-mobile-usecase-list p,
 .bso-mobile-step-list p {
     margin-bottom: 0 !important;
     color: rgba(255, 255, 255, .78) !important;
     font-size: 14px !important;
 }

 .bso-mobile-usecase-list strong,
 .bso-mobile-step-list strong {
     color: #ffffff !important;
     font-weight: 650 !important;
 }

 .bso-mobile-usecase-panel a,
 .bso-mobile-step-panel a {
     color: #ffffff !important;
     text-decoration: underline !important;
     font-weight: 700 !important;
 }

 .bso-mobile-step-badge {
     width: 58px !important;
     min-width: 58px !important;
     height: 28px !important;
     display: inline-flex !important;
     align-items: center !important;
     justify-content: center !important;
     border-radius: 999px !important;
     background: #ffffff !important;
     color: #145cff !important;
     font-size: 12px !important;
     font-weight: 700 !important;
 }

 .bso-mobile-inline-cta {
     position: relative !important;
     padding: 28px 0 !important;
     background: #ffeb37 !important;
     box-shadow: 0 16px 42px rgba(13, 51, 113, .10) !important;
 }

 .bso-mobile-inline-cta h6 {
     color: #111653 !important;
     font-size: 22px !important;
     line-height: 1.35 !important;
     font-weight: 700 !important;
     margin-bottom: 0 !important;
 }

 .bso-mobile-dark-btn {
     display: inline-flex !important;
     align-items: center !important;
     justify-content: center !important;
     min-height: 48px !important;
     padding: 0 22px !important;
     border-radius: 15px !important;
     background: #081f4b !important;
     color: #ffffff !important;
     text-decoration: none !important;
     font-size: 14px !important;
     font-weight: 700 !important;
     transition: all .22s ease !important;
 }

 .bso-mobile-dark-btn:hover {
     color: #ffeb37 !important;
     transform: translateY(-2px) !important;
     text-decoration: none !important;
 }

 .bso-mobile-trust-card {
     height: 100% !important;
     padding: 26px !important;
     border-radius: 26px !important;
     background: rgba(255, 255, 255, .92) !important;
     border: 1px solid rgba(13, 51, 113, .10) !important;
     box-shadow: 0 18px 48px rgba(13, 51, 113, .07) !important;
     transition: all .22s ease !important;
 }

 .bso-mobile-trust-card h4 {
     color: #141951 !important;
     font-size: 20px !important;
     line-height: 1.28 !important;
     margin-bottom: 10px !important;
     font-weight: 650 !important;
 }

 .bso-mobile-trust-card p {
     color: #505a7b !important;
     font-size: 14px !important;
     line-height: 1.72 !important;
     margin-bottom: 0 !important;
 }

 .bso-mobile-related-card {
     height: 100% !important;
     display: block !important;
     padding: 22px !important;
     border-radius: 22px !important;
     background: #ffffff !important;
     border: 1px solid rgba(13, 51, 113, .10) !important;
     box-shadow: 0 14px 36px rgba(13, 51, 113, .06) !important;
     text-align: center !important;
     transition: all .22s ease !important;
 }

 .bso-mobile-related-card h4 {
     color: #141951 !important;
     font-size: 16px !important;
     margin-bottom: 0 !important;
     font-weight: 650 !important;
 }

 .bso-mobile-faq-card {
     height: 100% !important;
     padding: 24px !important;
     border-radius: 26px !important;
     background: rgba(255, 255, 255, .92) !important;
     border: 1px solid rgba(13, 51, 113, .10) !important;
     box-shadow: 0 18px 48px rgba(13, 51, 113, .07) !important;
 }

 .bso-mobile-faq-top {
     display: flex !important;
     align-items: flex-start !important;
     gap: 14px !important;
     margin-bottom: 13px !important;
 }

 .bso-mobile-faq-card h4 {
     color: #141951 !important;
     font-size: 18px !important;
     line-height: 1.35 !important;
     margin: 4px 0 0 !important;
     font-weight: 650 !important;
 }

 .bso-mobile-faq-card p {
     color: #505a7b !important;
     font-size: 14px !important;
     line-height: 1.72 !important;
     margin-bottom: 0 !important;
 }

 .bso-mobile-dark-cta {
     padding: 78px 0 !important;
     margin: 64px 0 !important;
     background:
         radial-gradient(720px 340px at 10% 0%, rgba(255, 235, 55, .18), transparent 58%),
         radial-gradient(620px 320px at 92% 8%, rgba(21, 184, 166, .16), transparent 58%),
         linear-gradient(135deg, #0d3371 0%, #081f4b 100%) !important;
     color: #ffffff !important;
 }

 .bso-mobile-dark-cta::before {
     background-image:
         linear-gradient(rgba(255, 255, 255, .055) 1px, transparent 1px),
         linear-gradient(90deg, rgba(255, 255, 255, .055) 1px, transparent 1px) !important;
 }

 .bso-mobile-cta-shell {
     position: relative !important;
     padding: 42px !important;
     border-radius: 34px !important;
     background: rgba(255, 255, 255, .08) !important;
     border: 1px solid rgba(255, 255, 255, .14) !important;
     box-shadow: 0 28px 80px rgba(0, 0, 0, .16) !important;
     backdrop-filter: blur(10px) !important;
     text-align: center !important;
 }

 .bso-mobile-cta-shell h6,
 .bso-mobile-cta-shell p.bso-mobile-cta-title {
     color: #ffffff !important;
     font-size: clamp(30px, 3.6vw, 48px) !important;
     line-height: 1.08 !important;
     letter-spacing: -.04em !important;
     margin-bottom: 12px !important;
     font-weight: 700 !important;
 }

 .bso-mobile-cta-shell p {
     color: rgba(255, 255, 255, .76) !important;
     font-size: 16px !important;
     line-height: 1.7 !important;
     margin-bottom: 28px !important;
 }

 .bso-mobile-yellow-btn {
     background: #ffeb37 !important;
     color: #0d3371 !important;
     border: 1px solid rgba(255, 235, 55, .72) !important;
     font-weight: 700 !important;
     box-shadow: 0 18px 36px rgba(0, 0, 0, .16) !important;
 }

 .bso-mobile-yellow-btn:hover {
     color: #0d3371 !important;
     transform: translateY(-2px) !important;
     box-shadow: 0 22px 44px rgba(0, 0, 0, .22) !important;
     text-decoration: none !important;
 }

 .bso-mobile-outline-btn {
     min-height: 54px !important;
     display: inline-flex !important;
     align-items: center !important;
     justify-content: center !important;
     padding: 0 26px !important;
     border-radius: 16px !important;
     background: rgba(255, 255, 255, .08) !important;
     color: #ffffff !important;
     border: 1px solid rgba(255, 255, 255, .26) !important;
     text-decoration: none !important;
     font-size: 15px !important;
     font-weight: 650 !important;
     transition: all .22s ease !important;
 }

 .bso-mobile-outline-btn:hover {
     background: #ffffff !important;
     color: #0d3371 !important;
     transform: translateY(-2px) !important;
     text-decoration: none !important;
 }

 @media (max-width: 991px) {
     .bso-mobile-hero,
     .bso-mobile-light-section,
     .bso-mobile-white-section,
     .bso-mobile-dark-cta {
         padding: 56px 0 !important;
     }

     .bso-mobile-hero-shell,
     .bso-mobile-soft-shell,
     .bso-mobile-cta-shell {
         padding: 26px !important;
         border-radius: 28px !important;
     }

     .bso-mobile-store-box {
         align-items: flex-start !important;
     }
 }

 @media (max-width: 575px) {
     .bso-mobile-hero-shell,
     .bso-mobile-soft-shell,
     .bso-mobile-usecase-panel,
     .bso-mobile-step-panel,
     .bso-mobile-cta-shell {
         padding: 22px !important;
         border-radius: 24px !important;
     }

     .bso-mobile-primary,
     .bso-mobile-secondary,
     .bso-mobile-yellow-btn,
     .bso-mobile-outline-btn,
     .bso-mobile-dark-btn {
         width: 100% !important;
     }

     .bso-mobile-store-box {
         flex-direction: column !important;
         text-align: left !important;
     }

     .bso-mobile-image-frame {
         padding: 12px !important;
         border-radius: 26px !important;
     }
 }
