/* Template: Tivo - SaaS App HTML Landing Page Template
   Author: Inovatik
   Created: Sep 2019
   Description: Master CSS file
*/

/*****************************************
Table Of Contents:

01. General Styles
02. Preloader
03. Navigation
04. Header
05. Customers
06. Description
07. Features
08. Features Lightboxes
09. Details
10. Video
11. Pricing
12. Testimonials
13. Newsletter
14. Footer
15. Copyright
16. Back To Top Button
17. Extra Pages
18. Sign Up and Log In Pages
19. Media Queries
******************************************/

/*****************************************
Colors:
- Backgrounds, buttons, bullets, icons - blue #5f4dee
- Backgrounds, light button, light body text - light gray #f3f7fd
- Headings text - black #333
- Body text - dark gray #555
******************************************/


/******************************/
/*     01. General Styles     */
/******************************/
body,
html {
    width: 100%;
    height: 100%;
}

body, p {
    color: #555;
    font: 400 1rem/1.625rem "Open Sans", sans-serif;;
}

.p-large {
    font: 400 1.125rem/1.75rem "Open Sans", sans-serif;
}

.p-small {
    font: 400 0.875rem/1.5rem "Open Sans", sans-serif;
}

h1 {
    color: #333;
    font: 700 2.5rem/3.125rem "Open Sans", sans-serif;
    letter-spacing: -0.2px;
}

h2 {
    color: #333;
    font: 700 2rem/2.625rem "Open Sans", sans-serif;
    letter-spacing: -0.2px;
}

h3 {
    color: #333;
    font: 700 1.625rem/2.125rem "Open Sans", sans-serif;
    letter-spacing: -0.2px;
}

h4 {
    color: #333;
    font: 700 1.375rem/1.75rem "Open Sans", sans-serif;
    letter-spacing: -0.1px;
}

h5 {
    color: #333;
    font: 700 1.125rem/1.5rem "Open Sans", sans-serif;
    letter-spacing: -0.1px;
}

h6 {
    color: #333;
    font: 700 1rem/1.375rem "Open Sans", sans-serif;
    letter-spacing: -0.1px;
}

.h1-above-heading {
    color: #5f4dee !important;
}

.above-heading {
    color: #5f4dee;
    font: 700 0.75rem/0.875rem "Open Sans", sans-serif;
    text-align: center;
    font-size: large;
}

.p-heading {
    margin-bottom: 3.25rem;
}

.testimonial-text {
    font: italic 400 1rem/1.625rem "Open Sans", sans-serif;
}

.testimonial-author {
    font: 700 1rem/1.625rem "Open Sans", sans-serif;
    letter-spacing: -0.1px;
}

.li-space-lg li {
    margin-bottom: 0.375rem;
}

.indent {
    padding-left: 1.25rem;
}

a {
    color: #555;
    text-decoration: underline;
}

a:hover {
    color: #555;
    text-decoration: underline;
}

a.white {
    color: #fff;
}

.decorative-line {
    display: block;
    width: 5rem;
    height: 0.5rem;
    margin-right: auto;
    margin-left: auto;
}

.blue {
    color: #5f4dee;
}

.btn-solid-reg {
    display: inline-block;
    padding: 1.1875rem 2.125rem 1.1875rem 2.125rem;
    border: 0.125rem solid #5f4dee;
    border-radius: 2rem;
    background-color: #5f4dee;
    color: #fff;
    font: 700 0.875rem/0 "Open Sans", sans-serif;
    text-decoration: none;
    transition: all 0.2s;
    /*white-space: nowrap;*/
}

.btn-solid-reg:hover {
    background-color: transparent;
    color: #5f4dee;
    text-decoration: none;
}

.btn-solid-lg {
    line-height: 1.2 !important;
    display: inline-block;
    padding: 1.375rem 2.625rem 1.375rem 2.625rem;
    border: 0.125rem solid #5f4dee;
    border-radius: 2rem;
    background-color: #5f4dee;
    color: #fff;
    font: 700 0.875rem/0 "Open Sans", sans-serif;
    text-decoration: none;
    transition: all 0.2s;
}

.btn-solid-lg:hover {
    background-color: transparent;
    color: #5f4dee;
    text-decoration: none;
}

.btn-outline-reg {
    display: inline-block;
    padding: 1.1875rem 2.125rem 1.1875rem 2.125rem;
    border: 0.125rem solid #5f4dee;
    border-radius: 2rem;
    background-color: transparent;
    color: #5f4dee;
    font: 700 0.875rem/0 "Open Sans", sans-serif;
    text-decoration: none;
    transition: all 0.2s;
}

.btn-outline-reg:hover {
    background-color: #5f4dee;
    color: #fff;
    text-decoration: none;
}

.btn-outline-lg {
    display: inline-block;
    padding: 1.375rem 2.625rem 1.375rem 2.625rem;
    border: 0.125rem solid #5f4dee;
    border-radius: 2rem;
    background-color: transparent;
    color: #5f4dee;
    font: 700 0.875rem/0 "Open Sans", sans-serif;
    text-decoration: none;
    transition: all 0.2s;
}

.btn-outline-lg:hover {
    background-color: #5f4dee;
    color: #fff;
    text-decoration: none;
}

.btn-outline-sm {
    display: inline-block;
    padding: 0.875rem 1.5rem 0.875rem 1.5rem;
    border: 0.125rem solid #5f4dee;
    border-radius: 2rem;
    background-color: transparent;
    color: #5f4dee;
    font: 700 0.875rem/0 "Open Sans", sans-serif;
    text-decoration: none;
    transition: all 0.2s;
}

.btn-outline-sm:hover {
    background-color: #5f4dee;
    color: #fff;
    text-decoration: none;
}

.form-group {
    position: relative;
    margin-bottom: 1.25rem;
}

.form-group.has-error.has-danger {
    margin-bottom: 0.625rem;
}

.form-group.has-error.has-danger .help-block.with-errors ul {
    margin-top: 0.375rem;
}

.label-control {
    position: absolute;
    top: 0.87rem;
    left: 1.25rem;
    color: #555;
    opacity: 1;
    font: 400 0.875rem/1.375rem "Open Sans", sans-serif;
    cursor: text;
    transition: all 0.2s ease;
}

/* IE10+ hack to solve lower label text position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .label-control {
        top: 0.9375rem;
    }
}

.form-control-input:focus + .label-control,
.form-control-input.notEmpty + .label-control,
.form-control-textarea:focus + .label-control,
.form-control-textarea.notEmpty + .label-control {
    top: 0.125rem;
    opacity: 1;
    font-size: 0.75rem;
    font-weight: 700;
}

.form-control-input,
.form-control-select {
    display: block; /* needed for proper display of the label in Firefox, IE, Edge */
    width: 100%;
    padding-top: 1.0625rem;
    padding-bottom: 0.0625rem;
    padding-left: 1.25rem;
    border: 1px solid #c4d8dc;
    border-radius: 0.25rem;
    background-color: #fff;
    color: #555;
    font: 400 0.875rem/1.875rem "Open Sans", sans-serif;
    transition: all 0.2s;
    -webkit-appearance: none; /* removes inner shadow on form inputs on ios safari */
}

.form-control-select {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    height: 3rem;
}

/* IE10+ hack to solve lower label text position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .form-control-input {
        padding-top: 1.25rem;
        padding-bottom: 0.75rem;
        line-height: 1.75rem;
    }

    .form-control-select {
        padding-top: 0.875rem;
        padding-bottom: 0.75rem;
        height: 3.125rem;
        line-height: 2.125rem;
    }
}

select {
    /* you should keep these first rules in place to maintain cross-browser behavior */
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
    background-image: url('../images/down-arrow.png');
    background-position: 96% 50%;
    background-repeat: no-repeat;
    outline: none;
}

select::-ms-expand {
    display: none; /* removes the ugly default down arrow on select form field in IE11 */
}

.form-control-textarea {
    display: block; /* used to eliminate a bottom gap difference between Chrome and IE/FF */
    width: 100%;
    height: 8rem; /* used instead of html rows to normalize height between Chrome and IE/FF */
    padding-top: 1.25rem;
    padding-left: 1.3125rem;
    border: 1px solid #c4d8dc;
    border-radius: 0.25rem;
    background-color: #fff;
    color: #555;
    font: 400 0.875rem/1.75rem "Open Sans", sans-serif;
    transition: all 0.2s;
}

.form-control-input:focus,
.form-control-select:focus,
.form-control-textarea:focus {
    border: 1px solid #a1a1a1;
    outline: none; /* Removes blue border on focus */
}

.form-control-input:hover,
.form-control-select:hover,
.form-control-textarea:hover {
    border: 1px solid #a1a1a1;
}

.checkbox {
    font: 400 0.75rem/1.25rem "Open Sans", sans-serif;
}

input[type='checkbox'] {
    vertical-align: -15%;
    margin-right: 0.375rem;
}

/* IE10+ hack to raise checkbox field position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    input[type='checkbox'] {
        vertical-align: -9%;
    }
}

.form-control-submit-button {
    display: inline-block;
    width: 100%;
    height: 3.125rem;
    border: 1px solid #5f4dee;
    border-radius: 1.5rem;
    background-color: #5f4dee;
    color: #fff;
    font: 700 0.875rem/0 "Open Sans", sans-serif;
    cursor: pointer;
    transition: all 0.2s;
}

.form-control-submit-button:hover {
    background-color: transparent;
    color: #5f4dee;
}

/* Make disabled state visually clear and not interactive */
.form-control-submit-button:disabled,
.form-control-submit-button[disabled] {
    background-color: #d6d6d6;
    border-color: #cfcfcf;
    color: #8a8a8a;
    cursor: not-allowed;
    opacity: 1; /* keep consistent sizing */
}

.form-control-submit-button:disabled:hover,
.form-control-submit-button[disabled]:hover {
    /* prevent hover flip when disabled */
    background-color: #d6d6d6;
    color: #8a8a8a;
}

/* Form Success And Error Message Formatting */
#smsgSubmit.h3.text-center.tada.animated,
#lmsgSubmit.h3.text-center.tada.animated,
#nmsgSubmit.h3.text-center.tada.animated,
#pmsgSubmit.h3.text-center.tada.animated,
#smsgSubmit.h3.text-center,
#lmsgSubmit.h3.text-center,
#nmsgSubmit.h3.text-center,
#pmsgSubmit.h3.text-center {
    display: block;
    margin-bottom: 0;
    color: #555;
    font-size: 1.125rem;
    line-height: 1rem;
}

