/*
Theme Name: Blue Line Cenine
Author: 
Description: Your description goes here
Version: 1.0
Template: hello-elementor

This is the child theme for Hello Elementor theme, generated with Generate Child Theme plugin by catchthemes.

(optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
*/

/*========================== COMMON DETAILS START ==========================*/
.overflow-hidden{
    overflow: hidden !important;
}
.common-details>*:last-child {
    margin-bottom: 0 !important;
}

.common-details p:last-child {
    margin-bottom: 0;
}


.common-details h1,
.common-details h2,
.common-details h3,
.common-details h4,
.common-details h5,
.common-details h6 {
    margin-bottom: 20px;
    margin-top: 0;
}


.common-details ul,
.common-details ol {
    margin-bottom: 20px;
}


.common-details ul li,
.common-details ol li {
    margin-bottom: 15px;
}

.elementor-icon-wrapper{
    display: flex !important;
}

.common-button .elementor-button-content-wrapper,
.contact-form .elementor-button-content-wrapper{
    align-items: center !important;
}

.common-button a,
.contact-form button{
    position: relative !important;
}

.common-button .elementor-button-icon svg,
.common-button .elementor-button-text,
.contact-form .elementor-button-icon svg,
.contact-form .elementor-button-text {
    z-index: 2;
}

.common-button .elementor-button-icon svg,
.contact-form .elementor-button-icon svg{
    width: 19px;
    height: 16px;
}

.common-button a::after,
.contact-form button::after{
    content: '' !important;
    width: 38px;
    height: 38px;
    background-color: #FFFFFF;
    position: absolute;
    right: 11px;
    top: 9px;
    border-radius: inherit;
    -webkit-border-radius: inherit;
    -moz-border-radius: inherit;
    -ms-border-radius: inherit;
    -o-border-radius: inherit;
    transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
}

.common-button a:hover::after,
.contact-form button:hover::after{
    width: 100% !important;
    height: 100% !important;
    right: 0;
    top: 0;
}

.purple-btn a:focus .elementor-button-text,
.purple-btn a:focus-visible .elementor-button-text,
.purple-btn a:focus-within .elementor-button-text,
.green-btn a:focus .elementor-button-text,
.green-btn a:focus-visible .elementor-button-text,
.green-btn a:focus-within .elementor-button-text {
    color: #FFFFFF !important;
}

.purple-btn a:hover:focus .elementor-button-text,
.purple-btn a:hover:focus-visible .elementor-button-text,
.purple-btn a:hover:focus-within .elementor-button-text {
    color: #272262 !important;
}
.green-btn a:hover:focus .elementor-button-text,
.green-btn a:hover:focus-visible .elementor-button-text,
.green-btn a:hover:focus-within .elementor-button-text {
    color: #006738 !important;
}

.common-footer-icon a{
    transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
}
.cmn-bnr-gradient{
    position: relative !important;
}
.cmn-bnr-gradient::after{
    content: '' !important;
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, #272262 0%, rgba(39, 34, 98, 0.8) 40%, rgba(39, 34, 98, 0.6) 60%, rgba(39, 34, 98, 0) 100%) no-repeat !important;
    z-index: 1;
    pointer-events: none !important;
}
.common-bnr-bg{
    width: 100% !important;
    height: 100% !important;
}
.common-breadcrumb li{
    position: relative !important;
}
.common-breadcrumb li:not(:last-child)::after{
    content: '' !important;
    position: absolute !important;
    width: 10px !important;
    height: 10px !important;
    right: -18px !important;
    top: 11px !important;
    background: url('./assets/images/breadcrumb-icon.png') no-repeat !important;
    background-size: cover !important;
}
.common-breadcrumb li a:hover span{
    color: #F9CD1C !important;
}
.common-faq .e-n-accordion-item[open] .e-n-accordion-item-title {
    border-bottom: transparent !important;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.common-faq .e-n-accordion-item:hover,
.common-faq .e-n-accordion-item[open]{
    background-color: rgba(0, 103, 56, 0.05);
}
.common-faq .e-n-accordion-item .e-n-accordion-item-title-icon{
    padding: 13px;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    background-color: #006738;
}
/*========================== COMMON DETAILS END ==========================*/

/*========================== HEADER START ==========================*/
.header-menu .elementor-nav-menu--main.elementor-nav-menu__container {
    display: none !important;
}

.header-menu .elementor-menu-toggle {
    display: flex !important;
    padding: 0;
}

.header-menu .elementor-menu-toggle span {
    height: 27px !important;
}

.header-menu .elementor-menu-toggle span svg {
    width: 50px;
    height: 27px;
}

.header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    display: block !important;
    margin-top: 0 !important;
    left: unset !important;
    right: -100% !important;
    top: 125px !important;
    width: calc(100% - 30px) !important;
    max-width: 595px !important;
    transition: all 0.6s ease !important;
    -webkit-transition: all 0.6s ease !important;
    -moz-transition: all 0.6s ease !important;
    -ms-transition: all 0.6s ease !important;
    -o-transition: all 0.6s ease !important;
    position: fixed !important;
    height: auto !important;
    overflow: auto;
}

