/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
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 5,700+ 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/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.11.10.1756940739
Updated: 2025-09-03 23:05:39

*/
@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap");
/**** Common Css ******/
body {
  font-family: "DM Sans", sans-serif;
  color: #757575;
  line-height: 30px;
}

.container {
  max-width: 1185px;
}
.btn-primary {
  background: #3f1a97;
}

.btn {
  font-size: 20px;
  border-radius: 46px;
  padding: 20px 90px;
  border: 0;
}

.btn-primary:hover,
.btn-primary:focus {
  background: #000;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  color: #000;
  font-weight: 600;
  font-family: "DM Sans";
}

h1 {
  font-size: 50px;
}

h2 {
  font-size: 40px;
}

h3 {
  font-size: 32px;
}

h4 {
  font-size: 24px;
}

h5 {
  font-size: 18px;
}

.fs_18 {
  font-size: 18px;
}

.fs_20 {
  font-size: 20px;
}
.fs_24 {
  font-size: 24px;
}
/*******  Header CSS ********/
.ast-theme-transparent-header header#masthead {
  position: fixed;
  left: 0;
  right: 0;
  transition: background 0.3s;
  border-bottom: 1px solid transparent;
}

header
  .site-primary-header-wrap.ast-builder-grid-row-container.site-header-focus-item.ast-container,
header .ast-mobile-header-wrap .ast-primary-header-bar {
  transition: 0.3s;
  max-height: 150px;
}
header.stickybar
  .site-primary-header-wrap.ast-builder-grid-row-container.site-header-focus-item.ast-container,
header.stickybar .ast-mobile-header-wrap .ast-primary-header-bar {
  max-height: 100px;
  min-height: unset;
}

header.stickybar {
  background: #fff !important;
  border-color: #f3f3f3 !important;
}
.main-navigation ul {
  align-items: center;
}
.contact_btn a.menu-link {
  min-width: 186px;
  border-radius: 46px;
  padding: 6px 30px 10px 30px;
  gap: 10px;
  opacity: 1;
  border: 2px solid rgba(0, 0, 0, 1);
  line-height: normal;
  width: 100%;
}
.contact_btn a.menu-link:hover,
.contact_btn a.menu-link:focus {
  background: #ff7940;
  color: #fff !important;
  border-color: #ff7940;
}
/*******  Home CSS ********/
.hm_banner {
  background: #fff8f6;
  padding-top: 255px;
  padding-bottom: 60px;
  height: 900px;
  display: flex;
  align-items: center;
  position: relative;
}

.hm_banner .img_wrap {
  position: absolute;
  right: 0;
  bottom: 0;
}
.hm_banner h1 {
  padding-bottom: 10px;
  font-size: 40px;
  max-width: 600px;
}
.hm_banner .content {
  margin-bottom: 30px;
}

/********* Home Below Banner **********/
.hm_below_banner {
  padding: 160px 0;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: left top 120px;
}
.trust_box {
  width: 274px;
  height: 274px;
  opacity: 1;
  border-radius: 12px;
  padding: 42px 30px;
  background: #341919;
  color: #fff;
}
.trust_box.trb_2 {
  height: auto;
}
.trust_box p {
  color: #dfdfdf;
  line-height: 1.5;
}
.trust_box h4 {
  color: #fff;
}
.trust_box.trb_1 {
  margin-bottom: 56px;
  margin-left: auto;
}
.trust_box.trb_1 h4 {
  border-top: 2px dashed #737373;
  padding-top: 20px;
}

.trust_box .circles_dots {
  padding-top: 50px;
}

.trust_box.trb_2 h4 {
  border-top: 2px solid #737373;
  padding-top: 15px;
}

.hm_below_banner .graphic_image {
  padding-left: 45px;
  padding-bottom: 25px;
}
.hm_below_banner .right_section {
  position: relative;
  display: flex;
  justify-content: flex-end;
}
.hm_below_banner .right_section .graphic_lines {
  position: absolute;
  left: 0;
  padding-left: 20px;
  z-index: -1;
  bottom: 0;
}
.hm_below_banner .right_section_inner {
  margin-left: auto;
  max-width: 274px;
  width: 100%;
}

/******* Services ********/

.main_services {
  background: linear-gradient(
    90deg,
    rgba(253, 189, 161, 0.06) 0%,
    rgba(63, 26, 151, 0.06) 100%
  );
  padding: 80px 0;
}
.custom-card {
  border-radius: 42px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  height: 100%;
  background: rgba(14 14 14 /10%);
  min-height: 422px;
  min-width: 380px;
}

.services .card-header {
  text-align: left;
  padding: 66px 20px 46px 40px;
}

.services .card-header h3 {
  margin: 0;
  font-weight: 600;
}

.services .card-body {
  border-radius: 36px !important;
  padding: 40px 40px 40px 44px;
  text-align: left;
  background: #fff;
  min-height: 262px;
  margin: 6px;
  font-size: 24px;
  color: #000;
  line-height: 1.5;
}

