/* ===================================
    Crafto - Web agency
====================================== */
/* font */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');
/* variable */
:root {     
    --base-color: #ffed00;
    --medium-gray:#6F7071;
    --dark-gray:#1C1D1F; 
    --alt-font: 'Inter', sans-serif;
    --primary-font: 'Inter', sans-serif;
}
body {
    font-size: 17px;
    line-height: 32px;
}
.top-space-margin {
    margin-top: 120px;
}
/* header */
.navbar .navbar-nav .nav-link {
    font-weight: 500;
    font-size: 18px;
}
header .navbar-brand img {
    max-height:56px;
}
header .btn.btn-switch-text.btn-medium > span {
    padding: 11px 30px;
}
.navbar .navbar-nav .dropdown.dropdown-with-icon .dropdown-menu li a img {
    border-radius: 0;
}
/* btn  */
.btn.btn-base-color {
    color: var(--dark-gray);
}
.btn.btn-box-shadow.btn-base-color:hover, .btn.btn-box-shadow.btn-base-color:active {
    color: var(--dark-gray);   
}
/* letter spacing */
.bg-base-color-transparent {
    background-color: rgba(204, 255, 0,0.9);
}
/* banner title */
.banner-title {
    font-size: 650px;
    word-break: normal;
    letter-spacing: -40px;
}
/* letter spacing */
.ls-minus-20px {
    letter-spacing: -20px;
}
.ls-minus-13px {
    letter-spacing: -13px;
}
.mt-minus-12 {
    margin-top: -12%;
}
/* word break normal */
.word-break-normal {
    word-break: normal;
}
/* bg color */
.bg-sherpa-blue {
    background-color: #333436;
}
/* page title */
.page-title-extra-large h1 {
    font-size: 5rem;
    line-height: 5rem;
}
/* team style */
.team-style-05 img {
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
}
.team-style-05:hover img {
    filter: grayscale(0%);
    -webkit-filter: grayscale(0%);
    -moz-filter: grayscale(0%);
}
.team-style-08 figure img {
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
}
.team-style-08:hover figure img {
    filter: grayscale(0%);
    -webkit-filter: grayscale(0%);
    -moz-filter: grayscale(0%);
}
.team-style-08 figure figcaption .social-icon a {
    background-color: var(--base-color);
}
.team-style-08 figure figcaption .social-icon a:hover {
    color: var(--dark-gray);
}
/* blog comment */
.blog-classic .card .blog-image img {
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
}
.blog-comment li .btn-reply:hover {
    color: var(--text-dark-gray);
}
/* tag */
.tag-cloud a {
    background-color: var(--white);
}
/* portfolio-image */
.portfolio-simple .grid-item .portfolio-image img {
    filter: grayscale(30%);
    -webkit-filter: grayscale(30%);
    -moz-filter: grayscale(30%);
}
.portfolio-simple .portfolio-box:hover .portfolio-image img {
    opacity: 1;
    filter: grayscale(0%);
    -webkit-filter: grayscale(0%);
    -moz-filter: grayscale(0%);
}
/* popular post sidebar */
.popular-post-sidebar li figure {
    width: 190px;
    height: auto;
}
.popular-post-sidebar li .media-body {
    padding-left: 40px;
}
/* social icon style 06 */
.social-icon-style-06 li {
    position: relative;
}
.social-icon-style-06 li:before {
    width: 6px;
    height: 6px;
    border-radius: 100%;
    background-color: var(--medium-gray);
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: -15px;
    transform: translateY(-50%);
    opacity: .5;
}
.social-icon-style-06 li:last-child:before {
    display: none;
}
/* footer */
footer .footer-logo img {
    max-height: 56px;
}
footer .nav-link {
    color:  var(--dark-gray);
}
.footer-navbar li a:hover {
    color: var(--dark-gray);
}
/* media query responsive */
@media (min-width: 992px) {
    .navbar .navbar-nav .dropdown.dropdown-with-icon .dropdown-menu {
        padding: 15px 25px;
    }
}
@media (min-width: 768px) {
    /* heading tag */
    h1 {
        font-size: 5rem;
        line-height: 5rem;
    }
    h2 {
        font-size: 3.75rem;
        line-height: 3.75rem;
    }
    h3 {
        font-size: 3.125rem;
        line-height: 3.125rem;
    }
}
@media (max-width: 1399px) {
    .banner-title {
        font-size: 500px;
    }
    header .btn.btn-switch-text.btn-medium > span {
        padding: 11px 22px;
    }
}
@media (max-width: 1199px) {
    .banner-title {
        font-size: 380px;
        letter-spacing: -25px;
    }
    .ls-minus-20px {
        letter-spacing: -15px;
    }
    header .btn.btn-switch-text.btn-medium > span {
        padding: 6px 11px;
    }
    .navbar .navbar-nav .nav-link {
        padding: 10px 12px;
    }
    footer .nav-link {
        padding: 2px 8px;
    }
}
@media (max-width: 991px) {
    .banner-title {
        font-size: 270px;
        letter-spacing: -15px;
    }
    .ls-minus-20px {
        letter-spacing: -10px;
    }
    .top-space-margin {
        margin-top: 100px;
    }
    header .btn.btn-switch-text.btn-medium > span {
        padding: 9px 24px;
    }
}
@media (max-width: 767px) {
    .banner-title {
        font-size: 200px;
        letter-spacing: -15px;
    }
    .process-step-style-10.hover-box:hover .hover-content {
        bottom: 0;
    }
    .ls-minus-20px {
        letter-spacing: -4px;
    }
    .ls-minus-13px {
        letter-spacing: -5px;
    }
}
@media (max-width: 575px) {
    .banner-title {
        font-size: 110px;
        letter-spacing: -3px;
    }
    .popular-post-sidebar li figure {
        width: 100%;
    }
    .popular-post-sidebar li .media-body {
        padding-left: 0;
        padding-top: 25px;
    }
}
/* Conteneur qui masque le débordement */
.logos-marquee {
  overflow: hidden;
}

