/*****************************************************************
    Template Name    : TechSoft - IT Solution For Your Business Website Template
    Author           : Cute Themes
    Version          : 1.0
    Created          : 2021
    File Description : Main Responsive file of the template
*****************************************************************/

/*
@media only screen and (min-width: 992px) and (max-width: 1199px) {
	.navbar-light .navbar-brand {
		margin-left: 0;
		margin-right: 0;
		padding-top: 0;
		padding-bottom: 0;
		position: relative;
		top: -5px;
		left: -10px;
	}

	.navbar-area.is-sticky .navbar-light .navbar-brand {
		margin-left: 0;
		margin-right: 0;
		padding-top: 0;
		padding-bottom: 0;
		position: relative;
		top: 0;
		left: 0;
	}

	.techSoft-nav .navbar .navbar-nav .nav-item a {
		font-size: 15px;
	}
	.techSoft-nav .navbar .option-item {
		margin-right: 0px;
	}
	.techSoft-nav .navbar .other-option {
		margin-left: 0;
		margin-top: 0;
		display: none;
	}

	.home-slider-content {
		padding-bottom: 70px;
	}




}
@media only screen and (min-width: 768px) and (max-width: 991px) {
	.other-option {
		display: none;
	}

	.navbar-area {
		background-color: #ffffff;
		position: fixed;
		z-index: 999;
		-webkit-box-shadow: 0 5px 40px 0 rgba(0, 0, 0, 0.11);
		box-shadow: 0 5px 40px 0 rgba(0, 0, 0, 0.11);
	}

	.navbar-area.is-sticky .techSoft-responsive-nav .mean-container a.meanmenu-reveal {
		color: #000000;
	}

	.navbar-area.is-sticky .techSoft-responsive-nav .mean-container a.meanmenu-reveal span {
		background: #333;
	}

	.mean-container .mean-nav {
		margin-top: 43px;
	}

	.techSoft-responsive-nav .mean-container a.meanmenu-reveal {
		color: #333;
	}

	.techSoft-responsive-nav .mean-container a.meanmenu-reveal span {
		background: #333;
	}
	
	.home-area.home-area-2 {
		height: 100%;
		padding-top: 170px;
		padding-bottom: 100px;
		background-position: center;
	}
	.main-banner-content {
		padding-bottom: 0;
	}
	.home-slider-content {
		width: 100%;
		max-width: 550px;
		padding-bottom: 0px;
		text-align: center;
		margin: auto;
	}
	.counter-item {
		margin-bottom: 35px;
	}
	.counter-item:nth-last-child(-n + 2) {
		margin-bottom: 0px;
	}
	.home2-contact-form {
		padding: 40px 35px;
		margin-top: 35px;
	}
	.about-image {
		text-align: center;
		margin-top: 35px;
	}
	.hire-content {
		padding: 0px 30px;
	}
	.hire-content h2 {
		color: #fff;
		font-size: 38px;
	}
	.faq-accordion.first-faq {
		margin-bottom: 20px;
	}
	.page-title-content {
		text-align: left;
		margin-top: 90px;
	}
	.about-image2 {
		margin-bottom: 0;
		margin-top: 35px;
	}
	.services-details-image {
		text-align: center;
	}
	.services-details-image-1 {
		margin-top: 35px;
	}
	.services-details-image-2 {
		margin-bottom: 35px;
	}
	.services-details-image-3 {
		margin-top: 35px;
	}
	.contact-form {
		margin-top: 35px;
	}

	.page-title-content h2 {
		font-size: 30px;
	}

	.page-title-content ul {
		margin-top: 6px;
	}
	
	.project-area-3 .project-list-3 .nav li {
		margin: 10px 5px;
	}
	.widget-area .widget_techSoft_posts_thumb .item .info .title {
		font-size: 16px;
	}

	.widget-area .widget_search {
		-webkit-box-shadow: unset;
		box-shadow: unset;
		padding: 0;
	}

	.widget-area .widget_search form.search-top {
		margin-top: 40px;
	}

	.widget-area .widget_search form.search-bottom {
		margin-top: 0;
	}

	.tagcloud.section-top {
		margin-bottom: 35px;
	}

	.tagcloud.section-bottom {
		margin-bottom: 0;
	}
	.blog-details-desc .article-content .wp-block-gallery.columns-3 li {
		-ms-flex: 50%;
		-webkit-box-flex: 0;
		flex: 50%;
		max-width: 50%;
		padding-right: 10px;
		padding-left: 10px;
		margin-bottom: 35px;
	}
	.blog-details-desc .article-content .wp-block-gallery.columns-3 li:last-child {
		margin-bottom: 0px;
	}
	.comments-area .comment-respond .comment-form-author {
		float: left;
		width: 100%;
		padding-right: 0;
		margin-bottom: 20px;
	}
	.comments-area .comment-respond .comment-form-email {
		float: none;
		width: 100%;
		padding-left: 0;
		margin-bottom: 20px;
	}
	.projects-details-desc .project-details-info .single-info-box {
		-ms-flex: 0 0 50%;
		-webkit-box-flex: 0;
		flex: 0 0 50%;
		max-width: 50%;
		padding-left: 15px;
		padding-right: 15px;
		margin-bottom: 35px;
	}
	.projects-details-desc .project-details-info .single-info-box:last-child {
		margin-bottom: 0px;
	}

	.footer-box-item {
		margin-bottom: 35px;
	}
	.footer-box-item:nth-last-child(-n + 2) {
		margin-bottom: 0px;
	}
	.single-footer-widget-2-last-child {
		margin-top: 35px;
	}
}

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

	.section-title h2 {
		font-size: 30px;
	}
	.btn .btn-primary-one {
		margin-right: 0;
	}

	.other-option {
		display: none;
	}

	.navbar-area {
		background-color: #ffffff;
		position: fixed;
		z-index: 999;
		-webkit-box-shadow: 0 5px 40px 0 rgba(0, 0, 0, 0.11);
		box-shadow: 0 5px 40px 0 rgba(0, 0, 0, 0.11);
	}

	.navbar-area.is-sticky .techSoft-responsive-nav .mean-container a.meanmenu-reveal {
		padding-top: 0;
		color: #333;
	}

	.navbar-area.is-sticky .techSoft-responsive-nav .mean-container a.meanmenu-reveal span {
		background: #333;
	}

	.mean-container .mean-nav {
		margin-top: 43px;
	}

	.techSoft-responsive-nav .mean-container a.meanmenu-reveal {
		color: #333;
	}

	.techSoft-responsive-nav .mean-container a.meanmenu-reveal span {
		background: #333;
	}
	.home-area.home-area-2 {
		height: 100%;
		padding-top: 150px;
		padding-bottom: 100px;
		background-position: center;
	}
	.main-banner-content {
		text-align: left;
		padding-bottom: 0;
	}
	.main-banner-content h1 {
		font-size: 28px;
	}
	.home-slider-content {
		width: 100%;
		max-width: unset;
		padding-bottom: 0px;
		text-align: center;
		margin: auto;
	}
	
	.home-slider-title {
		font-size: 35px;
		font-weight: 800;
		margin-bottom: 20px;
	}
	.home-area .banner-image {
		padding-top: 40px;
	}
	.home2-contact-form {
		padding: 30px 15px;
		margin-top: 35px;
	}
	.about-inner-area {
		margin-top: 0;
	}
	.about-content h2 {
		font-size: 30px;
	}
	
	.flickity-prev-next-button {
		display: none;
	}
	.callbtn-content h2 {
		color: #fff;
		font-size: 30px;
		font-weight: 800;
		margin-bottom: 10px;
	}
	.single-testimonial .testimonial-avatar-img .quote {
		opacity: .02;
	}
	.copyright-area {
		text-align: center;
	}
	.copyright-area ul {
		text-align: center;
		margin-top: 10px;
	}
	.whychoose-number-bg span {
		font-size: 10.5rem;
	}
	.workprocess-number-bg span {
		font-size: 10.5rem;
	}
	.services-details-bg-title-content h2 {
		font-size: 33px;
	}
	.project-area .project-list .nav li {
		margin: 10px 5px;
	}
	.counter-item {
		margin-bottom: 35px;
	}
	.counter-item:last-child {
		margin-bottom: 0px;
	}
	.about-image {
		text-align: center;
		margin-top: 35px;
	}
	.hire-content {
		padding: 0px 30px;
	}
	.hire-content h2 {
		color: #fff;
		font-size: 33px;
	}
	.faq-accordion.first-faq {
		margin-bottom: 20px;
	}
	.page-title-content {
		text-align: left;
		margin-top: 90px;
	}
	.about-image2 {
		margin-bottom: 0;
		margin-top: 35px;
	}
	.services-details-image {
		text-align: center;
	}
	.services-details-image-1 {
		margin-top: 35px;
	}
	.services-details-image-2 {
		margin-bottom: 35px;
	}
	.services-details-image-3 {
		margin-top: 35px;
	}
	.contact-form {
		margin-top: 35px;
	}
	
	.consultation-content h2 {
		font-size: 30px;
	}
	.partner-section-2 .partner-item-2 a {
		padding: 30px 70px;
	}
	.page-title-area {
		background: #5764ec;
		background: linear-gradient(to right,rgb(87 100 236) 0,rgba(58,67,74,0) 70%);
	}
	.page-title-content h2 {
		font-size: 30px;
	}
	.page-title-content ul {
		margin-top: 6px;
	}
	.consultation-area {
		background-attachment: unset;
	}
	.woocommerce-result-count {
		margin-bottom: 20px;
	}
	.pagination-area .page-numbers {
		width: 40px;
		height: 40px;
		margin: 10px 5px;
		line-height: 40px;
		font-size: 15px;
	}
	.blog-details-desc .article-content .wp-block-gallery.columns-3 li {
		-ms-flex: 100%;
		-webkit-box-flex: 0;
		flex: 100%;
		max-width: 100%;
		padding-right: 10px;
		padding-left: 10px;
		margin-bottom: 35px;
	}
	.blog-details-desc .article-content .wp-block-gallery.columns-3 li:last-child {
		margin-bottom: 0px;
	}
	.comments-area .comment-respond .comment-form-author {
		float: left;
		width: 100%;
		padding-right: 0;
		margin-bottom: 20px;
	}
	.comments-area .comment-respond .comment-form-email {
		float: none;
		width: 100%;
		padding-left: 0;
		margin-bottom: 20px;
	}
	.coming-soon-area {
		height: 100%;
		padding-top: 160px;
		padding-bottom: 150px;
	}

	.coming-soon-content h1 {
		margin-bottom: 10px;
		font-size: 30px;
	}

	.coming-soon-content #timer div {
		margin-bottom: 35px;
	}

	.widget-area .widget_techSoft_posts_thumb .item .info .title {
		font-size: 16px;
	}

	.widget-area .widget_search {
		-webkit-box-shadow: unset;
		box-shadow: unset;
		padding: 0;
	}

	.widget-area .widget_search form.search-top {
		margin-top: 40px;
	}

	.widget-area .widget_search form.search-bottom {
		margin-top: 0;
	}

	.tagcloud.section-top {
		margin-bottom: 35px;
	}

	.tagcloud.section-bottom {
		margin-bottom: 0;
	}

	.blog-details-desc .article-content h3 {
		font-size: 20px;
	}

	.blog-details-desc .article-footer .article-share .social li a {
		width: 25px;
		height: 25px;
		line-height: 25px;
	}

	blockquote, .blockquote {
		padding: 18px !important;
	}

	blockquote p, .blockquote p {
		font-size: 16px !important;
	}
	.faq-accordion .accordion .accordion-item .accordion-title {
		padding: 20px;
		padding-left: 15px;
		padding-right: 35px;
	}
	.faq-accordion .accordion .accordion-item .accordion-title i {
		position: absolute;
		right: 15px;
	}
	.single-contact-box-2 h3 {
		font-size: 26px;
	}
	.subscribe-form .submit-btn {
		padding: 8px 30px;
	}
	.project-flip-area .project-flip-list .nav li {
		margin: 10px 5px;
	}
	.projects-details-desc .project-details-info .single-info-box {
		-ms-flex: 0 0 50%;
		-webkit-box-flex: 0;
		flex: 0 0 50%;
		max-width: 50%;
		padding-left: 15px;
		padding-right: 15px;
		margin-bottom: 35px;
	}
	.projects-details-desc .project-details-info .single-info-box:last-child {
		margin-bottom: 0px;
	}
	.project-area-3 .project-list-3 .nav li {
		margin: 10px 5px;
	}
	.footer-box-item {
		margin-bottom: 35px;
	}
	.footer-box-item:last-child {
		margin-bottom: 0px;
	}
	.footer-box-item-2 {
		margin-bottom: 35px;
	}
	.footer-box-item-2:last-child {
		margin-bottom: 0px;
	}
}

@media only screen and (min-width: 0px) and (max-width: 320px) {
	.newsletter-form .btn-primary {
		margin-right: 0;
		margin-bottom: 0;
	}
	.btn-primary {
		margin-right: 15px;
		margin-bottom: 15px;
	}
	.btn-primary:last-child {
		margin-bottom: 0px;
	}
	.home-area {
		padding-top: 150px;
	}
	.home-slider-title {
		font-size: 28px;
	}
	.about-content h2 {
		font-size: 30px;
	}
	.services-category-box {
		text-align: center;
	}
	.services-category-box a {
		margin-right: 10px;
		margin-bottom: 15px;
	}
	.single-footer-widget-2 .footer-download-btn-2 .app-link-btn-1 {
		margin-right: 10px;
		margin-bottom: 10px;
	}
	.callbtn-content .callbtn-number {
		font-size: 33px;
	}
	.hire-content {
		padding: 0px 20px;
	}
	.hire-content h2 {
		font-size: 26px;
	}
	.single-testimonial {
		padding: 20px 5px;
		margin: 0;
		margin-bottom: 20px;
	}
	.blog-details-desc .article-footer .article-tags {
		-ms-flex: 0 0 100%;
		-webkit-box-flex: 0;
		flex: 0 0 100%;
		max-width: 100%;
		margin-bottom: 20px;
	}
	.blog-details-desc .article-footer .article-share .social {
		padding-left: 0;
		list-style-type: none;
		text-align: left;
		margin-bottom: 0;
	}
	.blog-details-desc .article-footer .article-share {
		-ms-flex: 0 0 100%;
		-webkit-box-flex: 0;
		flex: 0 0 100%;
		max-width: 100%;
	}
	.single-testimonial2 {
		padding: 30px 25px;
		margin: 0;
		margin-bottom: 20px;
	}
	.faq-accordion .accordion .accordion-item .accordion-title {
		padding: 20px;
		padding-left: 15px;
		padding-right: 35px;
	}
	.faq-accordion .accordion .accordion-item .accordion-title i {
		position: absolute;
		right: 15px;
	}
	.single-contact-box-2 h3 {
		font-size: 26px;
	}
	.subscribe-form .submit-btn {
		padding: 8px 20px;
	}
	.error-area {
		padding-top: 100px;
	}
}
	*/
	
	
	
