/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

.worldmap-contact-form .row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 20px;
}

.worldmap-contact-form .column {
  flex: 1;
  min-width: 250px;
}

.worldmap-contact-form input,
.worldmap-contact-form textarea {
  width: 100%;
  background: transparent;
  border: 1px solid #fff;
  color: #fff;
  padding: 15px;
  font-size: 16px;
  border-radius: 0px;
  outline: none;
}

.worldmap-contact-form textarea {
  max-height: 100px;
  resize: vertical;
}

.worldmap-contact-form ::placeholder {
  color: white;
  opacity: 0.9;
}

.worldmap-contact-form input[type="submit"] {
  background-color: #fff;
  color: #b41524;
  border: none;
  padding: 15px 30px;
  font-size: 16px;
  font-weight: bold;
  border-radius: 0px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.worldmap-contact-form input[type="submit"]:hover, .worldmap-contact-form input[type="submit"]:focus {
  background-color: #ddd;
}
.worldmap-contact-form  span.wpcf7-not-valid-tip {
    color: white;
}

div#wpcf7-f124-p10-o1 .wpcf7-response-output {
    color: white !important;
}

/*swiper code  */
      .carousel-container {
/*       width: 600px; */
      height: 350px;
      border-radius: 6px;
/*       box-shadow: 0 4px 12px rgba(0,0,0,0.1); */
      padding: 20px 40px;
      position: relative;
      overflow: hidden;
    }

      .carousel-container .swiper { height: 100%; }
      .carousel-container  .swiper-slide {
      display: flex;
      align-items: center;
    }

    /* plain image, no crop or border */
     .carousel-container  .avatar {
      width: 225px;
/*       height: 225px; */
      flex-shrink: 0;
      margin-right: 30px;
      object-fit: cover;
      border-radius: 4px; /* optional soft corners */
    }

      .carousel-container .text {
      flex: 1;
      position: relative;
		max-width:600px;
      padding-right: 60px;
    }
    .text blockquote {
      font-size: 16px;
      line-height: 1.5;
      color: #444;
      margin-bottom: 20px;
      position: relative;
      padding-left: 30px;
    }
    .text blockquote:before {
      content: "“";
      font-size: 48px;
      color: #c00;
      position: absolute;
      left: 0;
      top: -10px;
    }

	.carousel-container  p {
      font-size: 20px;
    }
      .carousel-container  .industry {
      font-weight: bold;
      color: #c00;
      font-size: 22px;
      text-transform: uppercase;
		  color: #B42129;
    }

    /* Swiper pagination bullets */
   .carousel-container .swiper-pagination {
      position: absolute;
      right: 20px;
      top: 50%;
      transform: translateY(-50%);
      display: flex;
      flex-direction: column;
    }
   .carousel-container .swiper-pagination-bullet {
      width: 10px;
      height: 10px;
      margin: 6px 0;
      background: transparent;
      border: 2px solid #c00;
      opacity: 0.3;
      transition: opacity 0.3s;
    }
   .carousel-container .swiper-pagination-bullet-active {
      opacity: 1;
      background: #c00;
    }
 .carousel-container img.quote {
    max-width: 50px;
    margin-bottom: 10px;
}

/* Home page dynamic posts */

    .feature-card {
      /* border-top: 1px solid #ccc; */
      /* padding: 2rem 0; */
      max-width: 800px;
      position: relative;
    }

    .feature-card .date {
      display: inline-flex;
      /* background-color: white; */
      align-items: center;
      padding: 0 6px;
      margin-bottom: 1rem;
    }

    .feature-card .date .day {
      color: #c00;
      font-weight: bold;
      font-size: 20px;
      padding: 2px 6px 2px 6px;
      background: white;
    }

    .feature-card .date .month {
      color: #c00;
      font-size: 20px;
      font-weight: normal;
      padding: 2px 6px 2px 6px;
      background: white;
      margin-left: 5px;
    }

    .feature-card .title {
      font-size: 2rem;
      font-weight: bold;
      line-height: 1.3;
      margin-bottom: 1.5rem;
      color: white;
      border-top: 1px solid;
      padding-top: 30px;
      margin-top: 10px;
      margin-bottom: 50px;
          padding-right: 100px;
    }

    .feature-card .read-more {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      font-size: 16px;
      color: white;
      text-decoration: none;
      gap: 0.25rem;
      position: absolute;
      top: 90px;
      right: 0;
    }

    .feature-card .read-more::after {
      content: '↗';
      font-size: 0.9em;
    }