.help-block.with-errors .list-unstyled {
    color: #555;
    font-size: 0.75rem;
    line-height: 1.125rem;
    text-align: left;
}

.help-block.with-errors ul {
    margin-bottom: 0;
}

/* end of form success and error message formatting */

/* Form Success And Error Message Animation - Animate.css */
@-webkit-keyframes tada {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    10%, 20% {
        -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
        -ms-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    }
    30%, 50%, 70%, 90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        -ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }
    40%, 60%, 80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        -ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }
    to {
        -webkit-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@keyframes tada {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    10%, 20% {
        -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
        -ms-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    }
    30%, 50%, 70%, 90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        -ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }
    40%, 60%, 80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        -ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }
    to {
        -webkit-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

.tada {
    -webkit-animation-name: tada;
    animation-name: tada;
}

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

/* end of form success and error message animation - Animate.css */

/* Fade-move Animation For Details Lightbox - Magnific Popup */
/* at start */
.my-mfp-slide-bottom .zoom-anim-dialog {
    opacity: 0;
    transition: all 0.2s ease-out;
    -webkit-transform: translateY(-1.25rem) perspective(37.5rem) rotateX(10deg);
    -ms-transform: translateY(-1.25rem) perspective(37.5rem) rotateX(10deg);
    transform: translateY(-1.25rem) perspective(37.5rem) rotateX(10deg);
}

/* animate in */
.my-mfp-slide-bottom.mfp-ready .zoom-anim-dialog {
    opacity: 1;
    -webkit-transform: translateY(0) perspective(37.5rem) rotateX(0);
    -ms-transform: translateY(0) perspective(37.5rem) rotateX(0);
    transform: translateY(0) perspective(37.5rem) rotateX(0);
}

/* animate out */
.my-mfp-slide-bottom.mfp-removing .zoom-anim-dialog {
    opacity: 0;
    -webkit-transform: translateY(-0.625rem) perspective(37.5rem) rotateX(10deg);
    -ms-transform: translateY(-0.625rem) perspective(37.5rem) rotateX(10deg);
    transform: translateY(-0.625rem) perspective(37.5rem) rotateX(10deg);
}

/* dark overlay, start state */
.my-mfp-slide-bottom.mfp-bg {
    opacity: 0;
    transition: opacity 0.2s ease-out;
}

/* animate in */
.my-mfp-slide-bottom.mfp-ready.mfp-bg {
    opacity: 0.8;
}

/* animate out */
.my-mfp-slide-bottom.mfp-removing.mfp-bg {
    opacity: 0;
}

/* end of fade-move animation for details lightbox - magnific popup */

/* Fade Animation For Image Lightbox - Magnific Popup */
@-webkit-keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.fadeIn {
    -webkit-animation: fadeIn 0.6s;
    animation: fadeIn 0.6s;
}

@-webkit-keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

@keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

.fadeOut {
    -webkit-animation: fadeOut 0.8s;
    animation: fadeOut 0.8s;
}

/* end of fade animation for image lightbox - magnific popup */


/*************************/
/*     02. Preloader     */
/*************************/
.spinner-wrapper {
    position: fixed;
    z-index: 999999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fff;
}

.spinner {
    position: absolute;
    top: 50%; /* centers the loading animation vertically one the screen */
    left: 50%; /* centers the loading animation horizontally one the screen */
    width: 3.75rem;
    height: 1.25rem;
    margin: -0.625rem 0 0 -1.875rem; /* is width and height divided by two */
    text-align: center;
}

.spinner > div {
    display: inline-block;
    width: 1rem;
    height: 1rem;
    border-radius: 100%;
    background-color: #5f4dee;
    -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
    animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
}

.spinner .bounce2 {
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
    0%, 80%, 100% {
        -webkit-transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1.0);
    }
}

@keyframes sk-bouncedelay {
    0%, 80%, 100% {
        -webkit-transform: scale(0);
        -ms-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1.0);
        -ms-transform: scale(1.0);
        transform: scale(1.0);
    }
}


/**************************/
/*     03. Navigation     */
/**************************/
.navbar-custom {
    background-color: #5f4dee !important;
    box-shadow: 0 0.0625rem 0.375rem 0 rgba(0, 0, 0, 0.1);
    font: 700 0.875rem/0.875rem "Open Sans", sans-serif;
    transition: all 0.2s;
}

.navbar-custom .container {
    max-width: 87.5rem;
}

.navbar-custom .navbar-brand.logo-image img {
    width: 8.4375rem;
    height: 4.75rem;
}

.navbar-custom .navbar-brand.logo-text {
    font: 700 2rem/1.5rem "Open Sans", sans-serif;
    color: #fff;;
    text-decoration: none;
}

.navbar-custom .navbar-nav {
    margin-top: 0.75rem;
    margin-bottom: 0.5rem;
}

.navbar-custom .nav-item .nav-link {
    padding: 0.625rem 0.75rem 0.625rem 0.75rem;
    color: #f7f5f5;
    opacity: 0.8;
    text-decoration: none;
    transition: all 0.2s ease;
}

.navbar-custom .nav-item .nav-link:hover,
.navbar-custom .nav-item .nav-link.active {
    color: #fff;
    opacity: 1;
}

/* Dropdown Menu */
.navbar-custom .dropdown:hover > .dropdown-menu {
    display: block; /* this makes the dropdown menu stay open while hovering it */
    min-width: auto;
    animation: fadeDropdown 0.2s; /* required for the fade animation */
}