/* Piste animée */
.logos-marquee-track {
  display: flex;
  align-items: center;
  gap: var(--logos-gap, 3rem);
  width: max-content;
  animation: logos-marquee var(--logos-speed, 18s) linear infinite;
}

/* Chaque item */
.logos-marquee-item {
  flex: 0 0 auto;
}

.logos-marquee-item img {
  height: var(--logos-height, 42px);
  width: auto;
  max-width: none;
  display: block;

}

/* Animation : on translate de la moitié car on duplique la liste */
@keyframes logos-marquee {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* Accessibilité */
@media (prefers-reduced-motion: reduce) {
  .logos-marquee-track { animation: none; }
}
/* Force une rangée horizontale scrollable (mobile + desktop) */
.logos-inline-scroll{
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  overflow-x: auto;
  overflow-y: hidden;
  gap: var(--logos-gap, 2rem);
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none; /* Firefox */
}
.logos-inline-scroll::-webkit-scrollbar{ display:none; }

/* Force chaque “col” à ne pas prendre 100% */
.logos-inline-scroll > *{
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
}

/* Taille des logos */
.logos-inline-scroll img{
  height: var(--logos-height, 42px);
  width: auto;
  max-width: none !important;
  display: block;
}

/* Optionnel: si tu utilises .row (marges négatives Bootstrap) */
.row.logos-inline-scroll{
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.logos-scroll {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-x;
  scrollbar-width: none;
}
.logos-scroll::-webkit-scrollbar { display: none; }

.logos-scroll__track{
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;

  gap: var(--logos-gap, 32px);

  /* clé pour centrer quand ça rentre */
  min-width: 100%;
  justify-content: center;

  /* clé pour scroller quand ça déborde */
  width: max-content;

  padding: 4px 2px;
}

.logos-scroll__item{ flex: 0 0 auto !important; }

.logos-scroll__item img{
  height: var(--logos-height, 90px);
  width: auto;
  max-width: none !important;
  display: block;
}
.logos-auto{ overflow:hidden; }              /* masque, le JS anime la piste */

.logos-auto__track{
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap: 40px;
  width: max-content;
  will-change: transform;
  justify-content: center;
}

.logos-auto__item{ flex:0 0 auto; }
.logos-auto__item img{ width:90px; height:auto; display:flex;   justify-content: center;
  align-items: center; }


/* Spoilers FAQ sans casser la grille Bootstrap existante */
.faq-spoiler{
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
}

.faq-spoiler > summary{
  display: block;          /* important : évite le rendu "list-item" */
  list-style: none;        /* enlève le marker */
  cursor: pointer;
}

.faq-spoiler > summary::-webkit-details-marker{
  display: none;           /* enlève le marker sur Chrome/Safari */
}

/* Fermé = on masque seulement le texte de réponse (pas la colonne) */
.faq-spoiler:not([open]) .faq-spoiler__answer{
  display: none;
}