/* Responsive CSS pour FB DUAL EXPERTISE */

/* Règles générales */
* {
    box-sizing: border-box;
}

body {
    overflow-x: hidden;
}

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

/* Styles pour écrans moyens */
@media only screen and (max-width: 992px) {
    .home-slider-title {
        font-size: 40px !important;
    }
    
    .home-slider-description p {
        font-size: 16px;
    }
    
    .home-slider-content {
        max-width: 570px;
    }
    
    .section-title h2 {
        font-size: 32px;
    }
    
    #logo {
        width: 65px;
        height: 65px;
    }
    
    .single-services-box-1 {
        padding: 25px 20px;
    }
    
    .about-content {
        padding-right: 0;
        margin-bottom: 30px;
    }
}

/* Styles pour tablettes */
@media only screen and (max-width: 768px) {
    .home-slider, .home-slider-single-item {
        height: 500px;
    }
    
    .home-slider-title {
        font-size: 32px !important;
    }
    
    .home-slider-description p {
        font-size: 14px;
    }
    
    .home-slider-content {
        max-width: 90%;
        margin-bottom: 30px;
    }
    
    .home-slider-btn-box .btn {
        padding: 10px 20px;
        font-size: 14px;
    }
    
    .section-title h6 {
        font-size: 14px;
    }
    
    .section-title h2 {
        font-size: 28px;
    }
    
    .single-services-box-1 {
        margin-bottom: 20px;
    }
    
    .techSoft-responsive-nav .logo {
        width: 60%;
    }
    
    .about-content h1 {
        font-size: 28px;
    }
    
    .about-content h3 {
        font-size: 20px;
    }
    
    .whychoose-single-item {
        margin-top: 25px;
    }
    
    .whychoose-info {
        padding-left: 70px;
    }
    
    .whychoose-icon-box img {
        width: 50px;
    }
    
    .footer-area {
        padding: 70px 0;
    }
    
    .footer-about {
        padding-right: 0;
        margin-bottom: 30px;
    }
    
    .footer-list {
        margin-bottom: 30px;
    }
}