@keyframes fadeDropdown {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.navbar-custom .dropdown-toggle:focus { /* removes dropdown outline on focus */
    outline: 0;
}

.navbar-custom .dropdown-menu {
    margin-top: 0;
    border: none;
    border-radius: 0.25rem;
    background-color: #5f4dee;
}

.navbar-custom .dropdown-item {
    color: #f7f5f5;
    opacity: 0.8;
    font: 700 0.875rem/0.875rem "Open Sans", sans-serif;
    text-decoration: none;
}

.navbar-custom .dropdown-item:hover {
    background-color: #5f4dee;
    color: #fff;
    opacity: 1;
}

.navbar-custom .dropdown-items-divide-hr {
    width: 100%;
    height: 1px;
    margin: 0.75rem auto 0.725rem auto;
    border: none;
    background-color: #c4d8dc;
    opacity: 0.2;
}

/* end of dropdown menu */

.navbar-custom .nav-item .btn-outline-sm {
    margin-top: 0.25rem;
    margin-bottom: 1.375rem;
    margin-left: 0.5rem;
    border: 0.125rem solid #fff;
    color: #fff;
}

.navbar-custom .nav-item .btn-outline-sm:hover {
    background-color: #fff;
    color: #5f4dee;
}

.navbar-custom .navbar-toggler {
    padding: 0;
    border: none;
    color: #fff;
    font-size: 2rem;
}

.navbar-custom button[aria-expanded='false'] .navbar-toggler-awesome.fas.fa-times {
    display: none;
}

.navbar-custom button[aria-expanded='false'] .navbar-toggler-awesome.fas.fa-bars {
    display: inline-block;
}

.navbar-custom button[aria-expanded='true'] .navbar-toggler-awesome.fas.fa-bars {
    display: none;
}

.navbar-custom button[aria-expanded='true'] .navbar-toggler-awesome.fas.fa-times {
    display: inline-block;
    margin-right: 0.125rem;
}


/*********************/
/*    04. Header     */
/*********************/
.header {
    background-color: #5f4dee;
}

.header .header-content {
    padding-top: 8rem;
    padding-bottom: 4rem;
    text-align: center;
}

.header .header-content-short {
    padding-top: 4rem;
    padding-bottom: 4rem;
    text-align: center;
}

.header .text-container {
    margin-bottom: 3rem;
}

.header h1 {
    margin-bottom: 1rem;
    color: #fff;
    font-size: 2.5rem;
    line-height: 3rem;
}

.header .p-large {
    margin-bottom: 2rem;
    color: #f3f7fd;
}

.header .btn-solid-lg {
    margin-right: 0.5rem;
    margin-bottom: 1.125rem;
    margin-left: 0.5rem;
    border-color: #f3f7fd;
    background-color: #f3f7fd;
    color: #5f4dee;
}

.header .btn-solid-lg:hover {
    background: transparent;
    color: #f3f7fd;
}

.header .btn-outline-lg {
    border-color: #f3f7fd;
    color: #f3f7fd;
}

.header .btn-outline-lg:hover {
    background-color: #f3f7fd;
    color: #5f4dee;
}

/* Responsive layout for header buttons: stacked on small screens, inline on larger */
.header-buttons {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.header-buttons .btn-solid-lg {
    margin: 0.5rem 0;
}

/* On desktop (>=992px) show buttons in a row */
@media (min-width: 992px) {
    .header .header-content {
        text-align: left; /* ensure left alignment on large screens */
    }

    .header-buttons {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        text-align: center;
    }

    .header-buttons .btn-solid-lg {
        margin: 0 0.5rem 0 0; /* right margin between buttons */
        font: 700 0.99rem / 0 "Open Sans", sans-serif;
    }
}

/* end of header frame */
.header-frame {
    margin-top: -1px; /* To remove white margin in FF */
    width: 100%;
    height: 2.25rem;
}


/*************************/
/*     05. Customers     */
/*************************/
.slider-1 {
    padding-top: 5rem;
    padding-bottom: 3.25rem;
}

.slider-1 .slider-container {
    text-align: center;
}


/***************************/
/*     06. Description     */
/***************************/
.cards-1 {
    padding-top: 3.25rem;
    padding-bottom: 3rem;
    text-align: center;
}

.cards-1 .h2-heading {
    margin-bottom: 3.5rem;
}

.cards-1 .card {
    max-width: 21rem;
    margin-right: auto;
    margin-bottom: 3.5rem;
    margin-left: auto;
    padding: 0;
    border: none;
}

.cards-1 .card-image {
    max-width: 16rem;
    margin-right: auto;
    margin-bottom: 2rem;
    margin-left: auto;
}

.cards-1 .card-title {
    margin-bottom: 0.5rem;
}

.cards-1 .card-body {
    padding: 0;
}

.testimonials-container {
    /*background-color: #f3f7fd;*/
    padding-top: 2rem;
    /*padding-bottom: 2rem;*/
}

#what-simple {
    background-color: #f3f7fd;
}

.faq-background {
    background: radial-gradient(circle at top left, rgba(95, 77, 239, 0.10), transparent 28%),
    linear-gradient(180deg, #f5f7ff 0%, #eef3ff 100%);
    position: relative;
    overflow: hidden;
}

.faq-background .text-container {
    max-width: 64rem;
    margin: 0 auto;
    padding: 0 1rem;
}

.faq-background .text-container > h1 {
    margin-bottom: 2rem;
    text-align: center;
    color: #1d2951;
    font-size: clamp(2rem, 4vw, 3rem);
    letter-spacing: -0.02em;
}

.faq-background .text-container > p:empty {
    display: none;
}

.faq-background .text-container > div {
    position: relative;
    max-width: 48rem;
    margin: 0 auto 1rem;
    padding: 1.5rem 1.5rem 1.35rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 24px;
    background: linear-gradient(180deg, #ffffff 0%, #f8faff 100%);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    text-align: left;
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.faq-background .text-container > div::before {
    content: '';
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(90deg, #5f4def 0%, #8f7bff 100%);
}

.faq-background .text-container > div:hover {
    transform: translateY(-4px);
    border-color: rgba(95, 77, 239, 0.18);
    box-shadow: 0 24px 55px rgba(29, 41, 81, 0.12);
}

.faq-background .text-container > div > a[href="#faq-summary"] {
    display: block;
    text-decoration: none;
    color: inherit;
}

.faq-background .text-container > div > a[href="#faq-summary"] h2 {
    position: relative;
    margin: 0 0 0.9rem;
    padding-right: 2rem;
    color: #5f4def;
    font-size: 1.15rem;
    line-height: 1.4;
    transition: color 0.25s ease;
}

.faq-background .text-container > div > a[href="#faq-summary"] h2::after {
    content: '›';
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    color: #8f7bff;
    font-size: 1.8rem;
    line-height: 1;
}

.faq-background .text-container > div:hover > a[href="#faq-summary"] h2 {
    color: #4739d1;
}

.faq-background .text-container > div > ul {
    margin: 0.75rem 0 0;
    padding-left: 1.25rem;
}

.faq-background .text-container > div > ul li {
    margin-bottom: 0.45rem;
    line-height: 1.6;
    color: #33415c;
}

.faq-background .text-container > div > p {
    margin: 0.75rem 0 0;
    color: #33415c;
    line-height: 1.7;
}

.faq-background .text-container > div > p:empty {
    display: none;
}

.faq-background .text-container > div a {
    color: #5f4def;
}

.faq-background .text-container > div a:hover {
    color: #4739d1;
}

.faq-no-background {
    position: relative;
    overflow: hidden;
}

.faq-no-background .text-container {
    max-width: 64rem;
    margin: 0 auto;
    padding: 0 1rem;
}

.faq-no-background .text-container > h1 {
    margin-bottom: 2rem;
    text-align: center;
    color: #1d2951;
    font-size: clamp(2rem, 4vw, 3rem);
    letter-spacing: -0.02em;
}

.faq-no-background .text-container > p:empty {
    display: none;
}

.faq-no-background .text-container > div {
    position: relative;
    max-width: 48rem;
    margin: 0 auto 1rem;
    padding: 1.5rem 1.5rem 1.35rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 24px;
    background: linear-gradient(180deg, #ffffff 0%, #f8faff 100%);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    text-align: left;
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.faq-no-background .text-container > div::before {
    content: '';
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(90deg, #5f4def 0%, #8f7bff 100%);
}

.faq-no-background .text-container > div:hover {
    transform: translateY(-4px);
    border-color: rgba(95, 77, 239, 0.18);
    box-shadow: 0 24px 55px rgba(29, 41, 81, 0.12);
}

.faq-no-background .text-container > div > a[href="#faq-summary"] {
    display: block;
    text-decoration: none;
    color: inherit;
}

.faq-no-background .text-container > div > a[href="#faq-summary"] h2 {
    position: relative;
    margin: 0 0 0.9rem;
    padding-right: 2rem;
    color: #5f4def;
    font-size: 1.15rem;
    line-height: 1.4;
    transition: color 0.25s ease;
}

.faq-no-background .text-container > div > a[href="#faq-summary"] h2::after {
    content: '›';
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    color: #8f7bff;
    font-size: 1.8rem;
    line-height: 1;
}

.faq-no-background .text-container > div:hover > a[href="#faq-summary"] h2 {
    color: #4739d1;
}

.faq-no-background .text-container > div > ul {
    margin: 0.75rem 0 0;
    padding-left: 1.25rem;
}

.faq-no-background .text-container > div > ul li {
    margin-bottom: 0.45rem;
    line-height: 1.6;
    color: #33415c;
}

.faq-no-background .text-container > div > p {
    margin: 0.75rem 0 0;
    color: #33415c;
    line-height: 1.7;
}

.faq-no-background .text-container > div > p:empty {
    display: none;
}

.faq-no-background .text-container > div a {
    color: #5f4def;
}

.faq-no-background .text-container > div a:hover {
    color: #4739d1;
}

#features {
    /*background-color: #f3f7fd;*/
}

#how {
    position: relative;
    padding-top: 4.75rem;
    padding-bottom: 5rem;
    background: radial-gradient(circle at top left, rgba(95, 77, 239, 0.10), transparent 28%), linear-gradient(180deg, #f6f8ff 0%, #eef3ff 100%);
    overflow: hidden;
}

#details {
    background-color: #f3f7fd;
}

#how::before,
#how::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

#how::before {
    width: 16rem;
    height: 16rem;
    background: rgba(95, 77, 239, 0.07);
    filter: blur(10px);
}

#how::before {
    top: -4rem;
    right: -5rem;
}

#how::after {
    width: 13rem;
    height: 13rem;
    background: rgba(79, 209, 197, 0.07);
    filter: blur(10px);
}

#how::after {
    left: -4rem;
    bottom: 1rem;
}

#what {
    position: relative;
    padding-top: 4.75rem;
    padding-bottom: 5rem;
    background: transparent;
    overflow: visible;
}

#list {
    background-color: #f3f7fd;
}

.card {
    /*background-color: #f3f7fd;*/
}

#card-price {
    background-color: #f3f7fd;
}

#card-price1 {
    background-color: #f3f7fd;
}

#card-price2 {
    background-color: #f3f7fd;
}

#card-price3 {
    background-color: #f3f7fd;
}

#video-btn {
    text-align: center;
    padding-top: 2rem;;
    padding-bottom: 4rem;;
}

#video-btn2 {
    text-align: center;
    padding-bottom: 2rem;
    padding-top: 2rem;
}

@media (min-width: 601px) {
    .testimonials {
        padding-bottom: 3rem !important;
    }
}


.top-notification .top-notification-content {
    text-transform: uppercase;
    /*font-weight: 500;*/
    font-size: 12px;
    color: #fff;
    text-align: center;
    line-height: 10px;
}

.top-notification2 .top-notification-content {
    text-transform: uppercase;
    /*font-weight: 500;*/
    font-size: 12px;
    color: #fff;
    text-align: center;
    line-height: 10px;
}

.top-notification {
    background-color: #ee4d4d;
    position: absolute;
    width: 100%;
    height: 35px;
    border-radius: 20px 20px 0 0;
    top: -35px;
    left: 0;
    flex-direction: row;
    box-sizing: border-box;
    display: flex;
    place-content: center;
    align-items: center;
}

.top-notification2 {
    background-color: #5f4dee;
    /*position: absolute;*/
    width: 100%;
    height: 60px;
    /*border-radius: 20px 20px 20px 20px;*/
    top: -35px;
    left: 0;
    flex-direction: row;
    box-sizing: border-box;
    display: flex;
    place-content: center;
    align-items: center;
    text-wrap: wrap;
}

.top-promo {
    background-color: #d91616;
    color: white;
    position: absolute;
    width: 100%;
    height: 35px;
    border-radius: 20px 20px 0 0;
    top: -35px;
    left: 0;
    flex-direction: row;
    box-sizing: border-box;
    display: flex;
    place-content: center;
    align-items: center;
}

/************************/
/*     07. Features     */
/************************/
.tabs {
    padding-top: 4rem;
    padding-bottom: 2.125rem;
    /*background-color: #f3f7fd;*/
}

.tabs .h2-heading,
.tabs .p-heading {
    text-align: center;
}

.tabs .nav-tabs {
    display: block;
    margin-bottom: 2.25rem;
    border-bottom: none;
}

.tabs .nav-link {
    padding: 0.375rem 1rem 0.375rem 1rem;
    border: none;
    color: #86929b;
    font-weight: 700;
    font-size: 1.25rem;
    line-height: 1.75rem;
    text-align: center;
    text-decoration: none;
    transition: all 0.2s ease;
}

.tabs .nav-link:hover,
.tabs .nav-link.active {
    background: transparent;
    color: #5f4dee;
}

.tabs .nav-link .fas {
    margin-right: 0.625rem;
}

.tabs .image-container {
    margin-bottom: 2.75rem;
}

.tabs .list-unstyled .fas {
    color: #5f4dee;
    font-size: 0.5rem;
    line-height: 1.625rem;
}

.tabs .list-unstyled .media-body {
    margin-left: 0.625rem;
}

.tabs #tab-1 h3 {
    margin-bottom: 0.75rem;
}

.tabs #tab-1 .list-unstyled {
    margin-bottom: 1.5rem;
}

.tabs #tab-2 h3 {
    margin-bottom: 0.75rem;
}

.tabs #tab-2 .list-unstyled {
    margin-bottom: 1.5rem;
}

.tabs #tab-3 h3 {
    margin-bottom: 0.75rem;
}

.tabs #tab-3 .list-unstyled {
    margin-bottom: 1.5rem;
}


/***********************************/
/*     08. Features Lightboxes     */
/***********************************/
.lightbox-basic {
    margin: 2.5rem auto;
    padding: 2rem 1.5rem 2rem 1.5rem;
    border-radius: 0.25rem;
    background: #fff;
    text-align: left;
}

.lightbox-basic .container {
    padding-right: 0;
    padding-left: 0;
}