/*dynamic post responsive  */
.services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: minmax(200px, auto);
  /* border-top: 1px solid #e0e0e0; */
}

.service-item {
  position: relative;
  padding: 80px 50px 70px 50px;
  border-left: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
}

/* first in row: no left border */
.service-item:nth-child(3n+1) {
  border-left: none;
}

/* last in row: no right border */
.service-item:nth-child(3n) {
  border-right: none;
}

/* last row (items 4,5,6): no bottom border */
/* .service-item:nth-last-child(-n+3) {
  border-bottom: none;
} */

/* Remove bottom border from last row (1 to 3 cards) */
.service-item:nth-last-child(1),
.service-item:nth-last-child(2),
.service-item:nth-last-child(3) {
  border-bottom: none;
}

/* ...plus your .service-number and .service-content styles from before */

.services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  /* force exactly two rows of three */
  grid-auto-rows: minmax(200px, auto);
  /* border-top: 1px solid #e0e0e0; */
}

.service-number {
  position: absolute;
  top: 25px;
  right: 1rem;
  font-size: 5rem;
  line-height: 1;
  color: rgb(180 33 41 / 10%);
  /* font-weight: 800; */
  z-index: 0;
  user-select: none;
  font-weight: 500;
}

.service-content {
  position: relative;
  z-index: 1;
}

.service-content h3 {
  margin: 0 0 0.5rem;
  font-size: 1.25rem;
}

.service-content p {
  margin: 0 0 1rem;
  font-size: 0.95rem;
  color: #444;
  line-height: 1.4;
}

.service-content a {
  font-size: 0.95rem;
  color: #c00;
  text-decoration: none;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
}


.service-content a span {
  margin-left: 0.25em;
}

.service-item h3 {
    font-size: 30px;
    color: #000;
    font-weight: 600;
}

.service-item p {
    font-size: 16px;
    color: #5F5C5B;
    line-height: 1.3em;
}

.service-item a {
    color: #B42129;
    font-size: 16px;
}

/* main menu */
@media only screen and (min-width: 1024px) {
  .main-nav-menu a.hfe-menu-item {
    border-right: 1px solid #BBBBBB;
}
  .main-nav-menu .blog-menu a, .main-nav-menu .contact-us-menu a{
    border-right: none;
}
}


/* responsive service section home page */
@media only screen and (max-width: 1200px) {
  .services-grid{
        grid-template-columns: repeat(2, 1fr);
  }
  .service-item:nth-child(3n) {
    border-right: 1px solid #e0e0e0;
}
.service-item:nth-last-child(-n+3) {
    border-bottom: 1px solid #e0e0e0;
}

/* home page dynamic blog section */
.feature-card .title {
    font-size: 1.5rem;
    padding-right: 0;
}
.feature-card .read-more{
  position: relative;
  top: auto;
}

}

@media only screen and (max-width: 900px) {
  .services-grid{
        grid-template-columns: repeat(1, 1fr);
  }
  .service-item:nth-last-child(-n+3) {
    border-bottom: 1px solid #e0e0e0;
}
}

/* header menu responsive */

@media only screen and (max-width: 768px) {
  /* home carasoule tablet */
	.carousel-container  p {
      font-size: 18px;
    }
    .carousel-container .avatar {
    width: 180px;
}

}
@media only screen and (max-width: 600px) {
  /* home carasoule mobile */
.carousel-container {
    /* width: 600px; */
    height: 400px;
}
.carousel-container img.quote {
    max-width: 30px;
    margin-bottom: 10px;
}
    .carousel-container .avatar {
    width: 100px;
}
 .carousel-container{
  padding: 10px;
 }
}


/* media query from 1024 to 1400 */
@media only screen and (min-width: 1024px) and (max-width: 1400px){
a.hfe-menu-item {
    font-size: 18px !important;
}
.glass-blur-section-home h3 {
    font-size: 30px !important;
}
.glass-blur-section-home h4 {
    font-size: 28px !important;
}
}


