/*
@File: Samu Template Styles

* This file contains the styling for the actual template, this
is the file you need to edit to change the look of the
template.

This files table contents are outlined below>>>>>

*******************************************
*******************************************
** Google Fonts
** Default CSS
** Padding CSS
** Margin CSS
** Section Title CSS
** Button CSS
** Form CSS
** Color CSS
** Home Banner CSS
** Integration CSS
** Choose CSS
** About CSS
** Features CSS
** Main Features CSS
** Services CSS
** Overview CSS
** Fun-fact CSS
** Pricing CSS
** Pricing Plan CSS
** Testimonial CSS
** Feedback CSS
** Sponsor CSS
** CTA CSS
** Video CSS
** Blog CSS
** Faq CSS
** Contact CSS
** Promo CSS
** Footer CSS
** Blog Details CSS
** Coming Soon CSS
** Error CSS
** Sidebar Widget CSS
** Newsletter CSS
** Newsletter Form CSS
** Page title CSS
** Pagination CSS
** Video Btn CSS
** Section Divider CSS
** Custom Owl Button CSS
** Lazyload CSS
** Animation CSS

/* -----------------------------------------
  Design tokens (2026 redesign, see design_handoff_stockistly_website/tokens)
----------------------------------------- */
:root {
  --color-bg: #f9fafe;
  --color-surface: #eef1f9;
  --color-text: #132150;
  --color-accent: #4f46e5;
  --color-accent-2: #ef786a;
  --color-plum: #4a2c63;
  --color-deep: #0b1541;
  --color-divider: color-mix(in srgb, #132150 15%, transparent);

  --color-neutral-100: #f4f5fa; --color-neutral-200: #e6e8f0; --color-neutral-300: #d0d3de;
  --color-neutral-400: #b0b4c3; --color-neutral-500: #8e92a3; --color-neutral-600: #6f7385;
  --color-neutral-700: #545868; --color-neutral-800: #3a3e4d; --color-neutral-900: #23273a;

  --color-accent-100: #eef2ff; --color-accent-200: #e0e7ff; --color-accent-300: #c7d2fe;
  --color-accent-400: #a5b4fc; --color-accent-500: #6366f1; --color-accent-600: #4f46e5;
  --color-accent-700: #4338ca; --color-accent-800: #3730a3; --color-accent-900: #132150;

  --color-accent-2-100: #fff0ed; --color-accent-2-200: #ffdcd6; --color-accent-2-300: #fbb9ae;
  --color-accent-2-400: #f4927f; --color-accent-2-500: #ef786a; --color-accent-2-600: #d65a4b;
  --color-accent-2-700: #ad4234; --color-accent-2-800: #7f2f25; --color-accent-2-900: #521f19;

  --surface-page: var(--color-bg);
  --surface-tint: var(--color-accent-100);
  --surface-hero: linear-gradient(180deg, var(--color-accent-100) 0%, var(--color-accent-100) 55%, var(--color-bg) 100%);
  --surface-dark: var(--color-deep);
  --surface-dark-glow: radial-gradient(ellipse 60% 120% at 100% 0%, color-mix(in srgb, var(--color-plum) 80%, transparent), transparent 70%);
  --text-body: var(--color-text);
  --text-muted: color-mix(in srgb, var(--color-text) 72%, transparent);
  --text-soft: color-mix(in srgb, var(--color-text) 78%, transparent);
  --text-label: var(--color-accent-700);
  --text-on-dark: #ffffff;
  --text-on-dark-muted: rgba(255, 255, 255, .82);
  --text-label-on-dark: var(--color-accent-300);
  --link: var(--color-accent-700);
  --link-hover: var(--color-accent-900);

  /* Matter is licensed; add @font-face rules for it here once the files are supplied.
     Until then the system sans renders. */
  --font-heading: matter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-body: matter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-heading-weight: 500;
  --type-display: 64px;
  --type-lead: 17px;
  --type-body: 15px;
  --type-small: 13px;
  --type-label: 13px;
  --tracking-heading: -0.02em;
  --tracking-label: 0.08em;

  --space-1: 4.6px; --space-2: 9.2px; --space-3: 13.8px; --space-4: 18.4px; --space-6: 27.6px; --space-8: 36.8px;
  --section-pad-y: 72px;
  --page-gutter: 56px;
  --radius-sm: 2px; --radius-md: 4px; --radius-lg: 7px;
  --shadow-sm: 0 1px 2px color-mix(in srgb, #132150 14%, transparent);
  --shadow-md: 0 3px 10px color-mix(in srgb, #132150 16%, transparent);
  --shadow-lg: 0 12px 32px color-mix(in srgb, #132150 22%, transparent);

  --bs-body-font-family: var(--font-body);
}

/* -----------------------------------------
  Default CSS
----------------------------------------- */
body {
  padding: 0;
  margin: 0;
  color: var(--color-text);
  background-color: var(--color-bg);
  font-size: var(--type-body);
  font-family: var(--font-body);
  line-height: 1.65;
  overflow-x: hidden;
}

.fs-small {
  font-size: 15px;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--color-text);
  font-family: var(--font-heading);
  font-weight: var(--font-heading-weight);
  letter-spacing: var(--tracking-heading);
  line-height: 1.1;
}

h1 {
  line-height: 1.05;
  font-size: var(--type-display);
}

h2 {
  font-size: 40px;
}

h3, .h3 {
  font-size: 22px;
}

h4 {
  font-size: 20px;
}

a {
  color: var(--link);
  text-decoration: none;
  text-underline-offset: 3px;
}
a:hover {
  color: var(--link-hover);
  text-decoration: none;
}

:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}
:focus-visible {
  outline: 2px solid var(--color-accent) !important;
  outline-offset: 2px;
}

::selection {
  background: color-mix(in srgb, var(--color-accent) 30%, transparent);
}

/* Uppercase label above headings */
.st-label {
  display: block;
  font-size: var(--type-label);
  letter-spacing: var(--tracking-label);
  text-transform: uppercase;
  color: var(--text-label);
}

.st-lead {
  font-size: var(--type-lead);
  line-height: 1.65;
}

.st-tnum {
  font-feature-settings: "tnum" 1;
}

img {
  max-width: 100%;
  height: auto;
}

p {
  color: var(--text-soft);
  margin-bottom: 0;
  font-weight: 400;
}

/* Padding css */
.ptb-90 {
  padding-top: 90px;
  padding-bottom: 90px;
}

.pt-90 {
  padding-top: 90px;
}

.pb-90 {
  padding-bottom: 90px;
}

.ptb-120 {
  padding-top: 120px;
  padding-bottom: 120px;
}

.pt-120 {
  padding-top: 120px;
}

.pb-120 {
  padding-bottom: 120px;
}

/* Margin css */
.mb-20 {
  margin-bottom: 20px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-50 {
  margin-bottom: 50px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-30 {
  margin-top: 30px;
}

/* Section Title CSS */
.section-title {
  text-align: center;
  max-width: 676px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 45px;
  margin-top: -8px;
}
.section-title .icon {
  display: block;
  margin: 8px auto 20px auto;
  width: 50px;
  height: 50px;
  line-height: 50px;
  color: var(--color-accent);
  text-align: center;
  background-color: transparent;
  border: 1px solid var(--color-accent);
  border-radius: var(--radius-md);
}
.section-title .tag {
  display: block;
  font-size: var(--type-label);
  font-weight: 400;
  letter-spacing: var(--tracking-label);
  color: var(--text-label);
  text-transform: uppercase;
}
.section-title h2 {
  font-size: 44px;
  margin: 0;
  color: var(--color-text);
}
.section-title p {
  color: var(--text-soft);
  margin-top: 15px;
}

/* Button CSS
   Buttons are outlined, never filled. .primary-btn = indigo outline,
   .secondary-btn = hairline outline, .ghost-btn = text only,
   .on-dark-btn = white text with a light indigo outline for dark sections. */
.btn {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  vertical-align: middle;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  color: var(--color-text);
  font-family: var(--font-heading);
  font-size: 15px;
  font-weight: var(--font-heading-weight);
  line-height: 1.2;
  padding: 11px 18px;
  border-radius: var(--radius-md);
  border: 1px solid transparent;
  background: transparent;
  box-shadow: none;
  transition: none;
}
.btn:focus-visible {
  outline: 2px solid var(--color-accent) !important;
  outline-offset: 2px;
  box-shadow: none;
}

.primary-btn,
.btn.btn-primary {
  color: var(--color-accent);
  border-color: var(--color-accent);
  background: transparent;
}
.primary-btn:hover,
.btn.btn-primary:hover {
  color: var(--color-accent);
  border-color: var(--color-accent);
  background: color-mix(in srgb, var(--color-accent) 12%, transparent);
}
.primary-btn:active,
.btn.btn-primary:active {
  color: var(--color-accent);
  border-color: var(--color-accent);
  background: color-mix(in srgb, var(--color-accent) 22%, transparent);
}
.primary-btn i {
  -webkit-margin-end: 5px;
          margin-inline-end: 5px;
}

.secondary-btn {
  color: var(--color-text);
  border-color: var(--color-divider);
  background: transparent;
}
.secondary-btn:hover {
  color: var(--color-text);
  background: color-mix(in srgb, var(--color-text) 7%, transparent);
}
.secondary-btn:active {
  color: var(--color-text);
  background: color-mix(in srgb, var(--color-text) 14%, transparent);
}

.ghost-btn {
  color: var(--color-accent);
  padding-inline: var(--space-1);
}
.ghost-btn:hover {
  color: var(--color-accent);
  background: color-mix(in srgb, var(--color-accent) 10%, transparent);
}
.ghost-btn:active {
  color: var(--color-accent);
  background: color-mix(in srgb, var(--color-accent) 18%, transparent);
}

.on-dark-btn {
  color: #ffffff;
  border-color: var(--color-accent-300);
}
.on-dark-btn:hover {
  color: #ffffff;
  background: color-mix(in srgb, var(--color-accent-300) 18%, transparent);
}
.on-dark-btn:active {
  color: #ffffff;
  background: color-mix(in srgb, var(--color-accent-300) 28%, transparent);
}

.btn-block {
  width: 100%;
}

/* Form CSS */
.form-group :-ms-input-placeholder,
.input-group :-ms-input-placeholder {
  color: #132150;
}
.form-group ::-moz-placeholder, .input-group ::-moz-placeholder {
  color: #132150;
}
.form-group :-ms-input-placeholder, .input-group :-ms-input-placeholder {
  color: #132150;
}
.form-group ::placeholder,
.input-group ::placeholder {
  color: #132150;
}
.form-group .form-control,
.input-group .form-control {
  background-color: transparent;
  padding: 12px 14px;
  font-size: 15px;
  border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
  color: var(--color-text);
}
.form-group .form-control:hover,
.input-group .form-control:hover {
  border-color: color-mix(in srgb, var(--color-text) 45%, transparent);
}
.form-group .form-control:focus,
.input-group .form-control:focus {
  border-color: var(--color-accent);
  box-shadow: none;
}

@media screen and (min-width: 1400px) {
  .container {
    max-width: 1140px;
  }
}

/* Color CSS*/
.blue {
  color: #2196f3;
}

.green {
  color: #4caf50;
}

.red {
  color: #ec407a;
}

.yellow {
  color: #ffc400;
}

.purple {
  color: var(--color-accent);
}

.orange {
  color: #ff8432;
}

@media only screen and (min-width: 1200px) {
  .image-left {
    -webkit-margin-start: -60px;
            margin-inline-start: -60px;
  }
  .image-right {
    -webkit-margin-end: -60px;
            margin-inline-end: -60px;
  }
}
@media only screen and (min-width: 1400px) {
  .image-left {
    -webkit-margin-start: -100px;
            margin-inline-start: -100px;
  }
  .image-right {
    -webkit-margin-end: -100px;
            margin-inline-end: -100px;
  }
}
/* -----------------------------------------
  	Home Banner CSS
----------------------------------------- */
.home-banner-area {
  position: relative;
  overflow: hidden;
  z-index: 1;
  padding-top: 88px;
}
.home-banner-area.banner-bg {
  background-color: initial;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: var(--surface-hero);
}
.home-banner-area .banner-content {
  max-width: 767px;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
}
.home-banner-area .banner-content .tag {
  display: inline-block;
  position: relative;
  font-size: 14px;
  padding: 5px 40px;
  border-radius: 30px;
  -webkit-margin-start: 20px;
          margin-inline-start: 20px;
  margin-bottom: 35px;
  color: var(--color-accent-700);
  background-color: var(--color-accent-200);
}
.home-banner-area .banner-content .tag .icon {
  position: absolute;
  top: 50%;
  left: 0;
  width: 40px;
  transform: translate(-20px, -50%);
  color: #ffffff;
  border-radius: 30px;
  background-color: var(--color-accent);
}

.home-banner-area .banner-content .title {
  font-size: 50px;
  color: var(--color-text);
  margin-bottom: 25px;
  margin-top: -10px;
}


.home-banner-area .banner-content .text {
  font-size: 20px;
  margin-bottom: 30px;
}
.home-banner-area .banner-content .cta-btns .btn:not(:first-child) {
  -webkit-margin-start: 10px;
          margin-inline-start: 10px;
}
.home-banner-area .banner-image {
  position: relative;
  -webkit-animation: moveUpDown 5s linear infinite;
          animation: moveUpDown 5s linear infinite;
}
.home-banner-area .banner-image.image-bottom {
  margin-bottom: -62px;
}
.home-banner-area .banner-image.image-right {
  overflow: hidden;
  border-radius: 15px;
  box-shadow: 0px 10px 30px 0px rgba(78, 76, 76, 0.2);
}
.home-banner-area .shape img {
  position: absolute;
  z-index: -1;
}
.home-banner-area .shape img.shape-1 {
  top: 36%;
  left: 26%;
  max-width: 35px;
  -webkit-animation: rotate 10s linear infinite;
          animation: rotate 10s linear infinite;
}
.home-banner-area .shape img.shape-2 {
  top: 52%;
  left: 15%;
  max-width: 45px;
  -webkit-animation: moveUpDown 5s linear infinite;
          animation: moveUpDown 5s linear infinite;
}
.home-banner-area .shape img.shape-3 {
  top: 50%;
  left: 30%;
  max-width: 30px;
  -webkit-animation: moveAround 20s linear infinite;
          animation: moveAround 20s linear infinite;
}
.home-banner-area .shape img.shape-4 {
  top: 38%;
  right: 23%;
  max-width: 30px;
  -webkit-animation: moveUpDown 5s linear infinite;
          animation: moveUpDown 5s linear infinite;
}
.home-banner-area .shape img.shape-5 {
  top: 50%;
  right: 31%;
  max-width: 45px;
  -webkit-animation: moveLeftRight 10s linear infinite;
          animation: moveLeftRight 10s linear infinite;
}
.home-banner-area .shape img.shape-6 {
  top: 58%;
  right: 12%;
  max-width: 30px;
  -webkit-animation: rotate 10s linear infinite;
          animation: rotate 10s linear infinite;
}
.home-banner-area .bg-shape {
  position: absolute;
  z-index: -1;
}
.home-banner-area.banner-2 {
  background-image: none;
  padding-bottom: 90px;
}
.home-banner-area.banner-2 .banner-content .title {
  color: #132150;
}
.home-banner-area.banner-2 .banner-content .text {
  color: var(--text-soft);
}
.home-banner-area.banner-2 .bg-shape.bg-shape-1 {
  top: 0;
  right: 0;
  max-width: 70%;
}
.home-banner-area.banner-2 .bg-shape.bg-shape-2 {
  right: 9%;
  bottom: 0;
  max-width: 25%;
  z-index: -2;
}
.home-banner-area.banner-3.banner-bg {
  background-color: #1f2549;
  background-image: none;
  background-position: bottom;
}
.home-banner-area.banner-3 .banner-image .video-btn {
  width: 120px;
  height: 120px;
  background-color: var(--color-accent);
  background: transparent;
}
.home-banner-area.banner-3 .banner-image .video-btn::before, .home-banner-area.banner-3 .banner-image .video-btn::after {
  content: none;
}
.home-banner-area.banner-4 {
  padding-bottom: 650px;
}
.home-banner-area.banner-4.banner-bg {
  background-image: none;
  background-position: center bottom;
}
.home-banner-area.banner-4 .bg-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.home-banner-area.banner-5 {
  padding-bottom: 200px;
}
.home-banner-area.banner-5.banner-bg {
  background: #070f40;
  background: var(--color-deep);
}
.home-banner-area.banner-5 .bg-shape {
  bottom: 0;
  left: 0;
}
.home-banner-area.banner-6 {
  background-image: none;
}
.home-banner-area.banner-6 .banner-content {
  max-width: 640px;
}
.home-banner-area.banner-6 .newsletter-form {
  padding-top: 15px;
  margin-bottom: 30px;
}
.home-banner-area.banner-6 .newsletter-form .input-group :-ms-input-placeholder {
  color: #ffffff;
}
.home-banner-area.banner-6 .newsletter-form .input-group ::-moz-placeholder {
  color: #ffffff;
}
.home-banner-area.banner-6 .newsletter-form .input-group ::placeholder {
  color: #ffffff;
}
.home-banner-area.banner-7 {
  background: none;
  background-color: #ffffff;
}
.home-banner-area.banner-7 .banner-content .title {
  color: #132150;
}
.home-banner-area.banner-8 {
  padding-bottom: 120px;
}
.home-banner-area.banner-8.banner-bg {
  background: var(--surface-hero);
}
@media (min-width: 1200px) {
  .home-banner-area.banner-8 .left-content {
    width: 575px;
    margin-left: auto;
  }
}
@media (max-width: 1199.98px) {
  .home-banner-area.banner-8 .left-content {
    width: 480px;
    margin-left: auto;
  }
}
@media (max-width: 991.98px) {
  .home-banner-area.banner-8 .left-content {
    width: 100%;
  }
  .home-banner-area.banner-8 .container-fluid {
    max-width: 720px;
  }
}
@media (max-width: 767.98px) {
  .home-banner-area.banner-8 .container-fluid {
    max-width: 515px;
  }
}
@media (max-width: 575.98px) {
  .home-banner-area.banner-8 .container-fluid {
    max-width: 100%;
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
}
.home-banner-area.banner-8 .bg-shape {
  bottom: 0;
  left: 0;
}
.home-banner-area.banner-9 {
  padding-top: 132px;
}
.home-banner-area.banner-9.banner-bg {
  background-image: none;
}
.home-banner-area.banner-9 .banner-content {
  padding-top: 180px;
}
.home-banner-area.banner-9 .info-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  max-width: 70%;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
}
.home-banner-area.banner-9 .info-list li {
  flex: 50% 0 0;
  margin-bottom: 10px;
}
.home-banner-area.banner-9 .info-list li i {
  -webkit-margin-end: 5px;
          margin-inline-end: 5px;
}
.home-banner-area.banner-9 .bg-shape {
  bottom: 0;
  left: 0;
}
.home-banner-area.banner-7 .banner-image, .home-banner-area.banner-8 .banner-image, .home-banner-area.banner-9 .banner-image {
  box-shadow: none;
  border-radius: 0;
}

/* -----------------------------------------
  	Integration CSS
----------------------------------------- */
.integration-area {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.integration-area .item-single {
  display: flex;
  align-items: flex-start;
}
.integration-area .item-single .icon {
  max-width: 64px;
}
.integration-area .item-single .content {
  -webkit-padding-start: 20px;
          padding-inline-start: 20px;
}
@media (min-width: 1200px) {
  .integration-area.integration-2 .left-content {
    width: 575px;
    margin-left: auto;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}
@media (max-width: 1199.98px) {
  .integration-area.integration-2 .left-content {
    width: 480px;
    margin-left: auto;
  }
}
@media (max-width: 991.98px) {
  .integration-area.integration-2 .left-content {
    width: 100%;
  }
  .integration-area.integration-2 .container-fluid {
    max-width: 720px;
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .integration-area.integration-2 .container-fluid {
    max-width: 515px;
    padding: 0 !important;
  }
}
@media (max-width: 575.98px) {
  .integration-area.integration-2 .container-fluid {
    max-width: 100%;
  }
}
.integration-area.integration-2 .section-title, .integration-area.integration-3 .section-title {
  text-align: left;
  margin-bottom: 30px;
}
.integration-area.integration-2 .item-single, .integration-area.integration-3 .item-single {
  align-items: center;
}
.integration-area.integration-2 .item-single .icon, .integration-area.integration-3 .item-single .icon {
  flex: 40px 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  line-height: 40px;
  border-radius: 50%;
  font-size: 20px;
  color: #2dca73;
  background-color: transparent;
  border: 1px solid #2dca73;
  transition: 0.3s;
}
.integration-area.integration-2 .item-single .content, .integration-area.integration-3 .item-single .content {
  -webkit-padding-start: 15px;
          padding-inline-start: 15px;
}
.integration-area.integration-2 .item-single:hover .icon, .integration-area.integration-3 .item-single:hover .icon {
  background-color: #2dca73;
  color: #ffffff;
}
.integration-area.integration-3 .image {
  position: relative;
  padding-right: 50px;
  padding-bottom: 50px;
}
.integration-area.integration-3 .image img {
  border-radius: 10px;
  border: 1px solid #e7e7e7;
  box-shadow: 0px 10px 30px 0px rgba(78, 76, 76, 0.2);
  -webkit-animation: moveLeftRight 5s linear infinite;
          animation: moveLeftRight 5s linear infinite;
}
.integration-area.integration-3 .image img.image-2 {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 2;
  -webkit-animation: moveUpDown 5s linear infinite;
          animation: moveUpDown 5s linear infinite;
}
@media (max-width: 1400.98px) {
  .integration-area.integration-3 .image img.image-2 {
    max-width: 300px;
  }
}
@media (max-width: 1199.98px) {
  .integration-area.integration-3 .image img.image-2 {
    max-width: 300px;
  }
}
@media (max-width: 767.98px) {
  .integration-area.integration-3 .image img.image-2 {
    max-width: 200px;
  }
}
@media (max-width: 575.98px) {
  .integration-area.integration-3 .image img.image-2 {
    max-width: 120px;
  }
}
@media (min-width: 1200px) {
  .integration-area.integration-3 .right-content {
    width: 575px;
    margin-right: auto;
  }
}
@media (max-width: 1199.98px) {
  .integration-area.integration-3 .right-content {
    width: 480px;
    margin-right: auto;
  }
}
@media (max-width: 991.98px) {
  .integration-area.integration-3 .right-content {
    width: 100%;
  }
  .integration-area.integration-3 .container-fluid {
    max-width: 720px;
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
  .integration-area.integration-3 .section-title {
    -webkit-margin-start: 0;
            margin-inline-start: 0;
  }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .integration-area.integration-3 .container-fluid {
    max-width: 515px;
    padding: 0 !important;
  }
}
@media (max-width: 575.98px) {
  .integration-area.integration-3 .container-fluid {
    max-width: 100%;
  }
}
.integration-area.integration-3 .item-single .icon {
  border-color: #0fd8d0;
  color: #0fd8d0;
}
.integration-area.integration-4 .section-title {
  text-align: left;
  margin-bottom: 30px;
}
.integration-area.integration-4 .section-title .icon {
  background-color: #3aa9ff;
  box-shadow: 0px 11px 18px 0px rgba(58, 169, 255, 0.39);
}
.integration-area.integration-4 .item-single {
  padding: 10px 20px;
  border-radius: 5px;
  background-color: #e7f5ff;
  align-items: flex-start;
}
.integration-area.integration-4 .item-single .icon {
  flex: 14px 0 0;
  text-align: center;
  width: 14px;
  height: 14px;
  line-height: 15px;
  margin-top: 4px;
  border-radius: 50%;
  font-size: 8px;
  color: #ffffff;
  background-color: #3aa9ff;
}
.integration-area.integration-4 .item-single .content {
  -webkit-padding-start: 5px;
          padding-inline-start: 5px;
}
.integration-area.integration-4 .item-single .content p {
  font-size: 14px;
  font-weight: 600;
  color: #3aa9ff;
  line-height: 22px;
}
.integration-area.integration-4 .images {
  position: relative;
  height: 500px;
  width: 500px;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  -webkit-margin-end: auto;
          margin-inline-end: auto;
  z-index: 1;
  -webkit-animation: rotate 50s linear infinite;
          animation: rotate 50s linear infinite;
}
.integration-area.integration-4 .images::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 120px);
  height: calc(100% - 120px);
  border-radius: 50%;
  border: 4px solid rgba(45, 202, 115, 0.3);
  z-index: -1;
}
.integration-area.integration-4 .images .image {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 110px;
  height: 110px;
  line-height: 110px;
  border-radius: 50%;
  background-color: #ffffff;
  box-shadow: 0px 13px 18px 0px rgba(166, 166, 166, 0.29);
}
.integration-area.integration-4 .images .image img {
  max-width: 65px;
  -webkit-animation: rotate 50s linear infinite;
          animation: rotate 50s linear infinite;
  animation-direction: reverse;
}
.integration-area.integration-4 .images .image:nth-child(1) {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.integration-area.integration-4 .images .image:nth-child(2) {
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.integration-area.integration-4 .images .image:nth-child(3) {
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.integration-area.integration-4 .images .image:nth-child(4) {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.integration-area.integration-5 {
  background-color: #301fcf;
  background: none;
  background-size: cover;
}
@media (min-width: 1200px) {
  .integration-area.integration-5 .left-content {
    width: 575px;
    margin-left: auto;
  }
}
@media (max-width: 1199.98px) {
  .integration-area.integration-5 .left-content {
    width: 480px;
    margin-left: auto;
  }
}
@media (max-width: 991.98px) {
  .integration-area.integration-5 .left-content {
    width: 100%;
  }
  .integration-area.integration-5 .container-fluid {
    max-width: 720px;
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .integration-area.integration-5 .container-fluid {
    max-width: 515px;
    padding: 0 !important;
  }
}
@media (max-width: 575.98px) {
  .integration-area.integration-5 .container-fluid {
    max-width: 100%;
  }
}
.integration-area.integration-5 .content .info-list li {
  line-height: 1;
}
.integration-area.integration-5 .content .info-list li:not(:last-child) {
  margin-bottom: 20px;
}
.integration-area.integration-5 .content .info-list li i {
  -webkit-margin-end: 10px;
          margin-inline-end: 10px;
}
.integration-area.integration-5 .content p {
  margin-top: 20px;
  margin-bottom: 25px;
}
.integration-area.integration-5 .content .client {
  margin-top: 30px;
  padding-top: 25px;
  border-top: 1px solid rgba(255, 255, 255, 0.302);
}

/* -----------------------------------------
  	Choose CSS
----------------------------------------- */
.choose-area {
  position: relative;
  overflow: hidden;
}
.choose-area .section-title {
  text-align: left;
  margin-bottom: 40px;
}
.choose-area .section-title p {
  margin-top: 15px;
}
.choose-area .item-single {
  display: flex;
  align-items: flex-start;
}
.choose-area .item-single .icon {
  flex: 60px 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  line-height: 60px;
  border-radius: 50%;
  font-size: 24px;
}
.choose-area .item-single .icon.bg-blue {
  background-color: rgba(33, 150, 243, 0.2);
}
.choose-area .item-single .icon.bg-green {
  background-color: rgba(76, 174, 79, 0.2);
}
.choose-area .item-single .icon.bg-red {
  background-color: rgba(236, 64, 122, 0.2);
}
.choose-area .item-single .content {
  -webkit-padding-start: 15px;
          padding-inline-start: 15px;
}
.choose-area .image {
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0px 10px 30px 0px rgba(78, 76, 76, 0.2);
}
.choose-area.choose-2 {
  margin-top: -300px;
  overflow: hidden;
  padding-top: 420px;
  padding-bottom: 400px;
}
.choose-area.choose-2 .bg-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: -1;
}
.choose-area.choose-3 {
  background-color: #1f2549;
}
.choose-area.choose-3 .section-title p {
  color: #a7add2;
}
.choose-area.choose-3 .item-single .icon {
  color: #fff;
}
.choose-area.choose-3 .item-single .icon.bg-blue {
  background-color: var(--color-accent);
  background: var(--color-accent);
}
.choose-area.choose-3 .item-single .icon.bg-red {
  background-color: #ef6ab4;
  background: var(--color-accent);
}
.choose-area.choose-3 .item-single .icon.bg-green {
  background-color: #40c694;
  background: var(--color-accent);
}
.choose-area.choose-3 .item-single .content p {
  color: #a7add2;
}
.choose-area.choose-5 {
  background-color: #ecf4ff;
}

/* -----------------------------------------
  	About CSS
----------------------------------------- */
.about-area {
  position: relative;
  overflow: hidden;
  background-color: #f9fafe;
}
.about-area .section-title {
  text-align: left;
  margin-bottom: 30px;
}
.about-area .section-title p {
  color: var(--text-soft);
}
.about-area .item-single {
  display: flex;
  align-items: flex-start;
}
.about-area .item-single .icon {
  flex: 60px 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  line-height: 60px;
  border-radius: 50%;
  font-size: 24px;
  color: #ffffff;
  background-color: #2dca73;
}
.about-area .item-single .content {
  -webkit-padding-start: 15px;
          padding-inline-start: 15px;
}
.about-area.about-2 {
  background-color: #ffffff;
}
@media (min-width: 1200px) {
  .about-area.about-2 .left-content {
    width: 575px;
    margin-left: auto;
  }
}
@media (max-width: 1199.98px) {
  .about-area.about-2 .left-content {
    width: 480px;
    margin-left: auto;
  }
}
@media (max-width: 991.98px) {
  .about-area.about-2 .left-content {
    width: 100%;
  }
  .about-area.about-2 .container-fluid {
    max-width: 720px;
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
  .about-area.about-2 .section-title {
    -webkit-margin-start: 0;
            margin-inline-start: 0;
  }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .about-area.about-2 .container-fluid {
    max-width: 515px;
    padding: 0 !important;
  }
}
@media (max-width: 575.98px) {
  .about-area.about-2 .container-fluid {
    max-width: 100%;
  }
}
.about-area.about-2 .item-single .icon {
  background-color: #0fd8d0;
}
.about-area.about-3 .section-title {
  margin-bottom: 20px;
}
.about-area.about-3 .section-title .icon {
  background-color: #2dca73;
  box-shadow: 0px 11px 18px 0px rgba(45, 202, 115, 0.39);
}
.about-area.about-3 .image {
  margin-bottom: 5px;
}
.about-area.about-3 .item-single {
  padding: 10px 20px;
  border-radius: 5px;
  background-color: #e1ffee;
  align-items: flex-start;
}
.about-area.about-3 .item-single .icon {
  flex: 14px 0 0;
  width: 14px;
  height: 14px;
  line-height: 14px;
  margin-top: 3px;
  font-size: 8px;
  color: #ffffff;
  background-color: #2dca73;
}
.about-area.about-3 .item-single .content {
  -webkit-padding-start: 5px;
          padding-inline-start: 5px;
}
.about-area.about-3 .item-single .content p {
  font-size: 14px;
  font-weight: 600;
  color: #2dca73;
  line-height: 22px;
}

/* -----------------------------------------
  	Features CSS
----------------------------------------- */
.features-area {
  position: relative;
}
.features-area .section-gap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-top: var(--section-pad-y);
  padding-bottom: var(--section-pad-y);
}
.features-area .section-gap::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--color-accent-100);
  z-index: -1;
}
.features-area .item-single {
  text-align: center;
  padding: 40px 30px;
  border-radius: var(--radius-md);
  background-color: transparent;
  border: 1px solid var(--color-divider);
}
.features-area .item-single .icon {
  font-size: 58px;
  margin-bottom: 20px;
}
.features-area .item-single .icon i {
  display: block;
}
.features-area .item-single h3 {
  margin-bottom: 15px;
}
.features-area .item-single:hover .icon {
  -webkit-animation: shakeY 0.3s ease-in-out 1;
          animation: shakeY 0.3s ease-in-out 1;
}
.features-area.features-2 {
  background-color: #1f2549;
}
.features-area.features-2 .section-title p {
  color: #a7add2;
}
.features-area.features-2 .item-single .icon {
  color: #ffffff;
}
.features-area.features-2 .item-single h3 {
  color: #ffffff;
}
.features-area.features-2 .item-single p {
  color: #ffffff;
}
.features-area.features-2 .item-single.bg-blue {
  background-color: var(--color-accent);
  background: var(--color-accent);
}
.features-area.features-2 .item-single.bg-red {
  background-color: #ef6ab4;
  background: var(--color-accent);
}
.features-area.features-2 .item-single.bg-green {
  background-color: #40c694;
  background: var(--color-accent);
}
.features-area.features-3 {
  z-index: 2;
  margin-top: -558px;
}
.features-area.features-3 .section-title {
  text-align: left;
  max-width: 445px;
  margin-right: auto;
  margin-bottom: 0;
}
.features-area.features-3 .section-title .tag {
  color: var(--color-accent);
}
.features-area.features-3 .section-title h2 {
  color: #132150;
}
.features-area.features-3 .section-title p {
  margin-top: 20px;
  margin-bottom: 30px;
}
.features-area.features-3 .item-single .icon {
  color: #ffffff;
}
.features-area.features-3 .item-single h3 {
  color: #ffffff;
}
.features-area.features-3 .item-single p {
  color: #ffffff;
}
.features-area.features-3 .item-single.bg-orange {
  background-color: #ee5b61;
  background: var(--color-accent);
}
.features-area.features-3 .item-single.bg-blue {
  background-color: var(--color-accent);
  background: var(--color-accent);
}
.features-area.features-3 .item-single.bg-red {
  background-color: #ef6ab4;
  background: var(--color-accent);
}
.features-area.features-3 .item-single.bg-purple {
  background-color: var(--color-accent);
  background: var(--color-accent);
}

/* -----------------------------------------
  	Main Features CSS
----------------------------------------- */
.main-features-area {
  position: relative;
}
.main-features-area .item-single {
  text-align: center;
}
.main-features-area .item-single .icon {
  font-size: 58px;
  margin-bottom: 25px;
  display: inline-flex;
}
.main-features-area .item-single .icon i {
  display: block;
}
.main-features-area .item-single h3 {
  margin-bottom: 15px;
}
.main-features-area .item-single:hover .icon {
  -webkit-animation: shakeY 0.3s ease-in-out 1;
          animation: shakeY 0.3s ease-in-out 1;
}
.main-features-area.main-features-2 .item-single .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 100px;
  margin-left: auto;
  margin-right: auto;
  line-height: 100px;
  border-radius: 50%;
  font-size: 38px;
}
.main-features-area.main-features-2 .item-single .icon.bg-blue {
  background-color: rgba(33, 150, 243, 0.2);
}
.main-features-area.main-features-2 .item-single .icon.bg-purple {
  background-color: rgba(62, 67, 226, 0.2);
}
.main-features-area.main-features-2 .item-single .icon.bg-green {
  background-color: rgba(76, 174, 79, 0.2);
}
.main-features-area.main-features-2 .item-single .icon.bg-red {
  background-color: rgba(236, 64, 122, 0.2);
}
.main-features-area.main-features-2 .item-single .icon.bg-yellow {
  background-color: rgba(255, 196, 0, 0.2);
}
.main-features-area.main-features-3 .item-single {
  padding: 40px 30px;
  border-radius: 8px;
  background-color: rgb(255, 255, 255);
  box-shadow: 0px 10px 32px 0px rgba(97, 78, 249, 0.12);
}
.main-features-area.main-features-3 .item-single .icon {
  font-size: 65px;
  color: var(--color-accent);
}
.main-features-area.main-features-3 .divider .icon {
  color: var(--color-accent);
}

/* -----------------------------------------
  	Services CSS
----------------------------------------- */
.services-area .section-title {
  text-align: left;
  margin-bottom: 0;
}
.services-area .section-title p {
  margin-bottom: 25px;
}
.services-area .item-single {
  padding: 30px;
  border-radius: 5px;
  background-color: #ffffff;
  box-shadow: 0px 10px 40px 0px rgba(78, 76, 76, 0.1);
}
.services-area .item-single .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  line-height: 80px;
  border-radius: 50%;
  margin-bottom: 25px;
  font-size: 32px;
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.35);
}
.services-area .item-single h3 {
  color: #ffffff;
  margin-bottom: 18px;
}
.services-area .item-single p {
  color: #ffffff;
}
.services-area .item-single.bg-green {
  background-color: #0ebdca;
}
.services-area .item-single.bg-blue {
  background-color: #1f8ded;
}
.services-area .item-single.bg-red {
  background-color: #f94673;
}
.services-area .item-single.bg-purple {
  background-color: var(--color-accent);
}
.services-area.services-2 .item-single .icon {
  width: auto;
  height: auto;
}
.services-area.services-2 .item-single h3 {
  color: #132150;
}
.services-area.services-2 .item-single p {
  color: var(--text-soft);
}

/* -----------------------------------------
  	Overview CSS
----------------------------------------- */
.overview-area {
  position: relative;
  overflow: hidden;
  margin-top: -230px;
}
@media (min-width: 1200px) {
  .overview-area .content {
    padding-left: 20px;
  }
}
.overview-area .section-title {
  text-align: left;
  max-width: 575px;
  margin-left: 0;
}
.overview-area .section-title p {
  margin-top: 25px;
  margin-bottom: 40px;
}
@media (min-width: 1200) {
  .overview-area .section-title p {
    max-width: 540px;
  }
}
.overview-area .image {
  box-shadow: 0px 10px 30px 0px rgba(78, 76, 76, 0.2);
}
.overview-area.overview-2 {
  background-color: #1f2549;
}
.overview-area.overview-2 .section-title p {
  color: #a7add2;
}
.overview-area.overview-3 {
  padding-top: 650px;
  padding-bottom: 170px;
  margin-top: -530px;
  margin-bottom: -80px;
  background: none;
  background-size: contain;
  background-position: left center;
}
.overview-area.overview-four {
  background: #070f40;
  background: var(--color-deep);
}

/* -----------------------------------------
  	Fun-fact CSS
----------------------------------------- */
.fun-fact-area {
  position: relative;
}
.fun-fact-area .item-single h3 {
  font-size: 68px;
  margin-bottom: 0;
  line-height: 1;
}
.fun-fact-area.fun-fact-2 {
  transform: translateY(-320px);
  margin-bottom: -120px;
}
@media only screen and (min-width: 1701px) and (max-width: 1800px) {
  .fun-fact-area.fun-fact-2 {
    margin-bottom: -250px;
  }
}

/* -----------------------------------------
  	Pricing CSS
----------------------------------------- */
.pricing-area {
  position: relative;
  overflow: hidden;
  background-color: var(--color-accent-100);
}
.pricing-area .item-single {
  position: relative;
  overflow: hidden;
  text-align: center;
  padding: 40px 30px;
  border-radius: 15px;
  background-color: #ffffff;
  transition: 0.3s;
  z-index: 1;
}
.pricing-area .item-single::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.5s ease-out;
  z-index: -1;
}
.pricing-area .item-single .content {
  margin-bottom: 18px;
}
.pricing-area .item-single .content .label {
  font-weight: 600;
}
.pricing-area .item-single .content .price {
  color: var(--color-accent);
  font-size: 56px;
  font-weight: 800;
  line-height: 1.2;
}
.pricing-area .item-single .content span {
  color: #132150;
  font-weight: 500;
}
.pricing-area .item-single .content .slash {
  font-size: 34px;
}
.pricing-area .item-single .item-list {
  margin-bottom: 30px;
}
.pricing-area .item-single .item-list li {
  margin-bottom: 10px;
}
.pricing-area .item-single .item-list li:last-child {
  margin: 0;
}
.pricing-area .item-single .primary-btn {
  padding: 10px 40px;
}
.pricing-area .item-single:hover {
  transform: translateY(-3px);
}
.pricing-area .item-single:hover::after {
  opacity: 1;
}
.pricing-area.pricing-2 {
  background: none;
}
.pricing-area.pricing-2 .section-title .title {
  color: #132150;
}
.pricing-area.pricing-2 .section-title p {
  color: var(--text-soft);
}
.pricing-area.pricing-2 .item-single {
  background-color: #fbfbfb;
  border: 1px solid #e4e4e4;
}
.pricing-area.pricing-2 .item-single::after {
  background-color: var(--color-accent);
  background: var(--color-accent);
}
.pricing-area.pricing-2 .item-single:hover {
  border: none;
}
.pricing-area.pricing-2 .item-single:hover .primary-btn {
  color: #473ce6;
  background: #ffffff;
}
.pricing-area.pricing-2 .item-single:hover .primary-btn:hover {
  color: #473ce6;
  background: #ffffff;
}
.pricing-area.pricing-2 .item-single:hover .primary-btn:hover::after {
  content: none;
}
.pricing-area.pricing-2 .item-single:hover .content .label {
  color: #ffffff;
}
.pricing-area.pricing-2 .item-single:hover .content .price {
  color: #ffffff;
}
.pricing-area.pricing-2 .item-single:hover .content span {
  color: #ffffff;
}
.pricing-area.pricing-2 .item-single:hover .item-list li {
  color: #ffffff;
}
.pricing-area.pricing-3 {
  background: #1f2549;
}
.pricing-area.pricing-3 .section-title p {
  color: #a7add2;
}
.pricing-area.pricing-3 .item-single::after {
  background-color: var(--color-accent);
  background: var(--color-accent);
}
.pricing-area.pricing-3 .item-single:hover .primary-btn {
  color: #473ce6;
  background: #ffffff;
}
.pricing-area.pricing-3 .item-single:hover .primary-btn:hover {
  color: #473ce6;
  background: #ffffff;
}
.pricing-area.pricing-3 .item-single:hover .primary-btn:hover::after {
  content: none;
}
.pricing-area.pricing-3 .item-single:hover .content .label {
  color: #ffffff;
}
.pricing-area.pricing-3 .item-single:hover .content .price {
  color: #ffffff;
}
.pricing-area.pricing-3 .item-single:hover .content span {
  color: #ffffff;
}
.pricing-area.pricing-3 .item-single:hover .item-list li {
  color: #ffffff;
}
.pricing-area.pricing-4 .item-single::after {
  background: #112253;
  background: var(--color-accent);
}
.pricing-area.pricing-4, .pricing-area.pricing-5 {
  background: none;
}
.pricing-area.pricing-4 .section-title .title, .pricing-area.pricing-5 .section-title .title {
  color: #132150;
}
.pricing-area.pricing-4 .section-title p, .pricing-area.pricing-5 .section-title p {
  color: var(--text-soft);
}
.pricing-area.pricing-4 .item-single, .pricing-area.pricing-5 .item-single {
  background-color: #fbfbfb;
  border: 1px solid #e4e4e4;
}
.pricing-area.pricing-4 .item-single:hover, .pricing-area.pricing-5 .item-single:hover {
  border: none;
}
.pricing-area.pricing-4 .item-single:hover .primary-btn, .pricing-area.pricing-5 .item-single:hover .primary-btn {
  color: #473ce6;
  background: #ffffff;
}
.pricing-area.pricing-4 .item-single:hover .primary-btn:hover, .pricing-area.pricing-5 .item-single:hover .primary-btn:hover {
  color: #473ce6;
  background: #ffffff;
}
.pricing-area.pricing-4 .item-single:hover .primary-btn:hover::after, .pricing-area.pricing-5 .item-single:hover .primary-btn:hover::after {
  content: none;
}
.pricing-area.pricing-4 .item-single:hover .content .label, .pricing-area.pricing-5 .item-single:hover .content .label {
  color: #ffffff;
}
.pricing-area.pricing-4 .item-single:hover .content .price, .pricing-area.pricing-5 .item-single:hover .content .price {
  color: #ffffff;
}
.pricing-area.pricing-4 .item-single:hover .content span, .pricing-area.pricing-5 .item-single:hover .content span {
  color: #ffffff;
}
.pricing-area.pricing-4 .item-single:hover .item-list li, .pricing-area.pricing-5 .item-single:hover .item-list li {
  color: #ffffff;
}
.pricing-area.pricing-5 .item-single::after {
  background: #070f40;
  background: var(--color-accent);
}

/* -----------------------------------------
  	Pricing Plan CSS
----------------------------------------- */
.pricing-plan-area {
  position: relative;
  background-color: #f9fafe;
}
.pricing-plan-area .section-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.pricing-plan-area .section-top .section-title {
  text-align: left;
  max-width: 100%;
  flex: 0 0 auto;
  width: 40%;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  margin-bottom: 30px;
}
.pricing-plan-area .nav-tabs-navigation {
  margin-bottom: 30px;
}
.pricing-plan-area .nav-tabs-navigation .nav {
  border: 2px solid rgba(0, 213, 120, 0.3);
  padding: 4px;
  border-radius: 40px;
}
.pricing-plan-area .nav-tabs-navigation .nav .nav-link {
  color: #8c929d;
  font-weight: 600;
  border-radius: 40px;
  padding: 12px 35px;
  border-color: transparent;
  cursor: pointer;
}
.pricing-plan-area .nav-tabs-navigation .nav .nav-link.active {
  color: #ffffff !important;
  background-color: #2dca73;
  border: 1px solid #2dca73;
}
.pricing-plan-area .item-single {
  overflow: hidden;
  text-align: center;
  padding: 40px 30px;
  border: 4px solid rgba(0, 213, 120, 0.1);
  background-color: #ffffff;
}
.pricing-plan-area .item-single .image {
  margin-bottom: 30px;
}
.pricing-plan-area .item-single .label {
  display: block;
  color: #2dca73;
  font-weight: 600;
  text-transform: uppercase;
}
.pricing-plan-area .item-single .price {
  color: #132150;
  font-size: 56px;
  font-weight: 800;
  line-height: 1.2;
}
.pricing-plan-area .item-single .type {
  font-size: 22px;
  color: #8c929d;
  font-weight: 500;
  text-transform: uppercase;
}
.pricing-plan-area .item-single .item-list {
  margin-top: 22px;
  margin-bottom: 30px;
}
.pricing-plan-area .item-single .item-list li {
  margin-bottom: 10px;
}
.pricing-plan-area .item-single .item-list li:last-child {
  margin: 0;
}
.pricing-plan-area .item-single .primary-btn {
  color: #2dca73;
  background-color: #e1ffee;
  border: 2px solid #2dca73;
}
.pricing-plan-area .item-single:hover .primary-btn {
  color: #ffffff;
  background-color: #2dca73;
}
.pricing-plan-area.pricing-plan-2 {
  background-color: #f6fffe;
}
.pricing-plan-area.pricing-plan-2 .item-single {
  padding: 0;
  border-radius: 10px;
  border: 4px solid rgba(15, 216, 208, 0.1);
}
.pricing-plan-area.pricing-plan-2 .item-single .top-content {
  position: relative;
  overflow: hidden;
  z-index: 1;
  padding: 50px 20px;
  border-radius: 0 0 10px 10px;
  background-color: #0fd8d0;
}
.pricing-plan-area.pricing-plan-2 .item-single .top-content .bg-shape {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.2);
  z-index: -1;
}
.pricing-plan-area.pricing-plan-2 .item-single .top-content .bg-shape.shape-1 {
  width: 220px;
  height: 220px;
}
.pricing-plan-area.pricing-plan-2 .item-single .top-content .bg-shape.shape-2 {
  width: 180px;
  height: 180px;
}
.pricing-plan-area.pricing-plan-2 .item-single .top-content .bg-shape.shape-3 {
  width: 140px;
  height: 140px;
}
.pricing-plan-area.pricing-plan-2 .item-single .top-content .image img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.pricing-plan-area.pricing-plan-2 .item-single .label {
  display: block;
  text-transform: uppercase;
  font-weight: 600;
}
.pricing-plan-area.pricing-plan-2 .item-single .content {
  padding: 40px 30px;
}
.pricing-plan-area.pricing-plan-2 .item-single .content .price {
  color: #0fd8d0;
  font-size: 44px;
  margin: 20px 0;
}
.pricing-plan-area.pricing-plan-2 .item-single .content .primary-btn {
  color: #0fd8d0;
  background-color: #e3fffe;
  border: none;
}
.pricing-plan-area.pricing-plan-2 .item-single:hover .primary-btn {
  color: #ffffff;
  background-color: #0fd8d0;
}
.pricing-plan-area.pricing-plan-2 .section-bottom a {
  color: #0fd8d0;
}
.pricing-plan-area.pricing-plan-2 .tab-switch .text {
  font-size: 18px;
  color: var(--text-soft);
  text-transform: uppercase;
}
.pricing-plan-area.pricing-plan-2 .tab-switch-toggle {
  position: relative;
  display: inline-block;
  width: 70px;
  height: 30px;
  margin: 0 10px;
}
.pricing-plan-area.pricing-plan-2 .tab-switch-toggle input {
  opacity: 0;
  width: 0;
  height: 0;
}
.pricing-plan-area.pricing-plan-2 .tab-pane {
  -webkit-animation: none;
          animation: none;
}
.pricing-plan-area.pricing-plan-2 .tab-pane.active {
  -webkit-animation: slideUp 0.3s ease-out 1;
          animation: slideUp 0.3s ease-out 1;
}
.pricing-plan-area.pricing-plan-3 {
  background-color: #ffffff;
}
.pricing-plan-area.pricing-plan-3 .item-single .primary-btn {
  color: #ffffff;
  background-color: #2dca73;
  border: none;
}
.pricing-plan-area.pricing-plan-4 .item-single {
  border: none;
  box-shadow: 0px 10px 32px 0px rgba(97, 78, 249, 0.12);
}
.pricing-plan-area.pricing-plan-4 .item-single .label {
  color: #132150;
  font-weight: 700;
  text-transform: capitalize;
}
.pricing-plan-area.pricing-plan-4 .item-single .price {
  color: var(--color-accent);
  font-size: 38px;
}
.pricing-plan-area.pricing-plan-4 .item-single .item-list {
  margin: 30px 0 30px 0;
  padding: 30px 0 30px 0;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-left: 0;
  border-right: 0;
}
.pricing-plan-area.pricing-plan-4 .item-single .item-list li {
  margin-bottom: 10px;
}
.pricing-plan-area.pricing-plan-4 .item-single .item-list li:last-child {
  margin: 0;
}
.pricing-plan-area.pricing-plan-4 .item-single .primary-btn {
  color: var(--color-accent);
  background-color: #ffffff;
  border: 1px solid var(--color-accent);
  box-shadow: 0px 11px 20px 0px rgba(97, 78, 249, 0.26);
}
.pricing-plan-area.pricing-plan-4 .item-single:hover .primary-btn {
  color: #ffffff;
  background-color: var(--color-accent);
}
.pricing-plan-area.pricing-plan-4 .item-single:hover .primary-btn:hover {
  color: var(--color-accent);
  background-color: #ffffff;
}
.pricing-plan-area.pricing-plan-5 .nav-tabs-navigation .nav {
  border-color: var(--color-accent);
}
.pricing-plan-area.pricing-plan-5 .nav-tabs-navigation .nav .nav-link.active {
  background-color: var(--color-accent);
  border: 1px solid var(--color-accent);
}
.pricing-plan-area.pricing-plan-5 .item-single {
  border: none;
  border-radius: 10px;
  box-shadow: 0px 10px 32px 0px rgba(97, 78, 249, 0.12);
}
.pricing-plan-area.pricing-plan-5 .item-single .label {
  color: var(--color-accent);
}
.pricing-plan-area.pricing-plan-5 .item-single .primary-btn {
  color: var(--color-accent);
  background-color: #e8f8ff;
  border: 2px solid var(--color-accent);
}
.pricing-plan-area.pricing-plan-5 .item-single .primary-btn:hover::after {
  content: none;
}
.pricing-plan-area.pricing-plan-5 .item-single:hover .primary-btn {
  color: #ffffff;
  background-color: var(--color-accent);
}

/* -----------------------------------------
	Testimonial CSS
----------------------------------------- */
.testimonial-area .slider-item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 40px;
}
.testimonial-area .slider-item .image {
  overflow: hidden;
  flex: 100px 0 0;
  max-width: 100px;
  border-radius: 15px;
}
.testimonial-area .slider-item .content {
  -webkit-padding-start: 20px;
          padding-inline-start: 20px;
}
.testimonial-area .slider-item .content .text {
  color: #132150;
  font-size: 18px;
  font-weight: 700;
  font-style: italic;
  margin-bottom: 30px;
}
.testimonial-area .slider-item .content .review {
  font-size: 10px;
}
.testimonial-area .slider-item .content .review i {
  -webkit-margin-end: 3px;
          margin-inline-end: 3px;
}
.testimonial-area .slider-item .content .name {
  font-size: 18px;
  margin-bottom: 0;
}
.testimonial-area.testimonial-2 .owl-carousel .owl-dots .owl-dot.active {
  background: var(--color-accent);
}
.testimonial-area.testimonial-3 {
  background-color: #1f2549;
}
.testimonial-area.testimonial-3 .slider-item .content .text {
  color: #a7add2;
}
.testimonial-area.testimonial-3 .owl-carousel .owl-dots .owl-dot.active {
  background: var(--color-accent);
}
.testimonial-area.testimonial-4 {
  position: relative;
  overflow-y: visible;
}
.testimonial-area.testimonial-4 .bg-image {
  position: absolute;
  top: -33.3333333333%;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.testimonial-area.testimonial-4 .bg-image img {
  display: block;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}
.testimonial-area.testimonial-4 .owl-carousel .owl-dots .owl-dot.active {
  background: #112253;
  background: var(--color-accent);
}
.testimonial-area.testimonial-5 {
  overflow-y: visible;
  background-color: #ecf4ff;
}
.testimonial-area.testimonial-5 .owl-carousel .owl-dots .owl-dot.active {
  background: #070f40;
  background: var(--color-accent);
}

/* -----------------------------------------
	Feedback CSS
----------------------------------------- */
.feedback-area {
  position: relative;
  overflow: hidden;
}
.feedback-area .section-title .icon {
  background-color: #ff3af8;
  box-shadow: 0px 11px 18px 0px rgba(255, 58, 248, 0.39);
}
.feedback-area .slider-item .slider-item-inner {
  position: relative;
  padding: 40px;
  background-color: #ffffff;
  box-shadow: 0px 5px 30px 0px rgba(78, 76, 76, 0.1);
}
.feedback-area .slider-item .slider-item-inner .quote {
  position: absolute;
  top: 35px;
  right: 40px;
  font-size: 36px;
  color: #2dca73;
  opacity: 0.4;
}
.feedback-area .slider-item .slider-item-inner h3 {
  margin-bottom: 18px;
}
.feedback-area .slider-item .slider-item-inner p {
  margin-bottom: 20px;
}
.feedback-area .slider-item .slider-item-inner .client {
  display: flex;
  align-items: center;
}
.feedback-area .slider-item .slider-item-inner .image {
  overflow: hidden;
  flex: 70px 0 0;
  max-width: 70px;
  border-radius: 50%;
}
.feedback-area .slider-item .slider-item-inner .content {
  -webkit-padding-start: 20px;
          padding-inline-start: 20px;
}
.feedback-area .slider-item .slider-item-inner .content h5 {
  margin-bottom: 2px;
}
.feedback-area .slider-item .slider-item-inner .content .designation {
  color: #8c929d;
  font-size: 14px;
  font-style: italic;
}
.feedback-area .owl-carousel .owl-stage-outer {
  overflow: visible;
}
.feedback-area .custom-owl-nav {
  margin-bottom: 10px;
}
.feedback-area .custom-owl-nav button[class*=owl-] {
  color: #d5d5d5;
  padding: 0;
  border: none;
  background-color: transparent;
  -webkit-margin-start: 20px;
          margin-inline-start: 20px;
  transition: 0.5s;
  font-size: 52px;
  line-height: 1;
}
.feedback-area .custom-owl-nav button[class*=owl-]:hover {
  color: #2dca73;
}
.feedback-area .custom-owl-nav button[class*=owl-]:first-child {
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}
.feedback-area.feedback-2 {
  background: none;
  background-size: cover;
}
.feedback-area.feedback-2 .slider-item .slider-item-inner {
  padding: 0;
  background-color: transparent;
  box-shadow: none;
}
.feedback-area.feedback-2 .slider-item .slider-item-inner .content {
  padding: 40px;
  padding-bottom: 94px;
  border: 6px solid rgba(255, 255, 255, 0.35);
}
.feedback-area.feedback-2 .slider-item .slider-item-inner .content .text {
  font-size: 20px;
  font-style: italic;
  line-height: 1.667;
}
.feedback-area.feedback-2 .slider-item .slider-item-inner .content .text, .feedback-area.feedback-2 .slider-item .slider-item-inner .content h5, .feedback-area.feedback-2 .slider-item .slider-item-inner .content .designation {
  color: #ffffff;
}
.feedback-area.feedback-2 .slider-item .slider-item-inner .image {
  margin: auto;
  margin-top: -60px;
  max-width: 120px;
  border: 6px solid rgba(255, 255, 255, 0.35);
  z-index: 1;
}
.feedback-area.feedback-2 .owl-carousel .owl-stage-outer {
  overflow: hidden;
}
.feedback-area.feedback-3 {
  background-color: #f9fafe;
}
.feedback-area.feedback-4 {
  background-color: #f9fafe;
}
.feedback-area.feedback-4 .slider-item .slider-item-inner {
  background-color: transparent;
  box-shadow: none;
  text-align: center;
  padding: 0;
}
.feedback-area.feedback-4 .slider-item .slider-item-inner .content {
  padding: 40px;
  padding-bottom: 94px;
  box-shadow: 0px 5px 32px -5px rgba(97, 78, 249, 0.12);
  background-color: #ffffff;
}
.feedback-area.feedback-4 .slider-item .slider-item-inner .content .text {
  font-size: 20px;
  color: #8c929d;
  line-height: 1.8;
  text-align: center;
}
.feedback-area.feedback-4 .slider-item .slider-item-inner .content .designation {
  font-style: normal;
}
.feedback-area.feedback-4 .slider-item .slider-item-inner .image {
  margin: auto;
  margin-top: -60px;
  max-width: 110px;
  border: 6px solid #ffffff;
  z-index: 1;
}
.feedback-area.feedback-4 .slider-item .slider-item-inner .quote {
  top: 50px;
  left: 50%;
  right: unset;
  transform: translate(-50%, 0);
  font-size: 72px;
  color: rgb(196, 189, 255);
  opacity: 0.369;
}
.feedback-area.feedback-4 .owl-carousel .owl-stage-outer {
  overflow: hidden;
}
.feedback-area.feedback-4 .custom-owl-nav {
  margin-bottom: 30px;
}
.feedback-area.feedback-4 .custom-owl-nav button[class*=owl-] {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  font-size: 20px;
  line-height: 40px;
  color: #233d63;
  background-color: #d5d0ff;
}
.feedback-area.feedback-4 .custom-owl-nav button[class*=owl-]:hover {
  color: #ffffff;
  background-color: var(--color-accent);
}
.feedback-area .section-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.feedback-area .section-top .section-title {
  text-align: left;
  max-width: 100%;
  flex: 0 0 auto;
  width: 40%;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  margin-bottom: 30px;
}

/* -----------------------------------------
	Sponsor CSS
----------------------------------------- */
.sponsor {
  position: relative;
}
.sponsor .image {
  display: block;
  max-width: 220px;
  transition: 0.3s;
  margin-left: auto;
  margin-right: auto;
  cursor: pointer;
}
.sponsor .image img {
  display: block;
}
.sponsor .image:hover {
  opacity: 1;
}
.sponsor .bg-shape {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  max-width: 32%;
  transform: translateY(-28%);
}

/* -----------------------------------------
	CTA CSS
----------------------------------------- */
.cta-area {
  position: relative;
  z-index: 1;
}
.cta-area .section-title {
  max-width: 540px;
}
.cta-area .section-title .title {
  margin-bottom: 20px;
}
.cta-area .image {
  box-shadow: 0px 10px 30px 0px rgba(78, 76, 76, 0.2);
}
.cta-area.cta-2 {
  background-color: #ecf4ff;
}
.cta-area.cta-3 {
  background: #112253;
  background: var(--color-deep);
}
.cta-area.cta-4 {
  background: #070f40;
  background: var(--color-deep);
}

/* -----------------------------------------
	Video CSS
----------------------------------------- */
.video-area {
  position: relative;
  z-index: 1;
}
.video-area .image {
  position: relative;
  overflow: hidden;
  border-radius: 15px;
  box-shadow: 0px 10px 30px 0px rgba(78, 76, 76, 0.2);
}
.video-area .image::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #1f2549;
  opacity: 0.4;
  z-index: 1;
}
.video-area .video-btn i {
  color: var(--color-accent);
}

/* -----------------------------------------
	Blog CSS
----------------------------------------- */
.blog-area {
  position: relative;
  z-index: 2;
}
.blog-area .section-gap {
  padding-top: 322px;
  padding-bottom: 90px;
}
.blog-area.blog-with-shape {
  margin-top: -400px;
}
.blog-area.blog-with-shape::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: none;
  background-size: cover;
  z-index: -1;
}
.blog-area .item-single {
  overflow: hidden;
  background: #ffffff;
  border-radius: 5px;
  box-shadow: 0px 0px 25px 0px rgba(78, 76, 76, 0.2);
  transition: 0.3s;
}
.blog-area .item-single .content {
  position: relative;
  padding: 30px;
}
.blog-area .item-single .content .info-list {
  padding: 0;
  margin: 0;
  font-size: 15px;
  margin-bottom: 20px;
  text-transform: capitalize;
  line-height: 1;
}
.blog-area .item-single .content .info-list li {
  display: inline-block;
  -webkit-margin-end: 20px;
          margin-inline-end: 20px;
  color: #a5a5a5;
}
.blog-area .item-single .content .info-list li:last-child {
  -webkit-margin-end: 0;
          margin-inline-end: 0;
}
.blog-area .item-single .content .info-list li i {
  -webkit-margin-end: 8px;
          margin-inline-end: 8px;
  color: var(--color-accent);
}
.blog-area .item-single .content .title {
  margin-bottom: 0;
}
.blog-area .item-single .content .title a:hover {
  color: var(--color-accent);
}
.blog-area .item-single:hover {
  box-shadow: 0 2px 2px rgba(78, 76, 76, 0.02), 0 31px 33px rgba(78, 76, 76, 0.1);
}
.blog-area.blog-2 {
  margin-top: -100px;
  background-color: #ffffff;
}
.blog-area.blog-with-sidebar .item-single {
  border: 1px solid #dddddd;
  box-shadow: none;
}
.blog-area.blog-with-sidebar .item-single .image {
  position: relative;
}
.blog-area.blog-with-sidebar .item-single .image .primary-btn {
  position: absolute;
  bottom: 5%;
  right: 5%;
}
.blog-area.blog-with-sidebar .item-single .content {
  padding: 30px 40px;
}
.blog-area.blog-with-sidebar .item-single .content p {
  margin-top: 18px;
  margin-bottom: 20px;
}

/* -----------------------------------------
	Faq CSS
----------------------------------------- */
.faq-area {
  position: relative;
}
.faq-area .section-title {
  text-align: left;
}
.faq-area .accordion-item {
  border: none;
  margin-bottom: 30px;
  overflow: hidden;
}
.faq-area .accordion-item .accordion-header .accordion-button {
  color: var(--color-text);
  font-weight: 700;
  padding: 0 0 20px 0;
  border: none;
  border-bottom: 1px solid var(--color-divider);
  background-color: transparent;
  box-shadow: none;
}
.faq-area .accordion-item .accordion-header .accordion-button::after {
  background: none;
  font-family: "Font Awesome 5 Pro" !important;
  content: "\f107";
  font-size: 20px;
  transform: none;
  text-align: right;
}
.faq-area .accordion-item .accordion-header .accordion-button:not(.collapsed) {
  color: var(--color-accent);
}
.faq-area .accordion-item .accordion-header .accordion-button:not(.collapsed)::after {
  content: "\f106";
}
.faq-area .accordion-item h3 .accordion-button {
  font-size: 22px;
  font-weight: 600;
}
.faq-area .accordion-item .accordion-body {
  position: relative;
  padding: 16px 0 0 0;
}
.faq-area .accordion-item .accordion-body p {
  color: var(--text-soft);
  margin: 0;
}
.faq-area.faq-2 {
  background-color: #1f2549;
}
.faq-area.faq-2 .accordion-item {
  background-color: transparent;
}
.faq-area.faq-2 .accordion-item .accordion-header .accordion-button {
  color: #ffffff;
}
.faq-area.faq-2 .accordion-item .accordion-header .accordion-button:not(.collapsed) {
  color: var(--color-accent);
}
.faq-area.faq-2 .accordion-item .accordion-body p {
  color: #a7add2;
}
.faq-area.faq-3, .faq-area.faq-4 {
  background-color: #f9fafe;
}
.faq-area.faq-3 .accordion-item, .faq-area.faq-4 .accordion-item {
  padding: 20px 25px;
  border-radius: 30px;
  background-color: #ffffff;
  box-shadow: 0px 5px 30px 0px rgba(78, 76, 76, 0.1);
}
.faq-area.faq-3 .accordion-item .accordion-header .accordion-button, .faq-area.faq-4 .accordion-item .accordion-header .accordion-button {
  padding: 0;
  border: none;
}
.faq-area.faq-3 .accordion-item .accordion-header .accordion-button::after, .faq-area.faq-4 .accordion-item .accordion-header .accordion-button::after {
  font-size: 14px;
  font-family: "Font Awesome 5 Pro" !important;
  content: "\f067";
}
.faq-area.faq-3 .accordion-item .accordion-header .accordion-button:not(.collapsed), .faq-area.faq-4 .accordion-item .accordion-header .accordion-button:not(.collapsed) {
  color: var(--color-accent);
}
.faq-area.faq-3 .accordion-item .accordion-header .accordion-button:not(.collapsed)::after, .faq-area.faq-4 .accordion-item .accordion-header .accordion-button:not(.collapsed)::after {
  color: var(--color-accent);
  content: "\f068";
}
.faq-area.faq-3 .accordion-item .accordion-body, .faq-area.faq-4 .accordion-item .accordion-body {
  padding-top: 10px;
}
.faq-area.faq-4 {
  background-color: #ffffff;
}
.faq-area.faq-4 .accordion-item {
  border-radius: 5px;
}
.faq-area.faq-4 .accordion-item .accordion-header .accordion-button:not(.collapsed) {
  color: #0fd8d0;
}
.faq-area.faq-4 .accordion-item .accordion-header .accordion-button:not(.collapsed)::after {
  color: #0fd8d0;
}

/* -----------------------------------------
	Contact CSS
----------------------------------------- */
.contact-area {
  position: relative;
  overflow: hidden;
  background: var(--color-accent-100);
  z-index: 1;
}
.contact-area::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: none;
  z-index: -1;
}
.contact-area.contact-2 {
  background-color: var(--color-accent);
  background: var(--color-deep);
}
.contact-area.contact-2 .primary-btn {
  color: #132150;
  background: #ffffff;
}
.contact-area.contact-3 {
  background: var(--color-deep);
}
.contact-area.contact-4 {
  background: #112253;
  background: var(--color-deep);
}
.contact-area.contact-5 {
  background: #070f40;
  background: var(--color-deep);
}
.contact-area.contact-6 {
  background: #ffffff;
}
.contact-area.contact-6::before {
  content: none;
}
.contact-area.contact-6 .item-single {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 20px;
  box-shadow: 0px 10px 40px 0px rgba(78, 76, 76, 0.1);
}
.contact-area.contact-6 .item-single .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  border-radius: 5px;
  font-size: 24px;
  color: #ffffff;
  background-color: var(--color-accent);
}
.contact-area.contact-6 .item-single .text {
  -webkit-padding-start: 16px;
          padding-inline-start: 16px;
}
.contact-area.contact-6 .item-single .text P {
  margin-bottom: 0;
}
.contact-area.contact-6 .form-group :-ms-input-placeholder,
.contact-area.contact-6 .input-group :-ms-input-placeholder {
  color: var(--text-soft);
}
.contact-area.contact-6 .form-group ::-moz-placeholder, .contact-area.contact-6 .input-group ::-moz-placeholder {
  color: var(--text-soft);
}
.contact-area.contact-6 .form-group :-ms-input-placeholder, .contact-area.contact-6 .input-group :-ms-input-placeholder {
  color: var(--text-soft);
}
.contact-area.contact-6 .form-group ::placeholder,
.contact-area.contact-6 .input-group ::placeholder {
  color: var(--text-soft);
}
.contact-area.contact-6 .form-group .form-control,
.contact-area.contact-6 .input-group .form-control {
  background-color: transparent;
  padding: 20px;
  border-radius: 5px;
  color: var(--text-soft);
}
.contact-area iframe {
  width: 100%;
  height: 330px;
}
.contact-area .form-group :-ms-input-placeholder,
.contact-area .input-group :-ms-input-placeholder {
  color: var(--color-text);
}
.contact-area .form-group ::-moz-placeholder, .contact-area .input-group ::-moz-placeholder {
  color: var(--color-text);
}
.contact-area .form-group :-ms-input-placeholder, .contact-area .input-group :-ms-input-placeholder {
  color: var(--color-text);
}
.contact-area .form-group ::placeholder,
.contact-area .input-group ::placeholder {
  color: var(--color-text);
}
.contact-area .form-group .form-control,
.contact-area .input-group .form-control {
  background-color: transparent;
  padding: 20px;
  border-radius: 5px;
  color: var(--color-text);
}