.lightbox-basic .image-container {
    max-width: 33.75rem;
    margin-right: auto;
    margin-bottom: 3rem;
    margin-left: auto;
}

.lightbox-basic h3 {
    margin-bottom: 0.5rem;
}

.lightbox-basic hr {
    width: 2.5rem;
    height: 0.125rem;
    margin-top: 0;
    margin-bottom: 0.875rem;
    margin-left: 0;
    border: 0;
    background-color: #5f4dee;
    text-align: left;
}

.lightbox-basic h4 {
    margin-bottom: 1rem;
}

.lightbox-basic .list-unstyled .fas {
    color: #5f4dee;
    font-size: 0.5rem;
    line-height: 1.625rem;
}

.lightbox-basic .list-unstyled .media-body {
    margin-left: 0.625rem;
}

.lightbox-basic .btn-outline-reg,
.lightbox-basic .btn-solid-reg {
    margin-top: 0.75rem;
}

/* Signup Button */
.lightbox-basic .btn-solid-reg.mfp-close {
    position: relative;
    width: auto;
    height: auto;
    color: #fff;
    opacity: 1;
}

.lightbox-basic .btn-solid-reg.mfp-close:hover {
    color: #5f4dee;
}

/* end of signup Button */

/* Back Button */
.lightbox-basic a.mfp-close.as-button {
    position: relative;
    width: auto;
    height: auto;
    margin-left: 0.375rem;
    color: #5f4dee;
    opacity: 1;
}

.lightbox-basic a.mfp-close.as-button:hover {
    color: #fff;
}

/* end of back button */

.lightbox-basic button.mfp-close.x-button {
    position: absolute;
    top: -0.125rem;
    right: -0.125rem;
    width: 2.75rem;
    height: 2.75rem;
    color: #707984;
}


/***********************/
/*     09. Details     */
/***********************/
.basic-1 {
    padding-top: 7.5rem;
    padding-bottom: 8rem;
}

.basic-1 .text-container {
    margin-bottom: 3.75rem;
}

.basic-1 .list-unstyled {
    margin-bottom: 1.375rem;
}

.basic-1 .list-unstyled .fas {
    color: #5f4dee;
    font-size: 0.5rem;
    line-height: 1.625rem;
}

.basic-1 .list-unstyled .media-body {
    margin-left: 0.625rem;
}


/*********************/
/*     10. Video     */
/*********************/
.basic-2 {
    padding-top: 8rem;
    padding-bottom: 6.75rem;
    background-color: #f3f7fd;
    text-align: center;
}

.basic-2 .image-container {
    margin-bottom: 2rem;
}

.basic-2 .image-container img {
    border-radius: 0.75rem;
}

.basic-2 .video-wrapper {
    position: relative;
}

