/* =========================
   ROOT VARIABLES
========================= */
:root {
    --color-primary: #E91E63;
    --color-dark: #000000;
    --color-light: #ffffff;
    --color-grey: #777777;
    --color-border: #dddddd;
    --font-family: 'Poppins', sans-serif;

    --fs-h1: 44px;
    --fs-h2: 36px;
    --fs-h3: 30px;
    --fs-h4: 24px;
    --fs-h5: 20px;
    --fs-h6: 18px;
    --fs-p: 16px;
    --fs-small: 14px;
}

/* =========================
   GLOBAL RESET
========================= */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-family);
    font-size: var(--fs-p);
    color: var(--color-dark);
    background: var(--color-light);
    line-height: 1.6;
}

/* =========================
   TYPOGRAPHY DEFAULTS
========================= */

h1 { font-size: var(--fs-h1); font-weight: 700; }
h2 { font-size: var(--fs-h2); font-weight: 500; }
h3 { font-size: var(--fs-h3); font-weight: 600; }
h4 { font-size: var(--fs-h4); font-weight: 600; }
h5 { font-size: var(--fs-h5); font-weight: 500; }
h6 { font-size: var(--fs-h6); font-weight: 500; }

p, li, span {
    font-size: var(--fs-p);
    color: var(--color-grey);
}

a {
    text-decoration: none;
    color: var(--color-dark);
    transition: 0.3s;
}

a:hover {
    color: var(--color-primary);
}

ul {
    list-style: none;
    padding-left: 0;
}

/* =========================
   UTILITY CLASSES
========================= */
.fw-300 { font-weight: 300; }
.fw-400 { font-weight: 400; }
.fw-500 { font-weight: 500; }
.fw-600 { font-weight: 600; }
.fw-700 { font-weight: 700; }

.text-primary { color: var(--color-primary) !important; }
.bg-primary { background: var(--color-primary) !important; }
.highlights-span { 
     color: var(--color-primary); 

     font-size: inherit;
      }


/* =========================
   HEADER
========================= */
.top-header {
    font-size: var(--fs-small);
    background-color: var(--color-dark);
    padding: 30px 0px;
}
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
    text-align: center;
    padding: 15px !important;
    transform: translateY(-5px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
}
.woocommerce div.product .product_title {
    font-size: 24px;
    font-weight: 600;
}
.single-product .woocommerce-Price-amount.amount{
	    color: #e91e63;
    font-size: 36px;
    font-weight: 600;
}
/* =========================
   NAVBAR
========================= */

.navbar-main {
  padding: 35px 0px;
}

.nav-link {
    /* font-weight: 500; */
    font-size: var(--fs-p);
    color: var(--color-dark);
    border-bottom: 1px solid transparent;
}
.nav-link:focus, .nav-link:hover , .nav-link.active {
    border-color: var(--color-primary);
}



.btn-website {
   background: var(--color-primary);
   color: var(--color-light);
   border-radius: 4px;
   font-size: 1rem;
   padding: 16px 48px;
}




/* =========================
   SEARCH BOX
========================= */

.search-box {
  background-color: #f5f5f5;
  max-width: 245px;
  border-radius: 4px;
  margin-right: 2rem;

}
.search-box input {
    border-radius: 0px;
    border-right: none;
    box-shadow: none;
    border: 1px solid transparent;
    background: transparent;
}

.search-box button {
    border-radius: 0px;
    background: none;
    border: 1px solid transparent;
    border-left: none;
}

/* =========================
   HERO SECTION
========================= */
.hero-slider {
    padding: 40px 0 0px;
}

.hero-slider h2 {
    color: var(--color-light);
}

.slide-item  .container > div {
    padding-bottom: 100px;
}
.slide-item  .container > div .silder-title {
  margin-bottom: 3rem;
  font-size: calc(var(--fs-h1) - 4px);
      font-weight: 500;
}
.slick-slide img {
  margin-top: auto;
}

.btn-link {
    color: var(--color-light);
    /* border-bottom: 1px solid var(--color-light); */
    padding-bottom: 20px;
    font-weight: 500;
    text-decoration: none;
}
.btn-link span {
    border-bottom: 1px solid var(--color-light);
    color: var(--color-light);
    margin-right: 4px;
}

/* dots style slick-dots */


.hero-slider  {
    /* width: 12px;
    height: 12px; */
    /* background-color: #ffffff; */
}

.slick-dots li button:before {
    font-size: 12px;
    color: #ffffff;
    opacity: 1;
}
.slick-dots li.slick-active button:before {
    color: var(--color-primary);
    opacity: 1;
    /* border: 5px solid var(--color-light); */
    padding: 0px;
}

