@font-face {
  font-family: 'Open Sans';
  font-weight: 400;
  src: url(assets/fonts/opensans.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

body {
  /* font-family: "Open Sans", sans-serif; */
  font-family: "Poppins", sans-serif;

  margin: 0;
  padding: 0;
  font-size: 16px;

  color: #394753;
  color: rgba(255, 255, 255, 0.8);
  /* color: #211c28; */
  /* color: rgb(154, 160, 166);
    color: rgb(52,72,83) */

  /* --main-color: #005aad; */
  --main-color: #2d9dd2;

  --color-primary: #005aad;
  --color-secondary: #2d9dd2;
  --color-accent: #00b3e0;
  --color-tertiary: #78dfb8;
  --color-success: #aef90e;
  --color-warning: #ffd700;
  --color-danger: #e74c3c;
  --color-info: #9b59b6;

  background: radial-gradient(50deg, #091650 -10%, #00b3e0 100%) !important;
  position: relative;
  min-height: 100vh;


}

body::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  /* Fixed at initial viewport height */
  background: linear-gradient(50deg, #091650 -10%, #00b3e0 100%);
  /* background: radial-gradient(circle at top right, #00b3e0 -10%, #091650 100%); */
  z-index: -1;
}


/* Fix for iOS Safari 26.5 viewport height issues */
@supports (-webkit-touch-callout: none) {
  body::before {
    height: 110vh; 
 transform: scale(1.00001);
    
  }
  main#home {
    min-height: 110vh !important; 
    height: 110vh !important; 
  }

  main#home section {
    height: 110vh !important;
    min-height: 110vh !important;
  }
  #app {
    height: 110vh !important; 
  }

}



main {
  position: relative;
  z-index: 1;


}

header {

  position: fixed;
  top: 0;
  width: 100%;
  height: 100px;
  z-index: 100;
  padding: 00;
  margin: 0;
  background: linear-gradient(50deg, rgba(9, 22, 80, 0.8) -10%, rgba(0, 179, 224, 0.8) 100%);
  background-size: 100vw 100vh;

  background-position: 0 -10px;

  background-attachment: fixed;
  backdrop-filter: blur(5px) saturate(120%);
  -webkit-backdrop-filter: blur(5px) saturate(120%);

  /* Performance optimizations for glassy effects */
  will-change: transform;
  /* Optimize for frequent changes */
  transform: translateZ(0);
  /* Force hardware acceleration */
  backface-visibility: hidden;
  /* Reduce repaints */

  font-weight: 500;
  font-size: 1rem;
  color: #fff;
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smooth: auto;
  font-style: normal;
  letter-spacing: var(--letter-spacing-xs);
  line-height: var(--line-height-sm);
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);



}

header .container {
  display: flex;
  justify-content: center;
  justify-items: center;
  margin: 0 auto;
  height: 100%;


}

header .container>.row {
  width: 100%;
  box-sizing: border-box;
}

header nav {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 100%;
  margin: 0;
  padding: 0;
  width: 100%;
  box-sizing: border-box;
  font-family: "Cal Sans", sans-serif;

}


header nav ul {
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  height: 100%;
  list-style: none;
}

header nav>ul>li {
  display: flex;
  align-items: center;
  margin-right: 1rem;
  height: 100%;
  padding: 0 0 0 8px;

}

header nav>ul>li>a {
  text-decoration: none;
  display: flex;
  align-items: center;
  height: 100%;
  color: rgba(255, 255, 255, 0.75) !important;
  text-transform: uppercase;
  font-size: .8rem;
  letter-spacing: .03rem;
}

header nav>ul>li>a:hover {
  color: #fff !important;
  text-decoration: none;
  border-bottom: 2px solid rgba(147, 249, 14, 0.7) !important;
}


header a.btn {
  font-size: 12px;
  border-radius: 10px;
  background: linear-gradient(45deg, #005aad -40%, #00b3e0 80%, #78dfb8 120%);
  height: 70%;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  color: #fff !important;
  text-transform: none;
  max-height: 40px;

  
}


.logo a {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 1.4rem;
  color: #fff !important;
  font-weight: 500 !important;
  color: #fff !important;
}

.logo img {
  height: 50px;
  width: auto;
}

.mobile-submenu {
  list-style: none;
  padding: 0;
  margin: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height .35s ease;
  text-align: left;
  /* background: rgba(0, 0, 0, .1); */
  background: linear-gradient(150deg, rgba(0, 179, 224, 0.2) -240%, rgba(9, 22, 80, 0.4) 200%);

  border-radius: 5px;
}

.mobile-submenu.open {
  max-height: 500px;
  margin: 12px;
  font-size: 2rem;
}

.mobile-submenu li a {
  /* padding: 8px 0 8px 18px !important; */
  font-size: .8rem !important;
  display: flex;
  align-items: right;
  gap: 8px;
  opacity: .85;
}

.mobile-submenu li a i {
  font-size: 1rem;
  width: 20px;
  text-align: center;
}

.mobile-menu-btn {
  display: none;
  /* shown on small screens only */
  position: fixed;
  top: 15px;
  right: 16px;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.06);
  border: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 200;
}

.mobile-menu-btn .bi {
  font-size: 22px;
  color: var(--color-text-primary, #fff);
}

/* Do not apply global gradient button border effects to mobile menu controls */
.mobile-menu-btn,
#mobileCloseBtn {
  border: none !important;
  box-shadow: none !important;
}

.mobile-menu-btn::before,
#mobileCloseBtn::before {
  content: none !important;
}

.mobile-menu-btn:hover,
#mobileCloseBtn:hover {
  box-shadow: none !important;
}


/* overlay */
#mobile-menu-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  visibility: hidden;
  transition: opacity 250ms ease, visibility 250ms;
  z-index: 180;
}

#mobile-menu-overlay.open {
  opacity: 1;
  visibility: visible;
}


/* sidebar */
#mobile-sidebar {
  /* hidden by default */
  text-align: center;
  position: fixed;
  top: 0;
  right: -320px;
  width: 320px;
  max-width: 86%;
  height: 100%;
  box-shadow: -12px 0 30px rgba(0, 0, 0, 0.18);
  transition: right 300ms cubic-bezier(.2, .9, .3, 1);
  z-index: 190;
  padding: 24px;
  box-sizing: border-box;
  overflow-y: auto;

  background: rgba(0, 0, 0, 0.1);
  background: linear-gradient(50deg, rgba(9, 22, 80, 0.8) -10%, rgba(0, 179, 224, 0.8) 100%);

  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}


#mobile-sidebar.open {
  right: 0;
}

#mobile-sidebar .close-btn {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-bottom: 8px;
}

#mobile-sidebar nav ul {
  list-style: none;
  padding: 0;
  text-align: center;
  /* margin: 12px 0; */
}

#mobile-sidebar nav ul li {
  margin: 8px 0;
}

#mobile-sidebar nav a {
  text-decoration: none;
  color: inherit;
  font-weight: 600;
  display: block;
  padding: 8px 4px;
}

/* ── Submenu Panel ── */
.has-submenu {
  position: relative;
}

.submenu-panel {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: 820px;
  background: #005aad;
  /* background: radial-gradient(50deg, #091650 -10%, #00b3e0 100%) ; */
  background: linear-gradient(50deg, #091650 -100%, #00b3e0 200%);
  background: linear-gradient(50deg, rgba(9, 22, 80, .98) -100%, rgba(0, 179, 224, .98) 150%);

  border: 1px solid rgba(255, 255, 255, 0.1);

  border-bottom: 2px solid rgba(147, 249, 14, 0.1);
  ;
  /* color: rgba(147, 249, 14, 0.9); */

  /* border: 1px solid #091650; */

  /* backdrop-filter: blur(20px); */
  /* -webkit-backdrop-filter: blur(20px); */
  border-radius: 4px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.18);
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
  transform: translateX(-50%) translateY(-50px);
  z-index: 100200;
}

.submenu-panel span.subtitle {
  font-family: "Poppins", sans-serif;
  font-weight: 400 !important;
}

.has-submenu:hover .submenu-panel,
.has-submenu.submenu-open .submenu-panel {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

.submenu-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 8px;
  margin-top: 10px;
}