/* Video Play Button */
.basic-2 .video-play-button {
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;
    display: block;
    box-sizing: content-box;
    width: 2rem;
    height: 2.75rem;
    padding: 1.125rem 1.25rem 1.125rem 1.75rem;
    border-radius: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.basic-2 .video-play-button:before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    display: block;
    width: 4.75rem;
    height: 4.75rem;
    border-radius: 50%;
    background: #5f4dee;
    animation: pulse-border 1500ms ease-out infinite;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.basic-2 .video-play-button:after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    display: block;
    width: 4.375rem;
    height: 4.375rem;
    border-radius: 50%;
    background: #5f4dee;
    transition: all 200ms;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.basic-2 .video-play-button span {
    position: relative;
    display: block;
    z-index: 3;
    top: 0.375rem;
    left: 0.25rem;
    width: 0;
    height: 0;
    border-left: 1.625rem solid #fff;
    border-top: 1rem solid transparent;
    border-bottom: 1rem solid transparent;
}

@keyframes pulse-border {
    0% {
        transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
        opacity: 1;
    }
    100% {
        transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
        opacity: 0;
    }
}

/* end of video play button */

.basic-2 .p-heading {
    margin-bottom: 1rem;
}


/***********************/
/*     11. Pricing     */
/***********************/
.cards-2 {
    position: relative;
    padding-top: 7.875rem;
    padding-bottom: 4.5rem;
    text-align: center;
    background: radial-gradient(circle at top left, rgba(95, 77, 239, 0.12), transparent 28%), radial-gradient(circle at top right, rgba(143, 123, 255, 0.14), transparent 24%), linear-gradient(180deg, #f8faff 0%, #eef3ff 100%);
    overflow: hidden;
}

.cards-2::before,
.cards-2::after {
    content: '';
    position: absolute;
    z-index: 0;
    border-radius: 50%;
    pointer-events: none;
}

.cards-2::before {
    top: -5rem;
    left: -4rem;
    width: 14rem;
    height: 14rem;
    background: rgba(95, 77, 239, 0.08);
    filter: blur(10px);
}

.cards-2::after {
    right: -5rem;
    bottom: 2rem;
    width: 16rem;
    height: 16rem;
    background: rgba(79, 209, 197, 0.08);
    filter: blur(10px);
}

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

.cards-2 .h1-above-heading {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.9rem;
    padding: 0.45rem 1rem;
    border: 1px solid rgba(95, 77, 239, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    color: #5f4dee;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    box-shadow: 0 12px 28px rgba(29, 41, 81, 0.08);
}

.cards-2 .pricing-lead,
.cards-2 .pricing-note {
    max-width: 42rem;
    margin-right: auto;
    margin-left: auto;
    color: #5e667a;
}

.cards-2 .pricing-lead {
    margin-bottom: 0.35rem;
    font-size: 1.08rem;
    font-weight: 600;
}

.cards-2 .pricing-note {
    margin-bottom: 0.95rem;
    font-size: 0.98rem;
}

.cards-2 .h2-heading {
    max-width: 44rem;
    margin: 0 auto 1.5rem;
    color: #1d2951;
    font-size: x-large;
    letter-spacing: -0.03em;
}

.cards-2 .cards-ind {
    position: relative;
    margin-top: 1.5rem;
}

.cards-2 .cards-ind .col-lg-12 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;
    gap: 1.4rem;
}

.cards-2 .trust-badge-strip {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.75rem;
    max-width: 64rem;
    margin: 1.2rem auto 2.2rem;
    padding: 0.75rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.72);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    backdrop-filter: blur(10px);
}

.cards-2 .scan-count-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    max-width: min(42rem, 100%);
    margin: 1.75rem auto 1rem;
    padding: 0.9rem 1.35rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 999px;
    background: linear-gradient(180deg, #ffffff 0%, #f6f8ff 100%);
    color: #1d2951;
    font-weight: 700;
    font-size: 0.98rem;
    line-height: 1.35;
    text-align: center;
    box-shadow: 0 10px 22px rgba(29, 41, 81, 0.05);
}

.cards-2 .trust-badge-strip .pricing-trust-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.82rem 1.05rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 999px;
    background: linear-gradient(180deg, #ffffff 0%, #f6f8ff 100%);
    color: #1d2951;
    font-weight: 700;
    font-size: 0.93rem;
    line-height: 1.1;
    box-shadow: 0 10px 22px rgba(29, 41, 81, 0.05);
}

.cards-2 .card {
    position: relative;
    display: flex;
    flex-direction: column;
    flex: 1 1 18rem;
    max-width: 18.5rem;
    margin: 0;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 28px;
    background: linear-gradient(180deg, #ffffff 0%, #f8faff 100%);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.cards-2 .card::before {
    content: '';
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #5f4def 0%, #8f7bff 100%);
}

.cards-2 .card:hover {
    transform: translateY(-8px);
    border-color: rgba(95, 77, 239, 0.18);
    box-shadow: 0 28px 60px rgba(29, 41, 81, 0.14);
}

.cards-2 .pricing-card--featured {
    transform: translateY(-10px);
    border-color: rgba(95, 77, 239, 0.24);
    box-shadow: 0 28px 68px rgba(95, 77, 239, 0.18);
    overflow: visible;
}

.cards-2 .pricing-card--featured::before {
    height: 6px;
    background: linear-gradient(90deg, #5f4def 0%, #8f7bff 45%, #4fd1c5 100%);
}

.cards-2 .pricing-card--featured .top-notification {
    background: linear-gradient(90deg, #ff8a5b 0%, #f14c4c 100%);
    box-shadow: 0 12px 28px rgba(241, 76, 76, 0.24);
}

.cards-2 .pricing-card--featured .top-notification .top-notification-content {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
}

.cards-2 .card .card-body {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 2.5rem 2rem 2.75rem;
}

.cards-2 .card .card-title {
    margin-bottom: 0.6rem;
    color: #1d2951;
    font: 700 1.25rem/1.35 "Open Sans", sans-serif;
    letter-spacing: -0.02em;
}

.cards-2 .card .pricing-card-subtitle {
    margin: -0.15rem 0 0.9rem;
    color: #5e667a;
    font-size: 0.96rem;
    line-height: 1.55;
}

.cards-2 .card .price {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 0.25rem;
    margin-top: 0.25rem;
}

.cards-2 .card .price .currency {
    margin-right: 0;
    color: #5f4dee;
    font-weight: 700;
    font-size: 1.2rem;
    vertical-align: baseline;
}

.cards-2 .card .price .value {
    color: #1d2951;
    font: 700 clamp(3.2rem, 5vw, 4.25rem)/1 "Open Sans", sans-serif;
    text-align: center;
}

.cards-2 .card .frequency {
    margin-top: 0.35rem;
    color: #5e667a;
    font-size: 0.9rem;
    font-weight: 600;
}

.cards-2 .card .promo {
    font-size: 0.900rem;
    font-weight: bold;
    color: #5f4dee;
}

.cards-2 .card .divider {
    height: 1px;
    margin-top: 1.6rem;
    margin-bottom: 1.8rem;
    border: none;
    background: linear-gradient(90deg, transparent, rgba(95, 77, 239, 0.18), transparent);
}

.cards-2 .card .list-unstyled {
    margin-top: 0;
    margin-bottom: 1.5rem;
    text-align: left;
}

.cards-2 .card .list-unstyled .media {
    margin-bottom: 0.65rem;
    align-items: flex-start;
}

.cards-2 .card .list-unstyled .fas {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    height: 1.35rem;
    border-radius: 999px;
    background: rgba(95, 77, 239, 0.12);
    color: #5f4dee;
    font-size: 0.78rem;
    line-height: 1;
}

.cards-2 .card .list-unstyled .fas.fa-times {
    margin-left: 0;
    margin-right: 0;
    background: rgba(83, 92, 108, 0.12);
    color: #5e667a;
}

.cards-2 .card .list-unstyled .media-body {
    margin-left: 0.625rem;
    color: #344054;
    line-height: 1.45;
}

.cards-2 .card .button-wrapper {
    margin-top: auto;
}

.cards-2 .card .button-wrapper .btn-solid-reg {
    display: block;
    width: 100%;
    max-width: 100%;
    line-height: 1.25 !important;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
    text-align: center;
    box-shadow: 0 14px 30px rgba(95, 77, 239, 0.16);
}

.cards-2 .card .button-wrapper .btn-solid-reg:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 34px rgba(95, 77, 239, 0.22);
}

.faq-section {
    position: relative;
    padding-top: 5rem;
    padding-bottom: 4.5rem;
    background: radial-gradient(circle at top left, rgba(95, 77, 239, 0.10), transparent 28%), linear-gradient(180deg, #f5f7ff 0%, #eef3ff 100%);
    text-align: center;
    overflow: hidden;
}

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

.faq-section .h2-heading {
    margin-bottom: 2rem;
    color: #1d2951;
    font-size: clamp(2rem, 4vw, 3rem);
    letter-spacing: -0.02em;
}

.faq-section .faq-item {
    position: relative;
    display: block;
    max-width: 56rem;
    margin: 0 auto 1rem auto;
    padding: 1.15rem 1.35rem 1.1rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 24px;
    background: linear-gradient(180deg, #ffffff 0%, #f8faff 100%);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    text-align: left;
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.faq-section .faq-item::before {
    content: '';
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #5f4def 0%, #8f7bff 100%);
}

.faq-section .faq-item:hover,
.faq-section .faq-item[open] {
    transform: translateY(-3px);
    border-color: rgba(95, 77, 239, 0.18);
    box-shadow: 0 24px 55px rgba(29, 41, 81, 0.12);
}

.faq-section .faq-item summary {
    display: flex;
    align-items: center;
    gap: 1rem;
    cursor: pointer;
    font-weight: 700;
    color: #1d2951;
    font-size: 1.05rem;
    line-height: 1.45;
    list-style: none;
}

.faq-section .faq-item summary::-webkit-details-marker {
    display: none;
}

.faq-section .faq-item summary::after {
    content: '›';
    margin-left: auto;
    color: #8f7bff;
    font-size: 1.7rem;
    line-height: 1;
    transition: transform 0.25s ease;
}

.faq-section .faq-item[open] summary::after {
    transform: rotate(90deg);
}

.faq-section .faq-answer {
    margin-top: 0.9rem;
    color: #33415c;
    line-height: 1.75;
}

.faq-section .faq-button {
    margin-top: 1.75rem;
}

/***************************/
/*     13. Newsletter     */
/**************************/
.form {
    padding-top: 4rem;
    padding-bottom: 6rem;
}

.form .text-container {
    margin-bottom: 3.5rem;
    padding: 3.5rem 1rem 2.5rem 1rem;
    border-radius: 0.5rem;
    background-color: #f3f7fd;
}

.form h2 {
    margin-bottom: 2.75rem;
    text-align: center;
}

.form .icon-container {
    text-align: center;
}

.form .fa-stack {
    width: 2em;
    margin-bottom: 0.75rem;
    margin-right: 0.375rem;
    font-size: 1.5rem;
}

.form .fa-stack .fa-stack-1x {
    color: #fff;
    transition: all 0.2s ease;
}

.form .fa-stack .fa-stack-2x {
    color: #5f4dee;
    transition: all 0.2s ease;
}

.form .fa-stack:hover .fa-stack-1x {
    color: #5f4dee;
}

.form .fa-stack:hover .fa-stack-2x {
    color: #f3f7fd;
}


/**********************/
/*     14. Footer     */
/**********************/
.footer-frame {
    width: 100%;
    height: 1.5rem;

}

.footer {
    padding-top: 3rem;
    padding-bottom: 0.5rem;
    background-color: #5f4dee;
}

.footer .footer-col {
    margin-bottom: 2.25rem;
}

.footer h4 {
    margin-bottom: 0.625rem;
    color: #fff;
}

.footer .list-unstyled,
.footer p {
    color: #f3f7fd;
}

.footer .footer-col.middle .list-unstyled .fas {
    color: #fff;
    font-size: 0.5rem;
    line-height: 1.5rem;
}

.footer .footer-col.middle .list-unstyled .media-body {
    margin-left: 0.5rem;
}

.footer .footer-col.last .list-unstyled .fas {
    color: #fff;
    font-size: 0.875rem;
    line-height: 1.5rem;
}

.footer .footer-col.last .list-unstyled .media-body {
    margin-left: 0.625rem;
}

.footer .footer-col.last .list-unstyled .fas.fa-globe {
    margin-left: 1rem;
    margin-right: 0.625rem;
}


/*************************/
/*     15. Copyright     */
/*************************/
.copyright {
    padding-top: 1rem;
    padding-bottom: 0.375rem;
    background-color: #5f4dee;
    text-align: center;
}

.copyright .p-small {
    padding-top: 1.375rem;
    border-top: 1px solid #718ad1;
    color: #f3f7fd;
}

.copyright a {
    color: #f3f7fd;
    text-decoration: none;
}

.divFooter {
    color: #fff !important;
    margin-top: auto;
    flex-shrink: 0;
    width: 100%;
    padding-top: 1rem;
    padding-bottom: 0.75rem;
    background-color: #5f4dee;
    text-align: center;
}

.divFooter .p-small {
    margin-bottom: 0;
    color: #f3f7fd;
}

.divFooter a {
    color: #f3f7fd;
    text-decoration: none;
}

.divFooter a:hover {
    color: #fff;
    text-decoration: underline;
}


/**********************************/
/*     16. Back To Top Button     */
/**********************************/
a.back-to-top {
    position: fixed;
    z-index: 999;
    right: 0.75rem;
    bottom: 0.75rem;
    display: none;
    width: 2.625rem;
    height: 2.625rem;
    border-radius: 1.875rem;
    background: #4f3cda url("../images/up-arrow.png") no-repeat center 47%;
    background-size: 1.125rem 1.125rem;
    text-indent: -9999px;
}

a:hover.back-to-top {
    background-color: #4332c5;
}


/***************************/
/*     17. Extra Pages     */
/***************************/
.ex-header {
    padding-top: 8rem;
    padding-bottom: 5rem;
    background-color: #5f4dee;
    text-align: center;
}

.ex-header h1 {
    color: #fff;
}

.ex-basic-1 {
    padding-top: 2rem;
    padding-bottom: 0.875rem;
    background-color: #f3f7fd;
}

.ex-basic-1 .breadcrumbs {
    margin-bottom: 1.125rem;
}

.ex-basic-1 .breadcrumbs .fa {
    margin-right: 0.5rem;
    margin-left: 0.625rem;
}

.ex-basic-2 {
    padding-top: 4.75rem;
    padding-bottom: 4rem;
}

.ex-basic-21 {
    padding-top: 2.75rem;
    padding-bottom: 2rem;
}

.ex-basic-2 h3 {
    margin-bottom: 1rem;
}

.ex-basic-2 .text-container {
    margin-bottom: 3.625rem;
}

.ex-basic-2 .text-container.last {
    margin-bottom: 0;
}

.ex-basic-2 .text-container.dark {
    padding: 1.625rem 1.5rem 0.75rem 2rem;
    background-color: #f3f7fd;
}

.ex-basic-2 .image-container-large {
    margin-bottom: 4rem;
}

.ex-basic-2 .image-container-large img {
    border-radius: 0.25rem;
}

.ex-basic-2 .image-container-small img {
    border-radius: 0.25rem;
}

.ex-basic-2 .list-unstyled .fas {
    color: #5f4dee;
    font-size: 0.5rem;
    line-height: 1.625rem;
}

.ex-basic-2 .list-unstyled .media-body {
    margin-left: 0.625rem;
}

.ex-basic-2 .form-container {
    margin-top: 3rem;
}

.ex-basic-2 .btn-outline-reg {
    margin-top: 1.75rem;
}

#faq-summary .contents-menu {
    position: relative;
    max-width: 64rem;
    margin: 0 auto 2.25rem;
    padding: 1.75rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 28px;
    background: linear-gradient(180deg, #ffffff 0%, #f7f9ff 100%);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    overflow: hidden;
}

#faq-summary .contents-menu::before {
    content: '';
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(90deg, #5f4def 0%, #8f7bff 100%);
}

#faq-summary .contents-menu__eyebrow {
    margin: 0 0 0.4rem;
    color: #5f4def;
    font: 700 0.8rem/1.2 "Open Sans", sans-serif;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

#faq-summary .contents-menu__title {
    margin: 0 0 1.35rem;
    color: #1d2951;
    font-size: clamp(1.35rem, 2.4vw, 2rem);
    line-height: 1.25;
    letter-spacing: -0.02em;
}

#faq-summary .contents-menu__groups {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

#faq-summary .contents-menu__group {
    padding: 1.1rem 1.1rem 1rem;
    border: 1px solid rgba(95, 77, 239, 0.1);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(29, 41, 81, 0.05);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

#faq-summary .contents-menu__group:hover {
    transform: translateY(-3px);
    border-color: rgba(95, 77, 239, 0.18);
    box-shadow: 0 18px 36px rgba(29, 41, 81, 0.1);
}

#faq-summary .contents-menu__section {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.85rem;
    color: #1d2951;
    font-weight: 700;
    font-size: 1.05rem;
    line-height: 1.35;
    text-decoration: none;
}

#faq-summary .contents-menu__section::after {
    content: '›';
    color: #8f7bff;
    font-size: 1.4rem;
    line-height: 1;
    transition: transform 0.25s ease;
}

#faq-summary .contents-menu__group:hover .contents-menu__section::after {
    transform: translateX(3px);
}

#faq-summary .contents-menu__items {
    display: grid;
    gap: 0.45rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

#faq-summary .contents-menu__items a {
    display: block;
    padding: 0.58rem 0.85rem;
    border-radius: 999px;
    background: #f5f7ff;
    color: #5f4def;
    text-decoration: none;
    line-height: 1.45;
    transition: background-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

#faq-summary .contents-menu__items a:hover,
#faq-summary .contents-menu__items a:focus {
    background: rgba(95, 77, 239, 0.12);
    color: #4739d1;
    transform: translateX(3px);
}