/* -----------------------------------------
	Promo CSS
----------------------------------------- */
.promo-area {
  position: relative;
  overflow: hidden;
}

/* -----------------------------------------
	Footer CSS
----------------------------------------- */
.footer-area .footer-widget {
  margin-bottom: 30px;
}
.footer-area .footer-widget ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.footer-area .footer-widget .navbar-brand {
  margin-bottom: 20px;
  padding: 0;
}
.footer-area .footer-widget h3 {
  text-transform: capitalize;
  margin-bottom: 25px;
}
.footer-area .footer-widget p {
  color: var(--text-soft);
  margin-bottom: 10px;
}
.footer-area .footer-widget .social-link a {
  display: inline-block;
  text-align: center;
  width: 40px;
  height: 40px;
  line-height: 40px;
  border-radius: 50%;
  -webkit-margin-end: 10px;
          margin-inline-end: 10px;
  border: 1px solid #d6d6d6;
  color: #d6d6d6;
}
.footer-area .footer-widget .social-link a:last-child {
  margin: 0;
}
.footer-area .footer-widget .social-link a:hover {
  color: #ffffff;
  background-color: #614ef9;
  box-shadow: 0px 4px 8px 0px rgba(97, 78, 249, 0.47);
}
.footer-area .footer-widget .copy-right {
  font-size: 13px;
  color: #73757c;
}
.footer-area .footer-widget .footer-links li {
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
  line-height: 1;
  transition: 0.3s;
}
.footer-area .footer-widget .footer-links li i {
  position: absolute;
  top: 50%;
  left: -20px;
  margin-top: -1px;
  transform: translateY(-50%);
  transition: 0.3s;
}
.footer-area .footer-widget .footer-links li a {
  color: var(--text-soft);
}
.footer-area .footer-widget .footer-links li a:hover {
  color: var(--color-accent);
  padding-left: 10px;
}
.footer-area .footer-widget .footer-links li:hover i {
  left: 0;
  color: var(--color-accent);
}
.footer-area .footer-widget .footer-links li:last-child {
  margin-bottom: 0;
}
.footer-area .copy-right-area {
  padding: 30px 0;
  border-top: 1px solid #e4e4e4;
  color: var(--text-soft);
}
.footer-area.footer-2 {
  background-color: #1f2549;
}
.footer-area.footer-2 .footer-widget h3 {
  color: #ffffff;
}
.footer-area.footer-2 .footer-widget p {
  color: #a7add2;
}
.footer-area.footer-2 .footer-widget .footer-links li:hover i {
  color: #ffffff;
}
.footer-area.footer-2 .footer-widget .footer-links a {
  color: #a7add2;
}
.footer-area.footer-2 .footer-widget .footer-links a:hover {
  color: #ffffff;
}
.footer-area.footer-3 {
  background-color: rgb(248, 250, 255);
}
.footer-area.footer-3 .footer-bottom {
  padding-top: 20px;
  border-top: 1px solid #dddddd;
}
.footer-area.footer-3 .footer-bottom .navbar-brand {
  padding: 0;
  margin-bottom: 20px;
}
.footer-area.footer-3 .footer-bottom ul {
  margin-bottom: 20px;
}
.footer-area.footer-3 .footer-bottom ul li {
  display: inline-block;
  line-height: 1;
}
.footer-area.footer-3 .footer-bottom ul li:not(:last-child) {
  -webkit-margin-end: 15px;
          margin-inline-end: 15px;
}
.footer-area.footer-3 .footer-bottom ul li a:hover {
  color: #132150;
}
.footer-area .navbar-brand {
  margin-right: 0;
}
.footer-area .logo img:first-child, .footer-area .navbar-brand img:first-child {
  display: block;
}
.footer-area .logo img:last-child, .footer-area .navbar-brand img:last-child {
  display: none;
}

