/**
 * Theme Name:     Astra Child
 * Author:         Brainstorm Force
 * Template:       astra
 * Text Domain:	   astra-child
 * Description:    The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
 */

/* ======= Common CSS: Start ======= */

*,
::before,
:after {
    box-sizing: border-box;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    box-sizing: border-box;
}

p {
    margin: 0px 0px 20px;
}

p:last-child {
    margin: 0px 0px 0px;
}

a {
    text-decoration: none;
    color: inherit;
}

a:hover,
a:focus {
    text-decoration: none;
}

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

ul,
ol,
li {
    list-style: none;
}

ul+ul,
ul+ol,
ol+ul,
ol+ol {
    margin: 20px 0px 0px;
}

a:focus,
a:focus-within,
a:focus-visible,
a:target,
a:visited,
a:active,
button:focus,
button:focus-within,
button:focus-visible,
button:target,
button:visited,
button:active,
input:focus,
input:focus-within,
input:focus-visible,
input:target,
input:visited,
input:active,
select:focus,
select:focus-within,
select:focus-visible,
select:target,
select:visited,
select:active,
textarea:focus,
textarea:focus-within,
textarea:focus-visible,
textarea:target,
textarea:visited,
textarea:active {
    outline: none;
    box-shadow: none;
    font-family: inherit;
}