/* Styles pour mobiles */
@media only screen and (max-width: 576px) {
    .home-slider, .home-slider-single-item {
        height: 450px;
    }
    
    .home-slider-title {
        font-size: 26px !important;
    }
    
    .home-slider-description p {
        font-size: 14px;
    }
    
    .home-slider-content {
        max-width: 100%;
        margin-bottom: 20px;
    }
    
    .home-slider-btn-box .btn {
        padding: 8px 15px;
        font-size: 12px;
        margin-right: 5px !important;
    }
    
    .section-title h2 {
        font-size: 24px;
    }
    
    .section-padding {
        padding: 60px 0;
    }
    
    .ptb-100 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    
    .pt-100 {
        padding-top: 60px;
    }
    
    .pb-100 {
        padding-bottom: 60px;
    }
    
    .techSoft-responsive-nav .logo {
        width: 75%;
    }
    
    #logo {
        width: 50px;
        height: 50px;
    }
    
    .about-content h1 {
        font-size: 24px;
    }
    
    .about-content h3 {
        font-size: 18px;
    }
    
    .about-blockquote {
        padding: 5px 0 5px 20px;
    }
    
    .whychoose-info {
        padding-left: 60px;
    }
    
    .whychoose-info h3 {
        font-size: 16px;
    }
    
    .whychoose-icon-box img {
        width: 45px;
    }
    
    .copyright-area p {
        text-align: center;
        margin-bottom: 10px;
    }
    
    .copyright-area ul {
        text-align: center;
    }
}