/* homepage slider */
.meta-slider-section .bdt-slider-excerpt {
    visibility: hidden;
    height: 0px;
}


@media only screen and (min-width: 1400px) {
  /* home carasoule slider */
.meta-slider-section ul.bdt-slideshow-nav {
    flex-direction: row;
    position: absolute;
    left: 110px;
    top: 600px;
}
  
}

.meta-slider-section .bdt-sub-title.bdt-text-left h4{
  text-shadow:1px 2px 1px rgba(0, 0, 0, 0.6);
}

/* about page */


/* contact form of contact page css */

.cf7-unique-container-2024 {
    margin: 0 auto;
    padding: 30px;
    background: #F2F2F2;
/* 	    background: rgb(242 242 242 / 50%); */
}

.cf7-unique-container-2024 .cf7-form-wrapper {
    width: 100%;
}

/* Form Rows */
.cf7-unique-container-2024 .cf7-form-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 10px;
}

/* Form Groups */
.cf7-unique-container-2024 .cf7-form-group {
    position: relative;
    flex: 1;
    min-width: 0;
}

.cf7-unique-container-2024 .cf7-half-width {
    flex: 1;
    min-width: calc(50% - 10px);
}

.cf7-unique-container-2024 .cf7-third-width {
    flex: 1;
    min-width: calc(33.333% - 14px);
}

.cf7-unique-container-2024 .cf7-full-width {
    flex: 1;
    min-width: 100%;
}

/* Input Fields */
.cf7-unique-container-2024 .cf7-input,
.cf7-unique-container-2024 .cf7-select,
.cf7-unique-container-2024 .cf7-textarea {
    width: 100%;
    padding: 14px 16px;
    border: 2px solid rgb(0 0 0 / 20%);
    border-radius: 0px;
    font-size: 16px;
    font-family: inherit;
    background-color: #ffffff;
    transition: all 0.3s ease;
    box-sizing: border-box;
}

.cf7-unique-container-2024 .cf7-input:focus,
.cf7-unique-container-2024 .cf7-select:focus,
.cf7-unique-container-2024 .cf7-textarea:focus {
    outline: none;
    border-color: #e5e7eb;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
    background-color: #fefefe; 
}

.cf7-unique-container-2024 .cf7-input:hover,
.cf7-unique-container-2024 .cf7-select:hover,
.cf7-unique-container-2024 .cf7-textarea:hover {
    border-color: #d1d5db;
}

/* Placeholder Styles */
.cf7-unique-container-2024 .cf7-input::placeholder,
.cf7-unique-container-2024 .cf7-textarea::placeholder {
    color: #9ca3af; 
    font-size: 15px;
    font-weight: 400;
}

/* Select Dropdown */
.cf7-unique-container-2024 .cf7-select {
    cursor: pointer;
    background-position: right 12px center;
    background-repeat: no-repeat;
    background-size: 16px;
    padding-right: 40px;
    color: #9ca3af; /* Make default option look like placeholder */ 
}

.cf7-unique-container-2024 .cf7-select:focus,
.cf7-unique-container-2024 .cf7-select:valid {
     color: #374151; /* Change to normal text color when selected */ 
}

.cf7-unique-container-2024 .cf7-select option {
    padding: 10px;
    background-color: #ffffff;
    color: #374151;
}

.cf7-unique-container-2024 .cf7-select option:first-child {
    color: #9ca3af; /* First option (placeholder) in gray */
}

/* Textarea */
.cf7-unique-container-2024 .cf7-textarea {
    max-height: 150px;
    resize: vertical;
    font-family: inherit;
    line-height: 1.5;
}

/* Submit Button */
.cf7-unique-container-2024 .cf7-submit-btn {
    width: 100%;
    padding: 16px 32px;
    background: #e5e7eb;
    color: #ffffff;
    border: none;
    border-radius: 8px;
    font-size: 18px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}


/* Error and Success Messages */
.cf7-unique-container-2024 .wpcf7-validation-errors,
.cf7-unique-container-2024 .wpcf7-acceptance-missing {
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    color: #B42129;
    padding: 15px;
    border-radius: 8px;
    margin: 20px 0;
    font-size: 14px;
}