#faq-summary .contents-menu__items a:focus-visible,
#faq-summary .contents-menu__section:focus-visible {
    outline: 3px solid rgba(95, 77, 239, 0.25);
    outline-offset: 3px;
}

@media (min-width: 992px) {
    #faq-summary .contents-menu__groups {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.ex-footer-frame {
    width: 100%;
    /*height: 2.75rem;*/
    background-color: #f3f7fd;
}


/****************************************/
/*     18. Sign Up and Log In Pages     */
/****************************************/
.ex-2-header {
    padding-top: 9rem;
    background-color: #5f4dee;
    text-align: center;
    min-height: 100vh;
}

.ex-2-header h1,
.ex-2-header p {
    color: #fff;
}

.ex-2-header p {
    max-width: 24rem;
    margin-right: auto;
    margin-bottom: 2.5rem;
    margin-left: auto;
}

.ex-2-header .form-container {
    max-width: 26rem;
    margin-right: auto;
    margin-left: auto;
    padding: 2.25rem 1.25rem 1.25rem 1.25rem;
    border-radius: 0.5rem;
    background-color: #f3f7fd;
}

.ex-2-header .checkbox {
    text-align: left;
}

@media only screen and (max-width: 600px) {
    .button-contact1 {
        padding-bottom: 15px;
        text-align: center;
    }

    .btn-text {
        line-height: initial;
        text-align: center;
    }

    #video1 {
        display: none !important;
    }
}

/*****************************/
/*     19. Media Queries     */
/*****************************/
/* Min-width width 768px */
@media (min-width: 602px) {

    #video1-mobile {
        display: none !important;
    }

    #video-btn2 {
        padding-bottom: 0 !important;
        padding-top: 0 !important;
    }

    /* General Styles */
    .p-heading {
        width: 85%;
        margin-right: auto;
        margin-left: auto;
    }

    .h2-heading {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }

    /* end of general styles */
    /* Header */
    .header .text-container {
        margin-bottom: 4rem;
    }

    .header h1 {
        font-size: 3.5rem;
        line-height: 4.125rem;
    }

    .header .btn-solid-lg {
        margin-bottom: 0;
        margin-left: 0;
        padding: 20px !important;
    }

    .header-frame {
        height: 5.5rem;
    }

    /* end of header */
    /* Testimonials */
    .slider-2 .swiper-button-prev {
        width: 1.375rem;
        background-size: 1.375rem 2.125rem;
    }

    .slider-2 .swiper-button-next {
        width: 1.375rem;
        background-size: 1.375rem 2.125rem;
    }

    /* end of testimonials */
    /* Newsletter */
    .form .text-container {
        padding: 4rem 2.5rem 3rem 2.5rem;
    }

    .form form {
        margin-right: 4rem;
        margin-left: 4rem;
    }

    /* end of newsletter */
    /* Footer */
    .footer-frame {
        height: 5rem;
    }

    /* end of footer */
    /* Extra Pages */
    .ex-header {
        padding-top: 11rem;
        padding-bottom: 9rem;
    }

    .ex-basic-2 .text-container.dark {
        padding: 2.5rem 3rem 2rem 3rem;
    }

    .ex-basic-2 .form-container {
        margin-top: 0;
    }

    /* end of extra pages */
    /* Sign Up And Log In Pages */
    .ex-2-header {
        padding-top: 11rem;
    }

    .ex-2-header .form-container {
        padding: 2.25rem 1.75rem 1.25rem 1.75rem;
    }

    /* end of sign up and log in pages */
}

/* end of min-width width 768px */


/* Min-width width 992px */
@media (min-width: 992px) {

    /* Navigation */
    .navbar-custom {
        padding: 2.125rem 1.5rem 2.125rem 2rem;
        background: transparent;
        box-shadow: none;
    }

    .navbar-custom .navbar-nav {
        margin-top: 0;
        margin-bottom: 0;
    }

    .navbar-custom .nav-item .nav-link {
        padding: 0.25rem 0.75rem 0.25rem 0.75rem;
    }

    .navbar-custom .nav-item .nav-link:hover,
    .navbar-custom .nav-item .nav-link.active {
        opacity: 1;
    }

    .navbar-custom.top-nav-collapse {
        padding: 0.5rem 1.5rem 0.5rem 2rem;
        background-color: #5f4dee;
        box-shadow: 0 0.0625rem 0.375rem 0 rgba(0, 0, 0, 0.1);
    }

    .navbar-custom.top-nav-collapse .nav-item .nav-link:hover,
    .navbar-custom.top-nav-collapse .nav-item .nav-link.active {
        color: #fff;
    }

    .navbar-custom .dropdown-menu {
        padding-top: 1rem;
        padding-bottom: 1rem;
        border-top: 0.25rem solid rgba(0, 0, 0, 0);
        border-radius: 0.25rem;
    }

    .navbar-custom.top-nav-collapse .dropdown-menu {
        border-top: 0.25rem solid rgba(0, 0, 0, 0);
        box-shadow: 0 0.375rem 0.375rem 0 rgba(0, 0, 0, 0.02);
    }

    .navbar-custom .dropdown-item {
        padding-top: 0.25rem;
        padding-bottom: 0.25rem;
    }

    .navbar-custom .dropdown-items-divide-hr {
        width: 84%;
    }

    .navbar-custom .nav-item .btn-outline-sm {
        margin-top: 0;
        margin-bottom: 0;
        margin-left: 1rem;
    }

    /* end of navigation */
    /* General Styles */
    .p-heading {
        width: 65%;
    }

    .h2-heading {
        width: 60%;
    }

    /* end of general styles */
    /* Header */
    .header .header-content {
        text-align: left;
    }

    .header .text-container {
        margin-top: 4rem;
        margin-bottom: 0;
    }

    .header .image-container {
        position: relative;
        margin-top: 3rem;
    }

    .header .image-container .img-wrapper {
        position: absolute;
        display: block;
        width: 470px;
    }

    .header-frame {
        height: 8rem;
    }

    /* end of header */
    /* Description */
    .cards-1 .card {
        display: inline-block;
        width: 17rem;
        max-width: 100%;
        margin-right: 1rem;
        margin-left: 1rem;
        vertical-align: top;
    }

    .cards-1 .card-image {
        width: 9rem;
    }

    /* end of description */
    /* Features */
    .tabs .nav-tabs {
        display: flex;
        justify-content: center;
        margin-bottom: 2.75rem;
    }

    .tabs .nav-link {
        padding-right: 1.25rem;
        padding-left: 1.25rem;
        border-bottom: 2px solid rgb(202, 202, 202);
    }

    .tabs .nav-link:hover,
    .tabs .nav-link.active {
        border-bottom: 2px solid #5f4dee;
    }

    .tabs .image-container {
        margin-bottom: 0;
    }

    /* end of features */
    /* Features Lightboxes */
    .lightbox-basic {
        max-width: 62.5rem;
        padding: 2.5rem 2.5rem 2.5rem 2.5rem;
    }

    .lightbox-basic .image-container {
        max-width: 100%;
        margin-right: 2rem;
        margin-bottom: 0;
        margin-left: 0.5rem;
    }

    .lightbox-basic h3 {
        margin-top: 0.5rem;
    }

    /* end of features lightboxes */
    /* Details */
    .basic-1 {
        padding-top: 8rem;
    }

    .basic-1 .text-container {
        margin-bottom: 0;
    }

    /* end of details */
    /* Video */
    .basic-2 .image-container {
        max-width: 53.125rem;
        margin-right: auto;
        margin-left: auto;
    }

    .basic-2 p {
        width: 65%;
        margin-right: auto;
        margin-left: auto;
    }

    /* end of video */
    /* Pricing */
    .cards-2 .cards-ind .col-lg-12 {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: stretch;
        gap: 0.75rem;
    }

    .cards-2 .cards-ind .card {
        display: flex;
        flex-direction: column;
        flex: 1 1 14.5rem;
        max-width: 15rem;
        margin: 0;
        align-self: stretch;
    }

    .cards-2 .cards-ind .card .card-body {
        flex: 1 1 auto;
    }

    .cards-2 .card {
        display: inline-block;
        margin-right: 0.5rem;
        margin-left: 0.5rem;
        vertical-align: top;
    }
    /* end of pricing */
    /* Testimonials */
    .slider-2 .slider-container {
        width: 92%;
        text-align: left;
    }

    .slider-2 .image-wrapper {
        float: left;
        width: 10rem;
        margin-bottom: 0;
    }

    .slider-2 .text-wrapper {
        max-width: 100%;
        margin-top: 1.25rem;
        margin-left: 13rem;
    }

    .slider-2 .swiper-button-prev {
        left: -0.75rem;
    }

    .slider-2 .swiper-button-next {
        right: -0.75rem;
    }

    /* end of testimonials */
    /* Newsletter */
    .form .text-container {
        width: 55rem;
        margin-right: auto;
        margin-left: auto;
        padding-top: 5rem;
        padding-bottom: 4.5rem;
    }

    .form h2 {
        margin-right: 7rem;
        margin-left: 7rem;
    }

    .form form {
        margin-right: 9rem;
        margin-left: 9rem;
    }

    /* end of newsletter */
    /* Extra Pages */
    .ex-header h1 {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }

    .ex-basic-2 {
        padding-bottom: 5rem;
    }

    .ex-basic-21 {
        padding-bottom: 2rem;
    }

    /* end of extra pages */
}

/* end of min-width width 992px */


