/* =========================================================
   FOUNDATIONS (Fonts, Variables, Resets)
   ========================================================= */

/* Preferred family (others commented in original kept intentional) */
@font-face {
  font-family: 'Basier Square';
  src: url('https://www.casefox.com/assets/font/BasierSquare-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Global Tokens */
:root {
  /* Typography */
  --default-font: 'Basier Square', sans-serif;
  --heading-font: 'Basier Square', sans-serif;
  --nav-font: 'Basier Square', sans-serif;
  --body-font-weight: 400;

  /* Palette */
  --background-color: #F8F9FB;
  --default-color: #0a0a0a;
  --heading-color: #0B3558;
  --accent-color: #0066f2;
  --surface-color: #ffffff;
  --contrast-color: #ffffff;

  /* Nav palette */
  --nav-color: #212529;
  --nav-hover-color: #0058D3;
  --nav-mobile-background-color: #ffffff;
  --nav-dropdown-background-color: #ffffff;
  --nav-dropdown-color: #212529;
  --nav-dropdown-hover-color: #0d83fd;

  /* Motion */
  scroll-behavior: smooth;
}

/* Color presets */
.light-background {
  --background-color: #f3f9ff;
  --surface-color: #ffffff;
}
.dark-background {
  --background-color: #0058D3;
  --default-color: #ffffff;
  --heading-color: #ffffff;
  --surface-color: #0058D3;
  --contrast-color: #ffffff;
}

/* Base */
body {
  color: var(--default-color);
  background-color: var(--background-color);
  font-family: var(--default-font);
  font-weight: var(--body-font-weight);
}
a {
  color: var(--accent-color);
  text-decoration: none;
  transition: 0.3s;
}
a:hover {
  color: color-mix(in srgb, var(--accent-color), transparent 25%);
  text-decoration: none;
}
h1,h2,h3,h4,h5,h6 {
  color: var(--heading-color);
  font-family: var(--heading-font);
}

/* =========================================================
   HEADER / NAV
   ========================================================= */

.header {  margin-top: 10px;  color: var(--default-color);  padding: 0;  transition: all 0.5s;  z-index: 997;  position: fixed;  width: 100%;  top: 0;  left: 0;}
.header .header-container { background-color: rgba(1, 1, 39, 0.427); border-radius: 15px; border: 2px solid rgba(3, 3, 32, 0); padding: 5px 25px; max-width: 1295px; margin: 0 auto; display: flex; color: white; justify-content: space-between; align-items: center;}
/* Scrolled state */
.scrolled .header { background-color: #1e020200; }
.scrolled .header .header-container  { background-color: #02091ddb; }

.scrolled .header .logo h1 { color: #2d405f; }
.scrolled .navmenu ul li a,
.scrolled .navmenu ul li a:focus { color: #ffffff; }
.scrolled .navmenu ul li:hover > a,
.scrolled .navmenu .active,
.scrolled .navmenu .active:focus { color: var(--accent-color); }
.scrolled .mobile-nav-toggle { color: #2d405f; }

/* Logo */
.header .logo {
  line-height: 1;
  padding-left: 5px;
  display: flex;
  align-items: center;
}
.header .logo img { max-height: 50px; margin-right: 0; }
.header .logo h1 {
  font-size: 24px; margin: 0; font-weight: 500;
  color: var(--default-color); transition: color 0.3s;
}

/* Buttons */
.header .btn-getstarted,
.header .btn-getstarted:focus { border: none; cursor: pointer; }
.header .btn-getstarted:hover,
.header .btn-getstarted:focus:hover { color: var(--contrast-color); }

.header .bbtn-getstarted,
.header .bbtn-getstarted:focus { color: var(--contrast-color); background: linear-gradient(to right, #350091 0%, #0a93e4 100%); font-size: 14px; padding: 10px 20px; margin: 0; border-radius: 7px; transition: 0.3s; border: none; cursor: pointer; font-family: var(--nav-font);}
.header .bbtn-getstarted:hover,
.header .bbtn-getstarted:focus:hover {
  color: var(--contrast-color);
  background: color-mix(in srgb, var(--accent-color), transparent 15%);
}

/* Desktop Nav */
@media (min-width: 1210px) {
  
  .navmenu { padding: 0; }
  .navmenu ul {
    margin: 0; padding: 0; display: flex; list-style: none; align-items: center;
  }
  .navmenu li { position: relative; }
  .navmenu a,
  .navmenu a:focus { color: #ffffff; padding: 18px 15px; font-size: 16px; font-family: var(--nav-font); font-weight: 500; display: flex; align-items: center; justify-content: space-between; white-space: nowrap; transition: 0.3s; text-decoration: none;}  
  .navmenu a i,
  .navmenu a:focus i { font-size: 12px; line-height: 0; margin-left: 5px; transition: 0.3s; }
  .navmenu li:last-child a { padding-right: 0; }
  .navmenu li:hover > a,
  .navmenu .active,
  .navmenu .active:focus { color: #5d07a8a0; }

  /* Dropdown */
  .navmenu .dropdown ul{
    margin:0; padding:10px 0; display:block; position:absolute; visibility:hidden;
    left:14px; top:130%; opacity:0; transition:0.3s; border-radius:4px; z-index:99;
  }
  .navmenu .dropdown ul li { min-width: 200px; }
  .navmenu .dropdown ul a { padding:10px 20px; font-size:15px; }
  .navmenu .dropdown ul a i { font-size:12px; }
  .navmenu .dropdown ul a:hover,
  .navmenu .dropdown ul .active:hover,
  .navmenu .dropdown ul li:hover > a { color: var(--nav-dropdown-hover-color); }
  .navmenu .dropdown:hover > ul { opacity:1; top:100%; visibility:visible; }
  .navmenu .dropdown .dropdown ul { top:0; left:-90%; visibility:hidden; }
  .navmenu .dropdown .dropdown:hover > ul { opacity:1; top:0; left:-100%; visibility:visible; }
}

/* Mobile Nav */
@media (max-width: 1210px) {
  .mobile-nav-toggle {
    color:#5c07a8; font-size:28px; line-height:0; margin-right:10px;
    cursor:pointer; transition:color .3s; display:block;
  }
  .navmenu { padding:0; z-index:9997; }
  .navmenu ul{
    display:none; list-style:none; position:absolute; inset:60px 20px 20px 20px;
    padding:10px 0; margin:0; border-radius:6px; background:var(--nav-mobile-background-color);
    overflow-y:auto; transition:.3s; z-index:9998; box-shadow:0 0 30px rgba(0,0,0,.1);
  }
  .navmenu a,
  .navmenu a:focus{
    color:var(--nav-dropdown-color); padding:10px 20px; font-family:var(--nav-font);
    font-size:17px; font-weight:500; display:flex; align-items:center; justify-content:space-between;
    white-space:nowrap; transition:.3s; text-decoration:none;
  }
  .navmenu a i,
  .navmenu a:focus i{
    font-size:12px; line-height:0; margin-left:5px; width:30px; height:30px; display:flex;
    align-items:center; justify-content:center; border-radius:50%;
    transition:.3s; background-color: color-mix(in srgb, var(--accent-color), transparent 90%);
  }
  .navmenu a i:hover,
  .navmenu a:focus i:hover{ background-color: var(--accent-color); color: var(--contrast-color); }
  .navmenu a:hover,
  .navmenu .active,
  .navmenu .active:focus{ color: var(--nav-dropdown-hover-color); }
  .navmenu .active i,
  .navmenu .active:focus i{ background-color: var(--accent-color); color: var(--contrast-color); transform: rotate(180deg); }
  .navmenu .dropdown ul{
    position:static; display:none; z-index:99; padding:10px 0; margin:10px 20px;
    background:var(--nav-dropdown-background-color);
    border:1px solid color-mix(in srgb, var(--default-color), transparent 90%); box-shadow:none;
    transition:all .5s ease-in-out;
  }
  .navmenu .dropdown ul ul{ background-color: rgba(33,37,41,0.1); }
  .navmenu .dropdown > .dropdown-active { display:block; background-color: rgba(33,37,41,0.03); }

  .mobile-nav-active { overflow:hidden; }
  .mobile-nav-active .mobile-nav-toggle{
    color:#2d405f; position:absolute; font-size:32px; top:15px; right:15px; margin-right:0; z-index:9999;
  }
  .mobile-nav-active .navmenu{
    position:fixed; overflow:hidden; inset:0; background:rgba(33,37,41,.8); transition:.3s;
  }
  .mobile-nav-active .navmenu > ul { display:block; }

  .scrolled .mobile-nav-toggle { color:#2d405f; }
  .scrolled.mobile-nav-active .mobile-nav-toggle { color:#2d405f; }
  .scrolled .navmenu ul li a,
  .scrolled .navmenu ul li a:focus { color: #000000; }
}

/* Header responsive tweaks */
@media (max-width: 1200px) {
  .header { padding-top: 0; }
  .header .header-container { margin-left:0; margin-right:0; padding:3px 5px 8px 15px; }
  .header .logo { order:1; }
  .header .btn-getstarted { order:2; margin:0 -10px 0 0; padding:6px 15px; margin-top:5px; }
  .navmenu { order:3; }
}

/* Login link */
.login-btn {
  display:inline-flex; align-items:center; text-decoration:none; color:#ffffff;
  font-size:16px; margin-right:8px; font-family:sans-serif;
}
.login-btn i { color:#3257fc; font-size:20px; margin-right:8px; }
.login-btn:hover { text-decoration: underline; }
@media (max-width: 499px) { .login-btn { display: none; } }

/* Utility containers (kept values exact) */
.ccustom-section{
  padding: 0 40px; padding-top:20px; background:#ffffff; border-radius:20px;
  border-top:3px solid rgb(7,7,77); margin-left:-380px; padding-bottom:20px;
}
@media (max-width:768px){
  .ccustom-section{
    padding:0; background-color:#ffffff00; border-radius:20px;
    border-top:3px solid rgba(255,255,255,0); margin-left:0; margin-top:-42px;
  }
}
.custom-section{
  padding:0 40px; padding-top:20px; background:#ffffff; border-radius:20px;
  border-top:3px solid rgb(7,7,77); margin-left:-272px; padding-bottom:15px;
}
.custom-container{
  max-width:1000px; min-width:1200px; margin:auto; display:flex; justify-content:space-between; gap:30px;
}
.custom-column{ width:30%; }
.custom-heading{
  font-weight:600; background:#f3f4f6; color:#374151; padding:8px 12px; border-radius:6px;
  margin-bottom:10px; font-size:16px; margin-left:-5px;
}
.custom-heading.custom-active{ background:#e5e7eb; }
.custom-item{ margin-bottom:-5px; }
.custom-title{
  display:inline-block; font-weight:600; color:#0f172a; text-decoration:none; font-size:15px; margin-left:-20px;
}
.custom-title:hover{ text-decoration: underline; }
.custom-item p{ color:#6b7280; font-size:11px; margin:-4px 0 0; }
.custom-see-all{ color:#6b7280; font-size:14px; text-decoration:none; }
.custom-see-all:hover{ text-decoration: underline; }
.custom-column img{ max-width:300px; height:auto; border-radius:10px; display:block; }
@media (max-width:768px){
  .custom-column img{ display:none; }
  .custom-section{
    padding:0; background:#ffffff00; border-radius:20px; border-top:3px solid rgba(255,255,255,0);
    margin-left:0; margin-top:-42px;
  }
  .custom-title{ margin-top:-25px; }
}
@media (max-width:910px){
  .custom-container{ flex-direction:column; }
  .custom-column{ width:100%; }
  .custom-item{ margin-bottom:5px; padding:10px; max-width:25%; }
}

/* =========================================================
   FOOTER
   ========================================================= */

.footer-v2{
  background-image:url('https://www.casefox.com/assets/img/footer-bg.png');
  font-size:15px; background-size:cover; color:#111;
}
.footer-v2 h5{ font-weight:600; color:#111; margin-bottom:16px; }
.footer-v2 ul{ list-style:none; padding-left:0; }
.footer-v2 ul li{ margin-bottom:10px; }
.footer-v2 ul li a{ text-decoration:none; color:#111; }
.footer-v2 ul li a:hover,
.footer-v2 .contact-sales{ text-decoration: underline; }
.footer-v2 .footer-top{ padding:60px 0; }
.footer-v2 .footer-bottom{
  background:#fff; padding:20px 0; border-top:1px solid #cfd8e1; font-size:14px;
}
.footer-v2 .social-icons a{
  margin-right:15px; color:#111; font-size:20px; display:inline-flex; align-items:center; gap:6px; text-decoration:none;
}
.footer-v2 .legal-links{ text-align:center; flex-grow:1; margin-top:10px; margin-left:0; }
.footer-v2 .legal-links a{ margin:0 12px; color:#111; text-decoration:none; }
.footer-v2 .app-buttons{ display:flex; gap:10px; }
.footer-v2 .app-buttons img{ height:40px; }
.footer-v2 .arrow{ font-weight:500; margin-left:5px; }
.footer-v2 .emoji{ font-size:16px; }
@media (max-width:768px){
  .footer-v2 .footer-bottom .container{ flex-direction:column; align-items:center; text-align:center; gap:20px; }
  .footer-v2 .legal-links a{ display:inline-block; margin:6px; }
  .footer-v2 .app-buttons{ justify-content:center; }
}

/* =========================================================
   UTILITIES (Scroll top, AOS mobile)
   ========================================================= */

.scroll-top{
  position:fixed; visibility:hidden; opacity:0; right:15px; bottom:-15px; z-index:99999;
  background-color:var(--accent-color); width:44px; height:44px; border-radius:50px; transition:all .4s;
}
.scroll-top i{ font-size:24px; color:var(--contrast-color); line-height:0; }
.scroll-top:hover{ background-color: color-mix(in srgb, var(--accent-color), transparent 20%); color: var(--contrast-color); }
.scroll-top.active{ visibility:visible; opacity:1; bottom:15px; }
@media screen and (max-width:768px){ [data-aos-delay]{ transition-delay:0 !important; } }

/* =========================================================
   PAGE TITLES
   ========================================================= */

.page-title{
  color:var(--default-color); background-color:var(--background-color);
  padding:170px 0 80px; text-align:center; position:relative;
}
.page-title h1{ font-size:42px; font-weight:700; margin-bottom:10px; }
.page-title .breadcrumbs ol{
  display:flex; flex-wrap:wrap; list-style:none; justify-content:center; padding:0; margin:0; font-size:16px; font-weight:400;
}
.page-title .breadcrumbs ol li+li{ padding-left:10px; }
.page-title .breadcrumbs ol li+li::before{
  content:"/"; display:inline-block; padding-right:10px;
  color: color-mix(in srgb, var(--default-color), transparent 70%);
}

/* =========================================================
   SECTIONS & TITLES
   ========================================================= */

section,.section{
  color:var(--default-color); background-color:var(--background-color);
  padding:0px 0; scroll-margin-top:90px; overflow:clip;
}
@media (max-width:1199px){ section,.section{ scroll-margin-top:66px; } }

.section-title{
  text-align:center; padding-bottom:60px; position:relative; margin-top:-30px;
}
.section-title h2{
  font-size:36px; font-weight:700; margin-bottom:20px; padding-bottom:20px; color:rgb(11,53,88); position:relative;
}
.section-title h2:after{
  content:""; position:absolute; display:block; width:50px; height:3px; background:var(--accent-color);
  left:0; right:0; bottom:0; margin:auto;
}
.section-title p{ margin-bottom:0; }

/* =========================================================
   HERO
========================================================= */

/* ================================
   HERO SECTION   background: radial-gradient(circle at top, #031a2d 0%, #052b4a 100%);

==================================*/
.hero-section {
  text-align: center;
  background: radial-gradient(circle at top, #030014 0%, #030014 100%);
  padding: 120px 0 80px;
  position: relative;
  overflow: hidden;
  /* Reserve space so the bottom illustration never overlaps content.
     We'll match your previous visual spacing via --hero-illo-space. */
  padding-bottom: var(--hero-illo-space, 500px);
}

.rating-badge {
  display: inline-block;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 40px;
  padding: 8px 18px;
  font-size: 15px;
  color: #d4d7ff;
  margin-bottom: 40px;
}

.hero-heading {
  font-family: 'Salesforce Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 300;        /* slimmer weight than 400 */
  font-size: 50px;
  line-height: 1.38;
  letter-spacing: 1px;  /* subtle tightening for modern look */
  margin: 50px auto 25px;
  max-width: 1000px;
  color: #ffffff;
}



.hero-heading .highlight { color: #2a4aff; }

.hero-subtext {
  max-width: 720px;
  margin: 0 auto 30px;
  font-size: 18px;
  color: #c2c6e3;
  line-height: 1.6;
}

/* Register angle var (kept) */
@property --angle { syntax: '<angle>'; initial-value: 0deg; inherits: false; }

/* ================================
   CTA BUTTON
==================================*/
.hero-btn {
  --fill1:#ffffff; --fill2:#ffffff;
  --ring1:#ffffff; --ring2:#ffffff; --ring3:#ffffff;
  --ring4:#ee06ff; --ring5:#8f06ff; --ring6:#ffffff;
  --text:#060922; --angle:0deg;

  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 36px; font-size:22px; font-weight:600; line-height:1;
  color:var(--text); border-radius:12px;
  border:2.4px solid transparent;
  background:
    linear-gradient(90deg, var(--fill1), var(--fill2)) padding-box,
    conic-gradient(from var(--angle),
      var(--ring1) 0deg, var(--ring2) 50deg, var(--ring1) 100deg,
      var(--ring2) 150deg, var(--ring3) 200deg, var(--ring4) 250deg,
      var(--ring5) 300deg, var(--ring6) 360deg
    ) border-box;
  background-clip: padding-box, border-box;
  cursor:pointer;
  box-shadow:0 0 18px rgba(160,170,255,.30);
  transition: transform .25s ease, box-shadow .25s ease;
  animation: btn-rotate 3s linear infinite;
}
.hero-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 0 26px rgba(160,170,255,.55), 0 8px 22px rgba(0,0,0,.18);
  animation-duration: 9s;
}
.hero-btn:active { transform: translateY(-1px); }
.hero-btn:focus-visible {
  outline: none;
  box-shadow:
    0 0 0 3px rgba(208,214,255,.35),
    0 0 26px rgba(160,170,255,.6);
}
@keyframes btn-rotate { to { --angle: 360deg; } }

.trusted-text { color:#c2c6e3; margin-top:30px; margin-bottom:10px; font-size:16px; }

/* Keep content above illustration */
.hero-inner { position: relative; z-index: 2; }

/* Bottom image anchored and behind content */
.hero-illustration{
  position: absolute;
  left: 50%;                /* center horizontally with translateX */
  bottom: -100px;           /* your original tuck */
  transform: translateX(-50%);
  z-index: 1;               /* behind text */
  pointer-events: none;
  user-select: none;
  width: min(1650px, 100vw); /* honor your 1650px cap, responsive below */
  height: auto;
}

/* Keep desktop spacing EXACTLY the same as your inline margins:
   You previously had: margin-top: 380px; margin-bottom: -480px;
   We mirror that on desktop via the reserved hero space + margins below. */
.case-stats-section {
  color: #fff; position: relative;
  margin-top: 380px;        /* preserve your exact visual gap */
  margin-bottom: -480px;    /* preserve the pull-up effect */
  background-color: #03001400; /* match your inline background */
  z-index: 2;               /* layer context (positioned parent already set) */
}

/* gradient animated text (kept) */
.greadent-animation{
  background: linear-gradient(90deg,#00c6ff,#0072ff,#8e2de2,#4a00e0,#00c6ff);
  background-size:300% 300%;
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  animation: gradientShift 6s ease infinite; display:inline-block;
}
@keyframes gradientShift{
  0%{ background-position:0% 50%; }
  50%{ background-position:100% 50%; }
  100%{ background-position:0% 50%; }
}

/* Gradient text utility */
.gradient-textt{
  font-weight:bold;
  background-image: linear-gradient(to right,#7991f6 0%,#2e3e8e 50%,#132a9d 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text; color:transparent;
}

/* ================================
   RESPONSIVE ADJUSTMENTS
   (Desktop kept visually identical)
==================================*/

/* Reserve space for illustration; desktop uses 500px already (above) */
@media (max-width: 1200px) {
  .hero-section { padding: 120px 20px 72px; }
  .hero-heading { font-size: 56px; max-width: 940px; }
}

/* Tablets */
@media (max-width: 992px) {
  .hero-section { padding: 120px 20px 64px; --hero-illo-space: 420px; } /* reserve slightly less while keeping look */
  .rating-badge { font-size:14px; padding:7px 16px; margin-bottom:28px; }
  .hero-heading { font-size:44px; line-height:1.18; max-width:820px; margin-bottom:20px; }
  .hero-subtext { max-width:660px; font-size:17px; margin-bottom:26px; }
  .trusted-text { margin-top:24px; font-size:15px; }

  /* Bring stats spacing to sane values on tablet so nothing overlaps */
  .case-stats-section { margin-top: 260px; margin-bottom: -240px; }
}

/* Phones (common) */
@media (max-width: 768px) {
  .hero-section { padding: 120px 16px 56px; --hero-illo-space: 320px; }
  .rating-badge { font-size:13px; padding:6px 14px; margin-bottom:22px; }
  .hero-heading { font-size:36px; line-height:1.15; max-width:95vw; margin-bottom:18px; }
  .hero-subtext { max-width:92vw; font-size:16px; margin-bottom:22px; }
  .hero-btn { font-size:18px; padding:12px 28px; }
  .trusted-text { margin-top:20px; margin-bottom:0; font-size:14px; }

  /* Wider visual so the illo still feels edge-to-edge on phones */
  .hero-illustration{ width: 120vw; }

  /* Phone-friendly stats spacing: no overlap, same visual rhythm */
  .case-stats-section { margin-top: -30px; margin-bottom: 10px; }
}

/* Small phones */
@media (max-width: 576px) {
  .hero-section { padding: 120px 14px 0; --hero-illo-space: 260px; }
  .rating-badge { font-size:12px; padding:6px 12px; }
  .hero-heading { font-size:30px; }
  .hero-subtext { font-size:15px; }
  .hero-btn { font-size:17px; padding:11px 24px; }
  .trusted-text { font-size:13px; }
}

/* Very small devices */
@media (max-width: 380px) {
  .hero-heading { font-size:26px; }
  .hero-subtext { font-size:14px; }
  .hero-btn { font-size:16px; padding:10px 22px; }
  .rating-badge { padding:5px 10px; }
}

/* ================================
   CASE STATS SECTION (kept styles)
==================================*/
.stat-number {
  background: linear-gradient(180deg,#ffffff 0%,#9aa7ff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 3.5rem;
  margin-bottom: 0.4rem;
}
.stat-sub { font-size: 0.85rem; color: #c2c6e3; letter-spacing: 1px; font-weight: 600; }
.brand { font-size: 1rem; color: #b7bff7; margin-bottom: 1rem; }
.case-link { color: #ffffff; text-decoration: none; font-weight: 600; transition: all 0.3s ease; }
.case-link:hover { color: #aebafc; text-decoration: underline; }

/* Divider line between columns */
.divider {
  position: absolute; right: 0; top: 10%;
  height: 80%; width: 1px;
  background: linear-gradient(to bottom, transparent, rgba(255,255,255,0.82), transparent);
}

/* Responsive tweaks for stats */
@media (max-width: 991px) {
  .divider { display: none !important; }
  .stat-number { font-size: 2.8rem; }
}
@media (max-width: 576px) {
  .case-stats-section { padding: 60px 15px; }
  .stat-number { font-size: 2.3rem; }
  .brand { font-size: 0.9rem; }
  .case-link { font-size: 0.95rem; }
}

/* Optional existing utility */
.perspective-container {perspective: 1200px; perspective-origin: 50% 30%; max-width: 1100px; margin-top: -80px;}
.animated-3d { transform-style: preserve-3d; will-change: transform, box-shadow, filter; backface-visibility: hidden; transition: transform .4s cubic-bezier(0.23,1,0.32,1), box-shadow .4s ease, filter .4s ease; border-radius: 27px; }
.animated-3d.is-pre { transform: translateY(120px) rotateX(25deg) rotateY(-8deg) scale(0.94); filter: saturate(.9) contrast(.95) blur(1px); opacity:.8; box-shadow:0 40px 90px rgba(0,0,0,.25); }
.animated-3d.is-fully-visible { transform: translateY(0) rotateX(0) rotateY(0) scale(1); filter: saturate(1.1) contrast(1.05) blur(0); opacity:1; box-shadow:0 20px 50px rgba(0,0,0,.2); }
.animated-3d.is-loading { opacity:0; transform: translateY(50px); }
@media (prefers-reduced-motion: reduce) {
  .animated-3d { transition: none !important; transform: none !important; animation: none !important; opacity: 1 !important; filter: none !important; }
}
@media (max-width: 768px) {
  .perspective-container { perspective: 800px; }
  .animated-3d.is-pre { transform: translateY(80px) rotateX(20deg) rotateY(-4deg) scale(0.96); }
}

/* Misc responsive utilities carried over */
@media (max-width:768px){
  .content-row{ flex-direction:column !important; align-items:center !important; gap:40px !important; }
  .trusted-section{ width:100% !important; margin-right:0 !important; margin-bottom:20px !important; text-align:center !important; }
  .trusted-section > div{ justify-content:center !important; }
  .trusted-section img{ margin-top:0 !important; }
  .logos-section{ width:100% !important; justify-content:center !important; gap:20px 30px !important; }
  .logos-section img{ max-height:40px !important; max-width:100px !important; }
}


/* =========================================================
   MARQUEE / BADGES
   ========================================================= */

.text-success{ margin-top:50px; --bs-text-opacity:1; color:#ff620c; }
.scroll-wrapper{
  margin-top:30px; overflow:hidden; white-space:nowrap; position:relative;
  mask-image:linear-gradient(to right, transparent, black 10%, black 90%, transparent);
  -webkit-mask-image:linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}
.scroll-content{ display:inline-flex; gap:0; animation: scroll-left 20s linear infinite; }
.scroll-content.reverse{ animation: scroll-right 25s linear infinite; }
@keyframes scroll-left{ 0%{transform:translateX(0);} 100%{transform:translateX(-50%);} }
@keyframes scroll-right{ 0%{transform:translateX(-50%);} 100%{transform:translateX(0);} }
.scroll-badge {  display: inline-block;  white-space: nowrap;  margin: 0;  border-radius: 9999px;  background: #ffffff;  color: #333;  line-height: 1;  border: 1px solid rgba(0,0,0,0.06);  /* Default (large screens) */  padding: 13px 34px;  font-size: 22px;}
/* Tablets (≤991px) */
@media (max-width: 991px) {.scroll-badge {  padding: 11px 28px;  font-size: 18px;}}
/* Mobile (≤575px) */
@media (max-width: 575px) {.scroll-badge {  padding: 9px 22px;  font-size: 16px;}}
/* Small mobile (≤360px) */
@media (max-width: 360px) {.scroll-badge {  padding: 8px 18px;  font-size: 14px;}}


/* =========================================================
   H-SCROLL CARDS
   ========================================================= */

.horizontal-scroll{ scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.horizontal-scroll::-webkit-scrollbar{ display:none; }
.custom-card{
  width:300px; min-width:300px; background:#fff; border:2px solid transparent; transition:all .3s ease;
  scroll-snap-align:start; box-shadow:0 2px 8px rgba(0,0,0,.05); display:flex; flex-direction:column; height:450px;
  position:relative; overflow:hidden;
}
.custom-card:hover{ border-color:#001bb165; box-shadow:0 4px 16px rgba(0,44,177,.3); }
.card-footer{ margin-top:auto; overflow:hidden; }
.bottom-image{ transition: transform .3s ease; width:100%; display:block; }
.learn-more{
  position:absolute; top:-30px; left:0; transition:all .3s ease; opacity:0; z-index:2; margin-left:20px;
}
.custom-card:hover .bottom-image{ transform: translateY(30px); }
.custom-card:hover .learn-more{ opacity:1; top:0; }
.scroll-button{
  width:40px; height:40px; border-radius:50%; background:#fff; border:1px solid #dee2e6;
  display:flex; align-items:center; justify-content:center; color:#001bb1;
  box-shadow:0 2px 8px rgba(0,0,0,.1); transition:all .3s ease;
}
.scroll-button:hover{ background:#001bb1; color:#fff; transform:scale(1.1); }
.scroll-button:active{ transform:scale(.95); }
.dot-container{ height:12px; }
.dot{ width:8px; height:8px; border-radius:50%; background:#ccc; transition:all .3s ease; cursor:pointer; }
.dot:hover{ background:#001bb180; }

/* Typography helpers */
.gradient-text{ background:linear-gradient(90deg,#3105c5,#010756); -webkit-background-clip:text; background-clip:text; color:transparent; }
.text-purple{ color:#7b4db7; }
.bg-purple{ background-color:#5f4db7; }
.bg-purple-light{ background-color:#f8f1f9; }
.badgea.bg-purple{ background-color: rgba(77,86,183,0.064) !important; }
@media (max-width:992px){
  .display-5{ font-size:2rem; }
  .fs-5{ font-size:1rem !important; }
  .p-lg-5{ padding:1.5rem !important; }
}
@media (max-width:768px){
  .display-5{ font-size:1.75rem; }
  .lead{ font-size:1rem; }
}

/* =========================================================
   PERFORMANCE STRIPES
   ========================================================= */

.performance-title{ margin-top:50px; color:#ff620c; }
.performance-scroll-wrapper{
  margin-top:30px; overflow:hidden; white-space:nowrap; position:relative;
  mask-image:linear-gradient(to right, transparent, black 10%, black 90%, transparent);
  -webkit-mask-image:linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}
.performance-scroll-track{ display:inline-flex; gap:0; animation: performance-scroll-left 20s linear infinite; }
.performance-scroll-track.reverse{ animation: performance-scroll-right 20s linear infinite; }
@keyframes performance-scroll-left{ 0%{transform:translateX(0);} 100%{transform:translateX(-50%);} }
@keyframes performance-scroll-right{ 0%{transform:translateX(-50%);} 100%{transform:translateX(0);} }
.performance-badge-track{ display:flex; gap:20px; align-items:center; }
.performance-badge{
  display:inline-flex; align-items:center; gap:10px; padding:7px 25px; background:#e9e8e841; border-radius:999px;
  color:#000; font-weight:500; white-space:nowrap; box-shadow:0 2px 6px rgba(0,0,0,.1);
}
.performance-badge img{ width:45px; height:45px; object-fit:cover; padding:5px; }
.performance-badge p{ font-size:20px; margin-bottom:0; }
.performance-gradient-text{
  background:linear-gradient(90deg,#0744c7,#0f8bdd); -webkit-background-clip:text; -webkit-text-fill-color:transparent;
}
@media (max-width:768px){
  .performance-badge img{ width:30px; height:30px; object-fit:cover; padding:0px; }
  .performance-badge p{ font-size:18px; margin-bottom:0; }
  .performance-badge{ display:inline-flex; align-items:center; gap:10px; }
}

/* =========================================================
   FEATURE CARDS (white on gradient bg)
   ========================================================= */

.section-bg-image{
  background: linear-gradient(to bottom,#f3f7fe,#ffffff);
  background-size:cover; background-position:center; background-repeat:no-repeat;
  min-height:300px; color:#fff; position:relative; padding:30px 0; z-index:1;
  margin-bottom: -50px;
}
.feature-card{
  margin: 0px; position:relative; background:#fff; padding:30px 30px 20px; border-radius:15px;
  box-shadow:0 8px 30px rgba(0,0,0,.02); height:110%; overflow:visible; text-align:left; 
}
.feature-card:hover{ box-shadow:0 8px 20px rgba(111, 1, 208, 0.204); }
.icon-top-right{
  position:absolute; top: 35px; left: 20px; width:60px; height:60px; background:#ffffff00; border-radius:10%;
  border:1px solid #ffffff00; display:flex; align-items:center; justify-content:center; ;
}
.icon-top-right img{ width:46px; height:46px; }
.feature-card h5{ font-size:28px; font-weight:600; margin:10px 0 20px; color:#111; }
.feature-card p{ font-size:16px; color:#322f2f; line-height:1.6; margin-left:0; }
@media (max-width:767px){ .feature-card{ padding:35px 20px 0px; } 
.icon-top-right{
  position:absolute; top: 35px; left: 20px; width:60px; height:60px; background:#ffffff00; border-radius:10%;
  border:1px solid #ffffff00; display:flex; align-items:center; justify-content:center; ;
}}


/* =========================================================
   GRADIENT SECTION + ACCORDION + IMG FX
   ========================================================= */


/* =========================================================
   NDA STRIP
   ========================================================= */

.nda-section{ background-color:#ffffff; }
.nda-wrapper{
  background:url('https://www.casefox.com/assets/img/background-1.png') no-repeat center center; background-size:cover;
  border-radius: 15px 15px 60px 15px; width:100%;
}
.nda-card{ background-color:#1b1e4aad; border-radius:15px 15px 15px 15px; color:#ffffff; }
.nda-card h5{ color:#fff; }
.nda-card p{ color:#ccc; }
.nda-section .btn-primary{ background:linear-gradient(90deg,#011446,#3171e6); border:none; }
.nda-section .btn-primary:hover{ background:linear-gradient(90deg,#011546c8,#3170e6c0); }

/* =========================================================
   ROLE TABS SECTION
   ========================================================= */
/* ================================
   THEME TOKENS
==================================*/
:root{
  --cf-bg: #0b1035;
  --cf-text: #111322;
  --cf-muted: #5e6373;
  --cf-white: #ffffff;
  --cf-accent: #8c58e1;
  --cf-accent-2: #2a4aff;
  --cf-card: rgba(255,255,255,0.9);
  --cf-border: rgba(17,19,34,0.08);
  --radius-xl: 18px;
  --shadow-lg: 0 20px 50px rgba(20, 26, 80, .25);
  --container: min(1295px, 92vw);
}

/* ================================
   SECTION BACKDROP
==================================*/
.role-section{
  position: relative;
  isolation: isolate;
  padding: clamp(56px, 6vw, 96px) 0;
  color: var(--cf-text);
  background: linear-gradient(180deg, #020010 0%, #020010 100%);
  margin-top: -2px;
}
.le-chipp{
  display:inline-block;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  color: white;
  background: rgba(7, 59, 173, 0.444);
  border: 1px solid white;
  margin-bottom: 30px;
}
.role-section::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(6,9,34,.18), rgba(6,9,34,.05));
  pointer-events:none;
  z-index:-1;
}

/* ================================
   LAYOUT
==================================*/
.role-container{ width: var(--container); margin-inline: auto; }
.role-grid{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap: clamp(20px, 4vw, 48px);
  align-items: center;
}

/* Stack on tablets/phones */
@media (max-width: 992px){
  .role-grid{ grid-template-columns: 1fr; }
  .role-media{ order: -1; } /* image/video first on mobile */
}

/* ================================
   TYPOGRAPHY
==================================*/
.role-heading{
  font-weight: 700;
  line-height: 1.12;
  margin: 0 0 .4rem 0;
  font-size: clamp(1.6rem, 3.2vw + .6rem, 2.8rem);
  letter-spacing: .2px;
  color: #0b0f2b;
  background: linear-gradient(180deg, #ffffff 0%, #3a46a6 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.role-disc{
  margin: .25rem 0 1.1rem 0;
  font-size: clamp(.98rem, .45vw + .8rem, 1.1rem);
  color: var(--cf-white);
  max-width: 65ch;
}

/* ================================
   FEATURE LIST (kept as-is)
==================================*/
.feature-list{
  display: grid;
  gap: .65rem .75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.feature-list li{
  position: relative;
  padding-left: 34px;
  font-size: clamp(.95rem, .35vw + .8rem, .9rem);
  line-height: 1.55;
  background: rgba(255,255,255,.55);
  border: 1px solid var(--cf-border);
  border-radius: 12px;
  padding-block: .8rem;
  padding-inline: 54px 14px;
  backdrop-filter: blur(6px);
}
.feature-list li::before{
  content:"";
  position:absolute; left:12px; top:50%;
  translate: 0 -50%;
  width: 13px; height:13px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--cf-accent), var(--cf-accent-2));
  box-shadow: 0 0 0 4px rgba(140,88,225,.15);
  margin-left: 10px;
}

/* ================================
   MEDIA / IMAGE/VIDEO
==================================*/
.role-media{ width: 100%; }

/* Card shell (optional, already present) */
.role-figure{
  margin: 0;
  background: var(--cf-card);
  border: 1px solid var(--cf-border);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-lg);
  overflow: clip;
}

/* Keep visual identical whether image or video */
.role-img,
.role-video{
  display:block;
  width:100%;
  height:auto;
  object-fit: contain;
  transform: translateZ(0);
  outline: 0;
  border: 0;
}

/* Ensure rounded corners if you wrap directly without .role-figure */
.role-video,
.role-img{
  border-radius: var(--radius-xl);
}







/* =========================================================
   ========================================================= */

/* Base */
.persona-section {  background:url('https://www.casefox.com/assets/img/Bg Design 3.webp') no-repeat center center; background-size:cover; }
.persona-heading { font-size:3.0rem; font-weight:600; }

/* Image (now on the LEFT) */
.media-wrapper { padding:0; border-radius:0; }
.media-img{
  max-height:530px;
  object-fit:contain;
  width:100%;
  height:auto;
  border-radius:.75rem;
  transition:opacity .35s ease, transform .35s ease;
}
.media-switching { opacity:.1; transform:scale(.98); }

/* Tabs / Items (now on the RIGHT) */
.persona-tab{
  cursor:pointer;
  padding:14px 16px;
  border-radius:12px;
  position:relative;
  overflow:hidden;
  transition:all .3s ease-in-out;
  margin-bottom: 0px;
  color:#6c757d;
}
.persona-tab + .persona-tab { margin-top:10px; }
.persona-tab.active { background:#ffffff; color:#000; }
.persona-tab:focus { outline:2px solid #007bff; outline-offset:2px; }

.persona-title { font-weight:700; font-size:20px; }
.persona-desc { font-size:0.9rem; margin:.25rem 0; color:#6c757d; font-weight:500; }
.persona-link { font-size:1.1rem; font-weight:600; color:#0f5aa5; text-decoration:none; margin-top:15px; }

/* Always-visible descriptions */
.persona-list .persona-descwrap { display:block; margin-top:.25rem; }
.persona-list .persona-desc { margin:0 0 .25rem 0; }

/* (Legacy collapsible neutralized) */
.collapsible { max-height:none; opacity:1; transition:none; }

/* Progress line (kept) */
.persona-progress{
  height:3px;
  background:#e6e8ef;
  border-radius:999px;
  overflow:hidden;
  margin-top:10px;
  position:relative;
}
.persona-progress.active::after{
  content:"";
  position:absolute;
  inset:0;
  transform-origin:left;
  transform:scaleX(0);
  background:linear-gradient(90deg, #916cce, #916cce);
  animation:personaFill 5s linear forwards;
}

/* Keyframes */
@keyframes personaFill { to { transform:scaleX(1); } }

/* Responsive */
@media (max-width:992px)
{
  .persona-section .row.align-items-center{ flex-direction: column-reverse; }
  .persona-heading{ font-size:2.2rem; }
  .persona-title{ font-size:1rem; }
  .persona-desc{ font-size:.875rem; }
  .persona-link{ font-size:1rem; }
  .media-img{ max-height:400px; }
}
@media (max-width:768px){
  .persona-heading{ font-size:1.75rem; }
  .persona-title{ font-size:.95rem; }
  .persona-desc{ font-size:.825rem; }
  .persona-link{ font-size:.95rem; }
  .media-img{ max-height:400px; }
}
@media (max-width:576px){
  .persona-heading{ font-size:1.5rem; }
  .persona-title{ font-size:.9rem; }
  .persona-desc{ font-size:.8rem; }
  .persona-link{ font-size:.9rem; }
  .media-img{ max-height:400px; }
}


/* =========================================================
   ========================================================= */


   .uueye-section {  background:url('https://www.casefox.com/assets/img/qghDesign.webp') no-repeat center center; background-size:cover;}
.uueye-heading { font-size:3.5rem; font-weight:600; }

/* Tabs */
.uueye-tab{
  cursor:pointer;
  padding:14px 16px;
  border-radius: 12px;
  position:relative;
  overflow:hidden;
  transition:all .3s ease-in-out;
  margin-bottom: 0rem;
  color:#6c757d;
}
.uueye-tab + .uueye-tab { margin-top:10px; }
.uueye-tab.active { background:#ffffff; font-weight:600; color:#000; }
.uueye-tab:focus { outline:2px solid #007bff; outline-offset:2px; }

.uueye-title { font-weight:700; font-size:20px; }
.uueye-desc { font-size:0.9rem; margin:.25rem 0; color:#6c757d; font-weight:500; }
.uueye-link { font-size:1.1rem; font-weight:600; color:#0f5aa5; text-decoration:none; margin-top:15px; }
.uueye-list .uueye-descwrap { display:block; margin-top:.25rem; }
.uueye-list .uueye-desc { margin:0 0 .25rem 0; }

/* Image */
.uueye-imagewrapper { padding:0; border-radius:0; }
.uueye-img{
  max-height:530px;
  object-fit:contain;
  width:100%;
  height:auto;
  border-radius:.75rem;
  transition:opacity .35s ease, transform .35s ease;
}
.uueye-img.switching { opacity:.1; transform:scale(.98); }

/* Progress bar */
.uueye-progress{
  height:3px;
  background:#e6e8ef;
  border-radius:999px;
  overflow:hidden;
  margin-top:10px;
  position:relative;
}
.uueye-progress.active::after{
  content:"";
  position:absolute;
  inset:0;
  transform-origin:left;
  transform:scaleX(0);
  background:linear-gradient(90deg, #7341c5, #7341c5);
  animation:uueyeFill 5s linear forwards;
}
@keyframes uueyeFill { to { transform:scaleX(1); } }

/* Responsive */
@media (max-width:992px){
  .uueye-heading{ font-size:2.2rem; }
  .uueye-title{ font-size:1rem; }
  .uueye-desc{ font-size:.875rem; }
  .uueye-link{ font-size:1rem; }
  .uueye-img{ max-height:400px; }
}
@media (max-width:768px){
  .uueye-heading{ font-size:1.75rem; }
  .uueye-title{ font-size:.95rem; }
  .uueye-desc{ font-size:.825rem; }
  .uueye-link{ font-size:.95rem; }
  .uueye-img{ max-height:400px; }
}
@media (max-width:576px){
  .uueye-heading{ font-size:1.5rem; }
  .uueye-title{ font-size:.9rem; }
  .uueye-desc{ font-size:.8rem; }
  .uueye-link{ font-size:.9rem; }
  .uueye-img{ max-height:400px; }
}


/* =========================================================
   ========================================================= */

   .persona-section-2 {  background:url('https://www.casefox.com/assets/img/Bg Design 3.webp') no-repeat center center; background-size:cover; }
.persona-heading-2 { font-size:3.0rem; font-weight:600; }

.media-wrapper-2 { padding:0; border-radius:0; }
.media-img-2{
  max-height:530px;
  object-fit:contain;
  width:100%;
  height:auto;
  border-radius:.75rem;
  transition:opacity .35s ease, transform .35s ease;
}
.media-switching-2 { opacity:.1; transform:scale(.98); }

.persona-tab-2{
  cursor:pointer;
  padding:14px 16px;
  border-radius:12px;
  position:relative;
  overflow:hidden;
  transition:all .3s ease-in-out;
  margin-bottom: 0px;
  color:#6c757d;
}
.persona-tab-2 + .persona-tab-2 { margin-top:10px; }
.persona-tab-2.active { background:#ffffff; color:#000; }
.persona-tab-2:focus { outline:2px solid #007bff; outline-offset:2px; }

.persona-title-2 { font-weight:700; font-size:20px; }
.persona-desc-2 { font-size:0.9rem; margin:.25rem 0; color:#6c757d; font-weight:500; }
.persona-link-2 { font-size:1.1rem; font-weight:600; color:#0f5aa5; text-decoration:none; margin-top:15px; }

.persona-list-2 .persona-descwrap-2 { display:block; margin-top:.25rem; }
.persona-list-2 .persona-desc-2 { margin:0 0 .25rem 0; }

.persona-progress-2{
  height:3px;
  background:#e6e8ef;
  border-radius:999px;
  overflow:hidden;
  margin-top:10px;
  position:relative;
}
.persona-progress-2.active::after{
  content:"";
  position:absolute;
  inset:0;
  transform-origin:left;
  transform:scaleX(0);
  background:linear-gradient(90deg, #916cce, #916cce);
  animation:personaFill-2 5s linear forwards;
}

@keyframes personaFill-2 { to { transform:scaleX(1); } }

@media (max-width:992px)
{
  .persona-section-2 .row.align-items-center{ flex-direction: column-reverse; }
  .persona-heading-2{ font-size:2.2rem; }
  .persona-title-2{ font-size:1rem; }
  .persona-desc-2{ font-size:.875rem; }
  .persona-link-2{ font-size:1rem; }
  .media-img-2{ max-height:400px; }
}
@media (max-width:768px){
  .persona-heading-2{ font-size:1.75rem; }
  .persona-title-2{ font-size:.95rem; }
  .persona-desc-2{ font-size:.825rem; }
  .persona-link-2{ font-size:.95rem; }
  .media-img-2{ max-height:400px; }
}
@media (max-width:576px){
  .persona-heading-2{ font-size:1.5rem; }
  .persona-title-2{ font-size:.9rem; }
  .persona-desc-2{ font-size:.8rem; }
  .persona-link-2{ font-size:.9rem; }
  .media-img-2{ max-height:400px; }
}
/* =========================================================
   blog section
   ========================================================= */
   .blog-resources .gradient-text {
      background: linear-gradient(90deg, #0d6efd, #0dcaf0);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }
    .blog-resources .card {
      transition: transform 0.3s ease, box-shadow 0.3s ease;
    }
    .blog-resources .card:hover {
      transform: translateY(-5px);
      box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.08) !important;
    }
    .blog-resources .badge-outline {
      background: transparent;
      border: 1px solid #0dcaf0;
      color: #0dcaf0;
    }
    .blog-resources .link-arrow {
      transition: transform 0.2s ease;
    }
    .blog-resources .card-link:hover .link-arrow {
      transform: translateX(3px);
    }

/* =========================================================
   bottum CTA 
   ========================================================= */


   .msg-section-wrapper {
  background: linear-gradient(to bottom, #020010 50%, #b9d5fa 50%);
  padding: 30px 0;
}

/* CTA Card */
.msg-card {
  background: url(' https://www.casefox.com/assets/img/background-1.png') center center / cover no-repeat;
}

/* Gradient CTA */
.btn-gradient {
  background: linear-gradient(90deg, #200d7e, #4471f9);
  border: none;
  color: white;
  font-weight: 500;
  border-radius: 7px;
  transition: 0.3s ease;
  font-size: 20px;
}

.btn-gradient:hover {
  background: white;
  color: #021061;
  border: 2px solid #021061;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  .msg-card {
    text-align: center;
  }

  .btn-gradient,
  .btn-outline-light {
    width: 100%;
    text-align: center;
  }
}

/* Enhanced CTA Button with improved responsiveness */
.cta-btn-fresh {
background: linear-gradient(90deg, #041264, #098dda);
color: #fff;
font-weight: 600;
font-size: clamp(16px, 2.5vw, 18px); /* Fluid font sizing */
padding: clamp(10px, 2.5vw, 12px) clamp(16px, 4vw, 28px); /* Fluid padding */
border: none;
border-radius: 10px;
transition: all 0.3s ease-in-out;
box-shadow: 0 4px 10px rgba(74, 9, 238, 0.25);
white-space: nowrap;
display: inline-block;
text-align: center;
min-height: 44px; /* Minimum touch target size for accessibility */
line-height: 1.2;
}

.cta-btn-fresh:hover {
background: linear-gradient(90deg, #098dda, #041264);
color: #fff;
box-shadow: 0 6px 14px rgba(51, 9, 238, 0.35);
}

.cta-btn-fresh:active {
transform: translateY(1px) scale(0.97);
box-shadow: 0 2px 6px rgba(9, 59, 238, 0.2);
}

/* Improved responsive behavior */
@media (max-width: 768px) {
.cta-btn-fresh {
width: 100%;
border-radius: 8px;
white-space: normal; /* Allow text wrapping on small screens */
padding: 14px 16px; /* Slightly larger padding for mobile /
display: block; / Full width button */
}
}

/* Enhanced input group compatibility */
.input-group {
flex-wrap: nowrap !important;
width: 100%;
}

.input-group .form-control {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
min-height: 44px; /* Match button height */
}

.input-group .cta-btn-fresh {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
flex-shrink: 0;
width: auto; /* Reset width for input groups */
}


/* =========================================================
   LAW PRACTICE ANIMATIONS
   ========================================================= */

.law-practice-section{ background-color:white; margin-top:-100px; }
.animate{ opacity:0; transform:translateY(40px); transition:all .8s ease-out; }
.fade-up{ transform:translateY(40px); }
.fade-left{ transform:translateX(-40px); }
.fade-right{ transform:translateX(40px); }
.fade-in{ transform:scale(.95); }
.animate.show{ opacity:1; transform:translate(0,0) scale(1); }
.delay-1{ transition-delay:.2s; }
.delay-2{ transition-delay:.4s; }
.delay-3{ transition-delay:.6s; }
.delay-4{ transition-delay:.8s; }

/* =========================================================
   SLIDER / TESTIMONIAL CARDS
   ========================================================= */

.slider112{ background-color:#ffffff00; }
.slider-section{ max-width:1380px; margin:auto; padding:0 20px; }
.display-heading{ font-size:2.7rem; line-height:1.3; font-weight:800; color:#555555; }
.display-stat{ font-size:11rem; line-height:1; font-weight:500; }
.text-gradient{ background:linear-gradient(90deg,#000000,#000000a5); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
@media (max-width:992px){
  .display-heading{ font-size:2.1rem; }
  .display-stat{ font-size:5rem; }
}
@media (max-width:576px){
  .display-heading{ font-size:1.8rem; }
  .display-stat{ font-size:4rem; }
}
.slider-wrapper{ position:relative; overflow:hidden; margin-top:80px; }
.slider-track{ display:flex; gap:1rem; overflow-x:auto; scroll-behavior:smooth; padding-bottom:1rem; }
.slider-track::-webkit-scrollbar{ display:none; }
.card-item{
  flex:0 0 calc(100% / 4.5); min-width:260px; border:none; background:#00000005;
  border-bottom:2px solid #0e042446; border-right:2px solid #0e042446; border-radius:.75rem;
  padding:20px; display:flex; flex-direction:column; justify-content:space-between;
  position:relative; transition:all .3s ease; height:380px;
}
.category{ font-size:1.10rem; font-weight:600; color:#6b7280; text-transform:uppercase; margin-bottom:1rem; }
.profile-img{ width:126px; height:126px; object-fit:cover; border-radius:.75rem; margin:1rem 0 1.7rem; }
.name{ font-size:1.125rem; font-weight:600; color:#111827; margin-bottom:.25rem; }
.role{ font-size:.875rem; color:#6b7280; margin-bottom:1rem; }
.company-logo{ height:35px; margin-top:auto; }
.slider-nav{ display:flex; justify-content:flex-end; margin-top:20px; }
.nav-btn{
  width:40px; height:40px; background:#fff; border:1px solid #d1d5db; border-radius:.5rem; display:flex; align-items:center; justify-content:center;
  transition: box-shadow .2s; margin-left:10px;
}
.nav-btn:hover{ box-shadow:0 4px 6px rgba(0,0,0,.1); }
.nav-btn svg{ width:20px; height:20px; color:#6b7280; }
@media (max-width:768px){ .card-item{ flex:0 0 80%; } .slider-nav{ display:none; } }

.card-content{ transition:all .3s ease; }
.card-hover-content{
  position:absolute; inset:0; padding:20px; background:#ff7a07; opacity:0; visibility:hidden; transform:translateY(10px);
  transition:all .3s ease; display:flex; flex-direction:column; justify-content:center; border-radius:.60rem;
}
.card-item:hover .card-content{ opacity:0; visibility:hidden; }
.card-item:hover .card-hover-content{ opacity:1; visibility:visible; transform:translateY(0); }
.percentage{ font-size:3rem; font-weight:700; color:#ffffff; margin-bottom:1rem; }
.testimonial-text{ font-size:1rem; color:#ffffff; margin-bottom:1rem; line-height:1.5; }
.hover-category{ font-size:1.10rem; font-weight:600; color:#ffffff; text-transform:uppercase; margin-bottom:1rem; }

/* =========================================================
   FAQ
   ========================================================= */

.faq .faq-title{ font-size:44px; font-weight:700; margin-bottom:1rem;  color:var(--heading-color); }
.faq .faq-description{ font-size:1rem; color:var(--default-color); margin-bottom:2rem; }
.faq .faq-arrow{ color:var(--accent-color); }
.faq .faq-container .faq-item{
  background-color:var(--surface-color); position:relative; padding:20px; margin-bottom:15px; border-radius:10px; overflow:hidden;
}
.faq .faq-container .faq-item:last-child{ margin-bottom:0; }
.faq .faq-container .faq-item h3{
  font-weight:600; font-size:16px; line-height:24px; margin:0 30px 0 0; transition:.3s; cursor:pointer; display:flex; align-items:center;
}
.faq .faq-container .faq-item h3 .num{ color:var(--accent-color); padding-right:5px; }
.faq .faq-container .faq-item h3:hover{ color:var(--accent-color); }
.faq .faq-container .faq-item .faq-content{
  display:grid; grid-template-rows:0fr; transition:.3s ease-in-out; visibility:hidden; opacity:0;
}
.faq .faq-container .faq-item .faq-content p{ margin-bottom:0; overflow:hidden; }
.faq .faq-container .faq-item .faq-toggle{ position:absolute; top:20px; right:20px; font-size:16px; line-height:0; transition:.3s; cursor:pointer; }
.faq .faq-container .faq-item .faq-toggle:hover{ color:var(--accent-color); }
.faq .faq-container .faq-active h3{ color:var(--accent-color); }
.faq .faq-container .faq-active .faq-content{ grid-template-rows:1fr; visibility:visible; opacity:1; padding-top:10px; }
.faq .faq-container .faq-active .faq-toggle{ transform:rotate(90deg); color:var(--accent-color); }
/* Default (mobile/tablet) → normal flow */
.faq-left {
  position: static;
}

/* Desktop (≥992px) → sticky */
@media (min-width: 992px) {
  .faq-left {
    position: sticky;
    top: 100px; /* adjust based on header height */
    align-self: flex-start;
  }
}


/* ================================
   DARK THEME — FAQ
   Bg: #020010
===================================*/
.faq{
  --bg:#020010;
  --heading-color:#ffffff;                 /* titles */
  --default-color:#c6c8d9;                 /* body text */
  --muted-color:#9aa0b8;                   /* subtle notes */
  --accent-color:#8c58e1;                  /* violet accent (use your brand if needed) */
  --surface-color:rgba(255,255,255,0.06);  /* card */
  --surface-hover:rgba(255,255,255,0.09);  /* card hover */
  --border-color:rgba(255,255,255,0.10);   /* subtle borders */
  --ring:0 10px 24px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.08);
  background:var(--bg);
}

/* Title / copy */
.faq .faq-title{
  color:var(--heading-color);
}
.faq .faq-description{
  color:var(--default-color);
}

/* Arrow / toggles use accent */
.faq .faq-arrow,
.faq .faq-container .faq-item .faq-toggle{
  color:var(--accent-color);
}

/* Item cards */
.faq .faq-container .faq-item{
  background-color:var(--surface-color);
  border:1px solid var(--border-color);
  box-shadow:var(--ring);
}
.faq .faq-container .faq-item:hover{
  background-color:var(--surface-hover);
}

/* Headings inside items */
.faq .faq-container .faq-item h3{
  color:var(--heading-color);
}
.faq .faq-container .faq-item h3 .num{
  color:var(--accent-color);
}
.faq .faq-container .faq-item h3:hover{
  color:var(--accent-color);
}

/* Collapsible content */
.faq .faq-container .faq-item .faq-content{
  color:var(--default-color);
}
.faq .faq-container .faq-item .faq-content p{
  color:var(--default-color);
}

/* Active state */
.faq .faq-container .faq-active h3{
  color:var(--accent-color);
}
.faq .faq-container .faq-active .faq-content{
  grid-template-rows:1fr;
  visibility:visible;
  opacity:1;
  padding-top:10px;
}
.faq .faq-container .faq-active .faq-toggle{
  transform:rotate(90deg);
  color:var(--accent-color);
}

/* Toggle hover */
.faq .faq-container .faq-item .faq-toggle:hover{
  color:var(--accent-color);
}

/* Focus ring for accessibility */
.faq .faq-container .faq-item h3:focus{
  outline:2px solid var(--accent-color);
  outline-offset:3px;
  border-radius:6px;
}

/* Sticky left column behavior unchanged */
.faq-left { position: static; }
@media (min-width: 992px){
  .faq-left{
    position: sticky;
    top: 100px;        /* adjust if your header height differs */
    align-self: flex-start;
  }
}


/* =========================================================
   MS TEMPLATES (TEAMS) + CURVE FIX
   ========================================================= */

#ms-templates-teams .ms-card{ border:1px solid #e9e6ff; background:#e7f1ff; }
#ms-templates-teams .team-pill{
  border:1px solid #e6e6ef; background:#fff; color:#3a3a3a; border-radius:14px; padding:.6rem 1rem;
  font-weight:600; display:inline-flex; align-items:center; transition:all .2s;
}
#ms-templates-teams .team-pill:hover{ border-color:#c9c9ea; transform:translateY(-1px); }
#ms-templates-teams .team-pill.active{ background:#0f0f14; color:#fff; border-color:#0f0f14; }

#ms-templates-teams .left-pane{ position:relative; overflow:hidden; }
#ms-templates-teams .left-pane::after{
  content:""; position:absolute; right:100%; left:-80px; top:-25%; bottom:-25%; width:110%;
  background: radial-gradient(120% 70% at 0% 50%, #ffffff 0%, #ffffff 35%, #ffffff 58%, #ffffff 82%);
  z-index:0; pointer-events:none; border-radius:30%;
}
#ms-templates-teams .left-pane > *{ position:relative; z-index:1; }
#ms-templates-teams .features-box{ background:#fff; }
#ms-templates-teams .feature-row{
  display:flex; align-items:center; padding:16px 18px; border-bottom:1px solid #ececf2;
}
#ms-templates-teams .feature-row:last-child{ border-bottom:0; }
#ms-templates-teams .f-ico{ width:40px; height:40px; border-radius:12px; background:#f3f3fb; display:flex; align-items:center; justify-content:center; font-size:18px; margin-right:12px; color:#1d1d1f; }
#ms-templates-teams .f-text{ font-weight:600; color:#1d1d1f; }
#ms-templates-teams .cta-gradient{ background:linear-gradient(90deg,#041268 0%, #0a94e5 100%); color:#fff; border:0; }
#ms-templates-teams .cta-gradient:hover{ filter:brightness(.95); }
@media (max-width:991.98px){ #ms-templates-teams .left-pane::after{ display:none; } }

/* =========================================================
   REVIEWS / SOCIAL PROOF
   ========================================================= */

.reviews-section{
  background: radial-gradient(1200px 600px at 50% -10%, #c0d9fb 0%, #ffffff 70%);
  position:relative; overflow:hidden;
}
.trusted-pill{
  background: rgba(43,92,255,0.1); color:#2b5cff; letter-spacing:.08em; font-size:.75rem; backdrop-filter: blur(4px);
  border:1px solid rgba(43,92,255,0.2);
}
.reviews-title{
  max-width:900px; background:linear-gradient(120deg,#1a202c,#2d3748);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; line-height:1.2;
}
.brand-accent{
  background:linear-gradient(90deg,#2b5cff,#4b73ff); -webkit-background-clip:text; -webkit-text-fill-color:transparent; position:relative;
}
.brand-accent::after{
  content:''; position:absolute; bottom:-2px; left:0; width:100%; height:2px; background:linear-gradient(90deg,#2b5cff,#4b73ff); border-radius:2px;
}

.reviews-section .avatar-stack{ display:flex; align-items:center; }
.reviews-section .avatar-stack img{
  width:44px; height:44px; border-radius:50%; border:2px solid #fff; object-fit:cover; margin-left:-12px;
  transition:transform .3s ease; box-shadow:0 4px 6px rgba(0,0,0,.1);
}
.reviews-section .avatar-stack img:hover{ transform:translateY(-2px); z-index:2; }
.reviews-section .avatar-stack img:first-child{ margin-left:0; }

.review-card{
  background:#fff; border:1px solid rgba(43,92,255,0.1); border-radius:1.25rem; padding:1.75rem;
  box-shadow:0 10px 25px rgba(17,24,39,.08); transition:all .3s ease; position:relative; overflow:hidden;
  animation: fadeInUp .6s ease forwards;
}
.review-card::before{
  content:''; position:absolute; top:0; left:0; width:100%; height:4px; background:linear-gradient(90deg,#2b5cff,#4b73ff); opacity:0; transition:opacity .3s ease;
}
.review-card:hover{ transform:translateY(-5px); box-shadow:0 20px 40px rgba(17,24,39,.12); }
.review-card:hover::before{ opacity:1; }
.review-card .g2-logo{ width:40px; height:24px; object-fit:contain; opacity:.7; }
.review-text{ color:#1f2937; line-height:1.7; margin:0; font-size:1.05rem; }
.review-card .avatar{ width:50px; height:50px; object-fit:cover; box-shadow:0 4px 8px rgba(0,0,0,.1); }

.reviews-section .btn-primary{
  background:linear-gradient(90deg,#2b5cff,#4b73ff); border:none; border-radius:.8rem; transition:all .3s ease;
}
.reviews-section .btn-primary:hover{ transform:translateY(-2px); box-shadow:0 8px 15px rgba(43,92,255,.3); }
.reviews-section .btn-outline-primary{
  border-radius:.8rem; border-width:2px; transition:all .3s ease;
}
.reviews-section .btn-outline-primary:hover{ transform:translateY(-2px); box-shadow:0 8px 15px rgba(0,0,0,.1); }

.trusted-logo{ height:30px; opacity:.7; transition:all .3s ease; filter:grayscale(100%); }
.trusted-logo:hover{ opacity:1; filter:grayscale(0%); }

@media (max-width:768px){
  .reviews-title{ font-size:2.2rem; }
  .review-card{ padding:1.5rem; }
  .reviews-section .avatar-stack img{ width:38px; height:38px; }
}
@media (max-width:576px){
  .reviews-title{ font-size:1.8rem; }
  .reviews-section .avatar-stack img{ width:34px; height:34px; }
  .trusted-logo{ height:22px; }
}
@keyframes fadeInUp{
  from{ opacity:0; transform:translateY(20px); }
  to{ opacity:1; transform:translateY(0); }
}
.review-card:nth-child(2){ animation-delay:.2s; }
.review-card:nth-child(3){ animation-delay:.4s; }

/* ===== Theme tokens ===== */
:root{
  --le-deep: #070a1e;
  --le-mid: #0b0f2c;
  --le-glow: #b388ff;      /* primary neon */
  --le-cyan: #6bdcff;      /* secondary neon */
  --le-text: #f7f8ff;
  --le-muted: #c9cdf7cc;
  --le-card: rgba(255,255,255,.06);
  --le-card-2: rgba(255,255,255,.03);
  --le-border: rgba(179,136,255,.28);
  --le-border-strong: rgba(179,136,255,.55);
  --le-radius: 18px;
}

/* ===== Section background ===== */
.legal-enterprise{
  background:
    radial-gradient(900px 420px at 0% 30%, rgba(107,220,255,.18) 0%, transparent 55%),
    linear-gradient(180deg, #020010 0%, #020010 100%);
  color: var(--le-text);
}

.le-wrap{
  max-width: 1315px;
  margin: 0 auto;
  padding: clamp(48px, 6vw, 100px) 10px;
  padding-bottom: 50px;
  display: grid;
  grid-template-columns: 1.05fr 1.3fr;
  gap: clamp(24px, 3vw, 48px);
}
@media (max-width: 1100px){
  .le-wrap{ grid-template-columns: 1fr; }
}

/* ===== Left hero ===== */
.le-chip{
  display:inline-block;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .08em;
  color: var(--le-glow);
  background: rgba(179,136,255,.08);
  border: 1px solid var(--le-border);
  margin-bottom: 30px;
}
.le-title{
  margin: 14px 0 12px;
  font-size: clamp(32px, 4.4vw, 42px);
  line-height: 1.05;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: white;
  margin-bottom: 20px;
}
.le-gradient{
  background: linear-gradient(90deg, var(--le-glow), var(--le-cyan), var(--le-glow));
  background-size: 200% 100%;
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color: transparent;
  animation: hueMove 7s ease-in-out infinite;
}
@keyframes hueMove{
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
.le-sub{
  margin: 0 0 20px;
  color: var(--le-muted);
  max-width: 640px;
  line-height: 1.4;
  margin-bottom: 50px;
  font-size: 20px;
}
.le-cta{
  display:inline-block;
  padding: 10px 20px;
  border-radius: 10px;
  font-weight: 500;
  text-decoration: none;
  color: #ffffff;
  background: linear-gradient(120deg,  #030063, #41a6ff);
  box-shadow: 0 12px 28px rgba(107,220,255,.1);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
  font-size: 18px;
}
.le-cta:hover{ transform: translateY(-2px); filter: brightness(1.03); box-shadow: 0 16px 36px rgba(107,220,255,.15); color: whitesmoke; }

/* ===== Right grid ===== */
.le-grid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: 1fr;
  gap: clamp(16px, 2vw, 24px);
}
@media (max-width: 680px){
  .le-grid{ grid-template-columns: 1fr; }
}

/* Base card */
.le-card{
  position: relative;
  display:flex; flex-direction:column;
  padding: 22px 22px 20px;
  border-radius: var(--le-radius);
  background: linear-gradient(180deg, var(--le-card), var(--le-card-2));
  border: 1px solid var(--le-border);
  backdrop-filter: blur(6px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
  min-height: 100%;
}
.le-card:hover{
  transform: translateY(-6px);
  border-color: var(--le-border-strong);
  box-shadow: 0 26px 70px rgba(103,78,255,.28);
}

/* featured tall card */
.le-card--tall{
  grid-row: span 2;
  background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.05));
}
@media (max-width: 680px){
  .le-card--tall{ grid-row: span 1; }
}

/* Icon badge */
.le-icon{
  width: 46px; height: 46px;
  display:grid; place-items:center;
  border-radius: 14px;
  margin-bottom: 12px;
  color: #0e1133;
  background: linear-gradient(180deg, #e8deff, #a9dfff);
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 8px 18px rgba(107,220,255,.28), inset 0 1px 0 rgba(255,255,255,.6);
}

/* Headings / copy */
.le-h3{
  font-weight: 800;
  font-size: 20px;
  margin: 4px 0 8px;
  color: white;
}
.le-p{
  color: var(--le-muted);
  line-height: 1.65;
  margin: 0;
}

/* List inside tall card */
.le-list{
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
  display:grid; gap: 10px;
  color: var(--le-muted);
}
.le-list li{
  position: relative; padding-left: 26px;
}
.le-list li::before{
  content:''; position:absolute; left:0; top:.55em;
  width: 12px; height: 12px; border-radius: 4px;
  background: radial-gradient(7px 7px at 50% 50%, #fff, #d3b7ff 60%);
  box-shadow: 0 0 0 2px rgba(179,136,255,.35), 0 0 14px rgba(179,136,255,.35);
}



/* =========================
   DEMO SPLIT / FORM
========================= */
.demoSplitWrapper {
  display:flex; flex-direction:row; flex-wrap:wrap;
  overflow:hidden;
}

.demoFormSide {
  flex: 1 1 50%; padding: 20px; box-sizing: border-box;
  background: radial-gradient(900px 420px at 110% 70%, rgba(201, 107, 255, 0.18) 0%, transparent 55%), #020010;
}
.demoFormSide {
   display:flex; align-items:center; justify-content:center; margin: 0px 0px 0px 0px; ;
}


.sec1a2b3c { width:100%; display:flex; justify-content:center; }
.boxWrap445566 { width:100%; max-width:1295px; padding:40px; padding-top:50px; margin-bottom: 50px; text-align:center; background-color: #ffffff; border-radius: 25px; border: solid 1px #0000001a; padding-bottom: 60px;}

.imgWrap4d5e6f {
  display:flex; align-items:center; justify-content:center; gap:10px; margin-bottom:0px; flex-wrap:wrap; margin-top:15px;
}
.imgWrap4d5e6f img { width:64px; height:64px; border-radius:50%; box-shadow:0 2px 6px rgba(0,0,0,.1); }
.imgDividerHex { width:30px; height:2px; background:#ccc; border-radius:1px; }

.h1aabbcc { font-size:1.5rem; font-weight:600; margin: -10px 0 10px; color:#050134; }
.p778899 { color:#4b5563; font-size:.95rem; line-height:1.5; margin-bottom:30px; }

.form9a8b7c { display:flex; flex-direction:column; gap:0; text-align:left; }
.grp5d6e7f { display:flex; gap:20px; flex-wrap:wrap; }

.ctrl123abc { flex:1 1 48%; display:flex; flex-direction:column; gap:8px; position: relative; }
.lblabc123 { display:block; font-weight:600; color:#1f2937; font-size:1rem; margin-bottom:0px; margin-top: 9.5px; }

.inpt456def,.sel789abc {
  padding: 12px 14px;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  font-size: 16px;
  transition: box-shadow .2s ease, border-color .2s ease;
  background: #fff;
  width: 100%;
  box-shadow: 0 1px 2px rgba(0,0,0,.05);
  outline: none;
}
.inpt456def:focus,.sel789abc:focus {
  border-color:#93c5fd; box-shadow:0 0 0 4px rgba(59,130,246,.1);
}

.error998877 { border-color: red !important; }
.txtErrore5e5e5 { color:red; font-size:.85rem; margin-top:4px; }

/* Custom select caret styling */
.selectLikeInput {
  appearance:none; -webkit-appearance:none; -moz-appearance:none;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(0,0,0,0.45) 50%),
    linear-gradient(135deg, rgba(0,0,0,0.45) 50%, transparent 50%),
    linear-gradient(to right, transparent, transparent);
  background-position:
    calc(100% - 18px) calc(50% - 6px),
    calc(100% - 12px) calc(50% - 6px),
    0 0;
  background-size: 6px 6px, 6px 6px, 100% 100%;
  background-repeat: no-repeat;
  padding-right: 40px;
}
.selectLikeInput:invalid { color:#6b7280; }
.selectLikeInput option[disabled]{ color:#9ca3af; }

/* CTA Button (gradient cross-fade, text never hidden) */
.btn00ffee {
  position: relative; overflow: hidden; isolation: isolate;
  background: none; color: #fff;
  padding: 16px; font-size: 1.05rem; border-radius: 10px;
  cursor: pointer; border: none; width: 100%; font-weight: 600;
  box-shadow: 0 4px 12px rgba(0,178,226,.3);
  transition: transform .35s cubic-bezier(.22,.61,.36,1), box-shadow .35s ease;
}
.btn00ffee::before,.btn00ffee::after{
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; z-index:-1; transition: opacity .45s ease;
}
.btn00ffee::before{ background: linear-gradient(90deg, #2d0e9f, #00aaff); opacity:1; }
.btn00ffee::after { background: linear-gradient(90deg, #ffa061, #ff6f00); opacity:0; }
.btn00ffee:hover::after{ opacity:1; }
.btn00ffee:hover::before{ opacity:0; }
.btn00ffee:hover{ transform: translateY(-2px) scale(1.01); box-shadow:0 8px 22px rgba(0,178,226,.45); }
.btn00ffee:active{ transform: translateY(0) scale(.99); box-shadow:0 4px 12px rgba(0,178,226,.3); transition-duration:.15s; }
.btn00ffee:focus-visible{ outline:3px solid rgba(0,170,255,.5); outline-offset:2px; }

/* Demo responsive */
@media (max-width: 1024px) {
  .h1aabbcc { font-size:1.5rem; }
  .p778899 { font-size:.9rem; }
}
@media (max-width: 900px) {
  .demoSplitWrapper { flex-direction: column; min-height:auto; }
  .demoFormSide { flex:none; width:100%; padding:30px 20px; }
  .boxWrap445566 { padding:20px; margin-top:10px; }
}
@media (max-width: 640px) {
  .grp5d6e7f { flex-direction: column; gap:10px; }
  .ctrl123abc { flex:1 1 100%; }
  .btn00ffee { font-size:.95rem; padding:12px; }
  .imgWrap4d5e6f{ margin-top:40px; }
  .imgWrap4d5e6f img { width:48px; height:48px; }
  .h1aabbcc { font-size:1.3rem; }
}
@media (max-width: 480px) {
  .boxWrap445566 { margin-top:60px; padding:16px; }
  .form9a8b7c { gap:12px; }
  .grp5d6e7f { gap:8px; }
  .lblabc123 { font-size:.95rem; }
  .inpt456def,.sel789abc { font-size:.95rem; padding:10px 12px; }
  .btn00ffee { font-size:.9rem; padding:10px 16px; }
  .demoFormSide { padding:20px 16px; }
}
@media (max-width: 360px) {
  .h1aabbcc { font-size:1.15rem; }
  .p778899 { font-size:.85rem; }
  .btn00ffee { font-size:.85rem; padding:10px 14px; }
  .inpt456def,.sel789abc { font-size:.85rem; padding:6px 8px; }
  .lblabc123 { font-size:.85rem; }
}

/* =========================
   CALENDAR
========================= */
.cf-cal-wrap{
  display:flex; gap:16px; align-items:flex-start; flex-wrap:wrap;
  border:1px solid #e5e7eb; border-radius:12px; padding:14px; background:#fff;
}
.cf-calendar{ width:320px; border:1px solid #e5e7eb; border-radius:12px; overflow:hidden; }
.cf-cal-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 12px; background:#f9fafb; border-bottom:1px solid #eef2f7;
}
.cf-month-label{ font-weight:700; }
.cf-nav-btn{
  border:1px solid #e5e7eb; background:#fff; width:32px; height:32px; border-radius:8px;
  cursor:pointer; font-size:18px; line-height:1; transition:transform .1s ease;
}

.cf-day.cf-sunday { opacity: 1.45; }
.cf-day.cf-sunday.today { opacity: 1.6; }
.cf-nav-btn:hover{ transform:translateY(-1px); }
.cf-week-row{ display:grid; grid-template-columns:repeat(7,1fr); gap:0; padding:8px 0px 0; font-size:12px; color:#6b7280; margin-left: 20px; }
.cf-days-grid{ display:grid; grid-template-columns:repeat(7,1fr); gap:4px; padding:4px; }
.cf-day{
  height:35px; display:flex; align-items:center; justify-content:center;
  border-radius:999px; cursor:pointer; user-select:none; font-weight:500;
  color:#696c71; border:1px solid transparent;
}
.cf-day.other{ color:#9ca3af; background: transparent; }
.cf-day.disabled{ color:#c7cbd3; cursor:not-allowed; background: transparent; }
.cf-day:hover:not(.disabled){ border-color:#c7defe; background:#0051ffc2; color:#fff; }
.cf-day.selected{ background:#2563eb; color:#fff; border-color:transparent; }
.cf-day.today:not(.selected){ background:#44d7ff; color:#fff; }
.cf-times{
  flex:1; min-width:220px; border:1px solid #e5e7eb; border-radius:12px; overflow:hidden;
}
.cf-times-head{
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 12px; background:#f9fafb; border-bottom:1px solid #eef2f7;
}
.cf-times-title{ font-weight:500; }
.cf-tz-note{ font-size:12px; color:#6b7280; }
.cf-times-list{ padding:10px; max-height:248px; overflow:auto; display:flex; flex-direction:column; gap:8px; }
.cf-time-btn{
  border:1px solid #e5e7eb; background:#fff; height:42px; border-radius:10px; cursor:pointer;
  font-weight:500; text-align:left; padding:0 14px;
  transition: transform .1s ease, box-shadow .2s ease, border-color .2s ease;
}
.cf-time-btn:hover{ transform:translateY(-1px); box-shadow:0 4px 10px rgba(0,0,0,.04); }
.cf-time-btn.selected{ border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.15); }
.cf-time-btn.disabled{ opacity:.45; cursor:not-allowed; }
@media (max-width: 768px){ .cf-calendar{ width:100%; } }

/* =========================
   TIMEZONE SEARCH (single source of truth)
========================= */
.tz-search-panel{
  position:absolute;
  z-index:9999;
  display:none;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:10px;
  box-shadow:0 12px 32px rgba(0,0,0,.08);
  padding:10px;
  max-height:360px;
  overflow:hidden;
  width: 320px;
}
.tz-search-input{
  width:100%;
  border:1px solid #e5e7eb;
  border-radius:8px;
  padding:10px 12px;
  outline:none;
  font-size:14px;
  transition: box-shadow .2s ease, border-color .2s ease;
  margin:0;
}
.tz-search-input:focus{
  border-color:#93c5fd;
  box-shadow:0 0 0 4px rgba(59,130,246,.1);
}
.tz-search-list{
  margin:8px 0 0;
  padding:0;
  list-style:none;
  max-height:300px;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
.tz-search-list .tz-item{
  width:100%;
  text-align:left;
  padding:8px 10px;
  border-radius:6px;
  border:0;
  background:#fff;
  font-size:14px;
  cursor:pointer;
}
.tz-search-list .tz-item:focus{ outline:2px solid #2563eb; outline-offset:2px; }
.tz-search-list .tz-item:hover{ background:#f3f4f6; }
.tz-empty{ padding:12px; color:#6b7280; font-size:14px; }

/* Mobile full-screen overlay */
@media (max-width: 576px){
  .tz-search-panel{
    position: fixed !important;
    left:0 !important; top:0 !important; right:0; bottom:0;
    width:100% !important; height:100% !important;
    border-radius:0; border:none; padding:16px; background:#fff;
    max-height:none; box-shadow:none;
  }
  .tz-search-header{
    display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:12px;
  }
  .tz-close-btn{
    border:0; background:#f3f4f6; border-radius:8px; padding:8px 12px; font-weight:600;
  }
  body.tz-open { overflow:hidden; touch-action:none; }
  .tz-search-list{ max-height: calc(100vh - 140px); }
}



.thank-you-popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
  }

  .thank-you-popup.active {
    opacity: 1;
    visibility: visible;
  }

  .thank-you-content {
    background: white;
    padding: 40px;
    border-radius: 12px;
    text-align: center;
    max-width: 500px;
    width: 90%;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
    transform: scale(0.9);
    transition: transform 0.3s ease;
  }

  .thank-you-popup.active .thank-you-content {
    transform: scale(1);
  }

  .thank-you-icon {
    font-size: 64px;
    color: #10b981;
    margin-bottom: 20px;
  }

  .thank-you-title {
    font-size: 28px;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 16px;
  }

  .thank-you-message {
    font-size: 16px;
    color: #6b7280;
    margin-bottom: 24px;
    line-height: 1.6;
  }

  .thank-you-button {
    background: #2563eb;
    color: white;
    border: none;
    padding: 12px 32px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.3s ease;
  }

  .thank-you-button:hover {
    background: #1d4ed8;
  }

  /* Email error styling */
  .error998877 {
    border-color: #dc2626 !important;
    background-color: #fef2f2 !important;
  }

  .email-error-message {
    color: #dc2626;
    font-size: 0.875rem;
    margin-top: 4px;
    display: flex;
    align-items: center;
    gap: 4px;
  }



  

/* Phone row layout – clean, responsive */
.phone-row {
  display: flex;
  gap: 10px;
  align-items: center;
}

.phone-code-select {
  max-width: 220px;
  flex: 0 0 auto;
}

.phone-input {
  flex: 1 1 auto;
}

/* Subtle helper text */
.phone-hint {
  display: block;
  margin-top: 6px;
  color: #6b7280;
  font-size: 12px;
}

/* Mobile: stack nicely */
@media (max-width: 480px) {
  .phone-row {
    flex-direction: column;
    align-items: stretch;
  }
  .phone-code-select {
    max-width: 100%;
  }
}
/* Two-column layout for the form body */
.demo-two-col{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  align-items: start;
}

/* Make columns stack nicely on tablet/mobile */
@media (max-width: 980px){
  .demo-two-col{
    grid-template-columns: 1fr;
  }
}

/* Ensure right column components stretch properly */
.right-col .cf-cal-wrap{
  width: 100%;
}

/* Keep the submit button visually separated from the grid */
.form9a8b7c > .btn00ffee{
  margin-top: 18px;
}
        
        :root{
            --ink:#ffffff;
            --muted:#8e8e8e;
            --panel:#f5f7fb;
            --white:#fff;
            --accent:#111827;         /* dark for text and button */
            --pill:#e9edfb;           /* soft indigo tint for the highlighted row */
            --radius:18px;
            --shadow:0 10px 30px rgba(16,24,40,.08), 0 2px 6px rgba(16,24,40,.06);
            --hover:#f0f4ff;          /* hover background color */
        }

        body {
            margin: 0;
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
            background: #020010;
        }

        /* Sticky Top Bar */
        .csx-sticky-bar {
            position: sticky;
            top: 0;
            z-index: 1000;
            background: rgba(2, 0, 16, 0.95);
            backdrop-filter: blur(10px);
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
            padding: 22px 0;
        }

        .csx-sticky-content {
            max-width: 1295px;
            margin: 0 auto;
            display: flex;
            justify-content: center;
            gap: 40px;
            padding: 0 20px;
        }

        .csx-sticky-item {
            color: var(--muted);
            font-weight: 500;
            font-size: 16px;
            cursor: pointer;
            transition: color 0.2s ease;
            position: relative;
            padding: 8px 0;
        }

        .csx-sticky-item:hover {
            color: var(--white);
        }

        .csx-sticky-item.active {
            color: var(--white);
        }

        .csx-sticky-item.active::after {
            content: '';
            position: absolute;
            bottom: -16px;
            left: 0;
            width: 100%;
            height: 2px;
            background: var(--white);
        }

        .csx-wrap{
            color:var(--ink);
            padding: 4px 20px 80px;
            background: #020010;
        }
        .csx-max{
            max-width:1295px;
            margin:0 auto;
        }

        .csx-head{
            text-align:center;
            margin-bottom: 22px;
            letter-spacing:-.02em;
            font-size: clamp(34px, 5vw, 54px);
            line-height:1.1;
            font-weight:500;
            color: var(--ink);
        }
        .csx-sub{
            text-align:center;
            color:var(--muted);
            max-width:900px;
            margin: 0 auto 38px;
            font-size: clamp(15px, 1.6vw, 20px);
        }

        /* main panel */
        .csx-panel{
            background:var(--panel);
            border-radius: 16px;
            padding: clamp(18px, 3vw, 28px);
            box-shadow: var(--shadow);
        }

        .csx-grid{
            display:grid;
            grid-template-columns: 1.05fr 1fr;
            gap: clamp(24px, 3vw, 40px);
            align-items:center;
        }
        @media (max-width: 980px){
            .csx-grid{ grid-template-columns:1fr; }
        }

        /* left block */
        .csx-left{
            padding: clamp(30px, 1vw, 10px);
        }

        .csx-item{
            margin-bottom: 2px;
            padding: 16px;
            border-radius: 14px;
            cursor: pointer;
            transition: all 0.2s ease;
        }
        .csx-item:hover {
            background-color: var(--hover);
        }
        .csx-item.active {
            background-color: var(--pill);
            box-shadow: inset 0 1px 0 rgba(255,255,255,.6);
        }
        .csx-item h4{
            margin:0 0 6px;
            font-size: 18px;
            font-weight: 700;
            letter-spacing:-.01em;
            color:#0b1024;
        }
        .csx-item p{
            margin:0;
            color:var(--muted);
            line-height:1.6;
        }

        .csx-pill{
            background: var(--pill);
            border-radius: 14px;
            padding: 18px 16px;
            margin-top: 12px;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.6);
        }
        .csx-pill .csx-item{ margin:0; }

        /* button */
        .csx-btn{
            display:inline-flex;
            align-items:center;
            gap:10px;
            background:var(--accent);
            color:var(--white);
            border:none;
            border-radius: 999px;
            padding: 14px 20px;
            font-weight:600;
            cursor:pointer;
            margin-top: 22px;
            transition: transform .06s ease, box-shadow .2s ease, opacity .2s ease;
            box-shadow: 0 8px 20px rgba(17,24,39,.16);
            text-decoration: none;
        }
        .csx-btn svg{ width:18px;height:18px; }
        .csx-btn:hover{ transform: translateY(-1px); opacity:.95; }

        /* right mockup */
        .csx-right{
            position:relative;
            min-height: 420px;
        }

        .csx-card{
            position:relative;
            background: linear-gradient(180deg, rgba(172,153,250,.18), rgba(172,153,250,.18) 26%, rgba(172,153,250,.18));
            border-radius: 16px 16px;

            overflow:hidden;
            top: 28px;
            left: 28px;
        }
        .csx-image{
            display:block;
            width:120%;
            height:auto;
            border-radius: 16px;
            box-shadow: 0 12px 28px rgba(16,24,40,.12);
            transition: opacity 0.3s ease;
        }
        
        /* Number indicators */
        .csx-number {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 24px;
            height: 24px;
            background-color: #e9edfb;
            border-radius: 50%;
            margin-right: 10px;
            font-size: 14px;
            font-weight: 600;
            color: #0b1024;
        }

        /* ========= RESPONSIVE-ONLY PATCH (no desktop changes) ========= */
        @media (max-width: 1295px){
          .csx-max{ padding: 0 16px; }               /* safe gutters below container max */
          .csx-sticky-content { padding: 0 16px; }
        }

        @media (max-width: 980px){
          /* Layout */
          .csx-wrap{ padding: 24px 16px 46px; margin-top: -5px; }
          .csx-panel{ padding: 18px; }
          .csx-grid{
            grid-template-columns: 1fr;              /* already set, keep explicit */
            gap: 18px;
            align-items: start;
          }

          /* Sticky bar mobile */
          .csx-sticky-bar {
            padding: 12px 0;
          }
          
          .csx-sticky-content {
            gap: 20px;
            padding: 0 16px;
            justify-content: space-between;
          }
          
          .csx-sticky-item {
            font-size: 14px;
            text-align: center;
            flex: 1;
          }

          /* Headings & copy stay visually consistent via clamp(), just tighten spacing */
          .csx-head{ margin-bottom: 14px; }
          .csx-sub{ margin-bottom: 22px; }

          /* Left list: bigger tap targets, no layout shift on desktop */
          .csx-left{ padding: 0; }
          .csx-item{
            padding: 18px;
            margin-bottom: 8px;
            -webkit-tap-highlight-color: transparent;
          }
          .csx-item h4{ font-size: 17px; }
          .csx-item p{ font-size: 15px; line-height: 1.55; }

          /* CTA becomes full width for thumbs */
          .csx-btn{
            width: 100%;
            justify-content: center;
            padding: 14px 18px;
            margin-top: 18px;
          }

          /* Right mockup: remove offsets so it never overflows */
          .csx-right{
            min-height: unset;
          }
          .csx-card{
            top: 0;
            left: 0;
            border-radius: 14px;
          }
          .csx-image{
            width: 100%;               /* override desktop 120% */
            height: auto;
            display: block;
            border-radius: 14px;
          }
        }

        /* Small phones */
        @media (max-width: 640px){
          .csx-panel{ padding: 16px; }
          .csx-item{ padding: 16px; }
          .csx-item h4{ font-size: 16px; }
          .csx-item p{ font-size: 14.5px; }
          .csx-btn{ padding: 13px 16px; }
          
          .csx-sticky-content {
            gap: 10px;
          }
          
          .csx-sticky-item {
            font-size: 13px;
          }
        }

        /* Very small phones */
        @media (max-width: 420px){
          .csx-wrap{ padding: 20px 12px 40px; }
          .csx-panel{ padding: 14px; }
          .csx-item{ padding: 14px; }
          .csx-item h4{ font-size: 15.5px; }
          .csx-item p{ font-size: 14px; }
          .csx-card, .csx-image{ border-radius: 12px; }
          
          .csx-sticky-content {
            flex-direction: column;
            gap: 8px;
          }
          
          .csx-sticky-item {
            text-align: left;
            padding: 4px 0;
          }
          
          .csx-sticky-item.active::after {
            bottom: -12px;
          }
        }

        /* Accessibility & polish (mobile only) */
        @media (hover: none){
          .csx-item:hover{ background-color: transparent; }
        }
        @media (prefers-reduced-motion: reduce){
          .csx-item, .csx-image, .csx-btn{ transition: none !important; }
        }

.trusted-platform {
  background:radial-gradient(900px 420px at 90% 60%, rgba(107, 238, 255, 0.1) 0%, transparent 55%), #020010;
  padding: 60px 0;
  color: #fff;
  margin-top: -10px;
}

.container {
  max-width: 1335px;
  margin: 0 auto;
  padding: 0 20px;
}

.trusted-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  align-items: center;
  gap: 80px;
}

.trusted-left {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.trusted-badge-row {
  justify-content: center;
  gap: 30px;
  background: linear-gradient(180deg, #03375f4a, #012a4a);
  padding: 40px 50px;
  border-radius:7px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 20px;
}

.trusted-badge-row img {
  height: 270px;
  width: auto;
  object-fit: contain;
}

.trusted-note {
  text-align: center;
  font-size: 16px;
  color: #a4b2c4;
  font-weight: 500;
  margin-bottom: -10px;
  margin-top: 20px;
}

.trusted-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  width: 100%;
}

.trusted-stat {
  background: linear-gradient(180deg, #03375f4a, #012a4a);
  padding: 35px 20px;
  border-radius: 7px;
  text-align: center;
  transition: transform 0.2s ease;
}

.trusted-stat:hover {
  transform: translateY(-2px);
}

.trusted-stat h3 {
  font-size: 42px;
  font-weight: 700;
  color: #4fb7ff;
  margin-bottom: 12px;
  line-height: 1;
}

.trusted-stat p {
  color: #a4b2c4;
  margin: 0;
  font-size: 16px;
  font-weight: 500;
}

/* RIGHT SIDE */
.trusted-right {
  text-align: left;
}

.trusted-tag {
  display: inline-block;
  background: #07385f;
  color: #a4b2c4;
  padding: 8px 20px;
  border-radius: 999px;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.05em;
  margin-bottom: 25px;
}

.trusted-right h2 {
  font-size: clamp(32px, 3.5vw, 52px);
  font-weight: 600;
  line-height: 1.15;
  margin-bottom: 25px;
  color: white;
}

.trusted-right .highlight {
  color: #4fb7ff;
  background: linear-gradient(135deg, #4fb7ff, #2d8fd6);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.trusted-right p {
  color: #a4b2c4;
  font-size: 18px;
  line-height: 1.7;
  margin-bottom: 10px;
}

.powered-by {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 35px;
}

.powered-by span {
  color: #a4b2c4;
  font-size: 14px;
  font-weight: 500;
}

.powered-by img {
  height: 58px;
  width: auto;
  filter: brightness(1.2);
}

/* RESPONSIVE */
@media (max-width: 1100px) {
  .trusted-grid {
    gap: 60px;
  }
  
  .trusted-badge-row img {
    height: 160px;
  }
}

@media (max-width: 980px) {
  .trusted-platform {
    padding: 60px 0;
  }
  
  .trusted-grid {
    grid-template-columns: 1fr;
    gap: 50px;
    text-align: center;
  }

  .trusted-right {
    text-align: center;
    order: -1;
  }

  .trusted-badge-row {
    padding: 30px 40px;
  }
  
  .trusted-badge-row img {
    height: 140px;
  }

  .trusted-stats {
    grid-template-columns: 1fr;
    max-width: 400px;
    margin: 0 auto;
  }
  
  .trusted-stat h3 {
    font-size: 38px;
  }
  
  .powered-by {
    justify-content: center;
  }
}

@media (max-width: 768px) {
  .trusted-platform {
    padding: 50px 0;
  }
  
  .container {
    padding: 0 16px;
  }
  
  .trusted-grid {
    gap: 40px;
  }
  
  .trusted-badge-row {
    padding: 25px 30px;
  }
  
  .trusted-badge-row img {
    height: 120px;
  }
  
  .trusted-stat {
    padding: 30px 20px;
  }
  
  .trusted-stat h3 {
    font-size: 36px;
  }
  
  .trusted-right h2 {
    font-size: clamp(28px, 4vw, 42px);
  }
  
  .trusted-right p {
    font-size: 17px;
  }
}

@media (max-width: 480px) {
  .trusted-platform {
    padding: 40px 0;
  }
  
  .trusted-badge-row {
    padding: 20px;
  }
  
  .trusted-badge-row img {
    height: 100px;
  }
  
  .trusted-stat {
    padding: 25px 15px;
  }
  
  .trusted-stat h3 {
    font-size: 32px;
  }
  
  .trusted-note {
    font-size: 15px;
    margin: 20px 0 25px;
  }
}

.trusted-badge-row {
  justify-content: center;
  gap: 30px;
  background: linear-gradient(180deg, #03375f4a, #012a4a);
  padding: 0px 0px;
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 20px;
}

/* Video styling to match the previous image footprint */
.trusted-video {
  display: block;
  width: 100%;
  max-height: 570px;
  object-fit: contain; /* keep the same “badge-like” feel */
  border-radius: 10px;
  background: #00000000;
}

/* Responsive sizes match your old image behaviour */
@media (max-width: 1100px) {
  .trusted-badge-row {
    padding: 30px 40px;
  }

  .trusted-video {
    max-height: 550px;
  }
}

@media (max-width: 980px) {
  .trusted-badge-row {
    padding: 30px 40px;
  }

  .trusted-video {
    max-height: 450px;
  }
}

@media (max-width: 768px) {
  .trusted-badge-row {
    padding: 25px 30px;
  }

  .trusted-video {
    max-height: 350px;
  }
}

@media (max-width: 480px) {
  .trusted-badge-row {
    padding: 20px;
  }

  .trusted-video {
    max-height: 250px;
  }
}

 


    
 .cf-capabilities{background:radial-gradient(900px 420px at 0% 70%, rgba(107, 117, 255, 0.18) 0%, transparent 55%),#020010;color:#e8f4ff;padding:90px 20px; margin-bottom: 50px; margin-top: 30px;}
    .cf-cap-max{max-width:1200px;margin:0 auto;}
    .cf-pill{display:inline-block;background:#0c3c52;color:#a9c7da;padding:8px 16px;border-radius:999px;
             font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin:0 auto 18px;}
    .cf-title{font-weight:400;letter-spacing:-.02em;line-height:1.15;color:#fff;
              font-size:clamp(28px,5vw,46px);margin:0 auto 46px;max-width:900px;text-align:center; margin-bottom: 60px;}
    .cf-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:42px 34px;align-items:start;justify-items:center;}
    @media (max-width:1100px){.cf-grid{grid-template-columns:repeat(4,1fr);} }
    @media (max-width:880px){ .cf-grid{grid-template-columns:repeat(3,1fr);} }
    @media (max-width:640px){ .cf-grid{grid-template-columns:repeat(2,1fr);gap:28px 22px;} }

    .cf-item{width:210px;max-width:100%;text-align:center}
    .cf-ibox{width:72px;height:72px;margin:0 auto 14px;border-radius:18px;
             background:linear-gradient(180deg,#27b7ff8c 0%,#0a7fd6 100%);
             display:grid;place-items:center;box-shadow:0 10px 26px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.25);}
    .cf-ibox i.bi{font-size:38px;line-height:1;color:#e9f6ff}
    .cf-label{font-size:16px;font-weight:600;color:#e6f2fb;line-height:1.35;margin:0 0 6px}
    .cf-more{display:inline-block;color:#a5d7ff;font-size:14px;text-decoration:underline;text-underline-offset:2px}

    /* Enhanced responsive styles */
    @media (max-width: 768px) {
      .cf-capabilities {
        padding: 60px 16px;
        margin-bottom: 30px;
        margin-top: 20px;
      }
      
      .cf-title {
        margin-bottom: 40px;
      }
      
      .cf-grid {
        gap: 32px 24px;
      }
      
      .cf-item {
        width: 180px;
      }
      
      .cf-ibox {
        width: 64px;
        height: 64px;
        border-radius: 16px;
      }
      
      .cf-ibox i.bi {
        font-size: 32px;
      }
      
      .cf-label {
        font-size: 15px;
      }
    }

    @media (max-width: 480px) {
      .cf-capabilities {
        padding: 40px 12px;
        margin-bottom: 20px;
        margin-top: 15px;
      }
      
      .cf-title {
        margin-bottom: 30px;
      }
      
      .cf-grid {
        gap: 24px 16px;
      }
      
      .cf-item {
        width: 150px;
      }
      
      .cf-ibox {
        width: 56px;
        height: 56px;
        border-radius: 14px;
        margin-bottom: 12px;
      }
      
      .cf-ibox i.bi {
        font-size: 28px;
      }
      
      .cf-label {
        font-size: 14px;
        line-height: 1.3;
      }
      
      .cf-more {
        font-size: 13px;
      }
    }

    @media (max-width: 360px) {
      .cf-grid {
        grid-template-columns: 1fr;
        gap: 20px;
      }
      
      .cf-item {
        width: 100%;
        max-width: 200px;
      }
    }


/* =========================  
   FORM STYLES      
========================= */
.cf-compare {
  background: radial-gradient(900px 420px at 110% 22%, rgba(201, 107, 255, 0.18) 0%, transparent 55%), #020010;
  color: #e8f4ff;
  padding: 60px 20px;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.cmp-max {
  max-width: 1295px;
  margin: 0 auto;
}

.cmp-header {
  text-align: center;
  margin-bottom: 60px;
}

.cmp-pill {
  display: inline-block;
  background: linear-gradient(90deg, #0a7fd6, #27b7ff);
  color: #ffffff;
  padding: 8px 20px;
  border-radius: 30px;
  font-size: 14px;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 20px;
}

.cmp-title {
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
  color: #fff;
  font-size: clamp(32px, 5vw, 48px);
  margin: 0 0 20px;
  background: linear-gradient(90deg, #ffffff, #a9c7da);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.cmp-sub {
  color: #a9c7da;
  max-width: 720px;
  margin: 0 auto;
  line-height: 1.6;
  font-size: 18px;
}

/* Feature Comparison Columns */
.cmp-features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  margin-bottom: 60px;
}

.cmp-column {
  background: rgba(12, 60, 82, 0.25);
  border-radius: 20px;
  overflow: hidden;
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.cmp-column:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.25);
}

.cmp-column-casefox {
  border-top: 4px solid #27b7ff;
}

.cmp-column-others {
  border-top: 4px solid #4a5568;
}

.cmp-column-header {
  padding: 30px 30px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.cmp-platform-logo {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 15px;
}

.cmp-logo-mark {
  width: 28px;
  height: 28px;
  background: linear-gradient(135deg, #27b7ff, #0a7fd6);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.cmp-logo-mark::after {
  content: "f";
  font-weight: 900;
  font-size: 16px;
  color: white;
}

.cmp-logo-mark-others {
  width: 28px;
  height: 28px;
  background: linear-gradient(135deg, #4a5568, #2d3748);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.cmp-logo-mark-others::after {
  content: "✕";
  font-weight: 900;
  font-size: 14px;
  color: #cbd5e0;
}

.cmp-logo-text {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.cmp-column-casefox .cmp-logo-text {
  background: linear-gradient(90deg, #27b7ff, #0a7fd6);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.cmp-column-others .cmp-logo-text {
  color: #cbd5e0;
}

.cmp-platform-tag {
  display: inline-block;
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 14px;
  font-weight: 600;
}

.cmp-column-casefox .cmp-platform-tag {
  background: rgba(39, 183, 255, 0.15);
  color: #27b7ff;
  border: 1px solid rgba(39, 183, 255, 0.3);
}

.cmp-column-others .cmp-platform-tag {
  background: rgba(74, 85, 104, 0.15);
  color: #cbd5e0;
  border: 1px solid rgba(74, 85, 104, 0.3);
}

.cmp-feature-list {
  padding: 20px 30px;
}

.cmp-feature-item {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  padding: 20px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.cmp-feature-item:last-child {
  border-bottom: none;
}

.cmp-feature-icon {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 3px;
}

.cmp-column-casefox .cmp-feature-icon {
  background: rgba(39, 183, 255, 0.15);
  color: #27b7ff;
}

.cmp-column-others .cmp-feature-icon {
  background: rgba(74, 85, 104, 0.15);
  color: #27b7ff;
}

.cmp-column-others .cmp-feature-icon.unavailable {
  color: #f56565;
}

.cmp-feature-content h3 {
  font-size: 17px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 6px;
  line-height: 1.4;
}

.cmp-feature-content p {
  font-size: 14px;
  color: #a9c7da;
  margin: 0;
  line-height: 1.5;
}

.cmp-column-footer {
  padding: 25px 30px;
  background: rgba(0, 0, 0, 0.2);
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.cmp-score {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.cmp-score-value {
  font-size: 32px;
  font-weight: 700;
}

.cmp-column-casefox .cmp-score-value {
  color: #27b7ff;
}

.cmp-column-others .cmp-score-value {
  color: #cbd5e0;
}

.cmp-score-label {
  font-size: 14px;
  color: #a9c7da;
}

/* Highlights Section */
.cmp-highlights {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 25px;
  margin-top: 40px;
}

.cmp-highlight-item {
  background: rgba(12, 60, 82, 0.25);
  border-radius: 16px;
  padding: 25px;
  display: flex;
  align-items: center;
  gap: 20px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  transition: transform 0.3s ease, background 0.3s ease;
}

.cmp-highlight-item:hover {
  transform: translateY(-3px);
  background: rgba(12, 60, 82, 0.4);
}

.cmp-highlight-icon {
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(39, 183, 255, 0.15), rgba(10, 127, 214, 0.15));
  display: flex;
  align-items: center;
  justify-content: center;
  color: #27b7ff;
}

.cmp-highlight-item h4 {
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  margin: 0;
  line-height: 1.4;
}

/* Responsive Design */
@media (max-width: 1024px) {
  .cmp-features {
    gap: 20px;
  }
  
  .cmp-feature-list {
    padding: 15px 20px;
  }
  
  .cmp-column-header,
  .cmp-column-footer {
    padding: 25px 20px;
  }
}

@media (max-width: 768px) {
  .cmp-features {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  
  .cmp-highlights {
    grid-template-columns: 1fr;
  }
  
  .cmp-title {
    font-size: clamp(28px, 5vw, 40px);
  }
  
  .cmp-sub {
    font-size: 16px;
  }
}

@media (max-width: 480px) {
  .cf-compare {
    padding: 40px 15px;
  }
  
  .cmp-feature-item {
    padding: 18px 0;
  }
  
  .cmp-feature-content h3 {
    font-size: 16px;
  }
  
  .cmp-highlight-item {
    flex-direction: column;
    text-align: center;
    gap: 15px;
  }
}