.cf7-unique-container-2024 .wpcf7-mail-sent-ok {
    background-color: #f0fdf4;
    border: 1px solid #bbf7d0;
    color: #16a34a;
    padding: 15px;
    border-radius: 8px;
    margin: 20px 0;
    font-size: 14px;
}

.cf7-unique-container-2024 .wpcf7-not-valid-tip {
    color: #B42129;
    font-size: 13px;
    margin-top: 5px;
    display: block;
}

.cf7-unique-container-2024 .wpcf7-not-valid {
    border-color: #B42129 !important;
    background-color: #fef2f2 !important;
}

/* Loading State */
.cf7-unique-container-2024 .wpcf7-spinner {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid #B42129;
    border-radius: 50%;
    animation: cf7-spin 1s linear infinite;
    margin-left: 10px;
}

@keyframes cf7-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Responsive Design */
@media (max-width: 768px) {
    .cf7-unique-container-2024 {
        padding: 20px;
        margin: 10px;
        border-radius: 8px;
    }
    
    .cf7-unique-container-2024 .cf7-form-row {
        flex-direction: column;
        gap: 15px;
        margin-bottom: 20px;
    }
    
    .cf7-unique-container-2024 .cf7-half-width,
    .cf7-unique-container-2024 .cf7-third-width {
        min-width: 100%;
        flex: none;
    }
    
    .cf7-unique-container-2024 .cf7-input,
    .cf7-unique-container-2024 .cf7-select,
    .cf7-unique-container-2024 .cf7-textarea {
        padding: 12px 14px;
        font-size: 16px; /* Prevents zoom on iOS */
    }
    
    .cf7-unique-container-2024 .cf7-submit-btn {
        padding: 14px 24px;
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .cf7-unique-container-2024 {
        padding: 15px;
        margin: 5px;
    }
    
    .cf7-unique-container-2024 .cf7-form-row {
        gap: 12px;
        margin-bottom: 15px;
    }
    
    .cf7-unique-container-2024 .cf7-input,
    .cf7-unique-container-2024 .cf7-select,
    .cf7-unique-container-2024 .cf7-textarea {
        padding: 10px 12px;
    }
    
    .cf7-unique-container-2024 .cf7-textarea {
        min-height: 100px;
    }
}

/* High DPI Displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .cf7-unique-container-2024 {
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
    }
}

/* Dark Mode Support */
/* @media (prefers-color-scheme: dark) {
    .cf7-unique-container-2024 {
        background-color: #1f2937;
        color: #f9fafb;
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
    }
    
    .cf7-unique-container-2024 .cf7-input,
    .cf7-unique-container-2024 .cf7-select,
    .cf7-unique-container-2024 .cf7-textarea {
        background-color: #374151;
        border-color: #4b5563;
        color: #f9fafb;
    }
    
    .cf7-unique-container-2024 .cf7-input::placeholder,
    .cf7-unique-container-2024 .cf7-textarea::placeholder {
        color: #9ca3af;
    }
} */

/* Print Styles */
@media print {
    .cf7-unique-container-2024 .cf7-submit-btn {
        display: none;
    }
    
    .cf7-unique-container-2024 {
        box-shadow: none;
        border: 1px solid #ccc;
    }
}


/* about slider */
/* 
.profile-card {
    margin-right: 20px !important;
} */

/* testimonial page */
.carousel-container.testimonial-page-carousle .card {
    display: flex;
    align-items: center;
    background: rgb(242 242 242 / 50%);
    padding: 90px 20px;
        clip-path: polygon(60px 0, 100% 0, 100% 100%, 0% 100%, 0 60px);

}
.carousel-container.testimonial-page-carousle {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 50px;
    height: 100%;
    column-gap: 30px;
}


/* media query max width  */
@media only screen and (max-width:1600px) {
  .carousel-container.testimonial-page-carousle .card {
    padding: 60px 20px !important;
}
}


@media only screen and (max-width:1400px) {
.carousel-container.testimonial-page-carousle .avatar {
    max-width: 125px;
}

.carousel-container.testimonial-page-carousle p {
    font-size: 18px;
    line-height: 1.3em;
}
}

@media only screen and (max-width:1024px){
.carousel-container.testimonial-page-carousle .card {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}
.carousel-container .text {
    padding-right: 20px;
}
}

@media only screen and (max-width:768px){
.carousel-container.testimonial-page-carousle {
    grid-template-columns: 1fr;
}
}

/* accordion */
    .accordion-custom {
        border-top: 1px solid #ddd;
    }

    .accordion-custom .accordion-item {
        border-bottom: 1px solid #ddd;
    }

    .accordion-custom .accordion-header {
        cursor: pointer;
        padding: 20px 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 30px;
            line-height: 1em;
        font-weight: 600;
        color: #000;
    }

    .accordion-custom .accordion-header.active {
        color: #B42129;
    }

    .accordion-custom .accordion-content {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
        padding:  10px 0;
        color: #555;
    }

    .accordion-custom .accordion-content p {
        margin: 0;
        padding: 10px 0 15px;
        font-size: 18px;
        line-height: 1.3em;
    }

    .accordion-custom .icon {
        font-size: 20px;
        transition: transform 0.3s;
    }

    .accordion-custom .accordion-header.active .icon {
        transform: rotate(0deg);
    }

    /* service list widget */
.services-widget {
    padding: 0;
    max-width: 100%;
    background: rgb(242 242 242 / 50%);
}

.services-title {
    font-size: 40px;
    font-weight: bold;
    color: #B42129;
    margin-bottom: 8px;
    border-bottom: 1.6px solid #D1D1D1;
    padding-bottom: 15px;
    padding-top: 20px;
    padding-left: 30px;
}

.services-list {
    list-style: none;
    margin: 0;
    /* padding: 0; */
    padding-bottom: 15px;
    padding-top: 20px;
    padding-left: 40px;
    /* font-size: 30px; */
}

.services-list li {
    font-size: 28px;
    padding-bottom: 30px !important;
    color: #000;
}

.services-list li a {
    color: #000;
}

/* sidbar contact form */
/* Form Container */
.sidebar-custom-contact-form {
    background: rgb(242 242 242 / 50%);
    padding: 0;
    /* border: 1px solid #ddd; */
    max-width: 100%;
}

/* Title */
.sidebar-custom-contact-form h3 {
  color: #b41c22;
  font-weight: bold;
  margin-top: 0;
  margin-bottom: 10px;
}

/* Labels */
.sidebar-custom-contact-form label {
    display: block;
    font-size: 20px;
    margin-bottom: 16px;
    color: #000 !important;
}

/* Inputs & Textarea */
.sidebar-custom-contact-form input[type="text"],
.sidebar-custom-contact-form input[type="email"],
.sidebar-custom-contact-form input[type="tel"],
.sidebar-custom-contact-form textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 2px;
    margin-bottom: 15px;
    font-size: 20px;
    box-sizing: border-box;
    margin-top: 10px;
}

