/* 
 Theme Name:   Astra Child Theme
 Theme URI:    
 Description:  
 Author:       webmaster.keystone
 Author URI:   
 Template:     astra
 Version:      1.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html

 /* == Add your own styles below this line ==
--------------------------------------------*/

/* General template updates */
.page-template-flexible-content .ast-container {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
}
.page-template-flexible-content .ast-container .content-area {
    margin-top: 0!important;
    margin-bottom: 0!important;
}

/* General theme updates */
.page-template-flexible-content h4 {
    color: #6dd3ff;
    text-transform: uppercase;
    font-size: 14px!important;
    font-weight: bold!important;
}
.main-button, .secondary-button {
    padding: 15px 30px;
    border-radius: 100px;
    display: inline-block;
    border: 1px solid;
    font-weight: bold;
}
.main-button {
    background-color: #ffa244;
    border-color: #ffa244;
    color: #fff;
}
.main-button:hover {
    background-color: #1c3d61;
    border-color: #1c3d61;
    color: #fff;
}
.secondary-button {
    background-color: transparent;
    border-color: #fff;
    color: #fff;
}
.secondary-button:hover {
    background-color: #fff;
    color: #000!important;
}

@media(max-width: 1200px) {
    .main-button, .secondary-button {
        padding: 10px 15px;
    }
}

/* Felxible Hero Block */
.flexible-hero {
    position: relative;
    background-size: cover;
    background-position: center;
}
.flexible-hero:after {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(28, 61, 97, 0.85);
}
.flexible-hero .flexible-hero-inner {
    position: relative;
    z-index: 1;
    color: #fff;
    max-width: 1200px;
    margin: 0 auto;
    padding: 150px 10px;
}
.flexible-hero .flexible-hero-inner .flexible-hero-content {
    width: 50%;
}
.flexible-hero .flexible-hero-inner .flexible-hero-video {
    width: 50%;
}
.flexible-hero .flexible-hero-inner .flexible-hero-video iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    padding: 20px;
}
.flexible-hero .flexible-hero-inner h1 {
    color: #fff;
}
.flexible-hero .flexible-hero-inner a {
    margin-right: 15px;
}
.flexible-hero .flexible-hero-inner .key-features {
    padding: 20px 0 10px;
    gap: 15px;
}
.flexible-hero .flexible-hero-inner .links a {
    color: #ccc;
    border-bottom: 1px solid #ccc;
}
.flexible-hero .flexible-hero-inner .links a:hover {
    color: #ffa244;
    border-color: #ffa244;
}

@media(max-width: 991px) {
    .flexible-hero .flexible-hero-inner {
        flex-flow: wrap;
    }
    .flexible-hero .flexible-hero-inner .flexible-hero-content {
        width: 100%;
    }
    .flexible-hero .flexible-hero-inner .flexible-hero-video {
        width: 100%;
    }
    .flexible-hero .flexible-hero-inner .flexible-hero-video iframe {
        padding: 20px 0;
    }
}
@media(max-width: 767px) {
    .flexible-hero .flexible-hero-inner a {
        margin-bottom: 10px;
    }
}