/* -----------------------------------------
	Blog Details CSS
----------------------------------------- */
.blog-details-area {
  background: #f9fafe;
}
.blog-details-area .item-single {
  overflow: hidden;
  background: #ffffff;
  border-radius: 5px;
  border: 1px solid #dddddd;
  transition: 0.3s;
}
.blog-details-area .item-single .image {
  position: relative;
  overflow: hidden;
}
.blog-details-area .item-single .image .primary-btn {
  position: absolute;
  bottom: 5%;
  right: 5%;
}
.blog-details-area .item-single .content {
  position: relative;
  padding: 30px;
}
.blog-details-area .item-single .content .info-list {
  padding: 0;
  margin: 0;
  font-size: 15px;
  margin-bottom: 20px;
  text-transform: capitalize;
  line-height: 1;
}
.blog-details-area .item-single .content .info-list li {
  display: inline-block;
  -webkit-margin-end: 20px;
          margin-inline-end: 20px;
  color: #c0c0c0;
}
.blog-details-area .item-single .content .info-list li:last-child {
  -webkit-margin-end: 0;
          margin-inline-end: 0;
}
.blog-details-area .item-single .content .info-list li i {
  -webkit-margin-end: 8px;
          margin-inline-end: 8px;
  color: var(--color-accent);
}
.blog-details-area .item-single .content .title {
  margin-bottom: 25px;
}
.blog-details-area .item-single .content .title a:hover {
  color: var(--color-accent);
}
.blog-details-area .item-single .content p {
  margin-bottom: 30px;
}
.blog-details-area .item-single .content .video-image {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  background: url(../images/blog/video-bg.png) no-repeat;
  background-size: cover;
  padding: 100px 0;
}
.blog-details-area .item-single .content .video-image .video-btn {
  width: 70px;
  height: 70px;
}
.blog-details-area .item-single .content .video-image .video-btn i {
  font-size: 16px;
  color: var(--color-accent);
}
.blog-details-area .item-single .content .blockquote {
  padding: 24px;
  background-color: rgb(249, 249, 249);
  border-radius: 5px;
}
.blog-details-area .item-single .content .blockquote i {
  color: var(--color-accent);
  font-size: 24px;
}
.blog-details-area .item-single .content .blockquote p {
  color: #132150;
  margin-top: 10px;
  margin-bottom: 0;
  font-style: italic;
}
.blog-details-area .comments .comment-list {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.blog-details-area .comments .comment-list .comment .comment-body {
  display: flex;
  margin-bottom: 25px;
}
.blog-details-area .comments .comment-list .comment .comment-body .comment-author {
  -webkit-padding-end: 16px;
          padding-inline-end: 16px;
  max-width: 100px;
}
.blog-details-area .comments .comment-list .comment .comment-body .comment-author .lazy-container {
  border-radius: 50%;
  height: auto;
}
.blog-details-area .comments .comment-list .comment .comment-body .comment-content p {
  margin-bottom: 10px;
}
.blog-details-area .comments .comment-list .comment .comment-body .comment-content .btn-reply {
  color: var(--color-accent);
  display: inline-block;
}
.blog-details-area .comments .comment-list .comment .comment-body .comment-content .btn-reply i {
  -webkit-margin-end: 5px;
          margin-inline-end: 5px;
}
.blog-details-area .comments .comment-list .comment .children {
  list-style-type: none;
  padding: 0;
  -webkit-padding-start: 30px;
          padding-inline-start: 30px;
}
.blog-details-area .comments .comment-list .comment .children .comment-body {
  -webkit-padding-start: 35px;
          padding-inline-start: 35px;
  margin-bottom: 25px;
}
.blog-details-area .comments .comment-list .comment .children .comment-body:last-child {
  margin: 0;
}
.blog-details-area .comments .comment-reply .comment-notes {
  margin-bottom: 25px;
}
.blog-details-area .comments .comment-reply .form-group .form-control {
  border: none;
  background-color: #f8f8f8;
}

/* -----------------------------------------
	Coming Soon CSS
----------------------------------------- */
.coming-soon-area {
  display: flex;
  align-items: center;
  height: 100vh;
  background: none;
  background-size: cover;
}
.coming-soon-area .coming-soon-box {
  max-width: 540px;
  margin: 0 auto;
  padding: 60px 30px;
  border-radius: 15px;
  background-color: #ffffff;
  box-shadow: 0px 0px 29px 0px rgba(102, 102, 102, 0.1);
}
.coming-soon-area .coming-soon-box .title-box {
  text-align: center;
  margin-bottom: 30px;
}
.coming-soon-area .coming-soon-box .title-box .title {
  margin-top: -2px;
  margin-bottom: 10px;
}
.coming-soon-area .coming-soon-box .title-box .text {
  margin-bottom: 0;
}
.coming-soon-area .coming-soon-box #timer {
  margin-bottom: 30px;
}
.coming-soon-area .coming-soon-box #timer .count {
  width: 100px;
  height: 105px;
  border-radius: 5px;
  margin-left: 10px;
  margin-right: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f8faff;
}
.coming-soon-area .coming-soon-box #timer .count .h1 {
  font-weight: 700;
  color: var(--color-accent);
  margin-bottom: 0;
}
.coming-soon-area .coming-soon-box #timer .count span {
  display: block;
  color: #132150;
  font-weight: 600;
  font-size: 17px;
}
.coming-soon-area .coming-soon-box .newsletter-form .input-group {
  border: 2px solid #dddddd;
  box-shadow: 0px 15px 32px 0px rgba(97, 78, 249, 0.08);
  background-color: #ffffff;
}
.coming-soon-area .coming-soon-box .newsletter-form .input-group :-ms-input-placeholder {
  color: #8c929d;
}
.coming-soon-area .coming-soon-box .newsletter-form .input-group ::-moz-placeholder {
  color: #8c929d;
}
.coming-soon-area .coming-soon-box .newsletter-form .input-group ::placeholder {
  color: #8c929d;
}