.hero-slider  .slick-dots {
    bottom: 15px;
}
.hero-slider .slick-dots li button {
  padding: 0px;
}


.hero-slider .slick-dots li  {

}


/* =========================
   FIX BOXES
========================= */
.fix-box {
    /* border: 1px solid var(--color-border); */
    border: 1px solid #0000004D;
    padding: 25px 15px;
    border-radius: 8px;
    transition: .3s;
        height: 100%;
}
.fix-box p  {
  margin:25px 0 0 0;
  color: var(--color-dark);
}

.fix-box i {
    font-size: 50px;
    color: var(--color-dark);
}

.fix-box.active,
.fix-box:hover {
    background: var(--color-primary);
    color: var(--color-light);
    border-color: var(--color-primary);
}

.fix-box.active i,
.fix-box:hover i,
.fix-box.active p,
.fix-box:hover p {
    color: var(--color-light);
}

.fix-box.active img,
.fix-box:hover img {
    filter: brightness(0) invert(1);
}

.fix-box .icon {
    width: 56px;
    height: 56px;
    margin: auto;
}
.fix-box .icon > * {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* =========================
   UNDERLINE RED BAR
========================= */
.underline {
    width: 120px;
    height: 3px;
    background: var(--color-primary);
}




/* =========================
   ACCESSORIES SECTION
========================= */
.accessories-section {
  background: #EF6B560D;
}

.accessories-tabs a {
    color: var(--color-dark);
    font-weight: 500;
    padding-bottom: 5px;
    border-bottom: 2px solid transparent;
}

.accessories-tabs a.active,
.accessories-tabs a:hover {
    color: var(--color-primary);
    border-color: var(--color-primary);
}

.product-card {
    text-align: center;
    transition: .3s;
   
}

.product-card .pro-img-cover {
    position: relative;
    border-radius: 5px;
    padding: 20px;
    background: #fff;
    margin-bottom: 1rem;
}
.product-content {

}
.product-card .pro-img-cover .icon-heart {
  position: absolute;
  right: 22px;
  top: 22px;
  
}

.product-card img {
    max-width: 100%;
    height: 140px;
    object-fit: contain;
    margin-bottom: 10px;
}

.product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.product-card h6 {
    font-size: 1rem;
    color: var(--color-dark);
    font-weight: 500;
}

.product-card .price {
    color: var(--color-primary);
    /* font-weight: 600; */
}

.product-card .rating {
    color: #FFAD33;
    font-weight: 400;
    font-size: 20px;
}
/* =========================
   PLAN TABS & CONTENT
========================= */
.plans-tabs {
  margin-bottom: 62px;
}
.plans-tabs a {
    color: var(--color-dark);
    font-weight: 500;
    border-bottom: 2px solid transparent;
    padding-bottom: 5px;
    transition: 0.3s;
}

.plans-tabs a.active,
.plans-tabs a:hover {
    color: var(--color-primary);
    border-color: var(--color-primary);
}

.plan-card p {
  color: var(--color-dark);
}


.plan-box {
    display: none;
    animation: fadeIn 0.5s ease;
    
}
.plan-box > div1 {
    box-shadow: 0px 0px 8px 4px #CDCDCD29;
    border-radius: 12px;
    margin-top: 30px;
}
 

.plan-box.active {
    display: block;
}


.plans-tabs-top {
  margin-bottom: 5px;
}
.plans-tabs-top a {
    display:block;
}

.plans-tabs-top a.active,
.plans-tabs-top a:hover {
    color: var(--color-primary);
    border-color: var(--color-primary);
}

.plan-card p {
  color: var(--color-dark);
}


.plan-box-top {
    display: none;
    animation: fadeIn 0.5s ease;
    
}
.plan-box-top > div {
    box-shadow: 0px 0px 8px 4px #CDCDCD29;
    border-radius: 12px;
    margin-top: 30px;
}
 

.plan-box-top.active {
    display: block;
}

.plan-box-top h3, .plan-box-top h2, .plan-box-top h1{
   margin-bottom: 15px;
    color: #e91e63;
    font-size: 24px;
    font-weight: 500;
}

.plan-box-top img{
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
}
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* =========================
   SERVICE BOXES
========================= */
.service-box i {
  font-size: 30px;
  color: var(--color-primary);
}
.service-box h6 {
  margin-top: 10px;
  color: var(--color-dark);
}
.service-box p {
  color: var(--color-grey);
  font-size: var(--fs-small);
}

/* =========================
   CALL TO ACTION SECTION
========================= */
.cta-section {
  background: var(--color-dark);
  position: relative;
}
.cta-section h4, .cta-section h5 {
  color: var(--color-light);
}
.cta-section .btn-primary {
  background: var(--color-primary);
  border-radius: 30px;
  border: none;
}

.cta-section .bg {
    width: fit-content;
    position: absolute;
}

.cta-section .bg.bg1 {
right: 0px;
bottom: 0px;
}

.cta-section .bg.bg2 {
left: 0px;
top: 0px;
}
/* =========================
   BLOG SECTION
========================= */
.blog-card {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background: var(--color-dark);
  transition: .3s;
  height: 100%;
}
.blog-card img {
  width: 100%;
  object-fit: cover;
}
.blog-card.large img {
 object-fit: contain;
}
.blog-card.large .box-image {
    padding: 8px 0px;
}

.blog-card.medium .content {
  padding: 0px;
}
.blog-card.medium {
  padding: 25px 0px;
}
.blog-card .content {
  padding: 15px;
}
 .blog-card .content > * {
  color: var(--color-light);
}
.blog-card .content h6 {
  font-size: var(--fs-small);
}
.blog-card .read-more {
  color: var(--color-light);
  font-weight: 500;
  font-size: 12px;
  border-bottom: 1px solid var(--color-border);
}
.blog-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.blog-card .price-tag {
    display: block;
    width: fit-content;
    margin-top: 15px;
    background: var(--color-primary);
    color: #fff;
    padding: 5px 12px;
    font-weight: 600;
    border-radius: 20px;
    font-size: var(--fs-small);
}
.blog-card.teal {
  background: #006D6A;
  
  color: #fff;
}
.blog-card.teal .read-more {
  color: #fff;
}
.blog-card.large .title {
  font-size: 20px;
}

/* =========================
   FOOTER SECTION
========================= */
.footer-section {
  background: #000;
  color: #ccc;
}
.footer-section h4,
.footer-section h6 {
  color: #fff;
}
.footer-section a {
  color: #ccc;
  font-size: var(--fs-small);
  transition: .3s;
}
.footer-section a:hover {
  color: var(--color-primary);
}
.subscribe-box input {
  flex: 1;
  padding: 8px 12px;
  border: none;
 
  outline: none;
  width: 100%;
  background: transparent;
}
.subscribe-box button {

  border: none;
  color: #fff;
  background: transparent;
  padding: 0 15px;
}
form.subscribe-box.d-flex {
    border: 1px solid var(--color-light);
}
.social a i {
  color: #fff;
  font-size: 16px;
  transition: .3s;
}
.social a:hover i {
  color: var(--color-primary);
}

.footer-item-box {

}
.footer-item-box {
    display: flex;
    /* flex-wrap: nowrap; */
    gap: 30px;
}
.footer-item-box > div {
    width: fit-content;
}
.footer-item-box .menu-box.menu-box-one {
    max-width: 250px;
}
.footer-item-box .menu-box.menu-box-two {
    max-width: 250px;
}
.footer-item-box .menu-box.menu-box-four {
    max-width: 280px;
}

@media screen and (max-width:768px) {
  div#navMenu {
    order: 3;
}
.slide-item .container > div {
  padding-bottom: 40px;
}
.footer-item-box .menu-box.menu-box-one, .footer-item-box .menu-box.menu-box-two{
    max-width: 100%;
}
.plan-box-top .justify-content-between{
    display:block !important;
}
.plan-box-top img{border-radius:0;}
}