/* Submit Button */
.sidebar-custom-contact-form input[type="submit"] {
  background: #B42129;
  color: #fff;
  font-weight: bold;
  padding: 10px;
  border: none;
  width: 100%;
  cursor: pointer;
      font-size: 30px;
}

.sidebar-custom-contact-form input[type="submit"]:hover {
  background: #B42129;
}

.sidebar-custom-contact-form .heading-section {
    /* font-size: 40px; */
    /* font-weight: bold; */
    /* color: #B42129; */
    margin-bottom: 8px;
    border-bottom: 1.6px solid #D1D1D1;
    padding-bottom: 15px;
    padding-top: 20px;
    padding-left: 30px;
}


.sidebar-custom-contact-form .heading-section h3 {
    font-size: 40px; 
    font-weight: bold;
   color: #B42129;
}

.sidebar-custom-contact-form .form-section {
    padding-bottom: 15px;
    padding-top: 20px;
    padding-left: 30px;
    padding-right: 30px;
}

.sidebar-custom-contact-form textarea.wpcf7-form-control.wpcf7-textarea {
    max-height:200px
}

/* responsive font height */
@media only screen and (max-width:768px) {
  .sidebar-custom-contact-form .heading-section h3, .services-title {
    font-size: 30px; 
}
.services-list li, .sidebar-custom-contact-form input[type="submit"], .accordion-custom .accordion-header{
  font-size: 20px;
  line-height: 1.3em;
}
}