.header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"] {
    right: 20px !important;
    height: auto !important;
    margin-top: 0 !important;
}

.header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul li.mobile-menu {
    display: none;
}

.header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul {
    padding: 40px;
}

.header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul li:not(:last-child) {
    padding-bottom: 24px !important;
}

.header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul li:not(:first-child) {
    padding-top: 25px !important;
}

.header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul li:nth-last-of-type(2) {
    border-bottom-color: transparent !important;
    padding-bottom: 0 !important;
}

.header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul li a {
    display: inline-block;
    line-height: 110% !important;
}

.header-menu .elementor-menu-toggle span svg>* {
    transition: all 0.5s ease-in-out !important;
    -webkit-transition: all 0.5s ease-in-out !important;
    -moz-transition: all 0.5s ease-in-out !important;
    -ms-transition: all 0.5s ease-in-out !important;
    -o-transition: all 0.5s ease-in-out !important;
}

.header-menu .elementor-menu-toggle:hover span svg>* {
    fill: #006738 !important;
}

/*==========================HEADER END ==========================*/

/*========================== HERO SECTION START ==========================*/
.hero-title .elementor-heading-title span{
    position: relative;
}
.hero-title .elementor-heading-title span::after{
    content: '' !important;
    position: absolute;
    right: -50px;
    width: 40px;
    height: 66px;
    background: url('./assets/images/hero-title-foot-print.png') no-repeat;
    background-size: contain !important;
}
/*========================== HERO SECTION END ==========================*/

/*========================== SERVICES SECTION SATRT ==========================*/
.services-carousel .swiper{
    overflow: visible;
}
.pricing-top-wrapper{
    height: 100% !important;
}
/*========================== SERVICES SECTION END ==========================*/

/*========================== TESTIMONIAL SECTION START ==========================*/
.customer-right-img{
    height: 100% !important;
}

.customer-reviews-inner{
    height: 100% !important;
}
/*========================== TESTIMONIAL SECTION END ==========================*/

/*========================== BLOG SECTION SECTION START ==========================*/
.blog-item-info-list ul li{
    position: relative !important;
}
.blog-item-info-list ul li:not(:last-child)::after{
    content: '' !important;
    position: absolute !important;
    right: -15px !important;
    top: 50% !important;
    width: 6px !important;
    height: 6px !important;
    background-color: #C4C4C4;
    border-radius: 50% !important;
    -webkit-border-radius: 50% !important;
    -moz-border-radius: 50% !important;
    -ms-border-radius: 50% !important;
    -o-border-radius: 50% !important;
    transform: translate(0,-50%) !important;
    -webkit-transform: translate(0,-50%) !important;
    -moz-transform: translate(0,-50%) !important;
    -ms-transform: translate(0,-50%) !important;
    -o-transform: translate(0,-50%) !important;
}
.blog-item-info-list .elementor-post-info__terms-list a{
    transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
}
.blog-item-info-list .elementor-post-info__terms-list a:hover{
    color: #FFFFFF !important;
}
/*========================== BLOG SECTION SECTION END ==========================*/

/*========================== CONTACT SECTION SECTION START ==========================*/
.contact-form input{
    padding: 11px 16px !important;
}
.contact-form .elementor-button[type="submit"] svg *{
    fill: #006738 !important;
}
.contact-form .elementor-field-group .elementor-message{
    position: absolute !important;
    margin: 0;
    bottom: -30px;
}
.contact-form .elementor-field-group:has(.elementor-message){
    margin-bottom: 30px !important;
}
.contact-form form div.elementor-message{
    text-align: center;
}
/*========================== CONTACT SECTION SECTION END ==========================*/

/*========================== BLOG DETAIL SECTION SECTION START ==========================*/
.blog-details p img{
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
}
.term-count-item{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 20px;
}
.term-count-item:not(:last-child){
    margin-bottom: 16px;
}
.term-count-item .term-name a,
.term-count-item .term-count{
    color: #FFFFFF !important;
    transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    font-family: var(--e-global-typography-35a7242-font-family), Sans-serif !important;
    font-weight: var(--e-global-typography-35a7242-font-weight) !important;
    letter-spacing: var(--e-global-typography-35a7242-letter-spacing) !important;
    line-height: var(--e-global-typography-35a7242-line-height) !important;
}
.term-count-item .term-name a:hover{
    color: #F9CD1C !important;
}
/*========================== BLOG DETAIL SECTION SECTION END ==========================*/

/*========================== RELATED POSTS SECTION START ==========================*/
.related-post-item .related-post-thumbnail a{
    width: 100% !important;
    display: block !important;
}
/*========================== RELATED POSTS SECTION END ==========================*/