.submenu-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 12px;
  border-radius: 12px;
  text-decoration: none !important;
  /* color: #fff !important; */
  color: rgba(255, 255, 255, 0.75) !important;
  transition: background 0.2s ease;
  height: auto !important;
  border-bottom: none !important;
}

.submenu-item:hover {
  background: rgba(0, 90, 173, 0.17);
  background: linear-gradient(150deg, rgba(0, 179, 224, 0.2) -240%, rgba(9, 22, 80, 0.4) 200%);

  border-bottom: none !important;
  color: #fff
}

.submenu-item:hover .submenu-desc {
  color: #fff !important;
}

.submenu-icon {
  font-size: 1.5rem;
  color: #fff;
  flex-shrink: 0;
  margin-top: 2px;
}

.submenu-title {
  display: block;
  font-weight: 600;
  font-size: 0.9rem;
  color: #fff;
  /* color: rgba(147, 249, 14, 0.9); */
  margin-bottom: 3px;
  text-transform: none;
  letter-spacing: 0;
  font-family: "Outfit", sans-serif;
}

.submenu-desc {
  display: block;
  font-size: 0.78rem;
  /* color: #fff; */
  color: rgba(255, 255, 255, 0.75) !important;
  line-height: 1.4;
  text-transform: none;
  letter-spacing: 0;
  font-family: "Outfit", sans-serif;
  font-weight: 400;
}



.submenu-footer {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  text-align: center;
}

.submenu-footer a {
  font-size: 0.82rem !important;
  color: #fff !important;
  font-weight: 600;
  text-decoration: none !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-family: "Outfit", sans-serif;
  height: auto !important;
  border-bottom: none !important;
  transition: color 0.2s;
  text-transform: uppercase !important;
}

.submenu-footer a:hover {
  color: rgba(147, 249, 14, 0.9) !important;

  border-bottom: none !important;
}

/* Footer */


footer {


  color: rgba(255, 255, 255, 0.8);
  padding: 40px 0 10px 0;
  text-align: left;
  font-size: .8rem;

  min-height: 300px;
  box-sizing: border-box;
  border-top: 1px solid rgba(255, 255, 255, 0.2);


}

footer hr {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  border-top: none;
}

footer a,
footer a:active,
footer a:visited {
  color: rgba(255, 255, 255, 0.75) !important;

  text-decoration: none;
  display: block;
  /* padding: 2px 0; */

}

footer a:hover {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: underline;

}

footer strong {
  color: rgba(255, 255, 255, 0.8);

}

footer .bi {
  color: #fff;
  font-size: 16px;
  display: inline-block;
  margin-right: 10px;
}

footer #socials a{
  display: inline-block
}

/* MAIN */

main {
  font-size: .9rem;
  position: relative;
  padding-top: 100px;
  box-sizing: border-box;
  min-height: calc(100vh - 90px);
}

main:not(#home) {
  /* Removed all positioning - let it flow naturally */
  /* Normal document flow with proper header clearance */
  /* padding-top: 100px; */
  background-image: url("../assets/images//bg-items.png");
  background-attachment: fixed;
  background-size: contain;
}

section {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 600px;
  /* padding: 30px; */
  text-align: center;
  box-sizing: border-box;
  position: relative;
}

h1,
h2,
h3,
h4,
h5 {
  font-family: "Cal Sans", sans-serif;

  -webkit-font-smoothing: antialiased;
  font-weight: 400;
  overflow-wrap: normal;
  text-rendering: optimizeLegibility;
  word-wrap: normal;

}

h1 {
  font-size: clamp(1.8rem, calc(1.2rem + 2.8vw), 3.2rem);
  line-height: 1.0322580645;
  font-weight: 200;

}

h2 {
  font-size: clamp(1.6rem, calc(1rem + 2.4vw), 2.6rem);
  line-height: clamp(1.2rem, calc(1rem + 2.4vw), 2.4rem);
  font-weight: 200;
  margin: 0;
  /* keep layout consistent */
}

h3 {
  font-size: clamp(1.25rem, calc(0.95rem + 1.8vw), 2rem);
  line-height: clamp(1.0rem, calc(0.95rem + 1.8vw), 2rem);
  font-weight: 200;

}

h4 {
  font-size: clamp(1rem, calc(0.85rem + 1.1vw), 1.4rem);
  line-height: 1.2;
  font-weight: 200;

}


h5 {
  font-family: "Poppins", sans-serif;

  font-size: 1rem;
  line-height: 1.2;
  font-weight: 400;
}

hr {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  border-top: none;

  width: 40%;
  max-width: 1240px;
  margin: 0 auto
}

p {}

p strong {
  /* color: var(--main-color) */
  font-weight: 600;
}

p .bi {
  font-size: 1rem;
}

ul,
ul.checks {
  margin: 2rem 0;
  padding: 0;
  padding-left: 30px;
}


ul.checks li {

  list-style: none;
  margin-bottom: 8px;
  padding-left: 25px;
  position: relative;
  text-align: left;
}

ul.checks li .bi {
  font-weight: 400;
  font-size: 1.2rem;
  padding: 2px 0 0 0;
}

ul.checks li:before {

  background-image: url(../assets/images/icon-check.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  content: "";
  height: 18px;
  left: 0;
  position: absolute;
  top: 2px;
  width: 18px;
}

ul.checks li:before svg {
  color: #fff
}


a,
a:visited,
a:link {
  /* color: #005aad; */
  color: var(--main-color);
  text-decoration: none;
  color: rgba(147, 249, 14, 0.9);
  font-weight: 400;

}

a:hover {
  text-decoration: none;
  color: var(--color-accent);
  color: #fff
}

a.btn,
button {
  /* background: linear-gradient(90deg,#3b6bff,#2e96ff 65%,#acb7ff); */
  background-color: #2d9dd2;
  /* background: linear-gradient(60deg, #2d9dd2 40%, #78dfb8 100%); */
  /* background: linear-gradient(62deg, #159ecf 0%,  #00b3e0 65%, #78dfb8 120%); */
  /* background: linear-gradient(40deg, #005aad 0%, #00b3e0 110%, #78dfb8 120%); */
  background: linear-gradient(45deg, #005aad -10%, #00b3e0 80%, #78dfb8 120%);
  background: linear-gradient(45deg, rgba(0, 90, 173, .6) -10%, rgba(0, 179, 224, 0.6) 80%, rgba(120, 223, 184, .6) 120%);
  backdrop-filter: blur(3px);
  border: none;


  padding: 10px 20px;
  border-radius: 10px;
  color: #1fa2ff;
  text-decoration: none;
  position: relative;
  display: inline-block;
  color: #fff;
  font-size: .9rem !important;
  transition: all 0.2s ease-in-out;
  font-weight: 600;

  transition: all 0.2s ease-in-out;
  overflow: hidden;
  transform: scale(1.05);

}

a.btn.line {
  background: none
}

a.btn.line.green {
      border: 2px solid rgba(147, 249, 14, 0.8);
      /* border: 2px solid rgba(255, 255, 255, 0.8); */
      color: rgba(147, 249, 14, 1);
      line-height: 1rem;
      /* background: rgba(147, 249, 14, 0.08); */

      padding: 10px 20px;
border: 2px solid rgba(255, 255, 255, 0.2);
background: rgba(255, 255, 255, 0.05);
background: rgba(0, 0, 0, 0.05);
color: #fff;
border-radius: 8px;
cursor: pointer;
transition: all 0.3s ease;
font-size: .85rem;
backdrop-filter: blur(5px);


    }

    a.btn.line.green:hover {
      border: 2px solid rgba(147, 249, 14, 0.8);
      /* border: 2px solid rgba(255, 255, 255, .6); */
      color: rgba(147, 249, 14, 1);
      background: rgba(147, 249, 14, 0.1);
    }

a.btn.line.green::before {
  background: none;
}

.move-right{
  margin-left: 16px;
}

button {
  margin: 5px 0
}

a.btn:hover,
button:hover {
  transform: translateY(-2px) scale(1.15);
  /* Slight lift and scale effect */
  box-shadow: 0 5px 5px rgba(0, 90, 173, 0.1);
  cursor: pointer;
  /* Add a glowing shadow */
  /* border: none; */
}



a.btn:before,
button:before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px;
  /* Border thickness */
  border-radius: 10px;
  background: linear-gradient(45deg, #005aad -10%, #00b3e0 40%, #78dfb8 120%);
   
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  z-index: -1;
  pointer-events: none;
  display: inline-block;
}

section a.btn:hover:before,
section button:hover:before { 
  background: linear-gradient(25deg,  #00b3e0 20%,  rgba(147, 249, 14, 0.9) 100%);
  /* background: linear-gradient(45deg, rgba(0, 90, 173, .6) -10%, rgba(0, 179, 224, 0.6) 40%, rgba(120, 223, 184, .6) 120%); */
}

section a.btn.green:hover:before,
section button.line:hover:before {
  background: none

}

button.line {
  padding: 12px 30px;
  border: 2px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.05);
  background: rgba(0, 0, 0, 0.05);
  color: #fff;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 1rem;
  margin: 0 10px 10px 0;
}

button.line:before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px;
  /* Border thickness */
  border-radius: 8px;
  background: none;

  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  z-index: -1;
  pointer-events: none;
}

button.line:hover {
  border: 2px solid rgba(255, 255, 255, .6);
  background: rgba(255, 255, 255, 0.1);
}

button.line.active,
a.line.active {
  border-color: rgba(147, 249, 14, 0.8);
  color: rgba(147, 249, 14, 1);
  background: rgba(147, 249, 14, 0.08);
}

header a.btn:hover {
  /* background: linear-gradient(90deg,#3b6bff,#2e96ff 65%,#acb7ff); */
  /* color: #fff; */
  /* padding: 15px 25px; */
  /* letter-spacing: 2; */
  transition: all 0.1s ease-in-out;

}

/* inputs */

input,
select,
textarea {
  border-radius: 10px;
  padding: 10px;
  font-size: .9rem;
  font-weight: 400;
  width: 100%;
  box-sizing: border-box;
  transition: border-color 0.2s ease-in-out;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  margin: 5px 0;
  color: #fff;
  color: #00d084;
  color:rgba(147, 249, 14, 0.9);

  font-family: "Poppins", sans-serif;

}

input:focus,
select:focus,
textarea:focus {
  border-color: rgba(255, 255, 255, 0.4);
  outline: none;
}

/* Placeholder styling */
input::placeholder,
textarea::placeholder {
  color: var(--color-secondary);
  opacity: 0.8;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: var(--color-secondary);
  color: rgba(255, 255, 255, 0.5);
  opacity: 0.8;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  color: var(--color-secondary);
  opacity: 0.8;
}

input[type="radio"] {
  -webkit-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  min-width: 20px;
  margin-right: 10px;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.5);
  background: rgba(9, 22, 80, 0.35);
  box-shadow: 0 0 0 1px rgba(0, 179, 224, 0.35), inset 0 0 0 2px rgba(9, 22, 80, 0.55);
  display: inline-grid;
  place-content: center;
  position: relative;
  top: 3px;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;

}