/* -----------------------------------------
	Error CSS
----------------------------------------- */
.error-area {
  display: flex;
  align-items: center;
  height: 100vh;
}
.error-area .error-content {
  text-align: center;
}
.error-area .error-content img {
  max-width: 70%;
}
.error-area .error-content h3 {
  margin-bottom: 20px;
  font-size: 40px;
}
.error-area .error-content p {
  max-width: 550px;
  margin: auto;
  margin-bottom: 20px;
}

/* -----------------------------------------
	Sidebar Widget CSS
----------------------------------------- */
.sidebar-widget-area .widget {
  position: relative;
  overflow: hidden;
  padding: 40px;
  border-radius: 5px;
  background-color: #ffffff;
  border: 1px solid #dddddd;
}
.sidebar-widget-area .widget .title {
  margin-bottom: 20px;
  margin-top: -4px;
}
.sidebar-widget-area .widget.widget-search .search-form {
  display: flex;
}
.sidebar-widget-area .widget.widget-search .search-form .search-input {
  display: block;
  width: 100%;
  line-height: initial;
  border: none;
  outline: 0;
  padding: 6px 5px 6px 15px;
  transition: 0.3s;
  border: 1px solid #dddddd;
  border-radius: 5px 0 0 5px;
  background: transparent;
}
.sidebar-widget-area .widget.widget-search .search-form .btn-search {
  text-align: center;
  padding: 10px 15px;
  color: #ffffff;
  background-color: var(--color-accent);
  font-size: 18px;
  font-weight: 600;
  box-shadow: none;
  border: 1px solid var(--color-accent);
  border-radius: 0 5px 5px 0;
}
.sidebar-widget-area .widget.widget-social-link ul li {
  font-size: 32px;
  line-height: 1;
}
.sidebar-widget-area .widget.widget-social-link ul li a {
  vertical-align: bottom;
}
.sidebar-widget-area .widget.widget-social-link ul li a.facebook {
  color: #3667ed;
}
.sidebar-widget-area .widget.widget-social-link ul li a.twitter {
  color: #369eff;
}
.sidebar-widget-area .widget.widget-social-link ul li a.google {
  color: #db4a39;
}
.sidebar-widget-area .widget.widget-social-link ul li a.linkedin {
  color: #0e76a8;
}
.sidebar-widget-area .widget.widget-post .article-item {
  display: flex;
  align-items: center;
  flex-direction: row;
  align-items: stretch;
}
.sidebar-widget-area .widget.widget-post .article-item .image {
  flex: 0 0 25%;
  max-width: 25%;
  overflow: hidden;
  border-radius: 5px;
}
.sidebar-widget-area .widget.widget-post .article-item .image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}
.sidebar-widget-area .widget.widget-post .article-item .content {
  flex: 0 0 75%;
  max-width: 75%;
  -webkit-padding-start: 10px;
          padding-inline-start: 10px;
}
.sidebar-widget-area .widget.widget-post .article-item .content h6 {
  margin-bottom: 0;
}
.sidebar-widget-area .widget.widget-post .article-item .content .time {
  color: var(--text-soft);
  font-size: 13px;
}
.sidebar-widget-area .widget.widget-categories ul li {
  color: var(--text-soft);
  margin-bottom: 5px;
}
.sidebar-widget-area .widget.widget-categories ul li:last-child {
  margin: 0;
}
.sidebar-widget-area .widget.widget-categories ul li a {
  color: var(--text-soft);
}
.sidebar-widget-area .widget.widget-categories ul li i {
  color: var(--color-accent);
  -webkit-margin-end: 5px;
          margin-inline-end: 5px;
}
.sidebar-widget-area .widget.widget-tag {
  padding-bottom: 30px;
}
.sidebar-widget-area .widget.widget-tag ul li {
  font-size: 14px;
  padding: 5px 10px;
  border-radius: 5px;
  border: 1px solid #dddddd;
  -webkit-margin-end: 5px;
          margin-inline-end: 5px;
  margin-bottom: 10px;
}
.sidebar-widget-area .widget.widget-adds {
  padding-top: 100px;
  padding-bottom: 100px;
  background: none;
  background-size: cover;
  z-index: 1;
}
.sidebar-widget-area .widget.widget-adds::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-accent);
  z-index: -1;
  opacity: 0.9;
}
.sidebar-widget-area .widget.widget-adds .content {
  z-index: 3;
}
.sidebar-widget-area .widget.widget-adds .content h3 {
  color: #ffffff;
  font-size: 32px;
  margin-bottom: 20px;
}

