
    /* HEADER PAGE */
    .page-header {
      background: linear-gradient(135deg, var(--secondary) 0%, #8b4513 100%);
      color: white;
      padding: 80px 40px;
      text-align: center;
    }

    .page-header h1 {
      font-family: 'Pacifico', cursive;
      font-size: 56px;
      margin-bottom: 15px;
    }

    .page-header p {
      font-size: 20px;
      max-width: 700px;
      margin: 0 auto;
      opacity: 0.95;
    }

    /* CONTAINER PRINCIPAL */
    .devis-container {
      max-width: 1200px;
      margin: -50px auto 80px;
      padding: 0 30px;
    }

    /* SECTION AVANTAGES */
    .benefits-section {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 25px;
      margin-bottom: 50px;
    }

    .benefit-card {
      background: white;
      padding: 30px;
      border-radius: 20px;
      text-align: center;
      box-shadow: 0 10px 30px rgba(0,0,0,0.08);
      transition: all 0.3s ease;
    }

    .benefit-card:hover {
      transform: translateY(-5px);
      box-shadow: 0 15px 40px rgba(0,0,0,0.12);
    }

    .benefit-icon {
      font-size: 48px;
      margin-bottom: 15px;
    }

    .benefit-card h3 {
      font-size: 20px;
      color: var(--secondary);
      margin-bottom: 10px;
      font-weight: 700;
    }

    .benefit-card p {
      font-size: 15px;
      color: #666;
      line-height: 1.6;
    }

    /* FORMULAIRE ET IMAGE */
    .form-section {
      display: grid;
      grid-template-columns: 1.2fr 1fr;
      gap: 50px;
      background: white;
      border-radius: 25px;
      padding: 50px;
      box-shadow: 0 15px 50px rgba(0,0,0,0.1);
    }

    .form-content h2 {
      font-family: 'Pacifico', cursive;
      font-size: 36px;
      color: var(--secondary);
      margin-bottom: 15px;
    }

    .form-content > p {
      font-size: 16px;
      color: #666;
      margin-bottom: 35px;
      line-height: 1.7;
    }

    /* FORMULAIRE */
    .form-group {
      margin-bottom: 25px;
    }

    .form-group label {
      display: block;
      font-weight: 600;
      color: var(--secondary);
      margin-bottom: 8px;
      font-size: 15px;
    }

    .form-group label .required {
      color: #ff4444;
      margin-left: 3px;
    }

    .form-group input,
    .form-group select,
    .form-group textarea {
      width: 100%;
      padding: 14px 18px;
      border: 2px solid #e0e0e0;
      border-radius: 12px;
      font-family: 'Poppins', sans-serif;
      font-size: 15px;
      transition: all 0.3s ease;
      background: #fafafa;
    }

    .form-group input:focus,
    .form-group select:focus,
    .form-group textarea:focus {
      outline: none;
      border-color: var(--primary);
      background: white;
      box-shadow: 0 0 0 4px rgba(254, 153, 0, 0.1);
    }

    .form-group textarea {
      resize: vertical;
      min-height: 120px;
    }

    .form-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px;
    }

    /* UPLOAD FICHIER */
    .file-upload {
      position: relative;
      margin-bottom: 25px;
    }

    .file-upload input[type="file"] {
      display: none;
    }

    .file-upload-label {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 20px;
      border: 2px dashed #ccc;
      border-radius: 12px;
      cursor: pointer;
      transition: all 0.3s ease;
      background: #fafafa;
    }

    .file-upload-label:hover {
      border-color: var(--primary);
      background: var(--light-cream);
    }

    .file-upload-label span {
      font-size: 15px;
      color: #666;
    }

    .file-name {
      margin-top: 10px;
      font-size: 14px;
      color: var(--primary);
      font-weight: 500;
    }

    /* BOUTON SUBMIT */
    .submit-btn {
      width: 100%;
      padding: 16px;
      background: var(--primary);
      color: white;
      border: none;
      border-radius: 12px;
      font-size: 18px;
      font-weight: 700;
      cursor: pointer;
      transition: all 0.3s ease;
      box-shadow: 0 5px 20px rgba(254, 153, 0, 0.3);
    }

    .submit-btn:hover {
      background: var(--secondary);
      transform: translateY(-2px);
      box-shadow: 0 8px 25px rgba(254, 153, 0, 0.4);
    }

    .submit-btn:active {
      transform: translateY(0);
    }

    /* IMAGE SECTION */
    .image-section {
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 25px;
    }

    .image-section img {
      width: 100%;
      border-radius: 20px;
      box-shadow: 0 10px 30px rgba(0,0,0,0.15);
    }

    .info-box {
      background: var(--light-cream);
      padding: 25px;
      border-radius: 15px;
      border-left: 5px solid var(--primary);
    }

    .info-box h4 {
      font-size: 18px;
      color: var(--secondary);
      margin-bottom: 12px;
      font-weight: 700;
    }

    .info-box ul {
      list-style: none;
      padding: 0;
    }

    .info-box li {
      padding: 8px 0;
      color: #555;
      font-size: 14px;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .info-box li::before {
      content: '✓';
      color: var(--primary);
      font-weight: bold;
      font-size: 18px;
    }

    /* MESSAGE SUCCES */
    .success-message {
      display: none;
      background: #4CAF50;
      color: white;
      padding: 20px;
      border-radius: 12px;
      margin-bottom: 25px;
      text-align: center;
      font-weight: 600;
      animation: slideDown 0.5s ease;
    }

    .success-message.show {
      display: block;
    }

    @keyframes slideDown {
      from {
        opacity: 0;
        transform: translateY(-20px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }

    /* FAQ SECTION */
    .faq-section {
      max-width: 900px;
      margin: 80px auto;
      padding: 0 30px;
    }

    .faq-section h2 {
      font-family: 'Pacifico', cursive;
      font-size: 42px;
      color: var(--secondary);
      text-align: center;
      margin-bottom: 50px;
    }

    .faq-item {
      background: white;
      border-radius: 15px;
      padding: 25px;
      margin-bottom: 20px;
      box-shadow: 0 5px 20px rgba(0,0,0,0.08);
      cursor: pointer;
      transition: all 0.3s ease;
    }

    .faq-item:hover {
      box-shadow: 0 8px 25px rgba(0,0,0,0.12);
    }

    .faq-question {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-weight: 600;
      color: var(--secondary);
      font-size: 17px;
    }

    .faq-answer {
      margin-top: 15px;
      color: #666;
      line-height: 1.7;
      display: none;
    }

    .faq-item.active .faq-answer {
      display: block;
    }

    .faq-toggle {
      font-size: 24px;
      color: var(--primary);
      transition: transform 0.3s ease;
    }

    .faq-item.active .faq-toggle {
      transform: rotate(45deg);
    }

    /* WHATSAPP */
    .whatsapp {
      position: fixed;
      bottom: 25px;
      right: 25px;
      background: #25D366;
      color: white;
      width: 60px;
      height: 60px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
      font-size: 28px;
      text-decoration: none;
      box-shadow: 0 5px 20px rgba(37, 211, 102, 0.4);
      z-index: 2000;
      transition: all 0.3s ease;
    }

    .whatsapp:hover {
      transform: scale(1.1);
      box-shadow: 0 8px 25px rgba(37, 211, 102, 0.6);
    }

    /* FOOTER */
    footer {
      background: var(--secondary);
      color: white;
      text-align: center;
      padding: 40px 20px;
    }

    footer p {
      margin: 8px 0;
    }

    /* RESPONSIVE */
    @media (max-width: 968px) {
      .page-header h1 {
        font-size: 38px;
      }

      .form-section {
        grid-template-columns: 1fr;
        padding: 35px 25px;
      }

      .form-row {
        grid-template-columns: 1fr;
      }

      .image-section {
        order: -1;
      }

      nav ul {
        display: none;
      }

      .menu-toggle {
        display: block;
      }

      nav ul.active {
        display: flex;
        flex-direction: column;
        position: absolute;
        top: 90px;
        right: 20px;
        background: white;
        padding: 25px;
        border-radius: 15px;
        box-shadow: 0 10px 30px rgba(0,0,0,0.2);
      }
    }