input[type="radio"]::before {
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 50%;
  transform: scale(0);
  transition: transform 0.15s ease-in-out;
  background: linear-gradient(145deg, #78dfb8 0%, rgba(147, 249, 14, 0.9) 100%);
  box-shadow: 0 0 12px rgba(120, 223, 184, 0.55);
}

input[type="radio"]:hover {
  border-color: rgba(120, 223, 184, 0.95);
  box-shadow: 0 0 0 1px rgba(120, 223, 184, 0.45), 0 0 12px rgba(0, 179, 224, 0.45), inset 0 0 0 2px rgba(9, 22, 80, 0.55);

}

input[type="radio"]:checked {
  border-color: #78dfb8;
}

input[type="radio"]:checked::before {
  transform: scale(1);
}

input[type="radio"]:focus-visible {
  outline: 2px solid rgba(120, 223, 184, 0.85);
  outline-offset: 2px;

}

input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  min-width: 20px;
  margin-right: 10px;
  border-radius: 6px;
  border: 2px solid rgba(255, 255, 255, 0.5);
  background: rgba(9, 22, 80, 0.35);
  /* box-shadow: 0 0 0 1px rgba(0, 179, 224, 0.35), inset 0 0 0 2px rgba(9, 22, 80, 0.55); */
  display: inline-grid;
  place-content: center;
  position: relative;
  top: 3px;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

input[type="checkbox"]::before {
  content: '';
  width: 6px;
  height: 10px;
  border-right: 2px solid #78dfb8;
  border-bottom: 3px solid rgba(147, 249, 14, 0.9);
  transform: translateY(-2px) rotate(45deg) scale(0);
  transform-origin: center;
  transition: transform 0.15s ease-in-out;
  filter: drop-shadow(0 0 6px rgba(120, 223, 184, 0.65));
}

input[type="checkbox"]:hover {
  border-color: rgba(120, 223, 184, 0.95);
  box-shadow: 0 0 0 1px rgba(120, 223, 184, 0.45), 0 0 12px rgba(0, 179, 224, 0.45), inset 0 0 0 2px rgba(9, 22, 80, 0.55);

}

input[type="checkbox"]:checked {
  border-color: #78dfb8;
  /* box-shadow: 0 0 0 1px rgba(120, 223, 184, 0.45), 0 0 12px rgba(0, 179, 224, 0.45), inset 0 0 0 2px rgba(9, 22, 80, 0.55); */
}

input[type="checkbox"]:checked::before {
  transform: translateY(-2px) rotate(45deg) scale(1);
}

input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(120, 223, 184, 0.85);
  outline-offset: 2px;
}

button {}

/* ===== utilities ===== */

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

.border-radius {
  border-radius: 8px;
}

/* hero */

.hero {
  position: relative;
  min-height: 70vh;
  display: flex;
  align-items: center;
  overflow: hidden;
  /* background: #000; Fallback */
}

.hero .container {
  position: relative;
  z-index: 1;
}

#canvas-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}

/* ===== GRID SYSTEM ===== */

/* Container */
.container {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.container.full-width {
  max-width: 100%;
  padding: 0;
}

/* Row */
.row {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
  /* flex-direction: row; */

}

.row.no-gutters {
  margin: 0;
}

.row.no-gutters>[class*="col-"] {
  padding: 0;
}



/* Columns */
[class*="col-"] {
  padding: 0 15px;
  box-sizing: border-box;
}

/* Equal width columns */
.col {
  flex: 1;
}

/* Auto width columns - takes only needed space */
.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

/* Specific column widths */
.col-1 {
  flex: 0 0 8.333333%;
  max-width: 8.333333%;
}

.col-2 {
  flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
}

.col-5 {
  flex: 0 0 41.666667%;
  max-width: 41.666667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  flex: 0 0 58.333333%;
  max-width: 58.333333%;
}

.col-8 {
  flex: 0 0 66.666667%;
  max-width: 66.666667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  flex: 0 0 83.333333%;
  max-width: 83.333333%;
}

.col-11 {
  flex: 0 0 91.666667%;
  max-width: 91.666667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

/* Tablet and up */
@media (min-width: 768px) {



  .col-sm-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }

  .col-sm-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }

  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-sm-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }

  .col-sm-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }

  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-sm-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }

  .col-sm-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }

  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-sm-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }

  .col-sm-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }

  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .col-md-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }

  .col-md-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }

  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-md-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }

  .col-md-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }

  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-md-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }

  .col-md-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }

  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-md-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }

  .col-md-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }

  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  main#home #numbers .cred-row>div {
    flex: 0 0 20%;
    max-width: 20%;
  }
}

/* Large screens (≥992px) */
@media (min-width: 992px) {
  .col-lg-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }

  .col-lg-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }

  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-lg-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }

  .col-lg-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }

  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-lg-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }

  .col-lg-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }

  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-lg-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }

  .col-lg-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }

  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

/* Alignment utilities */
.row.align-items-start {
  align-items: flex-start;
}

.row.align-items-center {
  align-items: center;
}

.row.align-items-end {
  align-items: flex-end;
}

.row.justify-content-start {
  justify-content: flex-start;
}

.row.justify-content-center {
  justify-content: center;
}

.row.justify-content-end {
  justify-content: flex-end;
}

.row.justify-content-between {
  justify-content: space-between;
}

.row.justify-content-around {
  justify-content: space-around;
}

/* Quick layout classes */
.two-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
}

.three-columns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}

.four-columns {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}

/* elements */