.services .card-body-content {
  border: none;
  width: 100%;
  margin: 0;
  border-bottom: 1px solid rgba(117, 117, 117, 1);
  min-height: 168px;
}
/******* Product Css ********/
.our_team {
  padding: 80px 0;
}
.our_team .hd_wrap {
  border-bottom: 1px solid rgba(223, 223, 223, 1);
  padding-bottom: 40px;
  margin-bottom: 36px;
}
.product_wrapper h3 {
  padding-bottom: 36px;
}
.product_slider .owl-stage {
  display: flex;
}
.our_team .slide_data {
  border-radius: 22px;
  opacity: 1;
  border-width: 1px;
  padding: 66px 56px;
  border: 1px solid rgba(223, 223, 223, 1);
  height: 100%;
  background: rgba(255, 251, 249, 1);
}
.our_team .slide_data p {
  font-size: 20px;
}
.our_team .owl-item:nth-child(2n) .slide_data {
  background: rgba(101, 42, 237, 0.06);
}

/******* Footer ********/
.site-footer {
  background-color: #2f2f2f;
  text-align: center;
  padding: 110px 20px 20px;
  background-position: top 40px center;
  background-size: 100%;
  background-repeat: no-repeat;
}

.site-footer h4 {
  color: #fff;
  margin-bottom: 10px;
}

.site-footer h4 span {
  color: #ff7940;
}

.site-footer .footer_sub_title {
  margin-bottom: 20px;
}

.cta-btn {
  display: inline-block;
  border: 1px solid #fff;
  color: #fff;
  text-decoration: none;
  transition: all 0.3s ease;
}

.cta-btn:hover,
.cta-btn:focus {
  background: #ff7940;
  border-color: #ff5722;
  color: #fff;
}

.footer-nav ul {
  list-style: none;
  padding: 0;
  margin: 70px 0 35px;
  display: flex;
  justify-content: center;
  gap: 30px;
  flex-wrap: wrap;
}

.footer-nav a {
  text-decoration: none;
  font-size: 18px;
  transition: color 0.3s ease;
  color: #fff;
  font-weight: 500;
}

.footer-nav a:hover,
.footer-nav a:focus {
  color: #ff5722;
}
.footer-address {
  margin-bottom: 100px;
  color: #fff;
  font-weight: 500;
}

.footer-address h5 {
  font-size: 18px;
  color: #fff;
  margin-bottom: 15px;
}
.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  padding-top: 15px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  font-size: 18px;
  color: #fff;
}

/******* Responsive ********/
@media (max-width: 1500px) {
  .services .card-body .card-body-content {
    max-width: 255px;
  }
}
@media (max-width: 1199px) {
  .hm_banner {
    padding-top: 140px;
    height: auto;
    text-align: center;
  }
  .main-header-menu > .menu-item > .menu-link,
  #astra-footer-menu > .menu-item > .menu-link {
    font-size: 18px;
  }
  .contact_btn a.menu-link {
    padding: 10px 30px 10px 30px;
    text-align: center;
    justify-content: center;
  }
  .hm_banner .img_wrap {
    position: relative;
    margin-top: 40px;
    text-align: center;
  }
  .hm_banner .content_wrap {
    max-width: 640px;
    margin: 0px auto 50px auto;
  }
}
@media (max-width: 991px) {
  .contact_btn a.menu-link {
    border: 0 !important;
    text-align: left;
    padding-top: 20px !important;
  }
  .hm_below_banner {
    padding: 60px 0;
  }
  .custom-card {
    min-width: unset;
  }
  .custom-card {
    min-width: unset;
    min-height: auto;
  }

  .services .card-header {
    padding: 30px 30px 20px;
  }

  .services .card-header h3 {
    font-size: 24px;
  }

  .services .card-body {
    font-size: 20px;
    padding: 20px;
    min-height: 180px;
  }
}
@media (max-width: 767px) {
  h2 {
    font-size: 30px;
  }
  h3 {
    font-size: 24px;
  }
  h4 {
    font-size: 18px;
  }
  .btn {
    padding: 20px 60px;
  }
  .hm_banner h1 {
    font-size: 35px;
  }
  .hm_below_banner .left_section {
    display: flex;
    flex-direction: row-reverse;
    grid-gap: 30px;
  }
  .hm_below_banner .content_wrap {
    flex: 1;
  }
  .hm_below_banner .graphic_image {
    display: none;
  }
  .our_team .hd_wrap {
    text-align: center;
  }
  .product_wrapper h3 {
    text-align: center;
  }
  .our_team .slide_data {
    padding: 30px;
  }
}
@media (max-width: 575px) {
  .site-footer {
    padding-top: 60px;
  }

  .hm_below_banner .left_section {
    flex-wrap: wrap;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    text-align: center;
  }
  .hm_below_banner {
    background-position: center;
  }
  .trust_box.trb_1 {
    margin: 0 auto;
  }

  .hm_below_banner .right_section_inner {
    margin: 0 auto;
  }
  .footer-bottom {
    justify-content: center;
    font-size: 15px;
    flex-direction: column;
  }
  .footer-bottom p {
    margin-bottom: 10px;
  }
  .our_team {
    padding: 60px 0;
  }
  .footer-nav ul {
    gap: 10px;
  }
}
