
        body {
            font-family: 'Poppins', sans-serif;
            background: #f8f9fa;
        }

        /* NAVBAR */
        .navbar {
            backdrop-filter: blur(10px);
            background: linear-gradient(135deg, #402001, #533b24);
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
        }

        .navbar-brand img {
            height: 85px;
        }

        .nav-link {
            font-weight: 500;
            margin: 0 8px;
          color: #cbd5f5 !important;
        }
        .nav-link.active{
            color: rgb(249 223 100) !important;
        }
         .nav-link::after{
             color: rgb(249 223 100) !important;
        }
        .nav-link:active{
             color: rgb(249 223 100) !important;
        }
        .nav-link:hover{
             color: rgb(249 223 100) !important;
        }
        .text-justify{
            text-align: justify;
        }
        ul.dropdown-menu.show {
            background-color: #50371f;
}
.dropdown-menu.show li a{
       font-weight: 500;
      color: #cbd5f5 !important;
}
.dropdown-menu.show li a:hover{
       font-weight: 500;
       background-color:#50371f; ;
      color: rgb(249 223 100) !important;
}

     /* HERO SLIDER (remplace .hero) */
.hero-slider {
    position: relative;
    margin-top: 100px; /* offset navbar */
}

.hero-slide {
    background-size: cover;
    background-position: right center;
    background-repeat: no-repeat;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: white;

    padding: 100px;
    min-height: 575px;
}


/* OVERLAY */
.hero-slide .overlay {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
}

/* CONTENT */
.hero-content {
    position: relative;
    z-index: 2;
}

        .btn-custom {
            background: #e09b00;
            color: white;
            border-radius: 50px;
            padding: 12px 28px;
            font-weight: 600;
            transition: .3s;
        }

        .btn-custom:hover {
            background: #b88100;
            transform: translateY(-3px);
        }

        /* SECTION BG */
.features-section {
    position: relative;
    padding: 80px 0;
    background: url("../images/background.png") center/cover;
    overflow: hidden;
}

/* TITLE */
.section-title {
 font-weight: 900;
    font-size: 3.2rem;
    color: #402001;
}

.section-subtitle {
    color: #402001;
    font-weight: 700;
    font-size: 1.1rem;
    text-align: center;
}
.about-title{
       font-weight: 700;
    font-size: 2.2rem;
    color: #402001;
}
.faire-part-title{
 font-weight: 700;
    font-size: 2.2rem;
    color: #402001;
}
.faire-part-subtitle{
  color: #533b24;
    font-weight: 700;
    font-size: 1.8rem;
}
.hero-contact{
   object-position: bottom;
    background:url("../images/banner-kontact.jpg") center/cover no-repeat;
}
.hero-faire-part{
    background:url("../images/banner-faire-part.jpg") center/cover no-repeat;
}
.hero-offset{
    background:url("../images/banner-offset.jpg") center/cover no-repeat;
}
.hero-numerique{
    background:url("../images/banner-impression-numerique.jpg") center/cover no-repeat;
}
.hero-gaufrage{
    background:url("../images/banner-gaufrage.jpg") center/cover no-repeat;
}
.hero-thermo{
    background:url("../images/banner-thermogravure.jpg") center/cover no-repeat;
}
.hero-carte{
    background:url("../images/banner-carte-visite.jpg") center/cover no-repeat;
}
.hero-flyers{
    background:url("../images/banner-flyers.jpg") center/cover no-repeat;
}
.hero-catalogue{
    background:url("../images/banner-catalogue.jpg") center/cover no-repeat;
}
.hero-tampon{
    background:url("../images/banner-tampon.png") center/cover no-repeat;
}
.hero-pince{
    background:url("../images/banner-pince.png") center/cover no-repeat;
}


.hero-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,0.45);
}

.hero-content{
    position:relative;
    color:white;
    z-index:2;
}

.hero-contact h1{
    font-size:42px;
    margin-bottom:15px;
}

.hero-contact p{
    font-size:18px;
    margin-bottom:25px;
}


/* CARD */
.feature-card {
    background: white;
    border-radius: 20px;
    padding: 25px 25px;
    text-align: center;

    box-shadow: 0 10px 30px rgb(0 0 0 / 45%);
    transition: all .4s ease;

    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

/* SAME HEIGHT FIX */
.feature-card.h-100 {
    height: 100%;
}

/* HOVER */
.feature-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 45px rgba(0,0,0,0.15);
}