.block {
  border: 1px solid #fff;
  background: #fff;
  padding: 26px;
  margin: 10px;
  flex-direction: column;
  height: 90%;
  box-sizing: border-box;

  border: 1px solid rgba(255, 255, 255, 0.1);
  border-top-right-radius: 32px;
  border-bottom-left-radius: 32px;
  /* box-shadow: 0 12px 30px rgba(0, 90, 173, 0.0); */
  text-align: left;
  transition: all 0.2s ease-in-out;
  /* border: 1px solid rgba(255, 255, 255, 1); */
  position: relative;
  /* color: #fff */
  color: rgba(255, 255, 255, 0.85);





  /* will-change: backdrop-filter; 
  isolation: isolate;  
  transform: translateZ(0);  
  contain: layout style paint; 

  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px); */
  background: rgba(255, 255, 255, 0.05);

  /* background: linear-gradient(10deg, rgba(9, 22, 80, 0.2) 30%, rgba(0, 179, 224, 0.1) 60%); */

  text-align: center;
  margin-bottom: 10px;


}

.block:hover {
  transform: translateY(-5px);
  /* box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15); */
  box-shadow: 0 12px 30px rgba(0, 90, 173, 0.10);
}

a.block-link {
  text-decoration: none;
  color: inherit;
  display: block;
}

a.block-link:hover {
  text-decoration: none;
}

/* Home — Service Cards */
.hsc-row {
  /* margin-bottom: 32px; */
}

.hsc {
  padding: 36px 30px;
  /* background: rgba(0, 0, 0, 0.09); */
  background: linear-gradient(150deg, rgba(0, 179, 224, 0.2) -240%, rgba(9, 22, 80, 0.4) 200%);
  /* background: linear-gradient(45deg, #005aad -40%, #00b3e0 280% ); */

  /* border-top: 2px solid var(--hsc-color, #00b3e0); */
  border-radius: 20px 0 20px 0;
  transition: all 0.25s ease;
  box-sizing: border-box;
  margin-bottom: 16px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  text-align: center
}

.hsc:hover {
  /* background: rgba(255, 255, 255, 0.06); */
  transform: translateY(-5px);
}

.hsc.dev {
  --hsc-color: #00b3e0;
}

.hsc.ia {
  --hsc-color: rgba(147, 249, 14, 0.85);
}

.hsc h4 {
  margin: 0
}

.hsc .subtitle {
  font-size: .7rem;
  margin: 0 0 4px 0
}

.hsc p{
  opacity: 0.8;
}

#services1 .hsc a,
#services2 .hsc a {
  display: block;
  width:50%;
  text-align: center;
  margin: 40px auto 0 auto;
}

.block h4 {
  /* color: var(--main-color); */
  margin: 10px 0 10px 0;
  font-weight: 200;
  font-size: 1.2rem;
  color: #fff
}

.block p strong {
  font-weight: 600;
}

.block.with-icon {
  margin: 10px;
  /* padding: 40px 40px; */
  padding-top: 40px;
  box-sizing: border-box;

}

.col-12:has(.block.with-icon) {
  margin: 20px 0 10px 0;
  /* border: 1px solid red */
}

.block.with-icon .bi {
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 30px !important;
  background: var(--main-color);
  background: linear-gradient(82deg, #005aad 0%, #00b3e0 90%, #78dfb8 120%);
  background: linear-gradient(45deg, #005aad -10%, #00b3e0 60%, #78dfb8 120%);
  background: linear-gradient(45deg, #005aad -90%, #00b3e0 60%, #78dfb8 110%);

  border: 1px solid rgba(255, 255, 255, 0.25);
}

.process .bi {
  font-size: 30px;

}

/* icons */
.bi {
  /* font-size: 30px; */
  /* color: var(--main-color); */
}


.block-floating {
  display: inline-block;
  animation: floatUpDown 3s ease-in-out infinite;
  /* Animation for floating effect */
  transition: transform 0.3s ease-in-out;
  position: absolute;
  border: 1px solid rgba(255, 255, 255, 0.8);
  background-color: #fff;
  padding: 20px;
  border-radius: 10px;

}

@keyframes floatUpDown {

  0%,
  100% {
    transform: translateY(0);
    /* Start and end at the original position */
  }

  50% {
    transform: translateY(-10px);
    /* Move up slightly */
  }
}

/* Backgrounds */
.bg {
  background: #f6f9fc;
  color: #394753;
}

.bg-glass-white {
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.31);
}

.bg-glass-black {
  background: rgba(0, 0, 0, 0.1);
  background: linear-gradient(150deg, rgba(0, 179, 224, 0.2) -240%, rgba(9, 22, 80, 0.4) 200%);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.bg2 {
  background: #f6f9fc;
  background: linear-gradient(90deg, #3b6bff, #2e96ff 65%, #acb7ff);
  background: linear-gradient(82deg, #005aad -10%, #00b3e0 90%, #78dfb8 150%);
  position: relative;
  color: #fff;
  /* min-height: 100vh; or whatever height you want */
  /* overflow: hidden; */
}

.bg2 h2,
.bg2 h3 {
  color: #fff;
}

.bg3 {
  /* background: url("../assets/images//bg-services-cover.png"); */
  background: linear-gradient(30deg, #091650 -10%, #2d9dd2 120%);
  background: radial-gradient(50deg, #091650 -10%, #00b3e0 100%) !important;

  /* background-image: url("../assets/images//bg-items.png"); */

  /* background-size: 130% 130%; */
  /* background-position: bottom left; */
  color: #fff
}

.bg4 {
  background: linear-gradient(35deg, color-mix(in srgb, #0d83fd, transparent 95%) 50%, color-mix(in srgb, #0d83fd, transparent 98%) 25%, transparent 50%);
}

.bg5 {
  background: linear-gradient(135deg, #0a4db8 0%, #fff 100%);
  background: radial-gradient(circle at 20% 80%, color-mix(in srgb, #0a4db8, transparent 90%) 0%, transparent 90%)
}

.bg6 {
  background: linear-gradient(90deg, #2d9dd2 0%, #9b59b6 100%);
  color: #fff
}

.bg7 {
  background: linear-gradient(135deg, #6a0dad 0%, #8e44ad 50%, #9b59b6 100%);
  background: linear-gradient(135deg, #6a0dad 0%, #8e44ad 40%, #9b59b6 90%, #d2a6ff 130%);
  color: #fff;
}

.bg8 {
  background: #000025;
  background: linear-gradient(135deg, #000025 -20%, #0a4db8 100%);

  color: #fff;
}

/* Cool Gradient Text Styles */

.subtitle {
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 300;
  color: #0ad3ef;
  font-size: .9rem;
}

.gradient-text {
  background: linear-gradient(15deg, #005aad -30%, #2d9dd2 10%, #78dfb8 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  /* font-weight: 700; */
}

.gradient-text-primary {
  background: linear-gradient(135deg, #005aad 0%, #2d9dd2 50%, #78dfb8 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 100;
  text-shadow: none;
}

.gradient-text-vibrant {
  background: linear-gradient(90deg, #2d9dd2 0%, #9b59b6 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 500;
  animation: gradientShift 3s ease-in-out infinite;
}

.gradient-text-vibrant2 {
  background: linear-gradient(60deg, #fff 30%, #9b59b6 300%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 500;
  animation: gradientShift 3s ease-in-out infinite;
}



.gradient-text-luxury {
  background: linear-gradient(115deg, #ffd700 0%, #ffb347 25%, #2d9dd2 50%, #ffd700 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  /
}

.no-margin {
  margin: 4px 0 !important;
}

/* PAGES */
/* Home */

/* Default: Vertical scrolling layout (normal behavior) with snap */
main#home {
  position: relative;
  z-index: 1;
  padding-top: 0;
  /* Remove padding - use scroll-margin instead */
  box-sizing: border-box;
  min-height: 100vh;

  /* Add vertical scroll snap for better Y-axis positioning */
  scroll-snap-type: y mandatory;
  scroll-behavior: smooth;
  overflow-y: auto;
  height: 100vh;
  /* Fixed height for proper snap behavior */
}

main#home section {
  width: 100%;
  height: 100vh;
  /* Fixed height - not min-height */
  min-height: 100vh;
  /* Fallback for older browsers */
  padding: 100px 0 50px 0;
  /* Simple padding for header clearance */
  position: relative;
  z-index: 1;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  /* Default: start from top */
  box-sizing: border-box;
  overflow: hidden;
  /* Hide content that overflows the viewport */

  /* Snap alignment */
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

/* Helper class for vertical centering */
main#home section.v-center {
  justify-content: center;
  /* Override to center vertically */
}

/* Helper class for flex-start (redundant but explicit) */
main#home section.v-start {
  justify-content: flex-start;
  /* Explicitly start from top */
}

/* Optional: Horizontal scrolling layout - add class "horizontal-scroll" to main#home */
main#home.horizontal-scroll {
  display: flex !important;
  height: 100vh !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  touch-action: pan-x !important;
  /* Improve mobile scrolling */
  -webkit-overflow-scrolling: touch;
  /* iOS smooth scrolling */
  padding-top: 90px !important;
  /* Different padding for horizontal mode */
  min-height: auto !important;
}

main#home.horizontal-scroll section {
  flex: none !important;
  width: 100vw !important;
  height: 90% !important;
  /* Use remaining height after container padding */
  scroll-snap-align: start !important;
  will-change: transform !important;
  /* Optimize for smooth scrolling */
  backface-visibility: hidden !important;
  /* Prevent flicker */
  min-height: 600px !important;
}

main#home .cover {
  position: relative;
  min-height: 600px;
  /* Ensures the cover section takes full viewport height */
  padding: 20px;
  /* background: #f6f9fc; */
  /* Light background for the cover section */

  /* background: #f6f9fc;
    background: linear-gradient(90deg,#3b6bff,#2e96ff 65%,#acb7ff);
      background: linear-gradient(82deg, #005aad 0%,  #00b3e0 90%, #78dfb8 120%); */

  /* background: #f6f9fc;
    background: linear-gradient(90deg,#3b6bff,#2e96ff 65%,#acb7ff);
      background: linear-gradient(82deg, #005aad 0%,  #00b3e0 90%, #78dfb8 120%); */

}

main#home .bi {
  font-size: 40px;
}

#services1 h3,
#services2 h3 {
  margin: 0 0 40px 0;
}

#services1 .btn,
#services2 .btn{
  margin-top: 20px;
}


main#home #reach .col-md-6{
  padding-right: 60px;
}

main#home #reach .col-md-6 p,
main#home #reach .col-md-6 ul{
opacity: 0.85;

}


main#home #reach .subtitle{
  margin: .5rem 0
}

  main#home #reach h3{
  margin: 0 0 2rem 0
}

main#home #reach a.btn{
  text-align: center;
  margin: 30px auto;
}


/* Canvas container styles - Fixed background for all sections */
#app {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  /* Behind all content */

  /* Performance optimizations */
  will-change: transform;
  transform: translateZ(0);
  /* Force GPU layer */
  backface-visibility: hidden;
  perspective: 1000px;

  /* Reduce repaints */
  contain: layout style paint;
  pointer-events: none;
  /* Prevent interference with scrolling */
}

#app canvas {
  width: 100% !important;
  height: 100% !important;
  display: block;
  background: transparent !important;
}

/* Remove old canvas styles that were specific to main#home .cover */

main#home .cover .container {
  z-index: 2;
  margin-bottom: 5rem;
}

main#home .cover {
  color: #fff;
  font-weight: bold;
  font-size: 3.2rem;
}

main#home .client {
  border: 1px solid #ddd;
  border-radius: 40px;
  margin: 40px;
  padding: 60px;
  box-sizing: border-box;
  text-align: left;
  background: #fff;
}


main#home .client h4 {
  text-align: center;
  color: #005aad;

}

main#home .client img {
  display: block;
  margin: 0 auto;
}

