        /* ============================================================
   ESTILOS FORMULARIO DINÁMICO - DARK TECH THEME
   ============================================================ */

        /* --- CONTENEDOR PRINCIPAL --- */
        .contact-section {
          padding: 80px 20px;
          background-color: #070707;
          font-family: 'Inter', sans-serif;
          color: #ffffff;
        }

        .contact-container {
          max-width: 720px;
          margin: 0 auto;
        }

        /* --- HEADER --- */
        .contact-header {
          text-align: center;
          margin-bottom: 40px;
        }

        .contact-headline {
          font-size: 2.5rem;
          font-weight: 700;
          color: #ffffff;
          margin-bottom: 15px;
        }

        .contact-subheadline {
          font-size: 1.1rem;
          color: #a0aab8;
          max-width: 550px;
          margin: 0 auto;
          line-height: 1.6;
        }

        /* --- FORMULARIO BASE --- */
        .contact-form {
          background: #071828;
          border: 1px solid #152333;
          border-radius: 16px;
          padding: 40px;
          box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4);
        }

        .form-step {
          animation: fadeIn 0.4s ease;
        }

        @keyframes fadeIn {
          from {
            opacity: 0;
            transform: translateY(10px);
          }

          to {
            opacity: 1;
            transform: translateY(0);
          }
        }

        /* --- SELECTOR DE SEGMENTO --- */
        .form-label {
          display: block;
          font-size: 1.1rem;
          font-weight: 600;
          color: #ffffff;
          margin-bottom: 20px;
          text-align: center;
        }

        .segment-selector {
          display: grid;
          grid-template-columns: repeat(2, 1fr);
          gap: 15px;
        }

        @media (max-width: 500px) {
          .segment-selector {
            grid-template-columns: 1fr;
          }
        }

        .segment-btn {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          padding: 25px 20px;
          background: #0d1e2e;
          border: 2px solid #152333;
          border-radius: 12px;
          cursor: pointer;
          transition: all 0.3s ease;
          text-align: center;
        }

        .segment-btn:hover {
          border-color: #1e3347;
          background: #141a26;
          transform: translateY(-2px);
        }

        .segment-btn.selected {
          border-color: #00e0ff;
          background: #101622;
          box-shadow: 0 0 20px rgba(0, 224, 255, 0.15);
        }

        .segment-icon {
          width: 64px;
          height: 64px;
          margin-bottom: 10px;
          object-fit: contain;
        }

        .segment-title {
          font-size: 1rem;
          font-weight: 600;
          color: #ffffff;
          margin-bottom: 5px;
        }

        .segment-desc {
          font-size: 0.8rem;
          color: #a0aab8;
        }

        .segment-btn.selected .segment-title {
          color: #00e0ff;
        }

        /* --- BADGE DE SEGMENTO SELECCIONADO --- */
        .selected-segment-badge {
          display: flex;
          align-items: center;
          justify-content: space-between;
          padding: 12px 16px;
          background: linear-gradient(135deg, rgba(0, 224, 255, 0.1) 0%, rgba(0, 224, 255, 0.05) 100%);
          border: 1px solid rgba(0, 224, 255, 0.3);
          border-radius: 8px;
          margin-bottom: 25px;
        }

        .selected-segment-badge #badgeText {
          font-size: 0.9rem;
          color: #00e0ff;
          font-weight: 500;
        }

        .change-segment-btn {
          background: transparent;
          border: 1px solid rgba(0, 224, 255, 0.5);
          color: #00e0ff;
          padding: 6px 12px;
          border-radius: 6px;
          font-size: 0.8rem;
          cursor: pointer;
          transition: all 0.2s ease;
        }

        .change-segment-btn:hover {
          background: rgba(0, 224, 255, 0.1);
        }

        /* --- CAMPOS DEL FORMULARIO --- */
        .form-row {
          display: grid;
          grid-template-columns: 1fr 1fr;
          gap: 20px;
        }

        @media (max-width: 500px) {
          .form-row {
            grid-template-columns: 1fr;
            gap: 0;
          }
        }

        .form-group {
          margin-bottom: 20px;
        }

        .form-group label {
          display: block;
          font-size: 0.9rem;
          font-weight: 500;
          color: #bdc5d1;
          margin-bottom: 8px;
        }

        .form-group input,
        .form-group select,
        .form-group textarea {
          width: 100%;
          padding: 14px 16px;
          background: #0d1e2e;
          border: 1px solid #152333;
          border-radius: 8px;
          color: #ffffff;
          font-size: 0.95rem;
          font-family: inherit;
          transition: all 0.2s ease;
        }

        .form-group input::placeholder,
        .form-group textarea::placeholder {
          color: #5a6578;
        }

        .form-group input:focus,
        .form-group select:focus,
        .form-group textarea:focus {
          outline: none;
          border-color: #00e0ff;
          box-shadow: 0 0 0 3px rgba(0, 224, 255, 0.1);
        }

        .form-group select {
          cursor: pointer;
          appearance: none;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2300d4ff' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");
          background-repeat: no-repeat;
          background-position: right 16px center;
          padding-right: 40px;
        }

        .form-group textarea {
          resize: vertical;
          min-height: 100px;
        }

        /* --- CHECKBOX Y RADIO --- */
        .checkbox-group,
        .radio-group {
          display: flex;
          flex-wrap: wrap;
          gap: 10px;
        }

        .checkbox-label,
        .radio-label {
          display: flex;
          align-items: center;
          padding: 10px 14px;
          background: #0d1e2e;
          border: 1px solid #152333;
          border-radius: 8px;
          cursor: pointer;
          transition: all 0.2s ease;
          font-size: 0.9rem;
        }

        .checkbox-label:hover,
        .radio-label:hover {
          border-color: #1e3347;
        }

        .checkbox-label input,
        .radio-label input {
          width: auto;
          margin-right: 8px;
          accent-color: #00e0ff;
        }

        .checkbox-label input:checked+span,
        .radio-label input:checked+span {
          color: #00e0ff;
        }

        .checkbox-single {
          background: transparent;
          border: none;
          padding: 0;
        }

        /* --- NOTAS INFORMATIVAS --- */
        .form-note {
          display: flex;
          align-items: center;
          gap: 10px;
          padding: 15px;
          background: linear-gradient(135deg, rgba(0, 224, 255, 0.08) 0%, rgba(0, 224, 255, 0.02) 100%);
          border-left: 3px solid #00e0ff;
          border-radius: 0 8px 8px 0;
          margin-top: 10px;
          font-size: 0.9rem;
          color: #bdc5d1;
        }

        .note-icon {
          font-size: 1.2rem;
        }

        /* --- BOTÓN SUBMIT --- */
        .form-submit {
          margin-top: 30px;
          text-align: center;
        }

        .submit-btn {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          gap: 10px;
          width: 100%;
          max-width: 320px;
          padding: 16px 32px;
          background: linear-gradient(135deg, #00e0ff 0%, #0a7cff 100%);
          color: #070707;
          font-size: 1rem;
          font-weight: 600;
          border: none;
          border-radius: 10px;
          cursor: pointer;
          transition: all 0.3s ease;
          box-shadow: 0 4px 20px rgba(0, 224, 255, 0.3);
        }

        .submit-btn:hover:not(:disabled) {
          transform: translateY(-2px);
          box-shadow: 0 6px 30px rgba(0, 224, 255, 0.4);
          background: linear-gradient(135deg, #33e8ff 0%, #00c8f5 100%);
        }

        .submit-btn:disabled {
          opacity: 0.7;
          cursor: not-allowed;
        }

        .submit-loading .spinner {
          width: 20px;
          height: 20px;
          animation: spin 1s linear infinite;
        }

        @keyframes spin {
          from {
            transform: rotate(0deg);
          }

          to {
            transform: rotate(360deg);
          }
        }

        .form-privacy {
          margin-top: 15px;
          font-size: 0.8rem;
          color: #5a6578;
        }

        .form-privacy a {
          color: #00e0ff;
          text-decoration: none;
        }

        .form-privacy a:hover {
          text-decoration: underline;
        }

        /* --- MENSAJE DE ÉXITO --- */
        .form-success {
          text-align: center;
          padding: 60px 40px;
          background: #071828;
          border: 1px solid #152333;
          border-radius: 16px;
          animation: fadeIn 0.5s ease;
        }

        .success-icon {
          width: 80px;
          height: 80px;
          margin: 0 auto 25px;
          background: linear-gradient(135deg, rgba(0, 224, 255, 0.2) 0%, rgba(0, 224, 255, 0.1) 100%);
          border: 2px solid #00e0ff;
          border-radius: 50%;
          display: flex;
          align-items: center;
          justify-content: center;
          font-size: 2.5rem;
          color: #00e0ff;
        }

        .success-title {
          font-size: 1.8rem;
          font-weight: 700;
          color: #ffffff;
          margin-bottom: 15px;
        }

        .success-message {
          font-size: 1rem;
          color: #a0aab8;
          line-height: 1.6;
          max-width: 450px;
          margin: 0 auto 25px;
        }

        .success-btn {
          padding: 12px 24px;
          background: transparent;
          border: 1px solid #00e0ff;
          color: #00e0ff;
          font-size: 0.9rem;
          font-weight: 500;
          border-radius: 8px;
          cursor: pointer;
          transition: all 0.2s ease;
        }

        .success-btn:hover {
          background: rgba(0, 224, 255, 0.1);
        }

        /* --- VALIDACIÓN --- */
        .form-group input.error,
        .form-group select.error,
        .form-group textarea.error {
          border-color: #ff4757 !important;
          background-color: rgba(255, 71, 87, 0.05);
        }

        .form-group .error-message {
          display: block;
          margin-top: 6px;
          font-size: 0.8rem;
          color: #ff4757;
          font-weight: 500;
        }

        .checkbox-group .error-message {
          display: block;
          margin-top: 8px;
          padding: 8px 12px;
          background-color: rgba(255, 71, 87, 0.1);
          border-radius: 4px;
          font-size: 0.85rem;
          color: #ff4757;
        }

        /* Focus en campos con error */
        .form-group input.error:focus,
        .form-group select.error:focus,
        .form-group textarea.error:focus {
          outline: none;
          box-shadow: 0 0 0 3px rgba(255, 71, 87, 0.2);
        }

        /* --- RESPONSIVE --- */
        @media (max-width: 600px) {
          .contact-section {
            padding: 60px 15px;
          }

          .contact-headline {
            font-size: 2rem;
          }

          .contact-form {
            padding: 25px 20px;
          }

          .segment-btn {
            padding: 20px 15px;
          }
        }