/* -----------------------------------------
	Newsletter CSS
----------------------------------------- */
.newsletter-area .section-gap {
  padding-top: 50px;
  padding-bottom: 20px;
}
.newsletter-area.newsletter-bg {
  background: #0fd8d0;
  background: var(--color-deep);
  background-position: 0 0, 5px 5px;
  background-size: 10px 10px;
}
.newsletter-area .newsletter-form .input-group {
  background-color: #ffffff;
}
.newsletter-area.newsletter-2.newsletter-bg {
  background: #2dca73;
  background: var(--color-deep);
  background-position: 0 0, 5px 5px;
  background-size: 10px 10px;
}
.newsletter-area.newsletter-3 .newsletter-form .input-group {
  border: 2px solid #dddddd;
  box-shadow: 0px 15px 32px 0px rgba(97, 78, 249, 0.08);
  background-color: #ffffff;
}
.newsletter-area.newsletter-3 .newsletter-form .input-group :-ms-input-placeholder {
  color: #8c929d;
}
.newsletter-area.newsletter-3 .newsletter-form .input-group ::-moz-placeholder {
  color: #8c929d;
}
.newsletter-area.newsletter-3 .newsletter-form .input-group ::placeholder {
  color: #8c929d;
}
.newsletter-area.newsletter-3 .newsletter-form .input-group .form-control {
  background-color: transparent;
  padding: 20px;
  border-radius: 5px;
  color: #8c929d;
}
.newsletter-area.newsletter-3 .newsletter-form .primary-btn-8 {
  color: #ffffff;
  background-color: var(--color-accent);
}