main#home .benefits h3 {
  color: goldenrod
}


main#home #numbers h1,
main#home #numbers .bi {
  /* color: #75dfbc; */
}
main#home #numbers h2{
  margin: 3rem 0 0 0
}

main#home #numbers p {
  color: rgba(255, 255, 255, 0.75)
}


main#home #numbers .stat {
  background: rgba(0, 0, 0, 0.2);
  background: rgba(9, 22, 80, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.1);

  background: linear-gradient(150deg, rgba(9, 22, 80, 0.2) 30%, rgba(0, 179, 224, 0.2) 300%);
  /* background: linear-gradient(10deg, rgba(9, 22, 80, 0.2) 30%, rgba(0, 179, 224, 0.1) 160%); */



  border-radius: 10px;
  padding: 20px;
  margin: 10px;
  box-sizing: border-box;
}

main#home #numbers .stat div {
  display: inline-block;
  font-size: 20px;
}

main#home #numbers .stat div:first-child {
  opacity: .6;
}

main#home #numbers .stat div:nth-child(2) {
  font-size: 40px;
  font-family: "Cal Sans", sans-serif;
}

main#home #numbers .stat div:nth-child(3) .bi {
  font-size: 40px;
  color: rgba(147, 249, 14, 0.9)
}

main#home #numbers .stat h5 {
  /* color: rgba(147, 249, 14, 0.9); */
  margin: 0
}

main#home #numbers .cred-row {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

main#home #numbers .cred-stat {
  text-align: center;
  padding: 16px 8px;
}

main#home #numbers .cred-num {
  font-family: "Cal Sans", sans-serif;
  font-size: clamp(1rem, 2vw, 2.4rem);
  font-weight: 200;
  color: #fff;
  line-height: 1;
}

main#home #numbers .cred-stat h5 {
  color: rgba(255, 255, 255, 0.45);
  margin: 6px 0 0 0;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}



.container-text {
  position: relative;
  min-height: 200px;
  /* Adjust based on your tallest text */
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
}

.animate-me {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
  opacity: 0;
  /* Start hidden */
  margin: 0;
  /* Remove any default margins */
}


section.cover {
  /* background: linear-gradient(82deg, #005aad 0%, #00b3e0 90%, #78dfb8 120%); */
  color: #fff
}

section.cover h1 {
  font-size: 2.4rem;
  line-height: 1.0322580645;
  font-weight: 200;
}

section.cover h2 {
  font-size: 2.4rem;
  line-height: 1.2;
  margin: 20px 0;
}

section.cover h3 {
  font-size: 1.6rem;
  line-height: 1.2;
}

section.cover h4 {
  font-size: 1.4rem;
  line-height: 1.2;
}

section.cover h5 {
  font-size: 1.2rem;
  line-height: 1.2;
}

section.cover strong {
  color: gold;
  color: #b2ff0d;

  color: #aef90e;

  font-weight: 500;
}

.white {
  color: #fff !important;

}

.yellow {
  color: gold !important;

}

.green {
  color: #aef90e;
  color: rgba(147, 249, 14, 0.9);
}

.gold {
  color: darkgoldenrod
}

.red {
  color: var(--color-danger)
}

/* smalls */


.small {
  height: 120px;
  min-height: 100px;

}

.medium {
  height: 320px;
  min-height: 100px;
}


section.cover.small {
  /* background: url("../assets/images//bg-small-cover.png") !important; */
  background-size: 100% 100% !important;
  background-position: top left;
}

.container.small {
  padding: 60px 10%;
  box-sizing: border-box;
  height: auto;
}

.container.medium {
  padding: 0 5%;
  box-sizing: border-box;
  height: auto;
}


/* page- */

.logos {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 20px 0;
}

.logos img {
  max-height: 40px;
  display: inline-block;
  margin: 0 40px;
}

/* Shared nav tabs component */
.navtabs {
  margin: 40px 0;
  display: flex;
  justify-content: center;
}