@media screen and (max-width:425px) {
.search-box {
    background-color: #f5f5f5;
    max-width: 170px;
    border-radius: 4px;
    margin-right: 2rem;
}
}
/* Custom css Start */

.page-header{
  background: #000;
    padding: 80px 0;
    color: #fff;
}
.blog-grid-section .blog-two-single-img-box img{
  width: 100%;
  height: 300px;
  object-fit: cover;
  border-radius: 8px;
}
.blog-grid-section .blog-two-single-detail .title a{
  font-size: 20px;
}
.blog-grid-section .blog-two-single-detail .title a:hover{
  color: #444;;
}
.blog-grid-section .blog-two-single-detail .btn-read-more{
    
    font-weight: 500;
    font-size: 12px;
    border-bottom: 1px solid var(--color-border);
} 
.blog-grid-section .blog-two-single-detail .btn-read-more:hover{
    
    color: #444;
} 

.blog-grid-section .blog-two-single-img-box h5{
  font-size: 16px;
}
.blog-page .blog-details-single-img-box img{
  width: 100%;
  height: 500px;
  object-fit: cover;
  border-radius: 8px;
}
.blog-page .blog-details-single-img-box h5{
  font-size: 16px;
}

.blog-sidebar .sidebar-post-image img{
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 8px;
}
.blog-sidebar .sidebar-post-content .date{
  font-size: 14px;
  color: #000;
  margin-bottom: 0;
}