/* Main Content and Image block */
.flexible-main-content {
    background: #eee;
}
.flexible-main-content .flexible-main-content-inner {
    max-width: 1800px;
    margin: 0 auto;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-image {
    position: relative;
    width: 50%;
    margin: 40px 0;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-image .quote-overlay-box {
    position: absolute;
    bottom: 15px;
    left: 15px;
    right: 15px;
    background: rgba(28, 61, 97, 0.9);
    color: #fff;
    padding: 15px;
    border-radius: 15px;
    border-left: 3px solid #ffa244;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-image .quote-overlay-box p {
    margin: 0;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-image .fact-box {
    position: absolute;
    bottom: 20px;
    left: 20px;
    background: #fff;
    padding: 10px 15px;
    border-radius: 10px;
    font-weight: bold;
    font-size: 14px;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-image .fact-box p {
    margin: 0;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-image .price-box {
    position: absolute;
    top: 15px;
    right: 15px;
    background: #1c3d61;
    padding: 10px;
    width: 90px;
    height: 90px;
    color: #eee;
    font-size: 12px;
    text-align: center;
    border-radius: 15px;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-image .price-box span {
    display: block;
    color: #6dd3ff;
    font-size: 32px;
    text-align: center;
    font-weight: bold;
    line-height: 1;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content {
    width: 50%;
    padding: 20px;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content h2 {
    font-size: 28px;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .flexible-content-blocks {
    gap: 15px;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .flexible-content-blocks .flexible-content-block {
    width: calc(50% - 15px);
    background: #fff;
    padding: 15px;
    border-radius: 15px;
    border-top: 3px solid #ffa244;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .flexible-content-blocks .flexible-content-block i {
    font-size: 22px;
    padding-bottom: 10px;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .flexible-content-blocks .flexible-content-block h3 {
    font-size: 16px;
    font-weight: bold;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .flexible-content-blocks .flexible-content-block p {
    margin: 0;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .list-container .list-item-box {
    padding: 12px 0;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .list-container .list-item-box:not(:last-of-type) {
    border-bottom: 1px solid #ddd;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .list-container .list-item-box .list-item {
    display: flex;
    align-items: center;
    gap: 10px;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .list-container .list-item-box .list-item i {
    background-color: #BFDBFE;
    padding: 7px;
    border-radius: 50%;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .list-container .list-item-box .list-item p {
    margin: 0;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .highlight-box {
    background: #1c3d61;
    padding: 15px;
    border-radius: 15px;
    margin-top: 20px;
    color: #fff;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .highlight-box h4 {
    color: #ddd;
}
.flexible-main-content .flexible-main-content-inner .flexible-main-content-content .highlight-box p {
    margin: 0;
}

@media(max-width: 991px) {
    .flexible-main-content .flexible-main-content-inner {
        flex-flow: wrap;
    }
    .flexible-main-content .flexible-main-content-inner .flexible-main-content-image {
        width: 100%;
        margin: 20px;
        order: 2;
    }
    .flexible-main-content .flexible-main-content-inner .flexible-main-content-content {
        width: 100%;
    }
}

/* How It Works block */
.how-it-works {
    position: relative;
    background-size: cover;
    background-position: center;
}
.how-it-works:after {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(28, 61, 97, 0.9);
}
.how-it-works .how-it-works-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 150px 10px;
    position: relative;
    z-index: 1;
    color: #fff;
}
.how-it-works .how-it-works-inner .how-it-works-main-content {
    max-width: 55%;
}
.how-it-works .how-it-works-inner .how-it-works-main-content h2 {
    color: #fff; 
}
.how-it-works .how-it-works-inner .steps {
    gap: 15px;
}
.how-it-works .how-it-works-inner .steps .step-box {
    width: calc(50% - 15px);
    background-color: rgba(41, 73, 108, 0.7);
    padding: 30px;
    border-radius: 15px;
}
.how-it-works .how-it-works-inner .steps .step-box .step-number {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffa244;
    border-radius: 5px;
    font-weight: bold;
    margin-bottom: 15px;
}
.how-it-works .how-it-works-inner .steps .step-box h3 {
    color: #fff; 
    font-size: 16px;
    font-weight: bold;
}
.how-it-works .how-it-works-inner .steps .step-box p {
    margin: 0;
}
.how-it-works .how-it-works-inner .how-it-works-button {
    text-align: center;
    margin-top: 50px;
}

@media(max-width: 767px) {
    .how-it-works .how-it-works-inner .how-it-works-main-content {
        max-width: 100%;
    }
    .how-it-works .how-it-works-inner .steps .step-box {
        padding: 15px;
    }
}

/* Visibility block */
.visibility-block {
    position: relative;
    background-size: cover;
    background-position: center;
}
.visibility-block:after {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(28, 61, 97, 0.9);
}
.visibility-block .visibility-block-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 150px 10px;
    position: relative;
    z-index: 1;
    color: #fff;
}
.visibility-block .visibility-block-inner .visibility-block-content {
    width: 50%;
    padding: 20px;
}
.visibility-block .visibility-block-inner .visibility-block-content h2 { 
    color: #fff;
}
.visibility-block .visibility-block-inner .visibility-block-image {
    width: 50%;
}
.visibility-block .visibility-block-inner .visibility-block-content .list .list-item-box {
    padding: 12px 0;
}
.visibility-block .visibility-block-inner .visibility-block-content .list .list-item-box:not(:last-of-type) {
    border-bottom: 1px solid #697b91;
}
.visibility-block .visibility-block-inner .visibility-block-content .list .list-item-box .list-item {
    display: flex;
    align-items: center;
    gap: 10px;
}
.visibility-block .visibility-block-inner .visibility-block-content .list .list-item-box .list-item i {
    color: #BFDBFE;
    background-color: rgba(71, 107, 146, 0.7);
    padding: 7px;
    border-radius: 50%;
}
.visibility-block .visibility-block-inner .visibility-block-content .list .list-item-box .list-item p {
    margin: 0;
}

@media(max-width: 767px) {
    .visibility-block .visibility-block-inner {
        flex-flow: wrap;
    }
    .visibility-block .visibility-block-inner .visibility-block-content {
        width: 100%;
        padding: 20px 0;
    }
    .visibility-block .visibility-block-inner .visibility-block-image {
        width: 100%;
    }
}

/* Setup block */
.setup-block {
    position: relative;
    background: #eee;
}
.setup-block .setup-block-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 150px 10px;
}
.setup-block .setup-block-inner .setup-block-content-box {
    max-width: 55%;
}
.setup-block .setup-block-inner .setup-steps {
    gap: 20px;
}
.setup-block .setup-block-inner .setup-steps .setup-step-box {
    background-color: #fff;
    border-radius: 15px;
    position: relative;
    flex: 1;
}
.setup-block .setup-block-inner .setup-steps .setup-step-box .step-number {
    position: absolute;
    top: 15px;
    left: 15px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffa244;
    border-radius: 5px;
    font-weight: bold;
    color: #fff;
}
.setup-block .setup-block-inner .setup-steps .setup-step-box img {
    border-radius: 15px 15px 0 0;
}
.setup-block .setup-block-inner .setup-steps .setup-step-box .setup-step-box-content {
    padding: 20px;
}
.setup-block .setup-block-inner .setup-steps .setup-step-box .setup-step-box-content h3 {
    font-size: 16px;
    font-weight: bold;
}
.setup-block .setup-block-inner .setup-note-box {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 75px;
}
.setup-block .setup-block-inner .setup-note-box p { 
    background: #fff;
    padding: 25px;
    border-radius: 15px;
    border-left: 3px solid #1c3d61;
    margin: 0;
}
.setup-block .setup-block-inner .setup-button {
    text-align: center;
    margin-top: 50px;
}

@media(max-width: 767px) {
    .setup-block .setup-block-inner .setup-block-content-box {
        max-width: 100%;
    }
    .setup-block .setup-block-inner .setup-steps {
        flex-flow: wrap;
    }
    .setup-block .setup-block-inner .setup-steps .setup-step-box {
        width: 100%;
        flex: auto;
    }
}

/* Testimonial Slider block */
.testimonial-slider-block {
    position: relative;
    background-size: cover;
    background-position: center;
}
.testimonial-slider-block:after {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(28, 61, 97, 0.9);
}
.testimonial-slider-block .testimonial-slider-block-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 150px 10px;
    position: relative;
    z-index: 1;
    color: #fff;
}
.testimonial-slider-block .testimonial-slider-block-inner .slick-track {
    display: flex;
    align-items: center;
}
.testimonial-slider-block .testimonial-slider-block-inner h2 {
    color: #fff;
    text-align: center;
}
.testimonial-slider-block .testimonial-slider-block-inner h4 {
    text-align: center;
}
.testimonial-slider-block .testimonial-slider-block-inner .testimonial-slider-box {
    max-width: 800px;
    margin: 30px auto 0;
    text-align: center;
    background-color: rgba(28, 61, 97, 0.9);
    padding: 30px 60px;
    border-radius: 15px;
}
.testimonial-slider-block .testimonial-slider-block-inner .testimonial-slider-box .testimonial-quote {
    padding: 0 20px;
}
.testimonial-slider-block .testimonial-slider-block-inner .logos {
    margin-top: 30px;
    margin-bottom: -75px;
}
.testimonial-slider-block .testimonial-slider-block-inner .logos .logo-image img {
    max-width: 250px;
}

/* Plans block */
.plans-block {
    position: relative;
}
.plans-block .plans-block-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 150px 10px;
    text-align: center;
}
.plans-block .plans-block-inner .plan-options {
    gap: 20px;
    margin: 50px 0;
}
.plans-block .plans-block-inner .plan-options .plan-options-item {
    flex: 1;
    background: #f3f3f3;
    padding: 20px;
    border-radius: 15px;
}
.plans-block .plans-block-inner .plan-options .plan-options-item h3 {
    color: #6dd3ff;
    font-weight: bold;
    border-bottom: 2px solid #000;
    padding-bottom: 10px;
    margin-bottom: 20px;
}
.plans-block .plans-block-inner .plan-options .plan-options-item .plan-option-offer {
    padding: 15px 0;
}
.plans-block .plans-block-inner .plan-options .plan-options-item .plan-option-offer:not(:last-of-type) {
    border-bottom: 1px solid #dcdcdc;
}
.plans-block .plans-block-inner .plan-options .plan-options-item .plan-option-offer p {
    margin: 0;
}

@media(max-width: 767px) {
    .plans-block .plans-block-inner .plan-options {
        flex-flow: wrap;
    }
    .plans-block .plans-block-inner .plan-options .plan-options-item {
        width: 100%;
        flex: auto;
    }
}

/* Pricing block */
.pricing-block {
    position: relative;
}
.pricing-block .pricing-block-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 150px 10px;
}
.pricing-block .pricing-block-inner .pricing-block-image {
    width: 50%;
    margin: 40px;
    position: relative;
}
.pricing-block .pricing-block-inner .pricing-block-image img {
    border-radius: 15px;
}
.pricing-block .pricing-block-inner .pricing-block-image .image-overlay-box {
    position: absolute;
    bottom: 15px;
    left: 15px;
    right: 15px;
    background: rgba(28, 61, 97, 0.9);
    color: #fff;
    padding: 15px;
    border-radius: 15px;
    text-align: center;
}
.pricing-block .pricing-block-inner .pricing-block-image .image-overlay-box h4 {
    color: #ddd;
}
.pricing-block .pricing-block-inner .pricing-block-image .image-overlay-box p {
    margin: 0;
    color: #eee;
    font-size: 12px;
}
.pricing-block .pricing-block-inner .pricing-block-image .image-overlay-box .price-overlay {
    display: block;
    color: #fff;
    font-size: 32px;
    text-align: center;
    font-weight: bold;
    line-height: 1;
}
.pricing-block .pricing-block-inner .pricing-block-content {
    width: 50%;
}
.pricing-block .pricing-block-inner .pricing-block-content .list .list-item-box {
    padding: 12px 0;
}
.pricing-block .pricing-block-inner .pricing-block-content .list .list-item-box:not(:last-of-type) {
    border-bottom: 1px solid #ddd;
}
.pricing-block .pricing-block-inner .pricing-block-content .list .list-item-box .list-item {
    display: flex;
    align-items: center;
    gap: 10px;
}
.pricing-block .pricing-block-inner .pricing-block-content .list .list-item-box .list-item i {
    background-color: #BFDBFE;
    padding: 7px;
    border-radius: 50%;
}
.pricing-block .pricing-block-inner .pricing-block-content .list .list-item-box .list-item p {
    margin: 0;
}
.pricing-block .pricing-block-inner .pricing-block-content .main-button {
    margin-top: 20px;
}

@media(max-width: 767px) {
    .pricing-block .pricing-block-inner {
        flex-flow: wrap;
    }
    .pricing-block .pricing-block-inner .pricing-block-image {
        width: 100%;
        margin: 0 0 20px;
    }
    .pricing-block .pricing-block-inner .pricing-block-content {
        width: 100%;
    }
}

/* FAQ Accordion block */
.faq-accordion-block {
    background: #eee;
    position: relative;
}
.faq-accordion-block .faq-accordion-block-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 150px 10px;
}
.faq-accordion-block .faq-accordion-block-inner .faq-accordion-content {
    max-width: 55%;
}
.faq-accordion-block .accordion-item {
    background: #eee;
}
.faq-accordion-block .accordion-item .accordion-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 18px;
    font-weight: bold;
    border-bottom: 1px solid;
    padding: 10px 0;
    cursor: pointer;
}
.faq-accordion-block .accordion-item .accordion-content {
    display: none;
    padding: 25px 0 50px;
}
.faq-accordion-block .accordion-item .accordion-content p {
    margin: 0;
}
.faq-accordion-block .faq-accordion-block-inner .request-demo-box {
    margin: 75px auto 0;
    width: fit-content;
    background: #fff;
    padding: 20px;
    border-radius: 15px;
    gap: 50px;
}
.faq-accordion-block .faq-accordion-block-inner .request-demo-box p {
    margin: 0;
}
.faq-accordion-block .faq-accordion-block-inner .request-demo-box .request-demo-heading {
    font-weight: bold;
    padding-bottom: 10px;
}

@media(max-width: 767px) {
    .faq-accordion-block .faq-accordion-block-inner .faq-accordion-content {
        max-width: 100%;
    }
    .faq-accordion-block .faq-accordion-block-inner .request-demo-box {
        flex-flow: wrap;
    }
}

/* Get Started block */
.get-started-block {
    position: relative;
    background-size: cover;
    background-position: center;
}
.get-started-block:after {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(28, 61, 97, 0.9);
}
.get-started-block .get-started-block-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 150px 10px;
    position: relative;
    z-index: 1;
    color: #fff;
    text-align: center;
}
.get-started-block .get-started-block-inner h2 {
    color: #fff;
    padding-bottom: 20px;
}
.get-started-block .get-started-block-inner p {
    max-width: 800px;
    margin: 0 auto 50px;
}

/* Thank You Block Styles */
.thank-you-block .thank-you-block-inner {
    max-width: 1800px;
    margin: 75px auto;
    text-align: center;
    padding: 0 10px;
}
.thank-you-block .thank-you-block-inner h1 {
    font-weight: bold;
}
.thank-you-block .thank-you-block-inner .thank-you-buttons {
    gap: 15px;
    margin-top: 30px;
}
.thank-you-block .thank-you-block-inner .thank-you-buttons .thank-you-button {
    width: 100%;
    max-width: 350px;
}
.thank-you-block .thank-you-block-inner .thank-you-buttons .main-button {
    max-width: 350px;
    width: 350px;
    justify-content: center;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 10px 20px;
    font-size: 14px;
    background-color: #FF8000;
}
.thank-you-block .thank-you-block-inner .thank-you-buttons .main-button:hover {
    background-color: #1c3d61;
    border-color: #1c3d61;
    color: #fff;
}

@media(max-width: 767px) {
    .thank-you-block .thank-you-block-inner .thank-you-buttons .thank-you-button {
        width: 100%;
        max-width: 100%;
    }
    .thank-you-block .thank-you-block-inner .thank-you-buttons {
        flex-flow: wrap;
    }
    .thank-you-block .thank-you-block-inner .thank-you-buttons .main-button {
        width: 100%;
        max-width: 100%;
    }
}