.navtabs ul {
  --tab-width: 150px;
  --tab-mobile-height: 44px;
  --tab-mobile-step: 48px;
  list-style: none;
  padding: 8px;
  margin: 0;
  display: flex;
  background: rgba(248, 249, 250, 0.1);
  border-radius: 50px;
  flex-wrap: wrap;
  position: relative;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.navtabs ul::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 8px;
  width: var(--tab-width);
  height: calc(100% - 16px);
  background: linear-gradient(45deg, #005aad -10%, #00b3e0 80%, #78dfb8 120%);
  border-radius: 40px;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 1;
  box-shadow: 0 2px 10px rgba(0, 90, 173, 0.3);
}

.navtabs ul li {
  margin: 0;
  flex: 1;
  z-index: 2;
  width: var(--tab-width);
  display: block;
  padding: 12px 20px;
  color: #fff;
  background: transparent;
  transition: all 0.3s ease;
  cursor: pointer;
  font-weight: 500;
  border-radius: 40px;
  text-align: center;
  font-size: 0.9rem;
  white-space: nowrap;
  box-sizing: border-box;
}

.navtabs ul li:hover {
  color: #aef90e;
  transform: translateY(-1px);
}

.navtabs ul li.active {
  color: #ffffff;
  font-weight: 600;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.navtabs ul.tab-1::before {
  transform: translateX(0%);
}

.navtabs ul.tab-2::before {
  transform: translateX(100%);
}

.navtabs ul.tab-3::before {
  transform: translateX(200%);
}

.navtabs ul.tab-4::before {
  transform: translateX(300%);
}

.tab-content {
  padding: 32px;
  margin: 10px;
  flex-direction: column;
  height: 90%;
  box-sizing: border-box;
  border-top-right-radius: 32px;
  border-bottom-left-radius: 32px;
  text-align: left;
  transition: all 0.2s ease-in-out;
  position: relative;
}

.tab-content.tab-content-light {
  border: 1px solid rgba(255, 255, 255, 1);
  background: #fff;
  color: #394753;
}

.tab-content.tab-content-plain {
  color: #fff;
}

.tab-pane {
  display: none;
  animation: fadeInUp 0.2s ease-out;
}

.tab-pane .row {
  align-items: center;
}

.tab-pane.active {
  display: block;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* page services */

/* splide */

.splide__slide .subtitle {
  margin: 3rem 0 10px 0;
}

.splide__slide h2 {
  margin: 0 0 20px 0;
  font-size: clamp(1.6rem, calc(1rem + 2.4vw), 2.6rem);
  line-height: clamp(1.6rem, calc(1rem + 2.4vw), 2.6rem);

}

.splide__slide a.btn {
  margin-left: 15px;
}

.splide__pagination {
  bottom: -20px !important;
}

/*  */
.block .bi {
  color: #fff;
  width: 50px;
  height: 50px;
  padding: 10px;
  border-radius: 50px;
  line-height: 52px;
  display: block;
  margin: 0 auto;
  text-align: center;


  /* background: var(--main-color);
  background: linear-gradient(82deg, #005aad 0%, #00b3e0 90%, #78dfb8 120%);
  background: linear-gradient(45deg, #005aad -10%, #00b3e0 60%, #78dfb8 120%); 
  background: linear-gradient(45deg, #005aad -90%, #00b3e0 60%, #78dfb8 110%); 

  border: 1px solid rgba(255, 255, 255, 0.25); */
  font-size: 50px;
}

main#services .block .bi.rounded {
  background: var(--main-color);
  background: linear-gradient(82deg, #005aad 0%, #00b3e0 90%, #78dfb8 120%);
  background: linear-gradient(45deg, #005aad -10%, #00b3e0 60%, #78dfb8 120%);
  background: linear-gradient(45deg, #005aad -90%, #00b3e0 60%, #78dfb8 110%);

  border: 1px solid rgba(255, 255, 255, 0.25);
}

main#services .process .row {
  align-items: center;
  /* Centers all columns vertically within each row */
  min-height: 120px;
  /* Optional: sets minimum height for rows */
  border-bottom: 1px solid #eee;
  margin: 5px 0 10px 0;
  background-color: rgba(0, 90, 173, 0.03);
  border-radius: 10px;
}

main#services .process [class*="col-"] {
  display: flex;
  align-items: center;
  /* Centers content within each column */
  justify-content: left;
  /* Centers content horizontally */
  text-align: left;
}

main#services .process .row h4 {
  text-align: left;
}

main#services .process .row img {
  filter: grayscale(100%) brightness(0.8);
  transition: all 0.3s ease;
}

main#services .process .row:hover {
  background: #fff;
}

main#services .process .row:hover h4 {
  color: var(--color-accent)
}

main#services .process .row:hover img {
  filter: grayscale(0%) brightness(1);
  max-height: 30px;
}

main#services .process .third {
  justify-content: space-between;
  /* padding: 0 30px; */
  gap: 10px;
  flex-wrap: wrap;
}


main#services .process .third img {
  max-height: 25px;
  max-width: 120px;
  width: auto;
  height: auto;
  object-fit: contain;
  /* margin: 8px 12px; */
  transition: all 0.3s ease;
}

main#services section.additional-services {
  padding: 3rem 0
}

main#services section.additional-services .bi {
  /* background: linear-gradient(30deg, #2d9dd2 20%, #9b59b6 90%); */

}

main#services section.additional-services .high-level .bi {
  /* background: linear-gradient(115deg, #ffd700 20%,  #2d9dd2 100%) !important; */
  /* background: linear-gradient(30deg, #9b59b6 20%, #ffd700 100%) !important; */
  background: linear-gradient(30deg, #2d9dd2 20%, #9b59b6 90%, #d2a6ff 100%);


}

main#services .block {
  text-align: center;
}


main#services .photography {
  background: url("../assets/images//bg-photography.png");
  background-size: cover;
  background-position: center;
  color: #fff
}

/* blog pages */


main#blog h1, main#blog h2, main#blog h3, main#blog h4, main#blog p {
  font-family: 'Poppins', sans-serif !important;
  /* font-weight: 300; */
  text-align: left;
}

/* Sidebar */
.blog-sidebar {
  position: sticky;
  top: 20px;
  text-align: left;
}