/* blog cards */
.blogs-section .overlay-wrap {
    top: 0;
    height: 76px !important;
    width: 120px;
}

.blogs-section .stripe {
    top: 0;
    height: 76px !important; 
}

.blogs-section .overlay {
    padding: 10px !important;
}

.blogs-section p.name {
    font-size: 25px !important;
    font-weight: 400 !important;
}

.blogs-section .text {
    text-align: center;
    margin-bottom: 0;
}

.blogs-section .profile-card .card {
    width: 500px;
    height: 323px;
}

.blogs-section {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 500px;
    background: rgb(242 242 242 / 50%);
}

.blogs-section .meta-content {
    padding: 25px 20px;
}

.blogs-section .title h3 {
    font-weight: bold;
    color: #000;
}
@media only screen and (max-width:767px)
{
    .blogs-section .title h3{
        font-size: 24px;
    }
    .blogs-section .content p {
        font-size: 20px;
    }
}
.blogs-section .button a {
    color: #B42129;
}

.blog-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 24px;
    row-gap: 40px;
    /* margin: 0 auto; */
    max-width: 1650px;
    margin: 0 auto;
}


.custom-pagination {
    text-align: center;
    margin: 20px 0;
}

.custom-pagination .page-numbers {
    display: inline-block;
    margin: 0 5px;
    padding: 6px 12px;
    background: #f5f5f5;
    border-radius: 4px;
    color: #333;
    text-decoration: none;
}

.custom-pagination .current {
    background: #E13335;
    color: #fff;
}

.custom-pagination .page-numbers:hover {
    background: #E13335;
    color: #fff;
}

@media only screen and (max-width:1650px){
.blogs-section .profile-card .card {
    width: auto;
}
}
@media only screen and (max-width:1024px){
.blog-row {
    grid-template-columns: 1fr 1fr;
}
}
@media only screen and (max-width:768px){
.blog-row {
    grid-template-columns: 1fr;
}
.blogs-section {
    max-width: 100%;
}
.blogs-section .profile-card .card {
        width: 100%;
    }
}

/* blog detail page */
 .container-fluid.detail-container {
    display: flex;
    max-width: 1400px;
    margin: 30px auto;
    gap: 30px;
    padding: 0 20px;
        margin-top: 120px;
}

.meta {
    display: flex;
    gap: 20px;
    margin-bottom: 15px;
    margin-top: 20px;
    /* margin-bottom: 15px; */
    padding-bottom: 15px;
    border-bottom: 1.6px solid #EEEEEE;
}

.main-content img {
    width: 100%;
    height: auto;
}
img.wp-smiley, img.emoji {
    display: inline !important;
    border: none !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 0.07em !important;
    vertical-align: -0.1em !important;
    background: none !important;
    padding: 0 !important;
}

.back-link {
    display: inline-block;
    margin-bottom: 15px;
    color: #d32f2f;
    font-weight: 600;
    text-decoration: none;
}

img.img-fluid.main-image {
    margin-bottom: 20px;
}

.services-box h3, .contact-box h3 {
    color: #e53935;
    font-size: 20px;
    font-weight: bold;
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px;
    margin-bottom: 15px;
}
.contact-box label {
    font-size: 14px;
    margin-top: 5px;
    font-weight: 500;
}

/* 
.sidebar .wpcf7 {
    position: sticky;
    top: 20px;
    z-index: 999;
    width: 100%;
} */

@media (max-width: 1024px){
    .container-fluid.detail-container{
        flex-direction: column;
                margin-top: 50px;
    }
}

/* author box */
.author-box {
    display: flex
;
    gap: 15px;
    background: #F2F2F2;
    padding: 15px;
    border-radius: 6px;
        color: #000;
    margin-top: 40px;
}