/* -----------------------------------------
	Newsletter Form CSS
----------------------------------------- */
.newsletter-form .input-group {
  flex-wrap: nowrap;
  padding: 3px;
  border-radius: 40px;
  background-color: rgba(255, 255, 255, 0.259);
}
.newsletter-form .input-group .form-control {
  height: auto;
  border: none;
  border-radius: 40px;
  padding: 15px 25px;
  background-color: transparent;
}
.newsletter-form .input-group .primary-btn {
  border-radius: 40px !important;
}
.newsletter-form .input-group .primary-btn:hover {
  transform: none;
}

/* -----------------------------------------
	Page title CSS
----------------------------------------- */
.page-title-area {
  position: relative;
  overflow: hidden;
  z-index: 1;
  padding: 88px 0 96px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-image: var(--surface-hero);
}
.page-title-area ul {
  margin: 0;
}
.page-title-area ul li {
  margin: 0 5px;
  font-weight: 600;
}
.page-title-area ul li.active {
  color: var(--color-accent-700);
}

/* -----------------------------------------
	Pagination CSS
----------------------------------------- */
.pagination {
  padding-top: 20px;
}
.pagination .page-numbers {
  color: #132150;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 42px;
  margin: 0 5px;
  border-radius: 5px;
  border: 1px solid #dddddd;
  transition: 0.3s;
}
.pagination .page-numbers.current, .pagination .page-numbers:hover {
  color: var(--color-accent);
  border-color: var(--color-accent);
  background: color-mix(in srgb, var(--color-accent) 12%, transparent);
}

/* -----------------------------------------
	Video Btn CSS
----------------------------------------- */
.video-btn {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100px;
  height: 100px;
  color: #ffffff;
  background-color: #fff;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  z-index: 3;
}
.video-btn::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-animation: ripple 1500ms ease-out infinite;
          animation: ripple 1500ms ease-out infinite;
  background-color: #ffffff;
  border-radius: 50%;
  z-index: -2;
}
.video-btn::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-animation: ripple 1500ms ease-out infinite;
          animation: ripple 1500ms ease-out infinite;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
  background-color: #ffffff;
  border-radius: 50%;
  z-index: -1;
}
.video-btn i {
  font-size: 24px;
  color: #fff;
}

/* -----------------------------------------
	Section Divider CSS
----------------------------------------- */
.divider {
  position: relative;
  z-index: 9;
}
.divider .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin-left: auto;
  margin-right: auto;
  line-height: 50px;
  border-radius: 50%;
  border: 1px solid #dddddd;
  background-color: #ffffff;
  font-size: 26px;
  box-shadow: 0px 10px 30px 0px rgba(78, 76, 76, 0.2);
}
.divider .line {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  height: 1px;
  transform: translateY(-50%);
  background-color: #dddddd;
  z-index: -1;
}

/* -----------------------------------------
	Custom Owl Button CSS
----------------------------------------- */
.owl-carousel .owl-dots {
  text-align: center;
  line-height: 0;
}
.owl-carousel .owl-dots .owl-dot {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  -webkit-margin-end: 10px;
          margin-inline-end: 10px;
  background: #DDDDDD;
  transition: 0.3s;
  position: relative;
}
.owl-carousel .owl-dots .owl-dot:last-child {
  -webkit-margin-end: 0;
          margin-inline-end: 0;
}
.owl-carousel .owl-dots .owl-dot.active {
  background: var(--color-accent);
}

/* -----------------------------------------
Lazyload CSS
----------------------------------------- */
.lazy-container {
  position: relative;
  overflow: hidden;
  display: table;
  table-layout: fixed;
  width: 100%;
  height: 100%;
  max-width: 100%;
  min-height: auto;
  background-color: #f4f6f8;
}
.lazy-container:before {
  position: absolute;
  content: "\f03e";
  font-family: "Font Awesome 5 Pro";
  top: 50%;
  left: 50%;
  font-size: 30px;
  transform: translate(-50%, -50%);
  color: #c0c0c0;
}
.lazy-container.aspect-ratio::after {
  content: "";
  display: block;
  padding-bottom: 56.25%;
}
.lazy-container.aspect-ratio-1-1::after {
  padding-bottom: 100%;
}
.lazy-container.aspect-ratio-2-3::after {
  padding-bottom: 66.66%;
}
.lazy-container.aspect-ratio-16-9::after {
  padding-bottom: 56.25%;
}
.lazy-container.aspect-ratio-16-11::after {
  padding-bottom: 68.75%;
}
.lazy-container.aspect-ratio-5-3::after {
  padding-bottom: 60%;
}
.lazy-container.aspect-ratio-5-4::after {
  padding-bottom: 80%;
}
.lazy-container.aspect-ratio-4-3::after {
  padding-bottom: 75%;
}
.lazy-container img {
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  max-width: 100%;
}
.lazy-container img.lazy-image {
  opacity: 0.02;
  transition: opacity 0.5s;
}
.lazy-container img.lazyloaded {
  opacity: 1;
}