/* ICON BOX */
.icon-box {
    width: 70px;
    height: 70px;
    margin: 0 auto 20px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;
    font-size: 26px;
    color: white;

       background: linear-gradient(135deg, #402001, #b99573);
    box-shadow: 4px 4px 6px rgb(64 32 1 / 73%);

    transition: .4s;
}

/* ICON HOVER */
.feature-card:hover .icon-box {
    transform: scale(1.1) rotate(6deg);
}

/* TEXT */
.feature-card h5 {
    font-weight: 600;
    margin-bottom: 15px;
}

.feature-card p {
    color: #6c757d;
    font-size: 0.95rem;
}


        /* SECTION */
        section {
            padding: 80px 0;
        }

      /* SECTION BG */
.testimonial-section {
    position: relative;
    background: url("../images/testimonial.png") center/cover;
    overflow: hidden;
}

/* Texture légère imprimée */
.testimonial-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url('../images/print-texture.png');
    opacity: 0.05;
}

/* CARD */
.testimonial-card {
    position: relative;
    background: white;
    padding: 40px;
    border-radius: 20px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.08);
    transition: 0.3s;
    min-height: 260px;

    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Hover léger */
.testimonial-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(0,0,0,0.12);
}

/* Avatar */
.testimonial-avatar {
 
    object-fit: cover;
    border-radius: 50%;
    margin: auto;
    border: 3px solid #e09b00;
}

/* Texte */
.testimonial-card p {
    font-size: 1.05rem;
    color: #555;
    line-height: 1.6;
}

/* Étoiles */
.stars {
    color: #ffc107;
    font-size: 1.3rem;
    letter-spacing: 3px;
}

/* Controls plus visibles */
.carousel-control-prev-icon,
.carousel-control-next-icon {
    filter: invert(1);
}
.fairepart-section{
padding:100px 0;
position:relative;
}

.fairepart-section.alt{
background:rgba(255,255,255,0.6);
backdrop-filter:blur(6px);
border-radius:20px;
margin:60px auto;
}

.section-tag{
display:inline-block;
background:#ff6b2c;
color:white;
padding:6px 14px;
border-radius:30px;
font-size:14px;
margin-bottom:15px;
}

.section-title{
font-size:38px;
font-weight:700;
margin-bottom:20px;
}

.section-text{
font-size:17px;
line-height:1.7;
color:#444;
margin-bottom:15px;
text-align: justify;
}

/* IMAGE CARD */

.image-card{
border-radius:18px;
overflow:hidden;
box-shadow:0 20px 60px rgba(0,0,0,0.15);
transform:rotate(-1deg);
}

.image-card img{
width:100%;
display:block;
}

/* IMAGE STACK */

.image-stack{
display:grid;
gap:25px;
}

.image-stack img{
width:100%;
border-radius:16px;
box-shadow:0 15px 40px rgba(0,0,0,0.15);
transition:0.4s;
}

.image-stack img:hover{
transform:scale(1.04);
}



.footer-modern {
    background: linear-gradient(135deg, #533b24, #402001);
    color: #e5e7eb;
    padding: 70px 0 30px;
    position: relative;
    overflow: hidden;
}

/* LOGO */
.footer-logo {
 width: 30vh;

}

/* TEXTE */
.footer-text {
    opacity: 0.8;
    line-height: 1.6;
    margin-bottom: 20px;
}

.footer-contact p {
    margin-bottom: 8px;
    opacity: 0.9;
}

/* TITRES */
.footer-title {
    font-weight: 700;
    margin-bottom: 20px;
    color: white;
}

/* LIENS */
.footer-links {
    list-style: none;
    padding: 0;
}

.footer-links li {
    margin-bottom: 10px;
}

.footer-links a {
    color: #cbd5f5;
    text-decoration: none;
    transition: 0.3s;
}

.footer-links a:hover {
    color: rgb(249 223 100);
    padding-left: 5px;
}

/* DIVIDER */
.footer-divider {
    height: 1px;
    background: rgba(255,255,255,0.1);
    margin: 40px 0 20px;
}

/* BOTTOM */
.footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.footer-bottom p {
    margin: 0;
    opacity: 0.7;
}

.footer-legal a {
    color: #cbd5f5;
    margin-left: 15px;
    text-decoration: none;
    transition: 0.3s;
}

.footer-legal a:hover {
    color: white;
}

/* MOBILE */
@media (max-width: 768px) {
    .footer-bottom {
        flex-direction: column;
        text-align: center;
    }

    .footer-legal a {
        margin: 0 10px;
    }
}

/* SECTION */
.hero-header {
    position: relative;
    padding: 75px 0;
         height: 55vh; /* plus court que homepage */
    margin-top: 90px; /* hauteur navbar */
    color: white;
      margin-top: 100px; /* offset navbar */
}
.hero-about{
        background: url('../images/banner-apropos.jpg') center / cover no-repeat;
}

/* Overlay lisibilité */
.hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        120deg,
        rgba(0,0,0,0.7),
        rgba(0,0,0,0.4)
    );
}