.sidebar-section {
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.sidebar-section:last-child {
  border-bottom: none;
  margin-bottom: 0;
}

.sidebar-title {
  font-size: 0.9rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: 15px;
  font-family: 'Poppins', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.category-list {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: left;
}

.category-list li {
  margin-bottom: 8px;
}

.category-link {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  font-size: 0.9rem;
  transition: all 0.2s ease;
  display: block;
  padding: 6px 0;
  font-family: 'Poppins', sans-serif;
}

.category-link:hover {
  color: rgba(147, 249, 14, 0.9);
}

.category-link.active {
  color: rgba(147, 249, 14, 0.9);
  font-weight: 500;
}

/* Recent Posts */
.recent-posts {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: left;
}

.recent-posts li {
  margin-bottom: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.recent-posts li:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.recent-posts a {
  display: block;
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  font-size: 0.9rem;
  line-height: 1.4;
  transition: color 0.2s ease;
  font-family: 'Poppins', sans-serif;
}

.recent-posts a:hover {
  color: rgba(147, 249, 14, 0.9);
}

.post-date-small {
  display: block;
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.75rem;
  margin-top: 4px;
  font-family: 'Poppins', sans-serif;
}

/* Blog Posts */
.blog-post-item {
  margin: 10px 0  50px 0;
  text-align: left;
  padding-bottom: 40px;
  padding: 2rem;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.blog-post-item2 {
  margin-bottom: 50px;
  text-align: left;
  padding-bottom: 40px;
  padding: 4rem;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.blog-post-title {
  font-size: 1.6rem;
  font-weight: 300;
  margin: 0 0 15px 0;
  line-height: 1.2;
  color: #fff;
  font-family: 'Poppins', sans-serif;
  text-align: center;
}

.blog-post-item2 .blog-post-title {
  text-align: center !important;
  font-size: 2rem;
}

.blog-post-item2 .blog-post-meta{
  justify-content: center !important;
  margin-bottom: 30px;
}

.blog-post-title a {
  color: #fff;
  text-decoration: none;
}

.blog-post-title a:hover {
  color: rgba(147, 249, 14, 0.9);
}

.blog-post-meta {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
  flex-wrap: wrap;
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.6);
}

.blog-post-meta .subtitle {
  margin: 0;
  color: #0ad3ef;
  font-family: 'Poppins', sans-serif;
  font-size: 0.9rem;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 2px;
}

.post-category {
  color: rgba(147, 249, 14, 0.9);
  text-decoration: none;
  font-size: 0.7rem;
  padding: 4px 10px;
  background: rgba(147, 249, 14, 0.1);
  border-radius: 4px;
  transition: all 0.2s ease;
  font-family: 'Poppins', sans-serif;
}

.post-category:hover {
  background: rgba(147, 249, 14, 0.2);
}

.blog-post-image {
  margin: 25px 0;
  overflow: hidden;
  border-radius: 8px;
  max-width: 100%;
}

.blog-post-image img {
  width: 100%;
  height: auto;
  display: block;
}

.blog-post-content {
  color: rgba(255, 255, 255, 0.75);
  line-height: 1.5;
  margin: 20px 0;
  font-size: .9rem;
  font-family: 'Poppins', sans-serif;
  font-weight: 300;
  text-align: left;
  /* letter-spacing: 0.02em; */
  overflow-wrap: break-word;
}

.blog-post-item2 .blog-post-content {
  font-size: .92rem;
  /* line-height: 1.2; */
  letter-spacing: 0;
}

.blog-post-item2 .blog-post-content p{
  text-align: justify !important;
}

.blog-post-content h2,
.blog-post-content h3,
.blog-post-content h4 {
  color: #fff;
  margin-top: 25px;
  margin-bottom: 15px;
  font-weight: 300;
  font-family: 'Poppins', sans-serif;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.blog-post-content h2{
  font-size: 1.2rem;
  line-height: 1.2;
  font-weight: bold;
}

.blog-post-content h3{
  font-size: 1rem;
  line-height: 1;
  font-weight: bold;
}


.blog-post-content p {
  margin-bottom: 18px;
}

.blog-post-content p:first-of-type {
  margin-top: 0;
}

.blog-post-content img {
  max-width: 100%;
  border-radius: 8px;
  margin: 20px 0;
}

.blog-post-content ul,
.blog-post-content ol {
  margin-left: 24px;
  margin-bottom: 18px;
}

.blog-post-content blockquote {
  border-left: 3px solid #005aad;
  padding: 12px 20px;
  margin: 20px 0;
  border-radius: 4px;
}

.blog-post-content a {
  color: rgba(147, 249, 14, 0.9);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.2s ease;
}

.blog-post-content a:hover {
  color: rgba(147, 249, 14, 1);
}

.continue-reading,
.back-to-blog {
  color: rgba(147, 249, 14, 0.9);
  text-decoration: none;
  font-weight: 400;
  font-size: .9rem;
  transition: all 0.2s ease;
  display: block;
  text-align: right;
  font-family: 'Poppins', sans-serif;
}

.continue-reading:hover {
  color: rgba(147, 249, 14, 1);
}

/* Pagination */
.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin: 60px 0 40px 0;
  padding: 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  flex-wrap: wrap;
}

.pagination-btn {
  color: rgba(147, 249, 14, 0.9);
  text-decoration: none;
  padding: 10px 20px;
  border: 1px solid rgba(147, 249, 14, 0.5);
  border-radius: 4px;
  font-family: 'Poppins', sans-serif;
  font-size: 0.9rem;
  transition: all 0.2s ease;
}

.pagination-btn:hover {
  background: rgba(147, 249, 14, 0.1);
  border-color: rgba(147, 249, 14, 0.9);
}

.pagination-info {
  color: rgba(255, 255, 255, 0.6);
  font-size: 0.9rem;
  font-family: 'Poppins', sans-serif;
  min-width: 150px;
  text-align: center;
}

/* Shared comparison blocks (CRM / E-commerce) */
.comparison-section .comparison-headers {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 30px;
  margin-bottom: 20px;
}

.comparison-section .header-item {
  text-align: center;
  padding: 20px;
  border-radius: 12px;
}

.comparison-section .competitor-selector,
.comparison-section .plan-selector {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

.comparison-section .competitor-btn,
.comparison-section .plan-btn {
  margin: 0 10px 10px 0;
}

.comparison-section .user-input-section {
  text-align: center;
  margin-bottom: 30px;
}

.comparison-section .user-input-section label {
  font-size: 1.1rem;
  margin-right: 10px;
  color: #fff;
}

.comparison-section .user-input-section input {
  padding: 8px 15px;
  font-size: 1rem;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 6px;
  width: 100px;
  text-align: center;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  color: #00d084
}

.comparison-section .comparison-blocks {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 30px;
  margin-bottom: 30px;
}

.comparison-section .comparison-card,
.comparison-section .crm-block {
  background: rgba(0, 0, 0, 0.3);
  border-radius: 16px;
  padding: 30px;
  position: relative;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: 2px solid transparent;
  background-clip: padding-box;
}

.comparison-section .comparison-card.comparison-primary::before
  {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px;
  border-radius: 16px;
  background: linear-gradient(45deg, #005aad, #00b3e0, #78dfb8);
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  z-index: 0;
}

.comparison-section.comparison-primary .comparison-card:hover,
.comparison-section .crm-block:hover {
  transform: translateY(-5px);
  /* box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3); */
}

.comparison-section .comparison-primary,
.comparison-section .our-crm {
  /* border-color: rgba(255, 255, 255, 0.2); */
  background: rgba(0, 208, 132, 0.05);
}

.comparison-section .comparison-secondary,
.comparison-section .competitor-crm {
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(0, 0, 0, 0.05);
  color: rgba(255, 255, 255, 0.05);
}

.comparison-section .comparison-card-header,
.comparison-section .crm-header {
  display: flex;
  justify-content: center;
  text-align: center;
  align-items: center;
  margin-bottom: 25px;
  padding-bottom: 20px;
  border-bottom: 2px solid rgba(255, 255, 255, 0.1);
}

.comparison-section .comparison-card-header h4,
.comparison-section .crm-header h4 {
  margin: 0;
  font-size: 1.5rem;
  color: #fff;
}

.comparison-section .price-section {
  text-align: center;
  padding: 25px 0;
  margin-bottom: 25px;
  background: rgba(255, 255, 255, 0.03);
  border-radius: 12px;
}

.comparison-section .price-main {
  font-size: 2.5rem;
  font-weight: 800;
  color: #fff;
  margin-bottom: 8px;
}

.comparison-section .comparison-secondary .price-main,
.comparison-section .competitor-crm .price-main {
  color: rgba(255, 255, 255, 0.9);
  font-size: 2rem;
}

.comparison-section .price-detail {
  font-size: 1.1rem;
  color: rgba(255, 255, 255, 0.8);
  margin-bottom: 5px;
}

.comparison-section .price-subdetail {
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.5);
}

.comparison-section .plan-info {
  margin-bottom: 25px;
  padding: 15px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 8px;
}

.comparison-section .features-list {
  margin-bottom: 25px;
}

.comparison-section .feature-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 15px;
  margin-bottom: 10px;
  background: rgba(255, 255, 255, 0.03);
  border-radius: 8px;
  transition: background 0.2s ease;
}

.comparison-section .feature-item:hover {
  background: rgba(255, 255, 255, 0.08);
}

.comparison-section .feature-label {
  font-weight: 600;
  color: rgba(255, 255, 255, 0.7);
  flex: 0 0 40%;
  font-size: 0.95rem;
}

.comparison-section .feature-value {
  color: #fff;
  text-align: right;
  flex: 1;
  font-size: 0.95rem;
}

.comparison-section .comparison-secondary .feature-label,
.comparison-section .comparison-secondary .feature-value,
.comparison-section .competitor-crm .feature-label,
.comparison-section .competitor-crm .feature-value {
  color: rgba(255, 255, 255, 0.75);
}

.comparison-section .total-cost {
  padding: 20px;
  /* background: rgba(0, 208, 132, 0.1); */
  border-radius: 8px;
  text-align: center;
  border: 1px solid rgba(0, 208, 132, 0.3);
}

.comparison-section .total-cost strong {
  display: block;
  color: rgba(255, 255, 255, 0.8);
  margin-bottom: 8px;
  font-size: 0.9rem;
}

.comparison-section .cost-amount {
  font-size: 1.8rem;
  font-weight: 700;
   color: rgba(255, 255, 255, 0.8);
}

.comparison-primary .cost-amount {
  font-size: 1.8rem;
  font-weight: 700;
  color: rgba(147, 249, 14, 0.9);
}


.comparison-section .cost-breakdown {
  margin-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  text-align: left;
}

.comparison-section .cost-line {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.75);
  padding: 10px 0 4px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.comparison-section .cost-line-total {
  border-bottom: none;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 4px;
  padding-top: 8px;
  color: #fff;
}

.comparison-section .savings-banner {
  /* background: linear-gradient(135deg, rgba(0, 208, 132, 0.2), rgba(0, 208, 132, 0.05)); */
  border: 2px solid transparent;
  background-clip: padding-box;
  position: relative;
  border-radius: 12px;
  padding: 25px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  font-size: 1.2rem;
  color: #fff;
  animation: comparisonPulse 2s ease-in-out infinite;
}

.comparison-section .savings-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px;
  border-radius: 12px;
  background: linear-gradient(45deg, #005aad, #00b3e0, #78dfb8);
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  z-index: 0;
}

.comparison-section .savings-banner i {
  font-size: 2rem;
  color: #00d084;
}

.comparison-section .savings-amount {
  font-size: 2rem;
  font-weight: 800;
  color: #00d084;
  color: rgba(147, 249, 14, 0.9);

}

.comparison-section .comparison-footer {
  text-align: center;
  padding: 20px;
  background: rgba(0, 208, 132, 0.1);
  border-radius: 8px;
}

.comparison-section .comparison-footer p {
  margin: 0;
  color: #fff;
  font-size: 1.1rem;
}

@keyframes comparisonPulse {

  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(0, 208, 132, 0.4);
  }

  50% {
    box-shadow: 0 0 0 10px rgba(0, 208, 132, 0);
  }
}

/* Page hiring */

main#hiring section {
  /* text-align: left; */
}

/* page  */

main#start section,
main#customers section,
main#sellers section {
  text-align: left;
  padding: 20px;
  justify-content: flex-start;
  align-items: flex-start;
}

@media (max-width: 767px) {


  body {
    font-size: 14px;
  }

  h1 {
    font-size: clamp(1.5rem, 6vw, 1.8rem);
    line-height: 1.15;
  }

  h2 {
    font-size: clamp(1.3rem, 5.2vw, 1.8rem);
    line-height: 1.2;
  }

  h3 {
    font-size: clamp(1.15rem, 4.6vw, 1.45rem);
    line-height: 1.25;
  }

  h4 {
    font-size: clamp(1rem, 4vw, 1.2rem);
    line-height: 1.25;
  }

  h5,
  p {
    font-size: 0.86rem;
    line-height: 1.4;
  }

a.btn {
  font-size: 0.85rem !important;
  min-width: 140px;
  text-align: center;
}

hr{
  margin: 40px auto;
}

  /* Keep blog sidebar typography at original readable sizes */
  .sidebar-title,
  .category-link,
  .recent-posts a {
    font-size: 0.9rem;
  }

  .post-date-small {
    font-size: 0.75rem;
  }

  .submenu-panel {
    display: none !important;
  }

  header {
    height: 80px;
  }

  .logo img {
    height: 30px;
    width: auto;
  }

  .logo a {
    font-size: 1rem
  }

  main {
    padding-top: 80px;
  }

main#home section {
  padding: 40px 0 0 0
}
  
section.cover h1 {
  font-size: 2rem;
  line-height: 1.0322580645;
  font-weight: 200;
}

section.cover h2 {
  font-size: 1.6rem;
  line-height: 1.2;
  margin: 20px 0;
}

section.cover h3 {
  font-size: 1.4rem;
}

  /* Home stats: reduce text/icon scale for mobile */



  main#home #numbers h2{
  margin: 0  0 0 0
}
  main#home #numbers .stat {
    padding: 12px;
    margin: 8px;
  }

  main#home #numbers .stat div {
    font-size: 10px;
  }

  main#home #numbers .stat div:nth-child(2) {
    font-size: 16px;
  }

  main#home #numbers .stat div:nth-child(3) .bi {
    font-size: 16px;
  }

  main#home #numbers .stat h5 {
    font-size: 0.6rem;
    line-height: 1.2;
  }

  main#start .small{
    padding: 0

  }


  .container.small {
    padding: 30px 10%;

  }

  .subtitle{
    font-size: 0.75rem;
     letter-spacing: 1px;
     text-transform: uppercase;
     margin-bottom: 10px;
  }

  .col-12:has(.block.with-icon) {
  margin: 20px 0 10px 0;
  /* border: 1px solid red */
}

  .block.with-icon {
  padding-top: 20px;
  box-sizing: border-box;

}

  .two-columns,
  .three-columns,
  .four-columns {
    grid-template-columns: 1fr;
  }

  .navtabs ul {
    --tab-mobile-height: 40px;
    --tab-mobile-step: 44px;
    flex-direction: column;
    border-radius: 16px;
    padding: 12px;
  }

  .navtabs ul::before {
    top: 12px;
    width: calc(100% - 24px);
    height: var(--tab-mobile-height);
    transition: transform 0.3s ease;
  }

  .navtabs ul.tab-1::before {
    transform: translateY(0);
  }

  .navtabs ul.tab-2::before {
    transform: translateY(var(--tab-mobile-step));
  }

  .navtabs ul.tab-3::before {
    transform: translateY(calc(var(--tab-mobile-step) * 2));
  }

  .navtabs ul.tab-4::before {
    transform: translateY(calc(var(--tab-mobile-step) * 3));
  }

  .navtabs ul li {
    margin: 2px 0;
    border-radius: 12px;
    min-height: var(--tab-mobile-height);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 15px;
    font-size: 0.85rem;
  }

  .platform-features {
    grid-template-columns: 1fr;
  }

  .blog-post-title {
    font-size: 1.2rem;
  }

  .blog-sidebar {
    margin-bottom: 40px;
    position: static;
  }

  .blog-post-meta {
    /* flex-direction: column;
    align-items: flex-start;
    gap: 10px; */
  }

    .blog-post-item,
  .blog-post-item2 {
    padding: 3rem;

  }

  .blog-post-item2 .blog-post-title {
    font-size: 1.4rem;
  }

  .tab-content {
    padding: 20px;
  }

  .comparison-section .comparison-blocks {
    grid-template-columns: 1fr;
  }

  .comparison-section .comparison-headers {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .comparison-section .competitor-selector {
    flex-direction: column;
  }

  .comparison-section .competitor-btn {
    width: 100%;
  }

  .comparison-section .comparison-card-header h4,
  .comparison-section .crm-header h4 {
    font-size: 1.2rem;
  }

  .comparison-section .price-main {
    font-size: 1.7rem;
  }

  .comparison-section .savings-banner {
    flex-direction: column;
    font-size: 1rem;
  }

  .comparison-section .savings-amount {
    font-size: 1.3rem;
  }

  .hide-on-mobile {
    display: none !important;
  }

  .block {
    padding: 12px;
    /* margin: 10px 0; */
  }

  .row {
    margin: 0 auto
  }

  .row.reverse {
    flex-direction: row-reverse;
  }

  /* Force visual reversal with order */
  .row.reverse>[class*="col-"]:first-child {
    order: 2;
  }

  .row.reverse>[class*="col-"]:last-child {
    order: 1;
  }

  .mobile-menu-btn {
    display: inline-flex;
  }

  /* Hide main navigation on mobile */
  header nav {
    display: none;
  }

  .block .bi{
    padding: 0px;
    font-size: 40px;
  }

  .block h4 {
    font-size: 1rem;
  }

  .hsc{
    padding: 16px 20px;
    margin-bottom: 16px;
    text-align: center;
  }

  .hsc a{
    text-align: center;
    display: block;
  }



  /* ul */

  ul, ul.checks {
margin: 1rem 0;
padding: 0;
padding-left: 0;
}

ul.checks li{
  font-size: .8rem;
}

a.btn,

a.btn.line.green{
  font-size: 0.85rem !important;
  padding: 8px 16px;
}

.splide__slide a.btn{
  margin-left: 10px;
}
  

main#home #reach{

  text-align: center;
}

main#home #reach .col-md-6{
  padding: 0 20px;
}

main#home #reach .btn{
  margin: 0 auto;
}


}

/* Tablet keeps mobile-menu interaction; desktop switches to desktop nav */
@media (min-width: 768px) and (max-width: 991px) {

  .mobile-menu-btn {
    display: inline-flex;
  }

  /* Hide main navigation on tablet */
  header nav {
    display: none;
  }
}

/* prevent overlay and sidebar from blocking desktop */
@media (min-width: 992px) {

  #mobile-menu-overlay,
  #mobile-sidebar {
    display: none;
  }

  /* Show main navigation on desktop */
  header nav {
    display: flex;
  }
}

.badge {
  display: inline-block;
  padding: 3px 10px;
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: rgba(255, 255, 255, 0.6);
  text-transform: uppercase;
  white-space: nowrap;
  margin: 4px 4px 0 0
}