.blur-up {
  filter: blur(2px);
  transition: filter 400ms;
}

.lazyloaded.blur-up {
  filter: blur(0);
}

/* -----------------------------------------
  	Animation CSS
----------------------------------------- */
@-webkit-keyframes loader {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes loader {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes slideUp {
  0% {
    opacity: 0;
    transform: translateY(10%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideUp {
  0% {
    opacity: 0;
    transform: translateY(10%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10%);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10%);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes rotate {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes rotate {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes moveAround {
  0% {
    transform: translate(0px, 0px) rotate(0deg);
  }
  20% {
    transform: translate(73px, -1px) rotate(36deg);
  }
  40% {
    transform: translate(141px, 72px) rotate(72deg);
  }
  60% {
    transform: translate(83px, 122px) rotate(108deg);
  }
  80% {
    transform: translate(-40px, 72px) rotate(144deg);
  }
  100% {
    transform: translate(0px, 0px) rotate(0deg);
  }
}
@keyframes moveAround {
  0% {
    transform: translate(0px, 0px) rotate(0deg);
  }
  20% {
    transform: translate(73px, -1px) rotate(36deg);
  }
  40% {
    transform: translate(141px, 72px) rotate(72deg);
  }
  60% {
    transform: translate(83px, 122px) rotate(108deg);
  }
  80% {
    transform: translate(-40px, 72px) rotate(144deg);
  }
  100% {
    transform: translate(0px, 0px) rotate(0deg);
  }
}
@-webkit-keyframes moveUpDown {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-20px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes moveUpDown {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-20px);
  }
  100% {
    transform: translateY(0);
  }
}
@-webkit-keyframes moveLeftRight {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-20px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes moveLeftRight {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-20px);
  }
  100% {
    transform: translateX(0);
  }
}
@-webkit-keyframes ripple {
  0% {
    opacity: 0.25;
  }
  100% {
    opacity: 0;
    transform: scale(2);
  }
}
@keyframes ripple {
  0% {
    opacity: 0.25;
  }
  100% {
    opacity: 0;
    transform: scale(2);
  }
}
@-webkit-keyframes shakeY {
  from {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -15px, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
@keyframes shakeY {
  from {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -15px, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}

/* -----------------------------------------
  Legacy sections, 2026 redesign
  Heroes, pricing, contact and features are tinted, not dark,
  so the template's white utility text becomes navy inside them.
----------------------------------------- */
.home-banner-area .text-white,
.page-title-area .text-white,
.pricing-area .text-white,
.contact-area .text-white,
.features-area .text-white,
.cta-area.bg-primary,
.cta-area.bg-primary .text-white {
  color: var(--color-text) !important;
}
.home-banner-area p.text-white,
.home-banner-area .text.text-white {
  color: var(--text-soft) !important;
}
.pricing-area .text-white-50 {
  color: var(--text-muted) !important;
}
.cta-area.bg-primary {
  background-color: var(--color-accent-100) !important;
}
.home-banner-area .shape,
.home-banner-area .bg-shape,
.page-title-area .shape {
  display: none;
}

/* -----------------------------------------
  Site chrome, 2026 redesign
  Announcement bar, header with Solutions/Platforms dropdowns, footer.
  Behaviour lives in assets/js/site-nav.js.
----------------------------------------- */
.st-wrap {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--page-gutter);
  padding-right: var(--page-gutter);
}

/* Tags */
.st-tag {
  display: inline-flex;
  align-items: center;
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: 0.02em;
  padding: 2px 9px;
  border-radius: 3px;
  white-space: nowrap;
}
.st-tag-new {
  color: var(--color-accent-2-800);
  background: var(--color-accent-2-100);
}
.st-tag-new-outline {
  color: var(--color-accent-2-700);
  border: 1px solid var(--color-accent-2);
}

/* Logo lockup */
.st-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: none;
  white-space: nowrap;
  text-decoration: none;
  color: var(--color-text);
}
.st-logo:hover {
  color: var(--color-text);
}
.st-logo img {
  display: block;
  width: 30px;
  height: 30px;
}
.st-logo-word {
  font-family: var(--font-heading);
  font-weight: 650;
  font-size: 26px;
  letter-spacing: -0.025em;
  line-height: 1;
}
.st-logo-product {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 26px;
  letter-spacing: -0.01em;
  line-height: 1;
}
.st-logo-product::before {
  content: "";
  width: 1px;
  height: 1.05em;
  background: currentColor;
  opacity: 0.35;
}

/* Announcement bar */
.st-announce {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 6px 12px;
  padding: 10px var(--page-gutter);
  font-size: 14px;
  line-height: 1.4;
  text-align: center;
  color: #ffffff;
  background: var(--color-deep);
}
.st-announce a {
  color: var(--color-accent-300);
  text-decoration: underline;
}
.st-announce a:hover {
  color: #ffffff;
}

/* Header */
.st-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: var(--color-accent-100);
}
.st-nav {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  min-height: 72px;
}
.st-nav-menu {
  display: flex;
  align-items: center;
  flex: 1;
  gap: var(--space-4);
}
.st-nav-links {
  display: flex;
  align-items: center;
  gap: 4px;
  margin: 0 0 0 var(--space-4);
  padding: 0;
  list-style: none;
}
.st-nav-links > li {
  position: relative;
}
.st-nav-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font: inherit;
  font-size: 15px;
  line-height: 1.2;
  color: var(--color-text);
  background: none;
  border: 0;
  border-radius: var(--radius-md);
  cursor: pointer;
  white-space: nowrap;
}
.st-nav-link:hover,
.st-nav-link[aria-current="page"],
.st-dropdown.is-open > .st-nav-link {
  color: var(--color-accent);
}
.st-nav-link > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.st-caret {
  width: 6px;
  height: 6px;
  margin-top: -3px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
}
.st-dropdown.is-open .st-caret {
  margin-top: 3px;
  transform: rotate(-135deg);
}
.st-nav-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-left: auto;
}
.st-nav-actions .btn {
  white-space: nowrap;
}
.st-nav-toggle {
  display: none;
}

/* Dropdowns */
.st-dropdown-menu {
  display: none;
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  z-index: 1001;
  background: var(--color-bg);
  border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
}
/* Keeps the menu open while the pointer crosses the gap under the toggle */
.st-dropdown-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -11px;
  height: 11px;
}
.st-dropdown.is-open > .st-dropdown-menu {
  display: block;
}
.st-dropdown.is-open > .st-mega {
  display: grid;
}
.st-mega {
  width: 380px;
  grid-template-columns: 1fr;
}
.st-mega-col {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 28px;
}
.st-mega-col + .st-mega-col {
  border-left: 1px solid var(--color-divider);
}
.st-mega-col .st-label {
  font-size: 12px;
  margin-bottom: 6px;
}
.st-mega-item {
  display: block;
  margin: 0 -10px;
  padding: 6px 10px;
  border-radius: var(--radius-md);
  text-decoration: none;
  color: var(--color-text);
}
.st-mega-item:hover {
  color: var(--color-text);
  background: color-mix(in srgb, var(--color-accent) 7%, transparent);
}
.st-mega-title {
  display: block;
  font-family: var(--font-heading);
  font-weight: var(--font-heading-weight);
  font-size: 20px;
  line-height: 1.25;
}
.st-mega-item:hover .st-mega-title {
  color: var(--color-accent);
}
.st-mega-desc {
  display: block;
  font-size: 13px;
  color: var(--text-muted);
}
.st-list-menu {
  min-width: 200px;
  margin: 0;
  padding: 8px;
  list-style: none;
}
.st-list-menu a {
  display: block;
  padding: 7px 10px;
  border-radius: var(--radius-md);
  font-size: 15px;
  color: var(--color-text);
  text-decoration: none;
}
.st-list-menu a:hover {
  color: var(--color-accent);
  background: color-mix(in srgb, var(--color-accent) 7%, transparent);
}

/* Footer */
.st-footer {
  padding: 48px 0;
  font-size: 14px;
  line-height: 1.9;
  color: rgba(255, 255, 255, 0.85);
  background: var(--color-deep);
}
.st-footer-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr 1fr;
  gap: 40px;
}
.st-footer .st-logo,
.st-footer .st-logo:hover {
  gap: 9px;
  margin-bottom: 8px;
  color: #ffffff;
}
.st-footer .st-logo img {
  width: 26px;
  height: 26px;
}
.st-footer .st-logo-word {
  font-size: 22px;
}
.st-footer-copy {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6);
}
.st-footer-heading {
  margin: 0;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.9;
  letter-spacing: var(--tracking-label);
  text-transform: uppercase;
  color: var(--color-accent-300);
}
.st-footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.st-footer a {
  color: rgba(255, 255, 255, 0.85);
}
.st-footer a:hover {
  color: #ffffff;
  text-decoration: underline;
}
.st-footer :focus-visible {
  outline-color: var(--color-accent-300) !important;
}

/* Below 1200px the nav collapses behind a toggle. Solutions shows its two
   labelled groups (For retailers / For distributors) inline; Platforms expands. */
@media (max-width: 1199.98px) {
  .st-nav {
    flex-wrap: wrap;
    min-height: 64px;
    gap: 0;
  }
  .st-nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin-left: auto;
    margin-right: -10px;
    padding: 0;
    background: none;
    border: 0;
    border-radius: var(--radius-md);
    color: var(--color-text);
    cursor: pointer;
  }
  .st-nav-toggle-bar,
  .st-nav-toggle-bar::before,
  .st-nav-toggle-bar::after {
    display: block;
    width: 22px;
    height: 2px;
    background: currentColor;
    border-radius: 1px;
  }
  .st-nav-toggle-bar {
    position: relative;
  }
  .st-nav-toggle-bar::before,
  .st-nav-toggle-bar::after {
    content: "";
    position: absolute;
    left: 0;
  }
  .st-nav-toggle-bar::before {
    top: -7px;
  }
  .st-nav-toggle-bar::after {
    top: 7px;
  }
  .st-header.is-menu-open .st-nav-toggle-bar {
    background: transparent;
  }
  .st-header.is-menu-open .st-nav-toggle-bar::before {
    top: 0;
    transform: rotate(45deg);
  }
  .st-header.is-menu-open .st-nav-toggle-bar::after {
    top: 0;
    transform: rotate(-45deg);
  }
  .st-nav-menu {
    display: none;
    flex: 0 0 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    max-height: calc(100vh - 64px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 8px 0 24px;
    border-top: 1px solid var(--color-divider);
  }
  .st-header.is-menu-open .st-nav-menu {
    display: flex;
  }
  .st-nav-links {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    margin: 0;
  }
  .st-nav-links > li {
    border-bottom: 1px solid var(--color-divider);
  }
  .st-nav-link {
    width: 100%;
    justify-content: space-between;
    padding: 14px 0;
    font-size: 17px;
  }
  .st-dropdown-menu,
  .st-dropdown.is-open > .st-dropdown-menu {
    position: static;
    width: auto;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
  }
  .st-dropdown-menu::before {
    content: none;
  }
  .st-dropdown-solutions > .st-dropdown-toggle {
    display: none;
  }
  .st-dropdown-solutions > .st-mega {
    display: grid;
    grid-template-columns: 1fr;
  }
  .st-mega-col {
    padding: 16px 0;
  }
  .st-mega-col + .st-mega-col {
    border-left: 0;
    border-top: 1px solid var(--color-divider);
  }
  .st-list-menu {
    padding: 0 0 12px;
  }
  .st-list-menu a {
    padding: 8px 12px;
  }
  .st-nav-actions {
    margin: 20px 0 0;
  }
  .st-footer-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .st-footer-brand {
    grid-column: 1 / -1;
  }
}

@media (max-width: 767.98px) {
  :root {
    --page-gutter: 20px;
  }
  .st-announce {
    font-size: 13px;
  }
  .st-footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 32px 24px;
  }
}

/* -----------------------------------------
  Page components, 2026 redesign
  Shared page components (design handoff options 4a and 1d).
----------------------------------------- */
.st-page {
  font-size: var(--type-body);
  line-height: 1.65;
}
.st-page p {
  color: var(--text-soft);
}
.st-display {
  margin: 0;
  font-size: var(--type-display);
  line-height: 1.05;
  letter-spacing: -0.01em;
}
.st-h2 {
  margin: 0;
  font-size: 44px;
  line-height: 1.1;
}
.st-h2-sm {
  margin: 0;
  font-size: 40px;
  line-height: 1.1;
}
.st-h3 {
  margin: 0;
  font-size: 30px;
  line-height: 1.1;
}
.st-h4 {
  margin: 0;
  font-size: 24px;
  line-height: 1.15;
}
.st-stack {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.st-stack-lg {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.st-stack > *,
.st-stack-lg > * {
  margin: 0;
}
.st-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}
.st-note {
  font-size: var(--type-small);
  color: color-mix(in srgb, var(--color-text) 70%, transparent);
}
:where(.st-page) a:where(:not(.btn)) {
  text-decoration: underline;
}

/* Sections */
.st-section {
  padding: 64px 0;
}
.st-section-ruled > .st-wrap > .st-inner {
  padding-top: 64px;
  border-top: 1px solid var(--color-divider);
}
.st-section-ruled {
  padding-top: 0;
}
.st-section-tint {
  padding: var(--section-pad-y) 0;
  background: var(--color-accent-100);
}
.st-section-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px 24px;
  margin-bottom: 28px;
}
.st-section-head .st-note {
  font-size: 14px;
}

/* Hero */
.st-hero {
  padding: 88px 0;
  background: var(--surface-hero);
}
.st-split {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 5fr);
  gap: 64px;
  align-items: center;
}
.st-split-reverse {
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
}
.st-split-aside {
  grid-template-columns: minmax(0, 4fr) minmax(0, 7fr);
  align-items: start;
}

/* Framed screenshot */
.st-plate {
  margin: 0;
  overflow: hidden;
  background: var(--color-bg);
  border: 6px solid var(--color-surface);
  outline: 1px solid var(--color-divider);
}
.st-plate img {
  display: block;
  width: 100%;
  height: auto;
}
.st-plate-raised {
  box-shadow: var(--shadow-md);
}

/* "Integrates with" row */
.st-logo-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px 24px;
  margin: 0;
  padding: 24px 0;
  list-style: none;
  border-top: 1px solid var(--color-divider);
  border-bottom: 1px solid var(--color-divider);
}
.st-logo-row li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-heading);
  font-size: 16px;
  color: var(--color-text);
}
.st-logo-row img {
  width: auto;
  height: 22px;
}
/* The label sits on its own line so the logos get the full width */
.st-logo-row .st-label {
  flex-basis: 100%;
}
.st-page .st-logo-row a {
  color: inherit;
  text-decoration: none;
}
.st-page .st-logo-row a:hover {
  color: var(--color-accent);
}