/* Menu mobile amélioré */
@media only screen and (max-width: 991px) {
    .techSoft-responsive-nav {
        display: block;
    }
    
    .mean-container .mean-bar {
        background-color: transparent;
        padding: 0;
    }
    
    .mean-container a.meanmenu-reveal {
        color: #333;
        padding: 0;
        width: 35px;
        height: 30px;
        top: 0;
        right: 0;
    }
    
    .mean-container a.meanmenu-reveal span {
        background-color: #333;
        height: 3px;
        margin-top: 5px;
        border-radius: 3px;
    }
    
    .mean-container .mean-nav {
        margin-top: 10px;
        background-color: #fff;
    }
    
    .mean-container .mean-nav ul li a {
        color: #333;
        padding: 12px 5%;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
        font-size: 14px;
    }
    
    .mean-container .mean-nav ul li a.mean-expand {
        height: 26px;
    }
    
    .mean-container .mean-nav ul li a.mean-expand:hover {
        background-color: transparent;
    }
    
    .navbar-area {
        padding-top: 15px;
        padding-bottom: 15px;
    }
    
    .other-option {
        display: none;
    }
    
    .techSoft-nav-top-bar {
        display: none;
    }
}

/* Optimisations pour les petits téléphones */
@media only screen and (max-width: 375px) {
    .home-slider-title {
        font-size: 22px !important;
    }
    
    .home-slider-btn-box .btn {
        padding: 7px 12px;
        font-size: 11px;
        margin-right: 3px !important;
    }
    
    .section-title h2 {
        font-size: 22px;
    }
    
    .about-content h1 {
        font-size: 22px;
    }
}