.blog-sidebar .sidebar-post-content h5 a{
  font-size: 16px;
}
a:hover{
  color:#444
}


.contact-form {
  width: 80vw;
  display: flex;
  justify-content: space-between;
  background: #fff;
  margin: 50px 0;
}
.contact-form > * {
  width: 50%;
}
.contact-form .first-container {
  background: linear-gradient(45deg, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8)), url("https://colorlib.com/etc/cf/ContactFrom_v17/images/bg-01.jpg") center center/cover no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
}
.contact-form .first-container .info-container div {
  margin: 24px 0;
}
.contact-form .first-container .info-container div h3 {
  color: #fff;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.2;
  padding-bottom: 10px;
}
.contact-form .first-container .info-container div:first-of-type p {
  max-width: 260px;
  color: #999;
}
.contact-form .first-container .info-container div p {
  font-size: 16px;
  line-height: 1.6;
  color: #e91e63;
}
.contact-form .first-container .info-container div p a{
  color: #e91e63;
}
.contact-form .second-container {
  padding: 30px;
}
.contact-form .second-container h2 {
  font-size: 30px;
  font-weight: 400;
  color: #333;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 20px;
}
.contact-form .second-container form {
  display: flex;
  flex-direction: column;
}
.contact-form .second-container form .form-group {
  margin-bottom: 10px;
}
.contact-form .second-container form .form-group * {
  
  /* padding: 0 20px; */
}
.contact-form .second-container form .form-group label {
  display: flex;
  align-items: center;
  width: 100%;
  border: 1px solid #e6e6e6;
  font-size: 16px;
  color: #333;
  text-transform: uppercase;
  margin-top: -1px;
}
.contact-form .second-container form .form-group:first-of-type input {
  /* width: 50.1%;
  margin-right: -5px; */
}

.contact-form .second-container form .form-group input {
  width: 100%;
  font-size: 15px;
  margin-top: -2px;
  padding: 0px 20px;
  min-height: 55px;
  border: 1px solid #e6e6e6;
}
.contact-form .second-container form .form-group textarea{
  width: 100%;
  max-height: 140px;
  resize: none;
  padding: 10px 20px;
  margin-top: -1px;
  border: 1px solid #e6e6e6;
}
.contact-form .second-container form .form-group input::placeholder, .contact-form .second-container form .form-group textarea::placeholder {
  color: #999;
}
.contact-form .second-container form .form-group textarea {
  width: 100%;
  min-height: 80px;
  resize: none;
  padding: 10px 20px;
  margin-top: -1px;
}
.contact-form .second-container form button {
  width: 200px;
  height: 50px;
  background: #e91e63;
  color: #fff;
  font-size: 17px;
  font-weight: 600;
  text-transform: uppercase;
  border: 0;
  position: relative;
  left: calc(50% - 100px);
  cursor: pointer;
}
.contact-form .second-container form button:hover {
  background: #333;
}

@media screen and (max-width: 800px) {
  .contact-form {
    width: 90vw;
  }
}
@media screen and (max-width: 700px) {
  .contact-form {
    flex-direction: column-reverse;
  }
  .contact-form > * {
    width: 100%;
  }
  .contact-form .first-container {
    padding: 40px 0;
  }
}





.section-title {
    position: relative;
    margin-bottom:15px;
}
.title-effect {
    z-index: 99;
    position: relative;
    display: inline-block;
    transition: transform 0.5s, color 0.5s;
    transition-timing-function: 
cubic-bezier(0.2, 1, 0.3, 1);
}
.feature-text.box-shadow {
    box-shadow: 0 0px 30px rgba(0, 0, 0, 0.09);
    padding: 40px;
    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;
}
.feature-text .feature-icon span, .feature-text .feature-icon i {
    font-size: 40px;
    margin-bottom: 30px;
    display: inline-block;
    padding-left: 15px;
    transition: 0.5s 
ease-in-out;
    -webkit-transition: 0.5s 
ease-in-out;
    -o-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
}
.mb-30 {
    margin-bottom: 30px !important;
}



