html {
  font-size: 16px;/* 1rem = 16px (desktop default) */
  scroll-behavior: smooth;
}

:root {
  /* Spacing scale (8pt system) */
  --space-xxs: 4px;
  --space-xs: 8px;
  --space-sm: 16px;
  --space-md: 24px;
  --space-lg: 32px;
  --space-xl: 48px;
  --space-xxl: 64px;
  --space-huge: 96px;
  
    /* Border radius scale */
  --radius-none: 0;
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;
}


@media(max-width: 1280px) {
    .csol-section-wrapper {
        /* margin: 0 auto; */
        /* max-width: 1240px; */
        padding: 0px 2rem;
        width: 100%;
    }
}

@media(max-width: 1080px) {
    .csol-section-wrapper {
        padding: 32px 1rem !important;
        max-width: 1080px !important;
    }
}

.p-xxs { padding: var(--space-xxs); }
.p-xs  { padding: var(--space-xs); }
.p-sm  { padding: var(--space-sm); }
.p-md  { padding: var(--space-md); }
.p-lg  { padding: var(--space-lg); }
.p-xl  { padding: var(--space-xl); }
.p-xxl { padding: var(--space-xxl); }

.pt-xxs { padding-top: var(--space-xxs); }
.pt-xs  { padding-top: var(--space-xs); }
.pt-sm  { padding-top: var(--space-sm); }
.pt-md  { padding-top: var(--space-md); }
.pt-lg  { padding-top: var(--space-lg); }
.pt-xl  { padding-top: var(--space-xl); }
.pt-xxl { padding-top: var(--space-xxl); }

.pb-xxs { padding-bottom: var(--space-xxs); }
.pb-xs  { padding-bottom: var(--space-xs); }
.pb-sm  { padding-bottom: var(--space-sm); }
.pb-md  { padding-bottom: var(--space-md); }
.pb-lg  { padding-bottom: var(--space-lg); }
.pb-xl  { padding-bottom: var(--space-xl); }
.pb-xxl { padding-bottom: var(--space-xxl); }

/*__ radius__*/

.rounded-none { border-radius: var(--radius-none); }
.rounded-xs   { border-radius: var(--radius-xs); }
.rounded-sm   { border-radius: var(--radius-sm); }
.rounded-md   { border-radius: var(--radius-md); }
.rounded-lg   { border-radius: var(--radius-lg); }
.rounded-xl   { border-radius: var(--radius-xl); }
.rounded-full { border-radius: var(--radius-full); }

/*__ radius top*/

.rounded-t-xs {
  border-top-left-radius: var(--radius-xs);
  border-top-right-radius: var(--radius-xs);
}
.rounded-t-sm {
  border-top-left-radius: var(--radius-sm);
  border-top-right-radius: var(--radius-sm);
}
.rounded-t-md {
  border-top-left-radius: var(--radius-md);
  border-top-right-radius: var(--radius-md);
}


.rounded-t-xs {
  border-top-left-radius: var(--radius-xs);
  border-top-right-radius: var(--radius-xs);
}
.rounded-t-sm {
  border-top-left-radius: var(--radius-sm);
  border-top-right-radius: var(--radius-sm);
}
.rounded-t-md {
  border-top-left-radius: var(--radius-md);
  border-top-right-radius: var(--radius-md);
}

/*__ radius bottom */

.rounded-b-xs {
  border-bottom-left-radius: var(--radius-xs);
  border-bottom-right-radius: var(--radius-xs);
}
.rounded-b-sm {
  border-bottom-left-radius: var(--radius-sm);
  border-bottom-right-radius: var(--radius-sm);
}
.rounded-b-md {
  border-bottom-left-radius: var(--radius-md);
  border-bottom-right-radius: var(--radius-md);
}

/*__ radius left  */
.rounded-l-xs {
  border-top-left-radius: var(--radius-xs);
  border-bottom-left-radius: var(--radius-xs);
}
.rounded-l-sm {
  border-top-left-radius: var(--radius-sm);
  border-bottom-left-radius: var(--radius-sm);
}
.rounded-l-md {
  border-top-left-radius: var(--radius-md);
  border-bottom-left-radius: var(--radius-md);
}


/*__ radius right   */

.rounded-r-xs {
  border-top-right-radius: var(--radius-xs);
  border-bottom-right-radius: var(--radius-xs);
}
.rounded-r-sm {
  border-top-right-radius: var(--radius-sm);
  border-bottom-right-radius: var(--radius-sm);
}
.rounded-r-md {
  border-top-right-radius: var(--radius-md);
  border-bottom-right-radius: var(--radius-md);
}

.rounded-r-lg {
  border-top-right-radius: var(--radius-lg);
  border-bottom-right-radius: var(--radius-lg);
}

/*__ radius single corner __*/

.rounded-tl-sm { border-top-left-radius: var(--radius-sm); }
.rounded-tr-sm { border-top-right-radius: var(--radius-sm); }
.rounded-bl-sm { border-bottom-left-radius: var(--radius-sm); }
.rounded-br-sm { border-bottom-right-radius: var(--radius-sm); }

.rounded-tl-md { border-top-left-radius: var(--radius-md); }
.rounded-tr-md { border-top-right-radius: var(--radius-md); }
.rounded-bl-md { border-bottom-left-radius: var(--radius-md); }
.rounded-br-md { border-bottom-right-radius: var(--radius-md); }



/*__ clean the gap margin top and bottom when using elementor text block__*/

.elementor p {
  margin-block-start: 0;
  margin-block-end: 0;
}

.text-sm {
  font-size: 0.875rem; /* 14px */
}

.text-xs {
  font-size: 0.75rem; /* 12px */
}

.text-lg {
  font-size: 1.125rem; /* 18px */
}

.text-xl {
  font-size: 1.25rem; /* 20px */
}

/*___HEADING___*/

/*.mainhead {
  font-size: 48px; 
  line-height: 68px; 
  font-weight: 700; 
  color: #323743FF; 
}*/

.mainhead.elementor-widget-heading .elementor-heading-title {
   font-size: clamp(1.8rem, 5vw, 3rem) !important;
}

.subhead-body.elementor-widget-heading .elementor-heading-title {
  font-size: clamp(19px, 1.2vw, 22px) !important;
  line-height: 1.4 !important;
  text-align:center !important;
}

.mainhead-body.elementor-widget-heading .elementor-heading-title {
    font-size: clamp(24px, 3vw, 40px) !important;
    line-height: 1.4 !important;
}

.subhead {
  font-size: 23px; 
  line-height: 36px; 
  font-weight: 600; 
  color: #323743FF; /* neutral-700 */
}

/*__ Button__*/

.btn-group-cta {
  display: flex;
  gap: 16px;
}

.btn-group-cta .elementor-button {
  flex: 1;
}

.vid-responsive iframe {
  width: 100%;
  aspect-ratio: 16 / 9 !important;
  height: auto;
  display: block;
}