/* Fix pour le menu de navigation mobile */
.techSoft-responsive-menu.mean-container {
    position: relative;
}

.techSoft-responsive-menu.mean-container .mean-bar {
    position: absolute;
    right: 0;
    top: 10px;
}

/* Ajustements des logos et images */
@media only screen and (max-width: 991px) {
    .techSoft-responsive-nav .logo img {
        max-width: 130px;
    }
    
    .footer-logo img {
        max-width: 80px;
    }
}

/* Améliorations des services boxes */
@media only screen and (max-width: 768px) {
    .single-services-box-1 {
        height: auto !important;
    }
    
    .single-services-box-1 .services-icon-12 i::before {
        font-size: 45px;
    }
    
    .single-services-box-1 h3 {
        font-size: 16px;
    }
}

/* Améliorations footer */
@media only screen and (max-width: 768px) {
    .footer-box-item {
        margin-bottom: 30px;
    }
    
    .footer-list h5 {
        margin-bottom: 15px;
    }
}




/*Gestion responsive des LOGOS*/
/* Logo dans le header */
@media only screen and (max-width: 576px) {
	#logo {
	  width: 45px;
	  height: 45px;
	  transition: all 0.3s ease;
	}
  }
  
  @media only screen and (max-width: 768px) {
	#logo {
	  width: 55px;
	  height: 55px;
	  transition: all 0.3s ease;
	}
  }
  
  @media only screen and (max-width: 992px) {
	#logo {
	  width: 65px;
	  height: 65px;
	  transition: all 0.3s ease;
	}
  }
  
  /* Logo dans le footer */
  @media only screen and (max-width: 768px) {
	.footer-logo img {
	  width: 40px;
	  height: 40px;
	}
  }




  /* Correction de l'espacement vertical excessif en mode responsive */