.parallax {
    background-size: cover !important;
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -ms-background-size: cover !important;
    position: relative;
    z-index: 0;
    background-origin: initial;
    background-position: center center !important;
    background-repeat: no-repeat;
}
.page-section-ptb {
    padding: 80px 0;
}
.bg-overlay-black-70:before {
    background: rgba(0, 0, 0, 0.7);
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
}




.woocommerce ul.products li.product a img{
  max-width: 100%;
    height: 200px !important;
    object-fit: contain;
    margin-bottom: 10px;
}
.woocommerce ul.products li.product .button{
  background: var(--color-primary);
    color: var(--color-light);
    border-radius: 4px;
    font-size: 1rem;
    padding: 16px 48px;
}
.woocommerce .woocommerce-ordering select{
  padding: 5px;
}
.woocommerce .woocommerce-result-count{
  color: #000;
}

.woocommerce ul.products .added_to_cart {
  margin-left: 5px;
}
.wc-block-cart .wc-block-cart__submit-container .wc-block-cart__submit-button{
  background: var(--color-primary);
    color: var(--color-light);
    border-radius: 4px;
    font-size: 1rem;
    padding: 16px 48px;
}
.wc-block-checkout__actions .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button{
  background: var(--color-primary);
    color: var(--color-light);
    border-radius: 4px;
    font-size: 1rem;
    padding: 16px 48px;
    border: none;
}
.subscribe-box p{
    display: flex;
    border: 1px solid var(--color-light);
}
.woocommerce-MyAccount-navigation ul li a{
    padding: 10px 20px;
    border: 1px solid #000;
    display: block;
    margin-bottom: 2px;
}
.page-id-11 .woocommerce-Button{
    background: var(--color-primary) !important;
    color: var(--color-light) !important;
    border-radius: 4px !important;
    font-size: 1rem !important;
    padding: 16px 48px !important;
    border: none;
}
.page-id-11 .woocommerce-MyAccount-content{
    border: 1px solid;
    padding: 20px;
}
.page-id-11 .woocommerce-info .button{
    background: var(--color-primary) !important;
    color: var(--color-light) !important;
    border-radius: 4px !important;
    font-size: 1rem !important;
    padding: 16px 48px !important;
}
.page-id-11.woocommerce-account .addresses .title .edit{
    float: left !important;
}

/* ===================== Pricing Card ============== */

.pricing-card {
      border: 0;
    border-radius: 12px;
    box-shadow: 0px 0px 8px 4px #CDCDCD29;
}

.plan-title {
  font-weight: 600;
    font-size: 28px;
    margin-bottom: 15px;
}

.old-price {
  text-decoration: line-through;
  color: #888;
  margin-bottom: 0.5rem;
}

.price {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
}

.price .currency {
  font-size: 1.5rem;
  vertical-align: super;
}

.price .decimal {
  font-size: 1.2rem;
}

.price .per {
  font-size: 1rem;
  color: #555;
}

.avg-text {
  color: #e91e63;
  font-weight: 600;
  margin-top: 0.5rem;
}

.conditions {
  font-size: 0.9rem;
  color: #555;
}

.features-title {
  margin-top: 1.5rem;
    font-weight: 500;
    text-align: left;
}
.list-unstyled.features {
    padding-left: 25px;
    text-align: left;
    list-style: circle;
}
.features li {
  font-size: 0.95rem;
  margin-bottom: 0.75rem;
}

.view-link {
  display: inline-block;
  margin-top: 0.5rem;
  color: #0d6efd;
  text-decoration: none;
}

.view-link:hover {
  text-decoration: underline;
}

.btn-danger {
  background: var(--color-primary);
    color: var(--color-light);
    border-radius: 4px;
    font-size: 1rem;
    padding: 16px 48px;
}

.btn-danger:hover {
  background-color: #000;
}

/* ===================== Testimonial Section ============== */
.service-features img{
    width:100px;
}
.testimonials-section {
  background-color: #FEF7F6;
}

.testimonial-card {
  background: #fff;
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04);
  height: 100%;
}

.avatar {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  object-fit: cover;
}

.role {
  color: #6c757d;
  font-size: 0.9rem;
}

.stars {
color: gold;
    font-size: 0.9rem;
    margin-top: 5px;
}

.testimonial-text {
  font-size: 0.95rem;
  line-height: 1.6;
  margin-top: 10px;
}

/* Slick dots */
.slick-dots li button:before {
  font-size: 10px;
  color: #d1d5db;
}

.slick-dots li.slick-active button:before {
  color: #e91e63;
}