::-webkit-input-placeholder,
:-moz-placeholder,
::-moz-placeholder,
:-ms-input-placeholder,
::-ms-input-placeholder,
::placeholder {
    color: inherit;
    opacity: 1;
    font-family: inherit;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* ======= Common CSS: End ======= */


/* ======= Header Section CSS: Start ======= */

body {
    padding-top: 30px;
}

.header-menu-icon,
.header-menu-icon .elementor-icon-wrapper {
    height: 30px;
}

.popup-menu ul li.menu-item-has-children ul {
    position: relative;
    top: unset !important;
    left: unset !important;
    margin: 0 !important;
    margin-top: 10px !important;
}
.popup-menu ul li.menu-item-has-children ul li a {
    justify-content: center;
}
.service-provide-img img {
    aspect-ratio: 1/1.2;
    object-fit: cover;
    object-position: 89% center;
}
.post-content a {
    color: #6EBD46 !important;
    text-decoration: underline !important;
}
.services-item .elementor-widget-image,
.services-item .elementor-widget-image a {
    height: 100%;
}
.services-item .elementor-widget-image a:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(180deg, #03192C00 0%, #03192CCC 100%);
    transition: all 0.35s ease-in-out;
}
.services-item:hover .elementor-widget-image a:before {
    background: #03192CCC;
}
.services-item .elementor-widget-heading,
.services-item .e-con.e-child {
    pointer-events: none;
}

/* ======= Header Section CSS: End ======= */


/* ======= Footer Section CSS: Start ======= */
.top-inner-col-1,
.top-inner-col-2,
.top-inner-col-3,
.top-inner-col-4 {
    width: fit-content !important;
}

.top-inner-col-1 {
    margin-right: auto !important;
}

/* ======= Footer Section CSS: End ======= */


/* =======  Section CSS: Start ======= */

/* home page css start */
/* Hero sec css */
.hero-inner-row.e-con:before {
    content: "" !important;
    backdrop-filter: blur(5px);
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0px;
    background: #03192ccc !important;
}

/* review start css */
.review-slider .elementor-swiper-button-prev svg,
.review-slider .elementor-swiper-button-next svg {
    display: none;
}

.review-slider .elementor-swiper-button-prev,
.review-slider .elementor-swiper-button-next {
    border: 1px solid #19253B;
    width: 70px;
    height: 70px;
    border-radius: 50px;
    opacity: 0.5;
    transition: all 0.3s ease-in-out;
}

.review-slider .elementor-swiper-button-prev:before {
    content: "";
    background: url(https://devstag.website/DentalTax/wp-content/uploads/2026/03/Vector-14.png);
    width: 18px !important;
    height: 18px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: auto;
}

.review-slider .elementor-swiper-button-next:before {
    content: "";
    background: url(https://devstag.website/DentalTax/wp-content/uploads/2026/03/Vector-15.png);
    width: 18px !important;
    height: 18px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: auto;
}

.review-slider .elementor-star-rating {
    position: absolute;
    top: 80px;
    left: 20px;
}

.review-slider .elementor-swiper-button-prev:hover,
.review-slider .elementor-swiper-button-next:hover {
    background: #fff;
    opacity: 1;
    border-color: #fff;
}

/* why choose sec css */
.why-choose-inner-row.e-con:before {
    content: "" !important;
    backdrop-filter: blur(5px);
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0px;
    background: #03192ccc !important;
}

/* about dental tax css */
.about-dental-bg-img {
    height: 100% !important;
}

/* home page css end */

/* service page css start */
/* .services-item:hover::before {
    background: #03192CCC !important;
}

.services-item:hover {
    justify-content: space-between;
}

.services-item-btn {
    display: none;
}

.services-item:hover .services-item-btn {
    display: block;
} */


.services-item {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    transition: all 0.4s ease;
}

/* Overlay */
.services-item::before {
    transition: all 0.4s ease;
}

.services-item:hover{ justify-content: space-between;}

.services-item:hover::before {
    background: #03192CCC !important;
}

.services-item-content {
    transition: all 0.4s ease;
}

.services-item-btn {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.4s ease;
}

.services-item:hover .services-item-btn {
    opacity: 1;
    transform: translateY(0);
}

.services-item:hover .services-item-content {
    transform: translateY(-10px);
}

.testi_slide .swiper-slide::before{ content: ""; width: 105px; height: 16px; background: url(https://devstag.website/DentalTax/wp-content/uploads/2026/03/Star.png) center center no-repeat; position: absolute; top: 40px; left: 50%; transform: translateX(-50%);}
.testi_slide .elementor-swiper-button{ width: 70px; height: 70px; border: 2px solid #19253B; opacity: 0.5; background: url(https://devstag.website/DentalTax/wp-content/uploads/2026/03/Vector-14.png) center center no-repeat; border-radius: 50%; transition: all 0.4s ease;}
.testi_slide .elementor-swiper-button.elementor-swiper-button-next{ background: url(https://devstag.website/DentalTax/wp-content/uploads/2026/03/Vector-15.png) center center no-repeat;}
.testi_slide .elementor-swiper-button:hover{ opacity: 1; border-color: #fff; background-color: #fff;}
.testi_slide .elementor-swiper-button svg{ display: none;}

.contact_form input.elementor-field{ min-height: 78px !important; padding: 30px 40px !important; box-shadow: none !important; outline: none !important; border-style: solid !important;}
.contact_form select.elementor-field-textual{ color: rgba(0, 8, 19, 0.7) !important; min-height: 78px !important; padding: 30px 40px !important; box-shadow: none !important; outline: none !important; border-style: solid !important;}
.contact_form textarea.elementor-field-textual{ padding: 30px 40px !important; box-shadow: none !important; outline: none !important; border-style: solid !important;}
.contact_form .elementor-button{ margin-top: 30px;}

/* service page css end */

.dental-tax .services-item:hover{ justify-content: end;}
.cta_add .elementor-icon-box-description a:hover{ color: #000813;}

/* =======  Section CSS: End ======= */

/* About page css start */

.about-banner-sec:before{
    backdrop-filter: blur(5px);
}
.inner-text{
text-decoration-line: underline;
text-decoration-style: solid;
text-decoration-skip-ink: auto;
text-decoration-thickness: auto;
text-underline-offset: auto;
text-underline-position: from-font;
}
.icon-sec .elementor-icon {
    height: 60px;
    width: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.accordian-sec .e-n-accordion .e-n-accordion-item {
    border-radius: 20px;
    background: #FFF;
    padding: 50px;
}
.team-member-sec.text {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    transform: translateY(100%);
    transition: all 0.4s ease-in-out !important;
    z-index: 2;
}

.team-member-sec {
    position: relative;
    overflow: hidden !important;
    transition: all 0.9s ease-in-out !important;
}

.team-member-sec:hover .team-member-sec.text {
    opacity: 1;
    transform: translateY(0);
    height: 100%;
    justify-content: space-between;
}

/* .pattern-main-sec{
    z-index: -1 !important;
} */
/* About page css end */

/* Blogs Page Css Start  */

.blog-left-listing-col .type-post .elementor-post__text {
    display: flex;
    flex-direction: column;
}
.blog-left-listing-col .type-post .elementor-post__text .elementor-post__meta-data {
    order: -1;
    display: flex;
    align-items: center;
    gap: 10px;
}
.blog-left-listing-col .type-post .elementor-post__text .elementor-post__meta-data:before {
    content: "";
    width: 6px;
    height: 6px;
    background: #33C1DC;
    display: block;
}
.blog-listing-right-content .elementor-widget-taxonomy-filter button.e-filter-item[aria-pressed="true"] {
    font-weight: 600 !important;
}
.blog-serach-bar form.e-search-form {
    background: #FFF;
    border-radius: 50px;
}
.blog-left-listing-col nav.elementor-pagination {
    position: absolute;
    left: 0;
    width: 100%;
    bottom: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
    flex-wrap: wrap;
}
.blog-sec .e-con-inner {
    position: relative;
}
.blog-sec .e-con-inner .blog-left-col {
    position: unset !important;
}
.blog-sec .e-con-inner .blog-left-col .blog-left-listing-col {position: unset !important;}
.blog-left-listing-col nav.elementor-pagination .page-numbers:not(.prev):not(.next) {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.35s ease-in-out;
}
.blog-left-listing-col nav.elementor-pagination .page-numbers.current:not(.prev):not(.next),
.blog-left-listing-col nav.elementor-pagination .page-numbers:hover:not(.prev):not(.next) {
    background: rgba(110, 189, 70, 0.1); /* Light green background */
}
.blog-left-listing-col nav.elementor-pagination .prev:before,
.blog-post-navigation .elementor-post-navigation__prev a:before {
    content: "";
    width: 26px;
    height: 26px;
    background: url(https://devstag.website/DentalTax/wp-content/uploads/2026/04/Arrow.svg) center center no-repeat;
    background-size: contain;
    transition: all 0.25s ease-in-out;
}
.blog-left-listing-col nav.elementor-pagination .prev:hover:before,
.blog-post-navigation .elementor-post-navigation__prev a:hover:before {
    background: url(https://devstag.website/DentalTax/wp-content/uploads/2026/04/Arrow-3.svg) center center no-repeat;
    background-size: contain;
}
.blog-left-listing-col nav.elementor-pagination .prev {margin-right: 75px !important; color: #6EBD46 !important;}
.blog-left-listing-col nav.elementor-pagination .next {margin-left: 75px !important;justify-content: flex-end;color: #6EBD46 !important;}
.blog-left-listing-col nav.elementor-pagination .next:after,
.blog-post-navigation .elementor-post-navigation__next a:after {
    content: "";
    width: 26px;
    height: 26px;
    background: url(https://devstag.website/DentalTax/wp-content/uploads/2026/04/Arrow-1.svg) center center no-repeat;
    background-size: contain;
    transition: all 0.25s ease-in-out;
}
.blog-left-listing-col nav.elementor-pagination .next:hover:after,
.blog-post-navigation .elementor-post-navigation__next a:hover:after {
    background: url(https://devstag.website/DentalTax/wp-content/uploads/2026/04/Arrow-2.svg) center center no-repeat;
    background-size: contain;
}
.blog-post-navigation .elementor-post-navigation__next a {margin-left: auto;}
.blog-post-navigation .elementor-post-navigation__link a{max-width: max-content !important;}
.blog-left-listing-col nav.elementor-pagination .prev,
.blog-left-listing-col nav.elementor-pagination .next,
.blog-post-navigation .elementor-post-navigation__link a {
    background: #F1F1F1;
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 15px;
    border-radius: 80px;
    min-width: 120px;
    transition: all 0.35s ease-in-out;
}
.blog-left-listing-col nav.elementor-pagination .prev:hover,
.blog-left-listing-col nav.elementor-pagination .next:hover,
.blog-post-navigation .elementor-post-navigation__link a:hover {
    background: #6EBD46;
    color: #FFF !important;
}
.blog-post-navigation .elementor-post-navigation__link a span{
    transition: all 0.35s ease-in-out;
}
.blog-post-navigation .elementor-post-navigation__link a:hover span {
    color: #FFF !important;
}
.blog-left-listing-col .type-post .elementor-post__text h3,
.blog-left-listing-col .type-post .elementor-post__text .elementor-post__excerpt {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
}
.blog-left-listing-col .e-loop-item .e-con-boxed {
    height: 100%;
}

body.search.search-results .ast-container {
    max-width: 100%;
    padding: 0 !important;
}
.blog-left-listing-col .post.type-post {
    background: transparent;
    border-bottom: 0;
}

/* Blogs Page Css End */

/* Blog Detail Page Css Start  */

.post-content h2.wp-block-heading {
    color: #000813;
    font-family: Inter;
    font-size: 25px;
    font-style: normal;
    font-weight: 700 !important;
    line-height: 30px;
    letter-spacing: -0.05rem;
}
.post-content p + h2.wp-block-heading {
    margin: 50px 0 30px;
}
.post-content figure.wp-block-image {
    border-radius: 20px;
    overflow: hidden;
    margin: 50px 0;
}
.post-content figure.wp-block-image img {
    width: 100%;
}
.post-content h3.wp-block-heading {
    color: #000813;
    font-family: Inter;
    font-size: 22px;
    font-style: normal;
    font-weight: 700 !important;
    line-height: 30px;
    letter-spacing: -0.05rem;
}
.post-content ul.wp-block-list {
    margin-bottom: 20px;
}
body.archive.category .ast-container {
    max-width: 100%;
    padding: 0;
}

/* Blog Detail Page Css End */



/* ======= Responsive CSS: Start ======= */

/*
    Elementor Breakpoint For Responsive Screen :
    Mobile Portrait   : 575
    Mobile Landscape  : 767
    Tablet Portrait   : 991
    Tablet Landscape  : 1199
    Laptop            : 1599
*/

@media screen and (min-width: 1600px) and (max-width: 1780px) {}

@media screen and (min-width: 1600px) and (max-width: 1780px) {}

@media screen and (max-width: 1780px) {}

@media screen and (min-width: 1600px) and (max-width: 1680px) {}

@media screen and (max-width: 1680px) {}

@media screen and (max-width: 1599px) {

    .header-menu-icon,
    .header-menu-icon .elementor-icon-wrapper {
        height: 25px;
    }

    .top-inner-col-1 {
        margin-right: 0px !important;
        width: 100% !important;
    }
    .team-member-sec .team-member-sec.text {
        overflow: auto !important;
    }
    .blog-left-listing-col nav.elementor-pagination .prev {
        margin-right: 30px !important;
    }
    .blog-left-listing-col nav.elementor-pagination .next {
        margin-left: 30px !important;
    }
}

@media screen and (max-width: 1400px) {}

@media screen and (max-width: 1199px) {

    .review-slider .elementor-swiper-button-prev,
    .review-slider .elementor-swiper-button-next {
        width: 55px;
        height: 55px;
    }

    .review-slider .elementor-swiper-button-prev:before,
    .review-slider .elementor-swiper-button-next:before {
        width: 16px !important;
        height: 16px;
    }

    .testi_slide .elementor-swiper-button{
        width: 50px;
        height: 50px;
    }
    .blog-left-listing-col nav.elementor-pagination {
        bottom: 60px;
    }
    .accordian-sec .e-n-accordion .e-n-accordion-item {
        padding: 40px;
    }
}

@media screen and (max-width: 991px) {
    body {
        padding-top: 20px;
    }

    .review-slider .elementor-swiper-button-prev,
    .review-slider .elementor-swiper-button-next {
        width: 45px;
        height: 45px;
    }

    .review-slider .elementor-swiper-button-prev:before,
    .review-slider .elementor-swiper-button-next:before {
        width: 14px !important;
        height: 14px;
    }

    .review-slider .elementor-testimonial__content {
        padding-bottom: 30px !important;
    }
    .blog-left-listing-col nav.elementor-pagination {
        gap: 10px;
    }
    .blog-left-listing-col nav.elementor-pagination .page-numbers:not(.prev):not(.next) {
        width: 46px;
        height: 46px;
    }
    .blog-left-listing-col nav.elementor-pagination .prev, .blog-left-listing-col nav.elementor-pagination .next {
        padding: 10px 15px;
        gap: 10px;
        min-width: 105px;
    }
}

@media screen and (max-width: 767px) {

    .top-inner-col-1,
    .top-inner-col-2,
    .top-inner-col-3,
    .top-inner-col-4 {
        width: 100% !important;
    }

    .footer-menu .menu-link {
        justify-content: center !important;
    }

    .review-slider .elementor-swiper-button.elementor-swiper-button-prev {
        bottom: -22px;
        top: auto !important;
        left: calc(45% - 25px) !important;
    }

    .review-slider .elementor-swiper-button.elementor-swiper-button-next {
        bottom: -22px;
        top: auto !important;
        right: calc(45% - 25px) !important;
    }

    .testi_slide .swiper-slide{ padding: 70px 30px 30px 30px !important;}
    .testi_slide .elementor-swiper-button{ top: auto !important; transform: inherit !important; margin-top: 20px; left: calc(50% - 60px) !important;}
    .testi_slide .elementor-swiper-button.elementor-swiper-button-next{ left: calc(50% + 10px) !important;}
    .contact_form input.elementor-field{ padding: 30px 20px !important;}
    .contact_form select.elementor-field-textual{ padding: 30px 20px !important;}
    .contact_form textarea.elementor-field-textual{ padding: 30px 20px !important;}
    .blog-left-listing-col nav.elementor-pagination .prev {
        margin-right: 10px !important;
    }
    .blog-left-listing-col nav.elementor-pagination .next {
        margin-left: 10px !important;
    }
    .blog-left-listing-col nav.elementor-pagination .next:after,
    .blog-left-listing-col nav.elementor-pagination .prev:before {
        width: 20px;
        height: 20px;
    }
    .blog-left-listing-col nav.elementor-pagination .page-numbers:not(.prev):not(.next) {
        width: 40px;
        height: 40px;
    }
    .blog-left-listing-col nav.elementor-pagination .prev, .blog-left-listing-col nav.elementor-pagination .next {
        min-width: 95px;
    }
    .post-content p + h2.wp-block-heading {
        margin: 30px 0 20px !important;
    }
    .post-content figure.wp-block-image {
        margin: 30px 0 !important;
        border-radius: 10px;
    }
    .post-content h2.wp-block-heading {
        font-size: 22px;
        line-height: 1;
    }
}

@media screen and (max-width: 575px) {
    .review-slider .elementor-swiper-button.elementor-swiper-button-prev {
        left: calc(45% - 35px) !important;
    }

    .review-slider .elementor-swiper-button.elementor-swiper-button-next {
        right: calc(45% - 35px) !important;
    }
    .accordian-sec .e-n-accordion .e-n-accordion-item {
        padding: 25px;
    }   
}

/* ======= Responsive CSS: End ======= */