.title-box {
    display: flex
;
    align-items: center;
    gap: 5px;
    margin-bottom: 10px !important;
}
.title-box .avatar {
    width: 50px;
    height: 50px !important;
    margin-right: 10px;
        border-radius: 50%;
}
.name-social {
    gap: 10px;
    display: flex;
    align-items: center;
    font-weight: 600;
    color: #000;
    font-size: 19px;
}
.title-div .position {
    font-size: 14px;
    color: rgb(58 58 58 / 80%);
}

.single-post .main-content, .archive .main-content{
    flex: 2;
}

.single-post aside.sidebar , .archive aside.sidebar {
    flex: 1;
}

.meta img {
    max-width:16px;
}

.meta span {
    display: flex;
    align-items: center;
    column-gap: 10px;
        color: #000;
}

.meta span a{
        color: #000;
}

.single-post .main-content h1, .archive  .main-content h1{
    color: #000;
    font-weight: bold;
    line-height: 1.1em;
    /* font-size: 40px; */
}


.single-post .main-content p, .archive .main-content p{
    font-size: 24px;
    line-height: 1.1em;
    color: #000;
}

.single-post .main-content h2 {
    color: #000;
    font-size: 40px;
        font-weight: bold;
}

aside.sidebar .services-widget {
    margin-bottom:40px;
}
/* recent post widget */
.recent-post-widget {
      padding: 0;
    max-width: 100%;
    background: rgb(242 242 242 / 50%);
    margin-bottom: 40px;
}

.recent-post-title {
    font-size: 40px !important;
    font-weight: bold !important;
    color: #B42129 !important;
    margin-bottom: 8px;
    border-bottom: 1.6px solid #D1D1D1;
    padding-bottom: 15px;
    padding-top: 20px;
    padding-left: 30px;
}

.recent-post-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
}

.recent-post-item img {
    width: 100px;
    height: 100px;
    object-fit: cover;
    border-radius: 3px;
    margin-right: 10px;
    flex-shrink: 0;
}

.recent-post-content {
    flex: 1;
}

.recent-post-date {
    font-size: 22px;
    color: #6D6D6D;
    display: block;
    margin-bottom: 5px;
}

.recent-post-heading {
    font-size: 24px;
    color: #000;
    margin: 0;
    line-height: 1.2;
    font-weight: bold;
}

.recent-post-items-wrap {
    padding-bottom: 15px;
    padding-top: 20px;
    padding-left: 40px;
}

@media only screen and (max-width: 768px) {
.recent-post-title{
 font-size: 30px !important;
}
.recent-post-heading {
    font-size: 20px;
    line-height: 1.3em;
}
.recent-post-date{
    font-size: 18px;
}

           

}

/* tracking page table */
      .unique-live-trackings {
            width: 100%;
            max-width: 1200px;
            margin: 20px auto;
            border: 1px solid #e0e0e0;
            border-radius: 4px;
            overflow: hidden;
            background-color: #fff;
        }
        .unique-live-trackings .table-header {
            background-color: #f8f8f8;
            padding: 12px 16px;
            font-size: 16px;
            font-weight: 600;
            color: #333;
            border-bottom: 1px solid #e0e0e0;
        }
        .unique-live-trackings table {
            width: 100%;
            border-collapse: collapse;
                margin-bottom: 0;

        }
        .unique-live-trackings th {
            text-align: left;
            padding: 12px 16px;
            font-size: 14px;
            font-weight: 600;
            color: #666;
            background-color: #fff;
            border-bottom: 1px solid #e0e0e0;
        }
        .unique-live-trackings .no-data {
            text-align: center;
            padding: 40px 0;
            color: #666;
            font-size: 16px;
        }
        .unique-live-trackings .no-data svg {
            display: block;
            margin: 0 auto 10px;
            width: 60px;
            height: 60px;
        }
        .no-data img {

    display: block;
    text-align: center !important;
    margin: 0 auto;
}


.crb-btn {
    padding: 12px 50px;
    background: #b42129;
    color: white;
    font-weight: 400;
    font-size: 24px;
}

/* dynamic list view */
li.service-about-icon-list-item {
    display: flex;
    list-style: none;
    gap: 10px;
}
ul.service-about-icon-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    /* justify-content: space-between !important; */
    padding-left: 0;
    row-gap: 12px;
	    column-gap: 12px;
}