/* Content */
.hero-content {
    position: relative;
    z-index: 2;
    max-width: 900px;
}

/* Titre */
.hero-content h1 {
    font-size: 3rem;
    font-weight: 800;
    margin-bottom: 20px;
    text-shadow: 0 5px 20px rgba(0,0,0,0.6);
}

/* Texte */
.hero-content p {
    font-size: 1.2rem;
    margin-bottom: 30px;
    text-shadow: 0 3px 10px rgba(0,0,0,0.6);
}

/* Bouton hero */
.btn-hero {
    background: white;
    color: #e09b00;
    padding: 12px 28px;
    border-radius: 50px;
    font-weight: 700;
    box-shadow: 0 10px 25px rgba(0,0,0,0.2);
}

.btn-hero:hover {
    background: #b88100;
    color: white;
}


.about-modern {
  
    background: url("../images/back-offset.png") center/cover no-repeat fixed;
    position: relative;
}
.faire-part-modern {
    background: url("../images/back-faire-part.png") center/cover no-repeat fixed;
    position: relative;
}
.offset-modern {
    background: url("../images/back-offset.png") center/cover no-repeat fixed;
    position: relative;
}
.contact {
    background: url("../images/back-offset.png") center/cover no-repeat fixed;
    position: relative;
}

/* IMAGES */
.about-img {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(0,0,0,0.12);
}

.about-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.4s;
}

/* Hover zoom */
.about-img:hover img {
    transform: scale(1.05);
}

/* Overlay print subtle */
.about-img::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        120deg,
        rgba(0,0,0,0.15),
        transparent
    );
}

/* TEXT */
.about-content h3 {
    font-size: 1.2rem;
  color: #533b24;
    margin-bottom: 10px;
    font-weight: 600;
}

.about-content h2 {
    font-size: 2rem;
    font-weight: 800;
    margin-bottom: 20px;
}

.about-content p {
    color: #555;
    line-height: 1.7;
    margin-bottom: 15px;
    
}
.about-content{
        background-color: #ffffffad;
    padding: 2em;
    border-radius: 30px;
}