/* Min-width width 1200px */
@media (min-width: 1200px) {

    /* General Styles */
    .h2-heading {
        width: 50%;
    }

    /* end of general styles */
    /* Header */
    .header .header-content {
        padding-top: 11rem;
        padding-bottom: 5rem;
    }

    .header .text-container {
        margin-top: 0.5rem;
        margin-right: 0.5rem;
    }

    .header .image-container {
        margin-top: 1rem;
        margin-left: 1.5rem;
    }

    .header .image-container .img-wrapper {
        width: 700px;
        /*width: 630px;*/
    }

    .header-frame {
        height: 9.375rem;
    }

    /* end of header */
    /* Customer */
    .slider-1 .slider-container {
        margin-right: 3rem;
        margin-left: 3rem;
    }

    /* end of customer */
    /* Description */
    .cards-1 .card {
        width: 18.875rem;
        margin-right: 2rem;
        margin-left: 2rem;
    }

    .cards-1 .card-image {
        width: 12.5rem;
    }

    /* end of description */
    /* Features */
    .tabs .image-container {
        margin-right: 1.5rem;
        margin-left: 1rem;
    }

    .tabs .text-container {
        margin-top: 1.5rem;
        margin-right: 1rem;
        margin-left: 1.5rem;
    }

    /* end of features */
    /* Details */
    .basic-1 .image-container {
        margin-right: 1rem;
        margin-left: 1.5rem;
    }

    .basic-1 .text-container {
        margin-top: 1rem;
        margin-right: 1.5rem;
        margin-left: 1rem;
    }

    .basic-1 h2 {
        margin-bottom: 1rem;
    }

    /* end of details */
    /* Pricing */
    .cards-2 .col-lg-12 {
        padding-right: 0px !important;
        padding-left: 0px !important;
    }

    .cards-pack .card {
        margin-right: 0.6rem !important;
        margin-left: 0.6rem !important;
    }

    .cards-ind .card {
        margin-right: 0.8rem !important;
        margin-left: 0.8rem !important;
        width: 20rem !important;
    }

    .cards-ind .card .card-body {
        padding: 2.5rem 1.5rem 2.75rem 1.5em;
    }

    .cards-2 .cards-ind .card {
        width: 20rem !important;
        max-width: 20rem !important;
        margin: 0.2rem !important;
    }

    .cards-2 .card {
        width: 24.5rem;
        max-width: 100%;
        margin-right: 0.4rem;
        margin-left: 0.4rem;
    }

    .cards-2 .card .card-body {
        /*padding-right: 2.25rem;*/
        /*padding-left: 2.25rem;*/
    }

    /* end of pricing */
    /* Testimonials */
    .slider-2 .slider-container {
        width: 64.125rem;
        margin-right: auto;
        margin-left: auto;
    }

    /* end of testimonials */
    /* Newsletter */
    .form .text-container {
        width: 64.75rem;
        padding-top: 6rem;
        padding-bottom: 5.5rem;
    }

    .form h2 {
        margin-right: 12rem;
        margin-left: 12rem;
    }

    .form form {
        margin-right: 15rem;
        margin-left: 15rem;
    }

    /* end of newsletter */
    /* Footer */
    .footer .footer-col.first {
        margin-right: 1.5rem;
    }

    .footer .footer-col.middle {
        margin-right: 0.75rem;
        margin-left: 0.75rem;
    }

    .footer .footer-col.last {
        margin-left: 1.5rem;
    }

    /* end of footer */
    /* Extra Pages */
    .ex-header h1 {
        width: 60%;
        margin-right: auto;
        margin-left: auto;
    }

    .ex-basic-2 .form-container {
        margin-left: 1.75rem;
    }

    .ex-basic-2 .image-container-small {
        margin-left: 1.75rem;
    }

    /* end of extra pages */
}

.what .cards-1 {
    position: relative;
    z-index: 1;
    padding-top: 0;
    padding-bottom: 0;
    text-align: left !important;
}

.what .cards-1 .container,
#how .cards-1 .container {
    position: relative;
    z-index: 1;
    max-width: 72rem;
}

.what .text-container {
    padding: 2rem 2rem 1.85rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    backdrop-filter: blur(10px);
}

.what .text-container h2 {
    margin-bottom: 1rem;
    color: #1d2951;
    font-size: clamp(2rem, 4vw, 2.7rem);
    letter-spacing: -0.03em;
}

.what .text-container > p {
    margin-bottom: 1rem;
    color: #344054;
    line-height: 1.75;
}

.what .text-container h2 + p + p {
    padding: 1rem 1.1rem;
    border-left: 4px solid #5f4dee;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(95, 77, 239, 0.07) 0%, rgba(255, 255, 255, 0.95) 100%);
    color: #1d2951;
    font-weight: 600;
}

.what .text-container .expand-toggle {
    margin-top: 0.4rem;
    padding: 0.5rem 0.9rem;
    border-radius: 999px;
    background: rgba(95, 77, 239, 0.10);
    color: #5f4dee;
    font-weight: 700;
}

.what .text-container .more-content {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(95, 77, 239, 0.12);
}

.what .text-container .more-content p:last-child {
    margin-bottom: 0;
}

.what #video1,
.what #video1-mobile {
    padding: 1rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 28px;
    background: linear-gradient(180deg, #ffffff 0%, #f8faff 100%);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
}

.what iframe {
    width: 100%;
    max-width: 100%;
    border: 0;
    border-radius: 20px;
    box-shadow: 0 12px 28px rgba(29, 41, 81, 0.10);
}

#how .h2-heading {
    max-width: 54rem;
    margin: 0 auto 2.5rem;
    color: #1d2951;
    font-size: clamp(1.65rem, 3vw, 2.4rem);
    letter-spacing: -0.03em;
}

#how .cards-1 .col-lg-12 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.35rem;
}

#how .cards-1 > .container + .container {
    margin-top: 2.25rem;
}

#how .card {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 21rem;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 28px;
    background: linear-gradient(180deg, #ffffff 0%, #f8faff 100%);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

#how .card:hover {
    transform: translateY(-6px);
    border-color: rgba(95, 77, 239, 0.18);
    box-shadow: 0 28px 60px rgba(29, 41, 81, 0.14);
}

#how .card-image {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 1.25rem 1.25rem 0;
}

#how .card-image a {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    border-radius: 22px;
}

#how .card-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    border-radius: 22px;
    object-fit: cover;
    object-position: center;
}

#how .card-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 1.35rem 1.35rem 1.5rem;
}

#how .card-title {
    margin-bottom: 0.9rem;
    color: #1d2951;
    font-size: 1.15rem;
    line-height: 1.45;
    letter-spacing: -0.01em;
}

#how .card-body > p {
    margin-bottom: 0.95rem;
    color: #344054;
    line-height: 1.7;
}

#how .card-body > p > b {
    color: #1d2951;
}

#how .card-body .expand-toggle {
    margin-top: auto;
    padding: 0.5rem 0.9rem;
    border-radius: 999px;
    background: rgba(95, 77, 239, 0.10);
    color: #5f4dee;
    font-weight: 700;
}

#how .card-body .more-content {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(95, 77, 239, 0.12);
}

#how .card-body .more-content p:last-child {
    margin-bottom: 0;
}

.cookiealert {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    margin: 0 !important;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    border-radius: 0;
    transform: translateY(100%);
    transition: all 500ms ease-out;
    color: #ecf0f1;
    background: #212327 url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEECAIAAAAd4J55AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTMyIDc5LjE1OTI4NCwgMjAxNi8wNC8xOS0xMzoxMzo0MCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUuNSAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OUIyQzg0Q0RDQ0ExMTFFNjkyMDJGQkMzNjQ3OUEyMTQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OUIyQzg0Q0VDQ0ExMTFFNjkyMDJGQkMzNjQ3OUEyMTQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo5QjJDODRDQ0NDQTExMUU2OTIwMkZCQzM2NDc5QTIxNCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo5QjJDODRDQ0NDQTExMUU2OTIwMkZCQzM2NDc5QTIxNCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PnMLhJsAAB3qSURBVHja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');
}

.cookiealert.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0%);
    transition-delay: 1000ms;
}

.cookiealert a {
    text-decoration: underline
}

.cookiealert .acceptcookies {
    margin-left: 10px;
    vertical-align: baseline;
}

.testimonials {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    padding: 1.5rem 1.25rem 0;
    flex-wrap: wrap;
}