/*------------------------------------------------------------------*/
@media only screen and (max-width: 992px) {
	.section-padding {
	  padding: 60px 0;
	}
	
	/* Réduire l'espace entre les sections */
	.services-area-1,
	.about-area,
	.whychoose-area {
	  padding-top: 40px;
	  padding-bottom: 40px;
	}
	
	/* Réduire la marge inférieure des conteneurs de services */
	.single-services-box-1 {
	  margin-bottom: 20px;
	}
	
	/* Ajuster l'espacement vertical du slider */
	.home-slider-area {
	  margin-bottom: 0;
	}
	
	/* Réduire l'espace sous les titres de section */
	.section-title {
	  margin-bottom: 30px;
	}
  }
/*------------------------------------------------------------------*/
  
/* Ajustements supplémentaires pour les mobiles */
  @media only screen and (max-width: 576px) {
	.section-padding {
	  padding: 40px 0;
	}
	
	/* Espacement encore plus resserré pour mobile */
	.services-area-1,
	.about-area,
	.whychoose-area {
	  padding-top: 30px;
	  padding-bottom: 30px;
	}
	
	/* Réduire davantage l'espace entre les éléments */
	.row > [class*="col-"] {
	  margin-bottom: 15px;
	}
	
	/* Réduire l'espace après le dernier élément d'une rangée */
	.row > [class*="col-"]:last-child {
	  margin-bottom: 0;
	}
	
	/* Réduire l'espace entre le titre de section et les éléments */
	.section-title {
	  margin-bottom: 20px;
	}
  }
/*------------------------------------------------------------------*/