/*========================== FOOTER START ==========================*/
.footer-main-wrapper{
    position: relative !important;
}
.footer-main-wrapper::after{
    content: '' !important;
    position: absolute;
    width: 100%;
    height: 484px;
    background: linear-gradient(180deg, #000000 0%, rgba(0, 0, 0, 0) 71.68%) no-repeat !important;
    pointer-events: none;
    z-index: 1;
}
.footer-menu .elementor-nav-menu li:not(:first-child){
    padding-top: 15px !important;
}
.footer-menu .elementor-nav-menu li:not(:last-child){
    padding-bottom: 16px !important;
    border-bottom: 1px solid #FFFFFF1A;
}
.footer-menu .elementor-nav-menu li a{
    display: inline;
}
/*========================== FOOTER END ==========================*/

/*========================== MEDIA QUESRIES START ==========================*/
@media(max-width: 1760px) {
    .footer-blue-line-text-img img{height: 100% !important;}
}

@media(max-width: 1366px) {
    .common-button a::after { width: 36px; height: 36px; right: 12px; top: 8px; }

    .header-menu .elementor-menu-toggle span svg { width: 45px !important; }

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container { top: 111px !important; }

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul { padding: 30px !important; }

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul li:not(:last-child) { padding-bottom: 14px !important; }

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul li:not(:first-child) { padding-top: 15px !important; }

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul li:nth-last-of-type(2) { padding-bottom: 0 !important; }
    .footer-main-wrapper::after{height: 400px !important;}
    .hero-title .elementor-heading-title span::after{height: 46px !important; right: -46px !important;}
}

@media(max-width: 1200px) {
    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul { padding: 25px !important; }

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"] { right: 15px !important; }

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container { top: 106px !important;}
    .footer-menu .elementor-nav-menu li:not(:first-child){padding-top: 10px !important;}
    .footer-menu .elementor-nav-menu li:not(:last-child){padding-bottom: 11px !important;}
    .hero-title .elementor-heading-title span::after{height: 40px !important;}
    .common-faq .e-n-accordion-item .e-n-accordion-item-title-icon{padding: 10px;}
}

@media(max-width: 1024px) {
    .common-button a::after { width: 34px; height: 34px; top: 6px; right: 9px;}
    .footer-main-wrapper::after{height: 350px !important;}
    .common-faq .e-n-accordion-item .e-n-accordion-item-title-icon{padding: 8px;}
    .contact-form input{padding: 10px 12px !important;}
}

@media(max-width: 880px) {
    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container { top: 101px !important; }
    .footer-main-wrapper::after{height: 200px !important;}
}

@media(max-width: 767px) {

    .header-menu .elementor-menu-toggle span { height: 25px !important; }

    .header-menu .elementor-menu-toggle span svg { width: 38px !important; height: 25px !important; }

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul { padding: 20px !important; }
    .hero-title .elementor-heading-title span::after{height: 30px !important;}
    .pricing-top-wrapper{height: auto !important;}
}

@media(min-width: 575px) and (max-width: 767px) {
    .common-grid{--e-con-grid-template-columns: repeat(2, 1fr) !important;}
    .blog-loop-grid .elementor-loop-container.elementor-grid{grid-template-columns: repeat(2, 1fr) !important;}
}
@media(max-width: 575px) {

    .common-width-100{width: 100% !important;}
    .header-logo img{height: 45px !important;}

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container {top: 90px !important;}

    .header-contact-btn{ display: none !important; }

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul li:nth-last-of-type(2) { padding-bottom: 15px !important; border-bottom-color: #00000033 !important; }

    .header-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container ul li.mobile-menu { display: block; }

    .header-menu .mobile-menu a { display: inline-flex !important; justify-content: center !important; align-items: center !important; width: auto !important; gap: 10px !important; background-color: #272262 !important; color: #FFFFFF !important; padding: 9px 10px 9px 16px !important; border: 1px solid #272262; border-radius: 40px !important; -webkit-border-radius: 40px !important; -moz-border-radius: 40px !important; -ms-border-radius: 40px !important; -o-border-radius: 40px !important; transition: all 0.5s ease-in-out !important; -webkit-transition: all 0.5s ease-in-out !important; -moz-transition: all 0.5s ease-in-out !important; -ms-transition: all 0.5s ease-in-out !important; -o-transition: all 0.5s ease-in-out !important; }

    .header-menu .mobile-menu a:hover { background-color: #FFFFFF !important; color: #272262 !important; }

    .header-menu .mobile-menu a::after { content: '' !important; position: relative !important; width: 34px; height: 34px; background: url(./assets/images/purple-dog-foot-print-icon.svg); background-repeat: no-repeat; background-position: center center; background-color: #FFFFFF !important; background-size: 18px !important; opacity: 1 !important; z-index: 12 !important; border: 1px solid #272262; border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; -ms-border-radius: 50%; -o-border-radius: 50%; transition: all 0.5s ease-in-out !important; -webkit-transition: all 0.5s ease-in-out !important; -moz-transition: all 0.5s ease-in-out !important; -ms-transition: all 0.5s ease-in-out !important; -o-transition: all 0.5s ease-in-out !important; }

    .header-menu .mobile-menu a:hover::after { background: url(./assets/images/white-dog-foot-print-icon.svg) no-repeat; background-color: #272262 !important; background-position: center center; }
}

/*========================== MEDIA QUESRIES END ==========================*/