.testimonial {
    background: linear-gradient(180deg, #ffffff 0%, #f8faff 100%);
    flex: 1 1 16rem;
    max-width: 18rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 24px;
    margin: 0;
    padding: 1.75rem 1.5rem 1.5rem;
    text-align: left;
    position: relative;
    display: flex;
    flex-direction: column;
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    overflow: hidden;
}

.testimonial::before {
    content: '';
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(90deg, #5f4def 0%, #8f7bff 100%);
}

.testimonial:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 55px rgba(29, 41, 81, 0.12);
}

.arrow {
    cursor: pointer;
    font-size: 2em;
    margin: 0 10px;
    user-select: none; /* Prevent text selection */
}

.testimonial .quote {
    margin-bottom: 0.5rem;
    font-style: italic;
    line-height: 1.65;
    color: #33415c;
    position: relative;
}

.testimonial-stars {
    display: flex;
    gap: 0.25rem;
    margin: 0.85rem 0 0.2rem;
    color: #f4b400;
    font-size: 0.95rem;
    line-height: 1;
}

.name {
    font-weight: bold;
    margin-top: auto;
    position: static;
    text-align: left;
    color: #5f4def;
    font-size: 0.95rem;
}

@media (max-width: 600px) {

    .ex-footer-frame {
        width: 100%;
        height: 2.75rem;
        background-color: #f3f7fd;
    }

    .testimonials {
        flex-direction: column;
        align-items: stretch;
        padding-left: 1rem;
        padding-right: 1rem;
    }

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

    .arrow {
        display: none;
    }

    .faq-background .text-container {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }

    .faq-background .text-container > div {
        padding: 1.25rem 1.1rem 1.15rem;
        border-radius: 20px;
    }

    .faq-background .text-container > div > a[href="#faq-summary"] h2 {
        font-size: 1.05rem;
        padding-right: 1.5rem;
    }

    .faq-background .text-container > div > a[href="#faq-summary"] h2::after {
        font-size: 1.55rem;
    }

    .faq-section {
        padding-top: 4rem;
        padding-bottom: 3.5rem;
    }

    .faq-section .h2-heading {
        margin-bottom: 1.5rem;
        font-size: 1.8rem;
    }

    .faq-section .faq-item {
        padding: 1rem 1rem 0.95rem;
        border-radius: 20px;
    }

    .faq-section .faq-item summary {
        font-size: 1rem;
    }

    .faq-section .faq-item summary::after {
        font-size: 1.55rem;
    }

    .top-notification2 {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        height: auto;
        padding: 10px 5px;
    }

    .top-notification2 .top-notification-content {
        font-size: large !important;
        line-height: 1.2em !important;
        word-break: break-word;
        overflow-wrap: anywhere;
        text-align: center;
        width: 100%;
        white-space: normal;
    }
}

@media screen and (max-width: 991px) {
    .cards-2 .pricing-card--featured {
        overflow: hidden;
    }

    .cards-2 .pricing-card--featured .top-notification {
        position: relative;
        top: auto;
        left: auto;
        margin: -2.5rem -2rem 1rem;
        width: calc(100% + 4rem);
        border-radius: 0;
        flex-shrink: 0;
    }
}

@media screen and (min-width: 992px) {
    .cards-2 .pricing-card--featured {
        overflow: hidden;
        transform: none;
    }

    .cards-2 .pricing-card--featured .top-notification {
        position: relative;
        top: auto;
        left: auto;
        margin: -2.5rem -2rem 1rem;
        width: calc(100% + 4rem);
        border-radius: 0;
        flex-shrink: 0;
    }
}

@media screen and (min-width: 1200px) {
    .cards-2 .cards-ind .pricing-card--featured .top-notification {
        margin: -2.5rem -1.5rem 1rem;
        width: calc(100% + 3rem);
    }
}

@media screen and (max-width: 991px) and (min-width: 601px) {
    .cards-2 .cards-ind .col-lg-12 {
        flex-wrap: wrap;
        justify-content: center;
        gap: 1rem;
    }

    .cards-2 .card {
        flex: 1 1 16rem;
        min-width: 16rem;
        max-width: calc(50% - 0.5rem);
    }

    .cards-2 .card:last-child:nth-child(3) {
        flex: 1 1 100%;
        max-width: 22rem;
    }

    .cards-2 .pricing-card--featured {
        transform: none;
    }
}

@media screen and (max-width: 600px) {
    .cards-2 {
        padding-top: 6.25rem;
        padding-bottom: 3.5rem;
    }

    .cards-2 .cards-ind .col-lg-12 {
        gap: 1rem;
    }

    .cards-2 .cards-ind {
        margin-top: 1rem;
    }

    .cards-2 .card,
    .cards-2 .pricing-card--featured {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        transform: none;
    }

    .cards-2 .trust-badge-strip {
        padding: 0.6rem;
        border-radius: 22px;
    }

    .cards-2 .trust-badge-strip .pricing-trust-badge {
        width: 100%;
        justify-content: center;
    }

    .mobile-hidden {
        visibility: hidden !important;
        display: none !important;
    }

    .mobile-not-hidden {
        visibility: visible !important;
        display: block !important;
    }

    .promo-cta {
        visibility: visible !important;
        display: block !important;
    }
}

.promo-cta {
    visibility: hidden;
    display: none;
}

.mobile-hidden {
    visibility: visible;
    display: block;
}

.mobile-not-hidden {
    visibility: hidden;
    display: none;
}

/* end of min-width width 1200px */

.modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    justify-content: center;
    align-items: center;
}

.modal-content {
    display: block;
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
}

.close {
    position: absolute;
    top: 15px;
    right: 35px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
}

#promo-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 9999;

    display: flex;
    align-items: center !important;
    justify-content: center;
    gap: 16px;

    padding: 14px 16px;
    background: #111;
    color: #fff;
    font-size: 14px;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.3);
}

#promo-banner strong {
    color: #5f4dee;
}

#promo-banner .promo-btn {
    background: #5f4dee;
    color: #ffffff;
    padding: 8px 14px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    white-space: nowrap;
}

#promo-banner .promo-btn:hover {
    background: #5f4dee;
}

#promo-banner .promo-close {
    background: none;
    border: none;
    color: #fff;
    font-size: 22px;
    cursor: pointer;
    margin-left: auto;
}

@media (max-width: 600px) {
    #promo-banner {
        flex-wrap: wrap;
        text-align: center;
    }

    #promo-banner .promo-close {
        position: absolute;
        top: 6px;
        right: 10px;
    }
}

.expand-toggle {
    color: #007bff;
    cursor: pointer;
    font-size: 0.95em;
    display: inline-block;
    margin-top: 6px;
}

.expand-toggle:hover {
    text-decoration: underline;
}

.more-content {
    display: none;
}

/* Modern details + features overrides */
#details {
    position: relative;
    padding-top: 5.5rem;
    padding-bottom: 6rem;
    background: linear-gradient(180deg, #f8faff 0%, #eef3ff 100%);
    overflow: hidden;
}

#details::before,
#details::after,
#features::before,
#features::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(10px);
}

#details::before {
    top: -4.25rem;
    left: -5rem;
    width: 16rem;
    height: 16rem;
    background: rgba(95, 77, 239, 0.07);
}

#details::after {
    right: -4rem;
    bottom: 0;
    width: 13rem;
    height: 13rem;
    background: rgba(79, 209, 197, 0.07);
}

#features {
    position: relative;
    padding-top: 4.75rem;
    padding-bottom: 5rem;
    background: radial-gradient(circle at top right, rgba(95, 77, 239, 0.10), transparent 28%), linear-gradient(180deg, #ffffff 0%, #f7f9ff 100%);
    overflow: hidden;
}

#features::before {
    top: -4rem;
    left: -5rem;
    width: 16rem;
    height: 16rem;
    background: rgba(95, 77, 239, 0.07);
}

#features::after {
    right: -4rem;
    bottom: 1rem;
    width: 13rem;
    height: 13rem;
    background: rgba(79, 209, 197, 0.07);
}

#details .container,
#features .container {
    position: relative;
    z-index: 1;
}

#details .row.align-items-center,
#features .tab-pane .row {
    margin: 0;
    padding: 1.5rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 32px;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    backdrop-filter: blur(10px);
}

#details .text-container,
#features .tab-pane .text-container {
    margin-bottom: 0;
}

#details .text-container {
    padding: 1rem 1.25rem 1rem 0.5rem;
}

#details .text-container h2,
#features .h2-heading {
    color: #1d2951;
    letter-spacing: -0.03em;
}

#details .text-container h2 {
    margin-bottom: 1rem;
    font-size: clamp(1.7rem, 3vw, 2.45rem);
    line-height: 1.18;
}

#details .text-container > p,
#features .tab-pane .text-container > p,
#features .p-heading {
    color: #344054;
    line-height: 1.75;
}

#details .text-container > p {
    margin-bottom: 1rem;
}

#details .text-container a {
    color: #5f4dee;
    font-weight: 700;
}

#details .text-container .list-unstyled,
#features .tab-pane .list-unstyled {
    margin-top: 1.25rem;
    margin-bottom: 1.35rem;
}

#details .text-container .list-unstyled {
    display: grid;
    gap: 0.8rem;
}

#details .text-container .media,
#features .tab-pane .list-unstyled .media {
    padding: 0.85rem 0.95rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 18px;
    background: linear-gradient(180deg, #ffffff 0%, #f8faff 100%);
    box-shadow: 0 10px 22px rgba(29, 41, 81, 0.05);
    align-items: flex-start;
}

#details .text-container .fas,
#features .tab-pane .list-unstyled .fas {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    height: 1.35rem;
    border-radius: 999px;
    background: rgba(95, 77, 239, 0.12);
    color: #5f4dee;
    font-size: 0.78rem;
    line-height: 1;
}

#details .text-container .media-body,
#features .tab-pane .list-unstyled .media-body {
    margin-left: 0.625rem;
    color: #344054;
    line-height: 1.6;
}

#details .image-container,
#features .tab-pane .image-container {
    padding: 1rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 28px;
    background: linear-gradient(180deg, #ffffff 0%, #f8faff 100%);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
}

#details .image-container img,
#features .tab-pane .image-container img {
    width: 100%;
    border-radius: 22px;
}

#details #video-btn {
    padding-top: 1.5rem;
    padding-bottom: 0;
}

#features .tabs {
    padding-top: 0;
    padding-bottom: 0;
}

#features .h2-heading,
#features .p-heading {
    max-width: 52rem;
    margin-right: auto;
    margin-left: auto;
}

#features .tabs .nav-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.75rem;
    margin: 0 auto 2rem;
    padding: 0.8rem;
    border: 1px solid rgba(95, 77, 239, 0.12);
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 18px 45px rgba(29, 41, 81, 0.08);
    backdrop-filter: blur(10px);
}

#features .tabs .nav-item {
    margin: 0;
}

#features .tabs .nav-link {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.85rem 1rem;
    border: none;
    border-radius: 999px;
    color: #1d2951;
    font-size: 0.98rem;
    line-height: 1.15;
    text-align: center;
    text-decoration: none;
    transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease, color 0.25s ease;
}

#features .tabs .nav-link .fas {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.45rem;
    height: 1.45rem;
    margin-right: 0;
    border-radius: 999px;
    background: rgba(95, 77, 239, 0.12);
    color: #5f4dee;
    font-size: 0.8rem;
}

#features .tabs .nav-link:hover,
#features .tabs .nav-link.active {
    transform: translateY(-2px);
    background: linear-gradient(90deg, #5f4def 0%, #8f7bff 100%);
    color: #fff;
    box-shadow: 0 14px 30px rgba(95, 77, 239, 0.22);
}

#features .tabs .nav-link:hover .fas,
#features .tabs .nav-link.active .fas {
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
}

#features .tab-content {
    margin-top: 1.25rem;
}

#features .tab-pane .col-lg-6 {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
}

#features .tab-pane .text-container h2,
#features .tab-pane .text-container h3,
#features .tab-pane .text-container h4,
#features .tab-pane .text-container h5 {
    color: #1d2951;
    letter-spacing: -0.02em;
}

#features .tab-pane .list-unstyled {
    margin-top: 1.25rem;
}

#features .tab-pane .btn-solid-reg {
    margin-top: 0.5rem;
}

@media screen and (max-width: 600px) {
    #details,
    #features {
        padding-top: 4rem;
        padding-bottom: 4rem;
    }

    #details .row.align-items-center,
    #features .tab-pane .row {
        padding: 1rem;
        border-radius: 24px;
    }

    #details .text-container,
    #features .tab-pane .col-lg-6 {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }

    #features .tabs .nav-tabs {
        padding: 0.65rem;
        border-radius: 22px;
    }

    #features .tabs .nav-link {
        width: 100%;
        justify-content: center;
        white-space: normal;
    }

    #details .image-container,
    #features .tab-pane .image-container {
        padding: 0.75rem;
        border-radius: 22px;
    }
}