/* Columns separated by hairlines */
.st-cols {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40px;
}
.st-cols > * + * {
  padding-left: 40px;
  border-left: 1px solid var(--color-divider);
}
.st-cols-label {
  margin-bottom: 24px;
}

/* Cards: bordered, unfilled */
.st-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 28px;
  border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
  background: transparent;
}
.st-card > * {
  margin: 0;
}
.st-card-featured {
  border-color: var(--color-accent);
  background: var(--color-accent-100);
}
.st-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

/* Dark band (never next to another dark section) */
.st-band {
  padding: var(--section-pad-y) 0;
  color: #ffffff;
  background-color: var(--color-deep);
  background-image: var(--surface-dark-glow);
}
.st-band-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr) auto;
  gap: 48px;
  align-items: center;
}
.st-band .st-label {
  color: var(--text-label-on-dark);
}
.st-band h2 {
  color: #ffffff;
}
.st-page .st-band p {
  color: var(--text-on-dark-muted);
}
.st-band :focus-visible {
  outline-color: var(--color-accent-300) !important;
}

/* Testimonials */
.st-quote {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0;
}
.st-quote blockquote {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 22px;
  line-height: 1.35;
  color: var(--color-text);
}
.st-quote figcaption {
  font-size: 14px;
  color: color-mix(in srgb, var(--color-text) 70%, transparent);
}

/* Pricing cards */
.st-price-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
}
.st-price-card {
  padding: 22px;
  gap: 12px;
}
.st-price-card .st-label {
  font-size: 12px;
}
.st-price {
  font-family: var(--font-heading);
  font-size: 40px;
  line-height: 1;
  color: var(--color-text);
  font-feature-settings: "tnum" 1;
}
.st-price small {
  font-family: var(--font-body);
  font-size: 13px;
}
.st-price-alt {
  font-family: var(--font-heading);
  font-size: 30px;
  line-height: 1.33;
  color: var(--color-text);
}
.st-price-list {
  flex: 1;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 13px;
  line-height: 1.8;
  color: var(--color-text);
}
.st-price-card .btn {
  margin-top: 4px;
}

/* Forms */
.st-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.st-field-full {
  grid-column: 1 / -1;
}
.st-field > label,
.st-field > .st-field-label {
  display: block;
  margin-bottom: 5px;
  font-size: 12px;
  color: color-mix(in srgb, var(--color-text) 70%, transparent);
}
.st-input {
  width: 100%;
  min-height: 40px;
  padding: 8px 12px;
  font: inherit;
  font-size: 15px;
  color: var(--color-text);
  caret-color: var(--color-accent);
  background: transparent;
  border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
}
.st-input:hover {
  border-color: color-mix(in srgb, var(--color-text) 45%, transparent);
}
.st-input:focus-visible {
  border-color: var(--color-accent);
  outline-offset: 0;
}
textarea.st-input {
  min-height: 120px;
  resize: vertical;
}
.st-seg {
  display: inline-flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
  overflow: hidden;
}
.st-seg legend {
  float: left;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
.st-seg-opt {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  font-size: 14px;
  color: var(--color-text);
  cursor: pointer;
}
.st-seg-opt + .st-seg-opt {
  border-left: 1px solid var(--color-divider);
}
.st-seg-opt input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}
.st-seg-opt:has(input:checked) {
  color: var(--color-accent);
  box-shadow: inset 0 0 0 1px var(--color-accent);
}
.st-seg-opt:not(:has(input:checked)):hover {
  background: color-mix(in srgb, var(--color-text) 7%, transparent);
}
.st-seg-opt:has(input:focus-visible) {
  outline: 2px solid var(--color-accent);
  outline-offset: -2px;
}
.st-form-status {
  font-size: 14px;
}

/* Responsive */
@media (max-width: 1199.98px) {
  .st-price-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  /* Once the logos wrap, keep them left-aligned instead of spread to the edges */
  .st-logo-row {
    justify-content: flex-start;
    gap: 16px 32px;
  }
  .st-logo-row .st-label {
    flex-basis: 100%;
  }
}
@media (max-width: 991.98px) {
  .st-hero {
    padding: 56px 0 64px;
  }
  .st-display {
    font-size: 48px;
  }
  .st-h2 {
    font-size: 36px;
  }
  .st-h2-sm {
    font-size: 32px;
  }
  .st-split,
  .st-split-reverse,
  .st-split-aside,
  .st-band-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }
  .st-split-reverse > .st-plate {
    order: 2;
  }
  .st-cols {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }
  .st-cols > * + * {
    padding-left: 0;
    padding-top: 28px;
    border-left: 0;
    border-top: 1px solid var(--color-divider);
  }
  .st-grid-3 {
    grid-template-columns: minmax(0, 1fr);
  }
  .st-band-grid > .btn {
    justify-self: start;
  }
}
@media (max-width: 767.98px) {
  .st-section {
    padding: 48px 0;
  }
  .st-section-ruled {
    padding-top: 0;
  }
  .st-section-ruled > .st-wrap > .st-inner {
    padding-top: 48px;
  }
  .st-display {
    font-size: 40px;
  }
  .st-h2,
  .st-h2-sm {
    font-size: 30px;
  }
  .st-h3 {
    font-size: 26px;
  }
  .st-price-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .st-form {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 479.98px) {
  .st-price-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* -----------------------------------------
  Product pages (design handoff option 1d)
----------------------------------------- */
.st-tag-outline {
  align-self: flex-start;
  color: var(--color-accent);
  border: 1px solid var(--color-accent);
}
.st-nav-aside {
  font-size: 13px;
  white-space: nowrap;
}
.st-hero-text {
  max-width: 780px;
}
.st-connect-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 40px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.st-connect-list li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  padding: 16px 0;
  border-bottom: 1px solid var(--color-divider);
}
.st-connect-list strong {
  font-family: var(--font-heading);
  font-size: 22px;
  font-weight: 400;
  color: var(--color-text);
}
.st-connect-list span {
  font-size: 15px;
  text-align: right;
  color: color-mix(in srgb, var(--color-text) 65%, transparent);
}
.st-plan-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.st-plan {
  padding: 32px;
  gap: 16px;
}
.st-plan .st-price {
  font-size: 52px;
}
.st-plan .st-price small {
  font-size: 15px;
}
.st-plan-list {
  flex: 1;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 14px;
  line-height: 1.5;
  color: var(--color-text);
}
.st-plan-list li {
  padding: 8px 0;
  border-bottom: 1px solid var(--color-divider);
}
.st-plan-list li:last-child {
  border-bottom: 0;
}
.st-faq {
  margin: 0;
}
.st-faq > div {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 20px 0;
  border-bottom: 1px solid var(--color-divider);
}
.st-faq > div:first-child {
  padding-top: 0;
}
.st-faq dt {
  font-family: var(--font-heading);
  font-size: 22px;
  font-weight: var(--font-heading-weight);
  line-height: 1.25;
  color: var(--color-text);
}
.st-faq dd {
  margin: 0;
  color: var(--text-soft);
}
.st-close > .st-wrap > .st-inner {
  border-top-color: var(--color-accent);
}
.st-steps {
  counter-reset: st-step;
  margin: 0;
  padding: 0;
  list-style: none;
}
.st-steps li {
  counter-increment: st-step;
  position: relative;
  padding: 18px 0 18px 56px;
  border-bottom: 1px solid var(--color-divider);
}
.st-steps li::before {
  content: counter(st-step, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 18px;
  font-family: var(--font-heading);
  font-size: 22px;
  line-height: 1.25;
  color: var(--color-accent);
  font-feature-settings: "tnum" 1;
}
.st-steps strong {
  display: block;
  font-family: var(--font-heading);
  font-size: 22px;
  font-weight: var(--font-heading-weight);
  line-height: 1.25;
  color: var(--color-text);
}

@media (max-width: 1199.98px) {
  .st-nav-aside {
    order: 2;
    margin-top: 12px;
  }
}
@media (max-width: 991.98px) {
  .st-plan-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 767.98px) {
  .st-connect-list {
    grid-template-columns: minmax(0, 1fr);
  }
  .st-plan .st-price {
    font-size: 44px;
  }
}
.st-page [id] {
  scroll-margin-top: 88px;
}
.st-connect-list-single {
  grid-template-columns: minmax(0, 1fr);
}
.st-connect-list a {
  text-decoration: none;
}
.st-connect-list a:hover {
  text-decoration: underline;
}
.st-grid-4 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}
.st-card .st-card-link {
  margin-top: auto;
}
@media (max-width: 1199.98px) {
  .st-grid-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  .st-grid-4 {
    grid-template-columns: minmax(0, 1fr);
  }
}
.st-hero-img {
  margin: 0;
}
.st-hero-img img {
  display: block;
  width: 100%;
  height: auto;
}

/* Comparison table (pricing). Scrolls inside its own box on narrow screens. */
.st-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
}
.st-table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  font-size: 14px;
  color: var(--color-text);
}
.st-table th,
.st-table td {
  padding: 14px 16px;
  text-align: center;
  vertical-align: middle;
  border-bottom: 1px solid var(--color-divider);
}
.st-table tbody tr:last-child td {
  border-bottom: 0;
}
.st-table thead th {
  font-family: var(--font-heading);
  font-size: 17px;
  font-weight: var(--font-heading-weight);
  vertical-align: bottom;
}
.st-table th[scope="row"] {
  position: sticky;
  left: 0;
  z-index: 1;
  text-align: left;
  font-weight: 400;
  color: var(--text-soft);
  background: var(--color-bg);
}
.st-table .st-featured {
  background: var(--color-accent-100);
}
.st-table .st-label {
  font-size: 11px;
  margin-bottom: 4px;
}
.st-table .st-price {
  font-size: 30px;
}
.st-table ul {
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: 1.7;
}
.st-table .btn {
  white-space: nowrap;
}
.st-table th[scope="row"] {
  min-width: 170px;
  white-space: nowrap;
}
.st-table tbody tr:last-child th {
  border-bottom: 0;
}
.st-card
/* Long-form text: legal pages and blog posts */
.st-prose {
  max-width: 72ch;
  font-size: 16px;
  line-height: 1.7;
  color: var(--text-soft);
}
.st-prose > * + * {
  margin-top: 1em;
}
.st-prose h2,
.st-prose h3,
.st-prose h4 {
  margin-top: 2em;
  margin-bottom: 0;
  color: var(--color-text);
}
.st-prose h2 {
  font-size: 30px;
}
.st-prose h3 {
  font-size: 22px;
}
.st-prose h4 {
  font-size: 18px;
}
.st-prose ul,
.st-prose ol {
  padding-left: 1.25em;
}
.st-prose li + li {
  margin-top: 0.35em;
}
.st-prose a {
  text-decoration: underline;
}
.st-prose img {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius-md);
}

/* -----------------------------------------
  Blog posts, 2026 redesign
  The articles keep their own markup; this restyles it to match the site.
----------------------------------------- */
.blog-details-area {
  background: var(--color-bg);
}
.blog-details-area .item-single {
  background: transparent;
  border: 0;
  border-radius: 0;
}
.blog-details-area .item-single .image img {
  border-radius: var(--radius-md);
}
.blog-details-area .item-single > .content {
  max-width: 760px;
  margin: 0 auto;
  padding: 32px 0 0;
}
.blog-details-area .content p,
.blog-details-area .content li {
  font-size: 16px;
  line-height: 1.7;
  color: var(--text-soft);
}
.blog-details-area .content h2 {
  margin-top: 1.6em;
  font-size: 32px;
}
.blog-details-area .content h3 {
  margin-top: 1.6em;
  font-size: 26px;
}
.blog-details-area .content h4,
.blog-details-area .content h5 {
  margin-top: 1.4em;
  font-size: 20px;
}
.blog-details-area .content a:not(.btn) {
  text-decoration: underline;
}
.blog-details-area .item-single .content .info-list li {
  color: var(--text-muted);
}
.blog-details-area .shadow-sm {
  box-shadow: none !important;
}
.blog-details-area .card,
.blog-details-area .list-group-item {
  background: transparent;
  border-color: var(--color-divider);
  border-radius: var(--radius-md);
}
.blog-details-area .alert-info {
  color: var(--color-text);
  background: var(--color-accent-100);
  border-color: var(--color-accent-200);
}
.blog-details-area .alert-warning {
  color: var(--color-text);
  background: var(--color-accent-2-100);
  border-color: var(--color-accent-2-200);
}
.blog-details-area .badge.bg-secondary {
  color: var(--color-accent-800);
  background: var(--color-accent-100) !important;
  font-weight: 400;
}
.blog-details-area .accordion-item {
  background: transparent;
  border-color: var(--color-divider);
}
.blog-details-area .accordion-button {
  color: var(--color-text);
  background: transparent;
  box-shadow: none;
}
.blog-details-area .accordion-button:not(.collapsed) {
  color: var(--color-accent);
  background: var(--color-accent-100);
}
.blog-details-area pre,
.blog-details-area code {
  background: var(--color-neutral-100);
  border-radius: var(--radius-sm);
}

/* Blog index cards */
.st-post-card {
  padding: 0;
  overflow: hidden;
}
.st-post-card img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}
.st-post-card .st-post-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 22px 24px 26px;
}
.st-post-card .st-post-body > * {
  margin: 0;
}
.st-post-meta {
  font-size: 13px;
  color: var(--text-muted);
}
.st-post-card h2 a {
  color: var(--color-text);
  text-decoration: none;
}
.st-post-card h2 a:hover {
  color: var(--color-accent);
}
.st-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
@media (max-width: 767.98px) {
  .st-grid-2 {
    grid-template-columns: minmax(0, 1fr);
  }
}
.st-supplier-card {
  gap: 4px;
  padding: 20px 22px;
  text-decoration: none;
  color: var(--color-text);
}
.st-supplier-card:hover {
  color: var(--color-text);
  border-color: var(--color-accent);
  background: color-mix(in srgb, var(--color-accent) 5%, transparent);
}
.st-supplier-card:hover .st-h4 {
  color: var(--color-accent);
}
.blog-details-area.pt-120 {
  padding-top: 40px;
}
.st-card h3 a {
  color: var(--color-text);
  text-decoration: none;
}
.st-card h3 a:hover {
  color: var(--color-accent);
  text-decoration: underline;
}

/* reCAPTCHA v3: the badge is hidden (it would sit on top of the chat button),
   so Google's required notice is shown under each form instead. */
.grecaptcha-badge {
  visibility: hidden;
}
.st-recaptcha-note {
  margin-top: 12px;
  font-size: 12px;
  color: var(--text-muted);
}

/* Compact comparison table (portal pages): fewer columns, left-aligned text */
.st-table-compact {
  min-width: 640px;
}
.st-table-compact th,
.st-table-compact td {
  text-align: left;
  vertical-align: top;
}
.st-table-compact th[scope="row"] {
  white-space: normal;
}

/* OrderfrontIQ wordmark: "IQ" in indigo, light indigo on dark backgrounds (logo kit) */
.st-logo-iq {
  color: var(--color-accent);
}
.st-footer .st-logo-iq {
  color: var(--color-accent-300);
}