/* Spacing mobile */
@media (max-width: 991px) {
    .about-content {
        text-align: center;
    }
}


    .form-wrapper {
        max-width: 900px;
        margin: auto;
        background: #ffffff;
        padding: 40px;
        border-radius: 16px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    }

    h2 {
        text-align: center;
        margin-bottom: 30px;
    }

    .grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 20px;
    }

    label {
        font-weight: 500;
        display: block;
        margin-bottom: 6px;
    }

    .required {
        color: #e74c3c;
    }

    input,
    textarea {
        width: 100%;
        padding: 12px 14px;
        border-radius: 10px;
        border: 1px solid #dcdfe6;
        font-size: 14px;
        transition: 0.2s;
        box-sizing: border-box;
    }

    input:focus,
    textarea:focus {
        outline: none;
        border-color: #f59e0b;
        box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.15);
    }

    textarea {
        min-height: 140px;
        resize: vertical;
    }

    .checkbox-group {
        display: flex;
        gap: 20px;
        margin-bottom: 10px;
    }

    .file-input {
        background: #fafafa;
        padding: 12px;
        border-radius: 10px;
        border: 1px dashed #ccc;
    }

    button {
        width: 100%;
        padding: 16px;
        background: linear-gradient(135deg, #f59e0b, #fbbf24);
        border: none;
        color: white;
        font-size: 16px;
        font-weight: 600;
        border-radius: 12px;
        cursor: pointer;
        transition: 0.25s;
        margin-top: 20px;
    }

    button:hover {
        transform: translateY(-2px);
        box-shadow: 0 8px 18px rgba(0, 0, 0, 0.15);
    }

    @media (max-width: 600px) {
        .form-wrapper {
            padding: 25px;
        }
    }
.map-contact-section{
  padding:100px 0;
  background:#f5f7fa;
}

.map-title{
  text-align:center;
  font-size:36px;
  font-weight:600;
  margin-bottom:60px;
  color:#222;
}

.map-container{
  position:relative;
  max-width:1100px;
  margin:auto;
}

.map-wrapper{
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 20px 50px rgba(0,0,0,0.15);
}

.map-wrapper iframe{
  width:100%;
  height:500px;
  border:0;
}

/* CARD INFOS */

.map-info{
  position:absolute;
  top:50%;
  left:-40px;
  transform:translateY(-50%);
  background:white;
  padding:35px;
  width:280px;
  border-radius:16px;
  box-shadow:0 20px 50px rgb(0 0 0 / 73%);
}

.map-info h3{
  margin-bottom:15px;
  font-size:22px;
  color:#222;
}

.map-info p{
  margin-bottom:15px;
  color:#555;
  line-height:1.6;
}

.map-btn{
  display:inline-block;
  margin-top:10px;
  padding:12px 20px;
  background:#e09b00;
  color:white;
  text-decoration:none;
  border-radius:8px;
  font-weight:500;
  transition:0.3s;
}

.map-btn:hover{
  background:#b88100;
}
.btn-wrapper {
    text-align: center;
    align-items: center; /* aligne le bouton et le texte sur la même ligne */
    gap: 10px; /* espace entre le bouton et le texte */
}

.delivery-info {
    font-size: 0.8rem;
    color: #222;      /* sombre mais pas agressif */
    font-style: italic; /* discret et élégant */
    margin-top: 4px;    /* un peu d’espace avec le bouton */
}
.asterisk {
    color: red;
    margin-right: 4px;
    font-weight: bold;
}
.txt-graphithermo{
    font-size: 3vh;
    font-weight: 600;
    color: #fcf6c0;
}


.legal-content {
    max-width: 900px;
    margin: auto;
    background: white;
    padding: 50px;
    border-radius: 8px;
}

.legal-content h1 {
    text-align: center;
    margin-bottom: 50px;
    font-size: 32px;
}

.legal-block {
    margin-bottom: 40px;
}

.legal-block h2 {
    font-size: 20px;
    margin-bottom: 15px;
    border-left: 4px solid #f2c200; /* tu peux mettre la couleur de ton site */
    padding-left: 10px;
}

.legal-block p {
    margin: 6px 0;
    line-height: 1.6;
}

  
  .card-custom {
  position: relative;
  border: 1px solid #402001;
  border-radius: 20px;
  padding: 35px 30px;
  background: linear-gradient(145deg, #ffffff, #f8f9fb);
  box-shadow: 
    0 10px 25px rgba(0,0,0,0.04),
    0 2px 6px rgba(0,0,0,0.03);
  overflow: hidden;
  transition: all 0.35s ease;
  height: 100%;
}

.card-custom h5 {
  font-weight: 600;
  margin-bottom: 10px;
  position: relative;
  z-index: 1;
}

.card-custom p {
  color: #555;
  font-size: 0.95rem;
  position: relative;
  z-index: 1;
}

/* Barre design en haut */
.card-custom::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, #402001, #50371f);
  opacity: 0;
  transition: 0.3s;
}

/* Hover */
.card-custom:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 50px rgba(0,0,0,0.08);
}

.card-custom:hover::before {
  opacity: 1;
}

.card-custom:hover::after {
  opacity: 1;
}

    /* LIST STYLE */
.list-clean {
  list-style: none;
  padding-left: 0;
}

.list-clean li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 12px;
  color: #444;
}

.list-clean li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

    /* CTA */
    .cta {
     

      padding: 60px;
      border-radius: 20px;
      text-align: center;
    }

    .cta .btn {
      margin-top: 20px;
      padding: 12px 25px;
      font-weight: 600;
    }