@media only screen and (max-width:768px){
    ul.service-about-icon-list {
       grid-template-columns: 1fr;
  }  
  }


  .value-added-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr 1fr; /* 2 columns */
    gap: 25px 40px; /* row-gap and column-gap */
  }
  
  .value-added-list li {
    color: rgb(255 255 255 / 80%);
    font-size: 22px;
    display: flex;
    align-items: center;
    gap: 8px;
  }
  
  .value-added-list li span {
    font-weight: bold;
    color: #fff;
    min-width: 28px; /* keeps numbers aligned */
  }
  
  @media only screen and (max-width:1024px){
    .value-added-list ul {
        grid-template-columns: 1fr; 
      }
      .value-added-list li {
        font-size: 18px;
      }
      .carousel-container .swiper-pagination {
    right: 0px;
}
.single-post .main-content h1, .archive .main-content h1{
    font-size: 36px;
}
.single-post .main-content p, .archive .main-content p{
    font-size: 20px;
    line-height: 1.3em;
}
  }
  @media only screen and (max-width:768px){
  .archive .meta, .single-post .meta {
    flex-direction: column;
    gap: 10px;
}
  }



  
/* service page numbered section css */
.jarvis-list--auto .jarvis-list__items { counter-reset: service; }

.jarvis-list--auto .jarvis-list__item {
  display: grid;
  grid-template-columns: 140px minmax(240px, 1fr) minmax(300px, 1fr);
  gap: 24px;
  align-items: center;
  padding: 34px 0;
  border-top: 1px solid var(--line);
}

/* auto-number via pseudo-element so no number markup needed */
.jarvis-list--auto .jarvis-list__item::before {
  counter-increment: service;
  content: counter(service, decimal-leading-zero);
  font-weight: 800;
  font-size: 96px;
  color: var(--muted);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-left: 8px;
}
/* CSS (scoped to .jarvis-list so no leaks) */
.jarvis-list { 
  --line: #BBBBBB;
  --muted: rgba(0,0,0,0.1);
  --title: #424242;
  --muted-text:rgba(115,115,115,0.7);
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px;
  box-sizing: border-box;
}

.jarvis-list__items {
  list-style: none;
  margin: 0;
  padding: 0;
  counter-reset: item;
}

/* each row is a grid with 3 columns: number | title | description */
.jarvis-list__item {
  display: grid;
  grid-template-columns: 140px minmax(240px, 1fr) minmax(300px, 1fr);
  gap: 24px;
  align-items: start;
  padding: 34px 0;
  border-top: 1px solid var(--line);
  box-sizing: border-box;
}

/* remove top border for first item for the clean top edge */
.jarvis-list__item:first-child { border-top: none; }

.jarvis-list__number {
  font-size: 96px;
  line-height: 1;
  font-weight: 800;
  color: var(--muted);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-left: 8px;
  user-select: none;
  /* keep numbers visually de-emphasized like the screenshot */
  opacity: 1;
}

/* Title and description */
.jarvis-list__title {
    margin: 0;
    font-size: 35px;
    font-weight: 600;
    color: var(--title);
}

.jarvis-list__desc {
  margin: 0;
  font-size: 22px;
  color: var(--muted-text);
  max-width: 60ch;
  line-height: 1.2;
}

/* Responsive: collapse into two columns on small screens */
@media (max-width: 820px) {
  .jarvis-list__item {
    grid-template-columns: 80px 1fr !important;
    gap: 16px;
    align-items: start;
  }
  .jarvis-list__desc {
    grid-column: 2 / -1;
    font-size: 18px;
  }
  .jarvis-list__number {
    font-size: 56px;
    padding-left: 0;
  }
  .jarvis-list--auto .jarvis-list__item::before{
    font-size: 56px;
  }
  .jarvis-list__title{
    font-size: 30px;
    line-height: 1.2em;
  }
}

a.my-email-link {
    color: white !important;
}

a.phone-link {
    color: white !important;
}

.single-service .wpcf7-response-output, .home .wpcf7-response-output {
    color: white;
}

.main-nav-menu .hfe-nav-menu__toggle.elementor-clickable {
    margin-right: 5vw !important;
}

.hfe-nav-menu__submenu-arrow {
    top: 60px !important;
}